1 1.2 martin /* $NetBSD: hid_601.h,v 1.2 2008/04/28 20:23:32 martin Exp $ */ 2 1.1 matt 3 1.1 matt /*- 4 1.1 matt * Copyright (c) 1999 The NetBSD Foundation, Inc. 5 1.1 matt * All rights reserved. 6 1.1 matt * 7 1.1 matt * This code is derived from software contributed to The NetBSD Foundation 8 1.1 matt * by Jason R. Thorpe. 9 1.1 matt * 10 1.1 matt * Redistribution and use in source and binary forms, with or without 11 1.1 matt * modification, are permitted provided that the following conditions 12 1.1 matt * are met: 13 1.1 matt * 1. Redistributions of source code must retain the above copyright 14 1.1 matt * notice, this list of conditions and the following disclaimer. 15 1.1 matt * 2. Redistributions in binary form must reproduce the above copyright 16 1.1 matt * notice, this list of conditions and the following disclaimer in the 17 1.1 matt * documentation and/or other materials provided with the distribution. 18 1.1 matt * 19 1.1 matt * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 20 1.1 matt * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 21 1.1 matt * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 22 1.1 matt * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 23 1.1 matt * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 24 1.1 matt * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 25 1.1 matt * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 26 1.1 matt * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 27 1.1 matt * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 28 1.1 matt * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 29 1.1 matt * POSSIBILITY OF SUCH DAMAGE. 30 1.1 matt */ 31 1.1 matt 32 1.1 matt #ifndef _POWERPC_OEA_HID_601_H_ 33 1.1 matt #define _POWERPC_OEA_HID_601_H_ 34 1.1 matt /* 35 1.1 matt * Hardware Implementation Dependent registers for the PowerPC 601. 36 1.1 matt */ 37 1.1 matt 38 1.1 matt /* 39 1.1 matt * HID0 (SPR 1008) -- Checkstop Enable/Disable and Status register 40 1.1 matt */ 41 1.1 matt /* v- feature bits -v */ 42 1.1 matt #define HID0_601_EHP 0x00000001 /* enable HP_SNP_REQ# */ 43 1.1 matt #define HID0_601_EMC 0x00000002 /* main cache error */ 44 1.1 matt #define HID0_601_PAR 0x00000004 /* precharge of ARTRY#/SHD# disabled */ 45 1.1 matt #define HID0_601_LM 0x00000008 /* little endian mode */ 46 1.1 matt #define HID0_601_DRL 0x00000010 /* alt sec rld of load/store miss */ 47 1.1 matt #define HID0_601_DRF 0x00000020 /* alt sec rld of insn fetch miss */ 48 1.1 matt /* v- checkstop enable/disable bits -v */ 49 1.1 matt #define HID0_601_EPP 0x00000040 /* i/o protocol checkstop */ 50 1.1 matt #define HID0_601_EIU 0x00000080 /* invalid uCode checkstop */ 51 1.1 matt #define HID0_601_ECP 0x00000100 /* cache parity checkstop */ 52 1.1 matt #define HID0_601_EBD 0x00000200 /* data bus parity checkstop */ 53 1.1 matt #define HID0_601_EBA 0x00000400 /* address bus parity checkstop */ 54 1.1 matt #define HID0_601_EDT 0x00000800 /* dispatch timeout checkstop */ 55 1.1 matt #define HID0_601_ESH 0x00001000 /* sequencer timeout checkstop */ 56 1.1 matt #define HID0_601_ECD 0x00002000 /* cache checkstop */ 57 1.1 matt #define HID0_601_ETD 0x00004000 /* TLB checkstop */ 58 1.1 matt #define HID0_601_EM 0x00008000 /* machine checkstop */ 59 1.1 matt #define HID0_601_ES 0x00010000 /* uCode checkstop */ 60 1.1 matt /* 0x00020000 reserved */ 61 1.1 matt /* 0x00040000 reserved */ 62 1.1 matt /* 0x00080000 reserved */ 63 1.1 matt /* v- status bits -- correspond to enable bits above -v */ 64 1.1 matt #define HID0_601_PP 0x00100000 65 1.1 matt #define HID0_601_IU 0x00200000 66 1.1 matt #define HID0_601_CP 0x00400000 67 1.1 matt #define HID0_601_BD 0x00800000 68 1.1 matt #define HID0_601_BA 0x01000000 69 1.1 matt #define HID0_601_DT 0x02000000 70 1.1 matt #define HID0_601_SH 0x04000000 71 1.1 matt #define HID0_601_CD 0x08000000 72 1.1 matt #define HID0_601_TD 0x10000000 73 1.1 matt #define HID0_601_M 0x20000000 74 1.1 matt #define HID0_601_S 0x40000000 75 1.1 matt 76 1.1 matt #define HID0_601_CE 0x80000000 /* master checkstop enable */ 77 1.1 matt 78 1.1 matt #define HID0_601_BITMASK "\020" \ 79 1.1 matt "\040CE\037S\036M\035TD\034CD\033SH\032DT\031BA" \ 80 1.1 matt "\030BD\027CP\026IU\025PP\021ES" \ 81 1.1 matt "\020EM\017ETC\016ECD\015ESH\014EDT\013EBA\012EBD\011ECP" \ 82 1.1 matt "\010EIU\007EPP\006DRF\005DRL\004LM\003PAR\002EMC\001EHP" 83 1.1 matt 84 1.1 matt 85 1.1 matt /* 86 1.1 matt * HID1 (SPR 1009) -- Debug Modes register 87 1.1 matt */ 88 1.1 matt /* XXX */ 89 1.1 matt 90 1.1 matt 91 1.1 matt /* 92 1.1 matt * HID2 (SPR 1010) -- Instruction Address Breakpoint Register 93 1.1 matt */ 94 1.1 matt 95 1.1 matt 96 1.1 matt /* 97 1.1 matt * HID5 (SPR 1013) -- Data Address Breakpoint Register 98 1.1 matt */ 99 1.1 matt 100 1.1 matt 101 1.1 matt /* 102 1.1 matt * HID15 (SPR 1023) -- Processor ID Register 103 1.1 matt */ 104 1.1 matt #define HID15_601_PID 0x0000000f /* processor ID mask */ 105 1.1 matt 106 1.1 matt #endif /* _POWERPC_OEA_HID_601_H_ */ 107