osfpal.hh revision 1762
111482Sandreas.sandberg@arm.com/*
211482Sandreas.sandberg@arm.com * Copyright (c) 2003-2005 The Regents of The University of Michigan
311482Sandreas.sandberg@arm.com * All rights reserved.
411482Sandreas.sandberg@arm.com *
511482Sandreas.sandberg@arm.com * Redistribution and use in source and binary forms, with or without
611482Sandreas.sandberg@arm.com * modification, are permitted provided that the following conditions are
711482Sandreas.sandberg@arm.com * met: redistributions of source code must retain the above copyright
811482Sandreas.sandberg@arm.com * notice, this list of conditions and the following disclaimer;
911482Sandreas.sandberg@arm.com * redistributions in binary form must reproduce the above copyright
1011482Sandreas.sandberg@arm.com * notice, this list of conditions and the following disclaimer in the
1111482Sandreas.sandberg@arm.com * documentation and/or other materials provided with the distribution;
1211482Sandreas.sandberg@arm.com * neither the name of the copyright holders nor the names of its
1311482Sandreas.sandberg@arm.com * contributors may be used to endorse or promote products derived from
1411482Sandreas.sandberg@arm.com * this software without specific prior written permission.
1511482Sandreas.sandberg@arm.com *
1611482Sandreas.sandberg@arm.com * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
1711482Sandreas.sandberg@arm.com * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
1811482Sandreas.sandberg@arm.com * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
1911482Sandreas.sandberg@arm.com * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
2011482Sandreas.sandberg@arm.com * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
2111482Sandreas.sandberg@arm.com * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
2211482Sandreas.sandberg@arm.com * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
2311482Sandreas.sandberg@arm.com * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
2411482Sandreas.sandberg@arm.com * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
2511482Sandreas.sandberg@arm.com * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
2611482Sandreas.sandberg@arm.com * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2711482Sandreas.sandberg@arm.com */
2811482Sandreas.sandberg@arm.com
2911482Sandreas.sandberg@arm.com#ifndef __OSFPAL_HH__
3011482Sandreas.sandberg@arm.com#define __OSFPAL_HH__
3111482Sandreas.sandberg@arm.com
3211482Sandreas.sandberg@arm.comstruct PAL
3311482Sandreas.sandberg@arm.com{
3411482Sandreas.sandberg@arm.com    enum {
3511482Sandreas.sandberg@arm.com        // Privileged PAL functions
3611482Sandreas.sandberg@arm.com        halt = 0x00,
3711482Sandreas.sandberg@arm.com        cflush = 0x01,
3811482Sandreas.sandberg@arm.com        draina = 0x02,
3911482Sandreas.sandberg@arm.com        cserve = 0x09,
4011482Sandreas.sandberg@arm.com        swppal = 0x0a,
4111482Sandreas.sandberg@arm.com        wripir = 0x0d,
4211482Sandreas.sandberg@arm.com        rdmces = 0x10,
4311482Sandreas.sandberg@arm.com        wrmces = 0x11,
4411482Sandreas.sandberg@arm.com        wrfen = 0x2b,
4511482Sandreas.sandberg@arm.com        wrvptptr = 0x2d,
4611482Sandreas.sandberg@arm.com        swpctx = 0x30,
4711482Sandreas.sandberg@arm.com        wrval = 0x31,
4811482Sandreas.sandberg@arm.com        rdval = 0x32,
4911482Sandreas.sandberg@arm.com        tbi = 0x33,
5011482Sandreas.sandberg@arm.com        wrent = 0x34,
5111482Sandreas.sandberg@arm.com        swpipl = 0x35,
5211482Sandreas.sandberg@arm.com        rdps = 0x36,
5311482Sandreas.sandberg@arm.com        wrkgp = 0x37,
5411482Sandreas.sandberg@arm.com        wrusp = 0x38,
5511482Sandreas.sandberg@arm.com        wrperfmon = 0x39,
5611482Sandreas.sandberg@arm.com        rdusp = 0x3a,
5711482Sandreas.sandberg@arm.com        whami = 0x3c,
5811482Sandreas.sandberg@arm.com        retsys = 0x3d,
5911482Sandreas.sandberg@arm.com        wtint = 0x3e,
6011482Sandreas.sandberg@arm.com        rti = 0x3f,
6111482Sandreas.sandberg@arm.com
6211482Sandreas.sandberg@arm.com        // unprivileged pal functions
6311482Sandreas.sandberg@arm.com        bpt = 0x80,
6411482Sandreas.sandberg@arm.com        bugchk = 0x81,
6511482Sandreas.sandberg@arm.com        callsys = 0x83,
6611482Sandreas.sandberg@arm.com        imb = 0x86,
6711482Sandreas.sandberg@arm.com        urti = 0x92,
6811482Sandreas.sandberg@arm.com        rdunique = 0x9e,
6911482Sandreas.sandberg@arm.com        wrunique = 0x9f,
7011482Sandreas.sandberg@arm.com        gentrap = 0xaa,
7111482Sandreas.sandberg@arm.com        clrfen = 0xae,
7211482Sandreas.sandberg@arm.com        nphalt = 0xbe,
7311482Sandreas.sandberg@arm.com        copypal = 0xbf,
7411482Sandreas.sandberg@arm.com        NumCodes
7511482Sandreas.sandberg@arm.com    };
7611482Sandreas.sandberg@arm.com
7711482Sandreas.sandberg@arm.com    static const char *name(int index);
7811482Sandreas.sandberg@arm.com};
7911482Sandreas.sandberg@arm.com
8011482Sandreas.sandberg@arm.com#endif // __OSFPAL_HH__
8111482Sandreas.sandberg@arm.com