system.hh revision 2680
19651SAndreas.Sandberg@ARM.com/*
29651SAndreas.Sandberg@ARM.com * Copyright (c) 2004-2005 The Regents of The University of Michigan
39651SAndreas.Sandberg@ARM.com * All rights reserved.
49651SAndreas.Sandberg@ARM.com *
59651SAndreas.Sandberg@ARM.com * Redistribution and use in source and binary forms, with or without
69651SAndreas.Sandberg@ARM.com * modification, are permitted provided that the following conditions are
79651SAndreas.Sandberg@ARM.com * met: redistributions of source code must retain the above copyright
89651SAndreas.Sandberg@ARM.com * notice, this list of conditions and the following disclaimer;
99651SAndreas.Sandberg@ARM.com * redistributions in binary form must reproduce the above copyright
109651SAndreas.Sandberg@ARM.com * notice, this list of conditions and the following disclaimer in the
119651SAndreas.Sandberg@ARM.com * documentation and/or other materials provided with the distribution;
129651SAndreas.Sandberg@ARM.com * neither the name of the copyright holders nor the names of its
139651SAndreas.Sandberg@ARM.com * contributors may be used to endorse or promote products derived from
149651SAndreas.Sandberg@ARM.com * this software without specific prior written permission.
159651SAndreas.Sandberg@ARM.com *
169651SAndreas.Sandberg@ARM.com * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
179651SAndreas.Sandberg@ARM.com * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
189651SAndreas.Sandberg@ARM.com * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
199651SAndreas.Sandberg@ARM.com * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
209651SAndreas.Sandberg@ARM.com * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
219651SAndreas.Sandberg@ARM.com * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
229651SAndreas.Sandberg@ARM.com * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
239651SAndreas.Sandberg@ARM.com * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
249651SAndreas.Sandberg@ARM.com * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
259651SAndreas.Sandberg@ARM.com * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
269651SAndreas.Sandberg@ARM.com * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
279651SAndreas.Sandberg@ARM.com *
289651SAndreas.Sandberg@ARM.com * Authors: Ben Nash
299651SAndreas.Sandberg@ARM.com */
309651SAndreas.Sandberg@ARM.com
319651SAndreas.Sandberg@ARM.com#ifndef __KERN_FREEBSD_FREEBSD_SYSTEM_HH__
329651SAndreas.Sandberg@ARM.com#define __KERN_FREEBSD_FREEBSD_SYSTEM_HH__
339651SAndreas.Sandberg@ARM.com
349651SAndreas.Sandberg@ARM.com#include "kern/system_events.hh"
359651SAndreas.Sandberg@ARM.com
369651SAndreas.Sandberg@ARM.comclass FreebsdAlphaSystem : public AlphaSystem
379651SAndreas.Sandberg@ARM.com{
389651SAndreas.Sandberg@ARM.com  private:
399651SAndreas.Sandberg@ARM.com    class SkipCalibrateClocksEvent : public SkipFuncEvent
409651SAndreas.Sandberg@ARM.com    {
419651SAndreas.Sandberg@ARM.com      public:
429651SAndreas.Sandberg@ARM.com        SkipCalibrateClocksEvent(PCEventQueue *q, const std::string &desc,
439651SAndreas.Sandberg@ARM.com                                 Addr addr)
449651SAndreas.Sandberg@ARM.com            : SkipFuncEvent(q, desc, addr) {}
459651SAndreas.Sandberg@ARM.com        virtual void process(ThreadContext *tc);
469651SAndreas.Sandberg@ARM.com    };
479651SAndreas.Sandberg@ARM.com
489651SAndreas.Sandberg@ARM.com    SkipFuncEvent *skipDelayEvent;
499651SAndreas.Sandberg@ARM.com    SkipCalibrateClocksEvent *skipCalibrateClocks;
509651SAndreas.Sandberg@ARM.com
519651SAndreas.Sandberg@ARM.com  public:
529651SAndreas.Sandberg@ARM.com    FreebsdAlphaSystem(Params *p);
539651SAndreas.Sandberg@ARM.com    ~FreebsdAlphaSystem();
549651SAndreas.Sandberg@ARM.com    void doCalibrateClocks(ThreadContext *tc);
559651SAndreas.Sandberg@ARM.com
5610905Sandreas.sandberg@arm.com};
579651SAndreas.Sandberg@ARM.com
589651SAndreas.Sandberg@ARM.com#endif // __KERN_FREEBSD_FREEBSD_SYSTEM_HH__
599651SAndreas.Sandberg@ARM.com