Home | History | Annotate | Line # | Download | only in include
bscreg.h revision 1.1
      1  1.1  itojun /* $NetBSD: bscreg.h,v 1.1 1999/09/13 10:31:14 itojun Exp $ */
      2  1.1  itojun 
      3  1.1  itojun /*-
      4  1.1  itojun  * Copyright (C) 1999 SAITOH Masanobu.  All rights reserved.
      5  1.1  itojun  *
      6  1.1  itojun  * Redistribution and use in source and binary forms, with or without
      7  1.1  itojun  * modification, are permitted provided that the following conditions
      8  1.1  itojun  * are met:
      9  1.1  itojun  * 1. Redistributions of source code must retain the above copyright
     10  1.1  itojun  *    notice, this list of conditions and the following disclaimer.
     11  1.1  itojun  * 2. Redistributions in binary form must reproduce the above copyright
     12  1.1  itojun  *    notice, this list of conditions and the following disclaimer in the
     13  1.1  itojun  *    documentation and/or other materials provided with the distribution.
     14  1.1  itojun  * 3. The name of the author may not be used to endorse or promote products
     15  1.1  itojun  *    derived from this software without specific prior written permission.
     16  1.1  itojun  *
     17  1.1  itojun  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
     18  1.1  itojun  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
     19  1.1  itojun  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
     20  1.1  itojun  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
     21  1.1  itojun  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
     22  1.1  itojun  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
     23  1.1  itojun  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
     24  1.1  itojun  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     25  1.1  itojun  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
     26  1.1  itojun  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     27  1.1  itojun  */
     28  1.1  itojun 
     29  1.1  itojun #ifndef _SH3_BSCREG_H_
     30  1.1  itojun #define _SH3_BSCREG_H_
     31  1.1  itojun 
     32  1.1  itojun #ifndef BYTE_ORDER
     33  1.1  itojun #error Define BYTE_ORDER!
     34  1.1  itojun #endif
     35  1.1  itojun 
     36  1.1  itojun /*
     37  1.1  itojun  * Bus State Controller
     38  1.1  itojun  */
     39  1.1  itojun 
     40  1.1  itojun #if !defined(SH4)
     41  1.1  itojun 
     42  1.1  itojun /* SH3 definitions */
     43  1.1  itojun 
     44  1.1  itojun struct sh3_bsc {
     45  1.1  itojun 	/* Bus Control Register 1 (0xffffff60) */
     46  1.1  itojun 	union {
     47  1.1  itojun 		unsigned short	 WORD;	/* Word Access */
     48  1.1  itojun 		struct {		/* Bit	Access */
     49  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
     50  1.1  itojun 			/* Bit 15..0 */
     51  1.1  itojun 			unsigned short	      :3;
     52  1.1  itojun 			unsigned short HIZCNT :1;
     53  1.1  itojun 			unsigned short ENDIAN :1;
     54  1.1  itojun 			unsigned short A0BST1 :1;
     55  1.1  itojun 			unsigned short A0BST0 :1;
     56  1.1  itojun 			unsigned short A5BST1 :1;
     57  1.1  itojun 			unsigned short A5BST0 :1;
     58  1.1  itojun 			unsigned short A6BST1 :1;
     59  1.1  itojun 			unsigned short A6BST0 :1;
     60  1.1  itojun 			unsigned short DRAMTP2:1;
     61  1.1  itojun 			unsigned short DRAMTP1:1;
     62  1.1  itojun 			unsigned short DRAMTP0:1;
     63  1.1  itojun 			unsigned short A5PCM  :1;
     64  1.1  itojun 			unsigned short A6PCM  :1;
     65  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
     66  1.1  itojun 			/* Bit 0..15 */
     67  1.1  itojun 			unsigned short A6PCM  :1;
     68  1.1  itojun 			unsigned short A5PCM  :1;
     69  1.1  itojun 			unsigned short DRAMTP0:1;
     70  1.1  itojun 			unsigned short DRAMTP1:1;
     71  1.1  itojun 			unsigned short DRAMTP2:1;
     72  1.1  itojun 			unsigned short A6BST0 :1;
     73  1.1  itojun 			unsigned short A6BST1 :1;
     74  1.1  itojun 			unsigned short A5BST0 :1;
     75  1.1  itojun 			unsigned short A5BST1 :1;
     76  1.1  itojun 			unsigned short A0BST0 :1;
     77  1.1  itojun 			unsigned short A0BST1 :1;
     78  1.1  itojun 			unsigned short ENDIAN :1;
     79  1.1  itojun 			unsigned short HIZCNT :1;
     80  1.1  itojun 			unsigned short	      :3;
     81  1.1  itojun #endif
     82  1.1  itojun 		} BIT;
     83  1.1  itojun 	} BCR1;
     84  1.1  itojun 
     85  1.1  itojun 	/* Bus Control Register 2 (0xffffff62) */
     86  1.1  itojun 	union {				/* BCR */
     87  1.1  itojun 		unsigned short	 WORD;	/* Word Access */
     88  1.1  itojun 		struct {		/* Bit	Access */
     89  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
     90  1.1  itojun 			/* Bit 15..0 */
     91  1.1  itojun 			unsigned short	      :2;
     92  1.1  itojun 			unsigned short A6SZ1  :1;
     93  1.1  itojun 			unsigned short A6SZ0  :1;
     94  1.1  itojun 			unsigned short A5SZ1  :1;
     95  1.1  itojun 			unsigned short A5SZ0  :1;
     96  1.1  itojun 			unsigned short A4SZ1  :1;
     97  1.1  itojun 			unsigned short A4SZ0  :1;
     98  1.1  itojun 			unsigned short A3SZ1  :1;
     99  1.1  itojun 			unsigned short A3SZ0  :1;
    100  1.1  itojun 			unsigned short A2SZ1  :1;
    101  1.1  itojun 			unsigned short A2SZ0  :1;
    102  1.1  itojun 			unsigned short A1SZ1  :1;
    103  1.1  itojun 			unsigned short A1SZ0  :1;
    104  1.1  itojun 			unsigned short	      :1;
    105  1.1  itojun 			unsigned short PORTBN :1;
    106  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    107  1.1  itojun 			/* Bit 0..15 */
    108  1.1  itojun 			unsigned short PORTBN :1;
    109  1.1  itojun 			unsigned short	      :1;
    110  1.1  itojun 			unsigned short A1SZ0  :1;
    111  1.1  itojun 			unsigned short A1SZ1  :1;
    112  1.1  itojun 			unsigned short A2SZ0  :1;
    113  1.1  itojun 			unsigned short A2SZ1  :1;
    114  1.1  itojun 			unsigned short A3SZ0  :1;
    115  1.1  itojun 			unsigned short A3SZ1  :1;
    116  1.1  itojun 			unsigned short A4SZ0  :1;
    117  1.1  itojun 			unsigned short A4SZ1  :1;
    118  1.1  itojun 			unsigned short A5SZ0  :1;
    119  1.1  itojun 			unsigned short A5SZ1  :1;
    120  1.1  itojun 			unsigned short A6SZ0  :1;
    121  1.1  itojun 			unsigned short A6SZ1  :1;
    122  1.1  itojun 			unsigned short	      :2;
    123  1.1  itojun #endif
    124  1.1  itojun 		} BIT;
    125  1.1  itojun 	} BCR2;
    126  1.1  itojun 
    127  1.1  itojun 	/* Wait state Control Register 1 (0xffffff64) */
    128  1.1  itojun 	union {
    129  1.1  itojun 		unsigned short	 WORD;	/* Word Access */
    130  1.1  itojun 		struct {		/* Bit	Access */
    131  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
    132  1.1  itojun 			/* Bit 15..0 */
    133  1.1  itojun 			unsigned short	      :2;
    134  1.1  itojun 			unsigned short A6IW1  :1;
    135  1.1  itojun 			unsigned short A6IW0  :1;
    136  1.1  itojun 			unsigned short A5IW1  :1;
    137  1.1  itojun 			unsigned short A5IW0  :1;
    138  1.1  itojun 			unsigned short A4IW1  :1;
    139  1.1  itojun 			unsigned short A4IW0  :1;
    140  1.1  itojun 			unsigned short A3IW1  :1;
    141  1.1  itojun 			unsigned short A3IW0  :1;
    142  1.1  itojun 			unsigned short A2IW1  :1;
    143  1.1  itojun 			unsigned short A2IW0  :1;
    144  1.1  itojun 			unsigned short A1IW1  :1;
    145  1.1  itojun 			unsigned short A1IW0  :1;
    146  1.1  itojun 			unsigned short A0IW1  :1;
    147  1.1  itojun 			unsigned short A0IW0  :1;
    148  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    149  1.1  itojun 			/* Bit 0..15 */
    150  1.1  itojun 			unsigned short A0IW0  :1;
    151  1.1  itojun 			unsigned short A0IW1  :1;
    152  1.1  itojun 			unsigned short A1IW0  :1;
    153  1.1  itojun 			unsigned short A1IW1  :1;
    154  1.1  itojun 			unsigned short A2IW0  :1;
    155  1.1  itojun 			unsigned short A2IW1  :1;
    156  1.1  itojun 			unsigned short A3IW0  :1;
    157  1.1  itojun 			unsigned short A3IW1  :1;
    158  1.1  itojun 			unsigned short A4IW0  :1;
    159  1.1  itojun 			unsigned short A4IW1  :1;
    160  1.1  itojun 			unsigned short A5IW0  :1;
    161  1.1  itojun 			unsigned short A5IW1  :1;
    162  1.1  itojun 			unsigned short A6IW0  :1;
    163  1.1  itojun 			unsigned short A6IW1  :1;
    164  1.1  itojun 			unsigned short	      :2;
    165  1.1  itojun #endif
    166  1.1  itojun 		} BIT;
    167  1.1  itojun 	} WCR1;
    168  1.1  itojun 
    169  1.1  itojun 	/* Wait state Control Register 2 (0xffffff66) */
    170  1.1  itojun 	union {
    171  1.1  itojun 		unsigned short	 WORD;	/* Word Access */
    172  1.1  itojun 		struct {		/* Bit	Access */
    173  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
    174  1.1  itojun 			/* Bit 15..0 */
    175  1.1  itojun 			unsigned short A6W2   :1;
    176  1.1  itojun 			unsigned short A6W1   :1;
    177  1.1  itojun 			unsigned short A6W0   :1;
    178  1.1  itojun 			unsigned short A5W2   :1;
    179  1.1  itojun 			unsigned short A5W1   :1;
    180  1.1  itojun 			unsigned short A5W0   :1;
    181  1.1  itojun 			unsigned short A4W2   :1;
    182  1.1  itojun 			unsigned short A4W1   :1;
    183  1.1  itojun 			unsigned short A4W0   :1;
    184  1.1  itojun 			unsigned short A3W1   :1;
    185  1.1  itojun 			unsigned short A3W0   :1;
    186  1.1  itojun 			unsigned short A21W1  :1;
    187  1.1  itojun 			unsigned short A21W0  :1;
    188  1.1  itojun 			unsigned short A0W2   :1;
    189  1.1  itojun 			unsigned short A0W1   :1;
    190  1.1  itojun 			unsigned short A0W0   :1;
    191  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    192  1.1  itojun 			/* Bit 0..15 */
    193  1.1  itojun 			unsigned short A0W0   :1;
    194  1.1  itojun 			unsigned short A0W1   :1;
    195  1.1  itojun 			unsigned short A0W2   :1;
    196  1.1  itojun 			unsigned short A21W0  :1;
    197  1.1  itojun 			unsigned short A21W1  :1;
    198  1.1  itojun 			unsigned short A3W0   :1;
    199  1.1  itojun 			unsigned short A3W1   :1;
    200  1.1  itojun 			unsigned short A4W0   :1;
    201  1.1  itojun 			unsigned short A4W1   :1;
    202  1.1  itojun 			unsigned short A4W2   :1;
    203  1.1  itojun 			unsigned short A5W0   :1;
    204  1.1  itojun 			unsigned short A5W1   :1;
    205  1.1  itojun 			unsigned short A5W2   :1;
    206  1.1  itojun 			unsigned short A6W0   :1;
    207  1.1  itojun 			unsigned short A6W1   :1;
    208  1.1  itojun 			unsigned short A6W2   :1;
    209  1.1  itojun #endif
    210  1.1  itojun 		} BIT;
    211  1.1  itojun 	} WCR2;
    212  1.1  itojun 
    213  1.1  itojun 	/*  Memory Control Register (0xffffff68) */
    214  1.1  itojun 	union {
    215  1.1  itojun 		unsigned short	 WORD;	/* Word Access */
    216  1.1  itojun 		struct {		/* Bit	Access */
    217  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
    218  1.1  itojun 			/* Bit 15..0 */
    219  1.1  itojun 			unsigned short TPC1   :1;
    220  1.1  itojun 			unsigned short TPC0   :1;
    221  1.1  itojun 			unsigned short RCD1   :1;
    222  1.1  itojun 			unsigned short RCD0   :1;
    223  1.1  itojun 			unsigned short TRWL1  :1;
    224  1.1  itojun 			unsigned short TRWL0  :1;
    225  1.1  itojun 			unsigned short TRAS1  :1;
    226  1.1  itojun 			unsigned short TRAS0  :1;
    227  1.1  itojun 			unsigned short	      :1;
    228  1.1  itojun 			unsigned short BE     :1;
    229  1.1  itojun 			unsigned short SZ     :1;
    230  1.1  itojun 			unsigned short AMX1   :1;
    231  1.1  itojun 			unsigned short AMX0   :1;
    232  1.1  itojun 			unsigned short RFSH   :1;
    233  1.1  itojun 			unsigned short RMODE  :1;
    234  1.1  itojun 			unsigned short EDOMD  :1;
    235  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    236  1.1  itojun 			/* Bit 0..15 */
    237  1.1  itojun 			unsigned short EDOMD  :1;
    238  1.1  itojun 			unsigned short RMODE  :1;
    239  1.1  itojun 			unsigned short RFSH   :1;
    240  1.1  itojun 			unsigned short AMX0   :1;
    241  1.1  itojun 			unsigned short AMX1   :1;
    242  1.1  itojun 			unsigned short SZ     :1;
    243  1.1  itojun 			unsigned short BE     :1;
    244  1.1  itojun 			unsigned short	      :1;
    245  1.1  itojun 			unsigned short TRAS0  :1;
    246  1.1  itojun 			unsigned short TRAS1  :1;
    247  1.1  itojun 			unsigned short TRWL0  :1;
    248  1.1  itojun 			unsigned short TRWL1  :1;
    249  1.1  itojun 			unsigned short RCD0   :1;
    250  1.1  itojun 			unsigned short RCD1   :1;
    251  1.1  itojun 			unsigned short TPC0   :1;
    252  1.1  itojun 			unsigned short TPC1   :1;
    253  1.1  itojun #endif
    254  1.1  itojun 		} BIT;
    255  1.1  itojun 	} MCR;
    256  1.1  itojun 
    257  1.1  itojun 	/* Dram Control Register (0xffffff6a) */
    258  1.1  itojun 	union {
    259  1.1  itojun 		unsigned short	 WORD;	/* Word Access */
    260  1.1  itojun 		struct {		/* Bit	Access */
    261  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
    262  1.1  itojun 			/* Bit 15..0 */
    263  1.1  itojun 			unsigned short TPC1   :1;
    264  1.1  itojun 			unsigned short TPC0   :1;
    265  1.1  itojun 			unsigned short RCD1   :1;
    266  1.1  itojun 			unsigned short RCD0   :1;
    267  1.1  itojun 			unsigned short	      :2;
    268  1.1  itojun 			unsigned short TRAS1  :1;
    269  1.1  itojun 			unsigned short TRAS0  :1;
    270  1.1  itojun 			unsigned short	      :1;
    271  1.1  itojun 			unsigned short BE     :1;
    272  1.1  itojun 			unsigned short	      :1;
    273  1.1  itojun 			unsigned short AMX1   :1;
    274  1.1  itojun 			unsigned short AMX0   :1;
    275  1.1  itojun 			unsigned short RFSH   :1;
    276  1.1  itojun 			unsigned short RMODE  :1;
    277  1.1  itojun 			unsigned short	      :1;
    278  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    279  1.1  itojun 			/* Bit 0..15 */
    280  1.1  itojun 			unsigned short	      :1;
    281  1.1  itojun 			unsigned short RMODE  :1;
    282  1.1  itojun 			unsigned short RFSH   :1;
    283  1.1  itojun 			unsigned short AMX0   :1;
    284  1.1  itojun 			unsigned short AMX1   :1;
    285  1.1  itojun 			unsigned short	      :1;
    286  1.1  itojun 			unsigned short BE     :1;
    287  1.1  itojun 			unsigned short	      :1;
    288  1.1  itojun 			unsigned short TRAS0  :1;
    289  1.1  itojun 			unsigned short TRAS1  :1;
    290  1.1  itojun 			unsigned short	      :2;
    291  1.1  itojun 			unsigned short RCD0   :1;
    292  1.1  itojun 			unsigned short RCD1   :1;
    293  1.1  itojun 			unsigned short TPC0   :1;
    294  1.1  itojun 			unsigned short TPC1   :1;
    295  1.1  itojun #endif
    296  1.1  itojun 		} BIT;
    297  1.1  itojun 	} DCR;
    298  1.1  itojun 
    299  1.1  itojun 	/* PCMCIA Control Register (0xffffff6c) */
    300  1.1  itojun 	union {
    301  1.1  itojun 		unsigned short	 WORD;	/* Word Access */
    302  1.1  itojun 		struct {		/* Bit	Access */
    303  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
    304  1.1  itojun 			/* Bit 15..0 */
    305  1.1  itojun 			unsigned short	      :8;
    306  1.1  itojun 			unsigned short A5TED1 :1;
    307  1.1  itojun 			unsigned short A5TED0 :1;
    308  1.1  itojun 			unsigned short A6TED1 :1;
    309  1.1  itojun 			unsigned short A6TED0 :1;
    310  1.1  itojun 			unsigned short A5TEH1 :1;
    311  1.1  itojun 			unsigned short A5TEH0 :1;
    312  1.1  itojun 			unsigned short A6TEH1 :1;
    313  1.1  itojun 			unsigned short A6TEH0 :1;
    314  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    315  1.1  itojun 			/* Bit 0..15 */
    316  1.1  itojun 			unsigned short A6TEH0 :1;
    317  1.1  itojun 			unsigned short A6TEH1 :1;
    318  1.1  itojun 			unsigned short A5TEH0 :1;
    319  1.1  itojun 			unsigned short A5TEH1 :1;
    320  1.1  itojun 			unsigned short A6TED0 :1;
    321  1.1  itojun 			unsigned short A6TED1 :1;
    322  1.1  itojun 			unsigned short A5TED0 :1;
    323  1.1  itojun 			unsigned short A5TED1 :1;
    324  1.1  itojun 			unsigned short	      :8;
    325  1.1  itojun #endif
    326  1.1  itojun 		} BIT;
    327  1.1  itojun 	} PCR;
    328  1.1  itojun 
    329  1.1  itojun 	/* Refresh Timer Control/Status Register (0xffffff6e) */
    330  1.1  itojun 	union {
    331  1.1  itojun 		unsigned short	 WORD;	/* Word Access */
    332  1.1  itojun 		struct {		/* Bit	Access */
    333  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
    334  1.1  itojun 			/* Bit 15..0 */
    335  1.1  itojun 			unsigned short	      :8;
    336  1.1  itojun 			unsigned short CMF    :1;
    337  1.1  itojun 			unsigned short CMIE   :1;
    338  1.1  itojun 			unsigned short CKS2   :1;
    339  1.1  itojun 			unsigned short CKS1   :1;
    340  1.1  itojun 			unsigned short CKS0   :1;
    341  1.1  itojun 			unsigned short OVF    :1;
    342  1.1  itojun 			unsigned short OVIE   :1;
    343  1.1  itojun 			unsigned short LMTS   :1;
    344  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    345  1.1  itojun 			/* Bit 0..15 */
    346  1.1  itojun 			unsigned short LMTS   :1;
    347  1.1  itojun 			unsigned short OVIE   :1;
    348  1.1  itojun 			unsigned short OVF    :1;
    349  1.1  itojun 			unsigned short CKS0   :1;
    350  1.1  itojun 			unsigned short CKS1   :1;
    351  1.1  itojun 			unsigned short CKS2   :1;
    352  1.1  itojun 			unsigned short CMIE   :1;
    353  1.1  itojun 			unsigned short CMF    :1;
    354  1.1  itojun 			unsigned short	      :8;
    355  1.1  itojun #endif
    356  1.1  itojun 		} BIT;
    357  1.1  itojun 	} RTCSR;
    358  1.1  itojun 
    359  1.1  itojun 	/* Refresh Timer CouNTer (0xffffff70) */
    360  1.1  itojun 	unsigned short	  RTCNT;
    361  1.1  itojun 
    362  1.1  itojun 	/* Refresh Time Constant cOunteR (0xffffff72) */
    363  1.1  itojun 	unsigned short	  RTCOR;
    364  1.1  itojun 
    365  1.1  itojun 	/* Refresh Count Register (0xffffff74) */
    366  1.1  itojun 	unsigned short	  RFCR;
    367  1.1  itojun };
    368  1.1  itojun 
    369  1.1  itojun /* BSC	Address */
    370  1.1  itojun #define SHREG_BSC	(*(volatile struct sh3_bsc *)	0xFFFFFF60)
    371  1.1  itojun 
    372  1.1  itojun #else
    373  1.1  itojun 
    374  1.1  itojun /* SH4 definitions */
    375  1.1  itojun 
    376  1.1  itojun struct sh3_bsc {
    377  1.1  itojun 	/* Bus Control Register 1 0xff800000) */
    378  1.1  itojun 	union {
    379  1.1  itojun 		unsigned int	 WORD;	/* Word Access */
    380  1.1  itojun 		struct {		/* Bit	Access */
    381  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
    382  1.1  itojun  			/* Bit 31..0 */
    383  1.1  itojun 			unsigned int ENDIAN	:1;
    384  1.1  itojun 			unsigned int MASTER	:1;
    385  1.1  itojun 			unsigned int A0MPX	:1;
    386  1.1  itojun 			unsigned int		:3;
    387  1.1  itojun 			unsigned int IPUP	:1;
    388  1.1  itojun 			unsigned int OPUP	:1;
    389  1.1  itojun 			unsigned int		:2;
    390  1.1  itojun 			unsigned int A1MBC	:1;
    391  1.1  itojun 			unsigned int A4MBC	:1;
    392  1.1  itojun 			unsigned int BREQEN	:1;
    393  1.1  itojun 			unsigned int PSHR	:1;
    394  1.1  itojun 			unsigned int MEMMPX	:1;
    395  1.1  itojun 			unsigned int		:1;
    396  1.1  itojun 			unsigned int HIZMEM	:1;
    397  1.1  itojun 			unsigned int HIZCNT	:1;
    398  1.1  itojun 			unsigned int A0BST2	:1;
    399  1.1  itojun 			unsigned int A0BST1	:1;
    400  1.1  itojun 			unsigned int A0BST0	:1;
    401  1.1  itojun 			unsigned int A5BST2	:1;
    402  1.1  itojun 			unsigned int A5BST1	:1;
    403  1.1  itojun 			unsigned int A5BST0	:1;
    404  1.1  itojun 			unsigned int A6BST2	:1;
    405  1.1  itojun 			unsigned int A6BST1	:1;
    406  1.1  itojun 			unsigned int A6BST0	:1;
    407  1.1  itojun 			unsigned int DRAMTP2	:1;
    408  1.1  itojun 			unsigned int DRAMTP1	:1;
    409  1.1  itojun 			unsigned int DRAMTP0	:1;
    410  1.1  itojun 			unsigned int		:1;
    411  1.1  itojun 			unsigned int A56PCM	:1;
    412  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    413  1.1  itojun 			/* Bit 0..31 */
    414  1.1  itojun 			unsigned int A56PCM	:1;
    415  1.1  itojun 			unsigned int		:1;
    416  1.1  itojun 			unsigned int DRAMTP0	:1;
    417  1.1  itojun 			unsigned int DRAMTP1	:1;
    418  1.1  itojun 			unsigned int DRAMTP2	:1;
    419  1.1  itojun 			unsigned int A6BST0	:1;
    420  1.1  itojun 			unsigned int A6BST1	:1;
    421  1.1  itojun 			unsigned int A6BST2	:1;
    422  1.1  itojun 			unsigned int A5BST0	:1;
    423  1.1  itojun 			unsigned int A5BST1	:1;
    424  1.1  itojun 			unsigned int A5BST2	:1;
    425  1.1  itojun 			unsigned int A0BST0	:1;
    426  1.1  itojun 			unsigned int A0BST1	:1;
    427  1.1  itojun 			unsigned int A0BST2	:1;
    428  1.1  itojun 			unsigned int HIZCNT	:1;
    429  1.1  itojun 			unsigned int HIZMEM	:1;
    430  1.1  itojun 			unsigned int		:1;
    431  1.1  itojun 			unsigned int MEMMPX	:1;
    432  1.1  itojun 			unsigned int PSHR	:1;
    433  1.1  itojun 			unsigned int BREQEN	:1;
    434  1.1  itojun 			unsigned int A4MBC	:1;
    435  1.1  itojun 			unsigned int A1MBC	:1;
    436  1.1  itojun 			unsigned int		:2;
    437  1.1  itojun 			unsigned int OPUP	:1;
    438  1.1  itojun 			unsigned int IPUP	:1;
    439  1.1  itojun 			unsigned int		:3;
    440  1.1  itojun 			unsigned int A0MPX	:1;
    441  1.1  itojun 			unsigned int MASTER	:1;
    442  1.1  itojun 			unsigned int ENDIAN	:1;
    443  1.1  itojun #endif
    444  1.1  itojun 		} BIT;
    445  1.1  itojun 	} BCR1;
    446  1.1  itojun 
    447  1.1  itojun 	/* Bus Control Register 2 0xff800004) */
    448  1.1  itojun 	union {
    449  1.1  itojun 		unsigned short	 WORD;	/* Word Access */
    450  1.1  itojun 		struct {		/* Bit	Access */
    451  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
    452  1.1  itojun 			/* Bit 15..0 */
    453  1.1  itojun 			unsigned short A0SZ1	:1;
    454  1.1  itojun 			unsigned short A0SZ0	:1;
    455  1.1  itojun 			unsigned short A6SZ1	:1;
    456  1.1  itojun 			unsigned short A6SZ0	:1;
    457  1.1  itojun 			unsigned short A5SZ1	:1;
    458  1.1  itojun 			unsigned short A5SZ0	:1;
    459  1.1  itojun 			unsigned short A4SZ1	:1;
    460  1.1  itojun 			unsigned short A4SZ0	:1;
    461  1.1  itojun 			unsigned short A3SZ1	:1;
    462  1.1  itojun 			unsigned short A3SZ0	:1;
    463  1.1  itojun 			unsigned short A2SZ1	:1;
    464  1.1  itojun 			unsigned short A2SZ0	:1;
    465  1.1  itojun 			unsigned short A1SZ1	:1;
    466  1.1  itojun 			unsigned short A1SZ0	:1;
    467  1.1  itojun 			unsigned short		:1;
    468  1.1  itojun 			unsigned short PORTBN	:1;
    469  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    470  1.1  itojun 			/* Bit 0..15 */
    471  1.1  itojun 			unsigned short PORTBN	:1;
    472  1.1  itojun 			unsigned short		:1;
    473  1.1  itojun 			unsigned short A1SZ0	:1;
    474  1.1  itojun 			unsigned short A1SZ1	:1;
    475  1.1  itojun 			unsigned short A2SZ0	:1;
    476  1.1  itojun 			unsigned short A2SZ1	:1;
    477  1.1  itojun 			unsigned short A3SZ0	:1;
    478  1.1  itojun 			unsigned short A3SZ1	:1;
    479  1.1  itojun 			unsigned short A4SZ0	:1;
    480  1.1  itojun 			unsigned short A4SZ1	:1;
    481  1.1  itojun 			unsigned short A5SZ0	:1;
    482  1.1  itojun 			unsigned short A5SZ1	:1;
    483  1.1  itojun 			unsigned short A6SZ0	:1;
    484  1.1  itojun 			unsigned short A6SZ1	:1;
    485  1.1  itojun 			unsigned short A0SZ0	:1;
    486  1.1  itojun 			unsigned short A0SZ1	:1;
    487  1.1  itojun #endif
    488  1.1  itojun 		} BIT;
    489  1.1  itojun 	} BCR2;
    490  1.1  itojun 
    491  1.1  itojun 	/* Wait state Control Register 1 0xff800008) */
    492  1.1  itojun 	union {
    493  1.1  itojun 		unsigned int	 WORD;	/* Word Access */
    494  1.1  itojun 		struct {		/* Bit	Access */
    495  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
    496  1.1  itojun 			/* Bit 31..0 */
    497  1.1  itojun 			unsigned int		:1;
    498  1.1  itojun 			unsigned int DMAIW2	:1;
    499  1.1  itojun 			unsigned int DMAIW1	:1;
    500  1.1  itojun 			unsigned int DMAIW0	:1;
    501  1.1  itojun 			unsigned int		:1;
    502  1.1  itojun 			unsigned int A6IW2	:1;
    503  1.1  itojun 			unsigned int A6IW1	:1;
    504  1.1  itojun 			unsigned int A6IW0	:1;
    505  1.1  itojun 			unsigned int		:1;
    506  1.1  itojun 			unsigned int A5IW2	:1;
    507  1.1  itojun 			unsigned int A5IW1	:1;
    508  1.1  itojun 			unsigned int A5IW0	:1;
    509  1.1  itojun 			unsigned int		:1;
    510  1.1  itojun 			unsigned int A4IW2	:1;
    511  1.1  itojun 			unsigned int A4IW1	:1;
    512  1.1  itojun 			unsigned int A4IW0	:1;
    513  1.1  itojun 			unsigned int		:1;
    514  1.1  itojun 			unsigned int A3IW2	:1;
    515  1.1  itojun 			unsigned int A3IW1	:1;
    516  1.1  itojun 			unsigned int A3IW0	:1;
    517  1.1  itojun 			unsigned int		:1;
    518  1.1  itojun 			unsigned int A2IW2	:1;
    519  1.1  itojun 			unsigned int A2IW1	:1;
    520  1.1  itojun 			unsigned int A2IW0	:1;
    521  1.1  itojun 			unsigned int		:1;
    522  1.1  itojun 			unsigned int A1IW2	:1;
    523  1.1  itojun 			unsigned int A1IW1	:1;
    524  1.1  itojun 			unsigned int A1IW0	:1;
    525  1.1  itojun 			unsigned int		:1;
    526  1.1  itojun 			unsigned int A0IW2	:1;
    527  1.1  itojun 			unsigned int A0IW1	:1;
    528  1.1  itojun 			unsigned int A0IW0	:1;
    529  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    530  1.1  itojun 			/* Bit 0..31 */
    531  1.1  itojun 			unsigned int A0IW0	:1;
    532  1.1  itojun 			unsigned int A0IW1	:1;
    533  1.1  itojun 			unsigned int A0IW2	:1;
    534  1.1  itojun 			unsigned int		:1;
    535  1.1  itojun 			unsigned int A1IW0	:1;
    536  1.1  itojun 			unsigned int A1IW1	:1;
    537  1.1  itojun 			unsigned int A1IW2	:1;
    538  1.1  itojun 			unsigned int		:1;
    539  1.1  itojun 			unsigned int A2IW0	:1;
    540  1.1  itojun 			unsigned int A2IW1	:1;
    541  1.1  itojun 			unsigned int A2IW2	:1;
    542  1.1  itojun 			unsigned int		:1;
    543  1.1  itojun 			unsigned int A3IW0	:1;
    544  1.1  itojun 			unsigned int A3IW1	:1;
    545  1.1  itojun 			unsigned int A3IW2	:1;
    546  1.1  itojun 			unsigned int		:1;
    547  1.1  itojun 			unsigned int A4IW0	:1;
    548  1.1  itojun 			unsigned int A4IW1	:1;
    549  1.1  itojun 			unsigned int A4IW2	:1;
    550  1.1  itojun 			unsigned int		:1;
    551  1.1  itojun 			unsigned int A5IW0	:1;
    552  1.1  itojun 			unsigned int A5IW1	:1;
    553  1.1  itojun 			unsigned int A5IW2	:1;
    554  1.1  itojun 			unsigned int		:1;
    555  1.1  itojun 			unsigned int A6IW0	:1;
    556  1.1  itojun 			unsigned int A6IW1	:1;
    557  1.1  itojun 			unsigned int A6IW2	:1;
    558  1.1  itojun 			unsigned int		:1;
    559  1.1  itojun 			unsigned int DMAIW0	:1;
    560  1.1  itojun 			unsigned int DMAIW1	:1;
    561  1.1  itojun 			unsigned int DMAIW2	:1;
    562  1.1  itojun 			unsigned int		:1;
    563  1.1  itojun #endif
    564  1.1  itojun 		} BIT;
    565  1.1  itojun 	} WCR1;
    566  1.1  itojun 
    567  1.1  itojun 	/* Wait state Control Register 2 0xff80000c) */
    568  1.1  itojun 	union {
    569  1.1  itojun 		unsigned int	 WORD;	/* Word Access */
    570  1.1  itojun 		struct {		/* Bit	Access */
    571  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
    572  1.1  itojun 			/* Bit 31..0 */
    573  1.1  itojun 			unsigned int A6W2	:1;
    574  1.1  itojun 			unsigned int A6W1	:1;
    575  1.1  itojun 			unsigned int A6W0	:1;
    576  1.1  itojun 			unsigned int A6B2	:1;
    577  1.1  itojun 			unsigned int A6B1	:1;
    578  1.1  itojun 			unsigned int A6B0	:1;
    579  1.1  itojun 			unsigned int A5W2	:1;
    580  1.1  itojun 			unsigned int A5W1	:1;
    581  1.1  itojun 			unsigned int A5W0	:1;
    582  1.1  itojun 			unsigned int A5B2	:1;
    583  1.1  itojun 			unsigned int A5B1	:1;
    584  1.1  itojun 			unsigned int A5B0	:1;
    585  1.1  itojun 			unsigned int A4W2	:1;
    586  1.1  itojun 			unsigned int A4W1	:1;
    587  1.1  itojun 			unsigned int A4W0	:1;
    588  1.1  itojun 			unsigned int		:1;
    589  1.1  itojun 			unsigned int A3W2	:1;
    590  1.1  itojun 			unsigned int A3W1	:1;
    591  1.1  itojun 			unsigned int A3W0	:1;
    592  1.1  itojun 			unsigned int 		:1;
    593  1.1  itojun 			unsigned int A2W2	:1;
    594  1.1  itojun 			unsigned int A2W1	:1;
    595  1.1  itojun 			unsigned int A2W0	:1;
    596  1.1  itojun 			unsigned int A1W2	:1;
    597  1.1  itojun 			unsigned int A1W1	:1;
    598  1.1  itojun 			unsigned int A1W0	:1;
    599  1.1  itojun 			unsigned int A0W2	:1;
    600  1.1  itojun 			unsigned int A0W1	:1;
    601  1.1  itojun 			unsigned int A0W0	:1;
    602  1.1  itojun 			unsigned int A0B2	:1;
    603  1.1  itojun 			unsigned int A0B1	:1;
    604  1.1  itojun 			unsigned int A0B0	:1;
    605  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    606  1.1  itojun 			/* Bit 0..31 */
    607  1.1  itojun 			unsigned int A0B0	:1;
    608  1.1  itojun 			unsigned int A0B1	:1;
    609  1.1  itojun 			unsigned int A0B2	:1;
    610  1.1  itojun 			unsigned int A0W0	:1;
    611  1.1  itojun 			unsigned int A0W1	:1;
    612  1.1  itojun 			unsigned int A0W2	:1;
    613  1.1  itojun 			unsigned int A1W0	:1;
    614  1.1  itojun 			unsigned int A1W1	:1;
    615  1.1  itojun 			unsigned int A1W2	:1;
    616  1.1  itojun 			unsigned int A2W0	:1;
    617  1.1  itojun 			unsigned int A2W1	:1;
    618  1.1  itojun 			unsigned int A2W2	:1;
    619  1.1  itojun 			unsigned int 		:1;
    620  1.1  itojun 			unsigned int A3W0	:1;
    621  1.1  itojun 			unsigned int A3W1	:1;
    622  1.1  itojun 			unsigned int A3W2	:1;
    623  1.1  itojun 			unsigned int 		:1;
    624  1.1  itojun 			unsigned int A4W0	:1;
    625  1.1  itojun 			unsigned int A4W1	:1;
    626  1.1  itojun 			unsigned int A4W2	:1;
    627  1.1  itojun 			unsigned int A5B0	:1;
    628  1.1  itojun 			unsigned int A5B1	:1;
    629  1.1  itojun 			unsigned int A5B2	:1;
    630  1.1  itojun 			unsigned int A5W0	:1;
    631  1.1  itojun 			unsigned int A5W1	:1;
    632  1.1  itojun 			unsigned int A5W2	:1;
    633  1.1  itojun 			unsigned int A6B0	:1;
    634  1.1  itojun 			unsigned int A6B1	:1;
    635  1.1  itojun 			unsigned int A6B2	:1;
    636  1.1  itojun 			unsigned int A6W0	:1;
    637  1.1  itojun 			unsigned int A6W1	:1;
    638  1.1  itojun 			unsigned int A6W2	:1;
    639  1.1  itojun #endif
    640  1.1  itojun 		} BIT;
    641  1.1  itojun 	} WCR2;
    642  1.1  itojun 
    643  1.1  itojun 
    644  1.1  itojun 	/* Wait state Control Register 3 (0xff800010) */
    645  1.1  itojun 	union {
    646  1.1  itojun 		unsigned int	 WORD;	/* Word Access */
    647  1.1  itojun 		struct {		/* Bit	Access */
    648  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
    649  1.1  itojun 			/* Bit 31..0 */
    650  1.1  itojun 			unsigned int		:5;
    651  1.1  itojun 			unsigned int A6S0	:1;
    652  1.1  itojun 			unsigned int A6H1	:1;
    653  1.1  itojun 			unsigned int A6H0	:1;
    654  1.1  itojun 			unsigned int		:1;
    655  1.1  itojun 			unsigned int A5S0	:1;
    656  1.1  itojun 			unsigned int A5H1	:1;
    657  1.1  itojun 			unsigned int A5H0	:1;
    658  1.1  itojun 			unsigned int		:1;
    659  1.1  itojun 			unsigned int A4S0	:1;
    660  1.1  itojun 			unsigned int A4H1	:1;
    661  1.1  itojun 			unsigned int A4H0	:1;
    662  1.1  itojun 			unsigned int		:1;
    663  1.1  itojun 			unsigned int A3S0	:1;
    664  1.1  itojun 			unsigned int A3H1	:1;
    665  1.1  itojun 			unsigned int A3H0	:1;
    666  1.1  itojun 			unsigned int		:1;
    667  1.1  itojun 			unsigned int A2S0	:1;
    668  1.1  itojun 			unsigned int A2H1	:1;
    669  1.1  itojun 			unsigned int A2H0	:1;
    670  1.1  itojun 			unsigned int		:1;
    671  1.1  itojun 			unsigned int A1S0	:1;
    672  1.1  itojun 			unsigned int A1H1	:1;
    673  1.1  itojun 			unsigned int A1H0	:1;
    674  1.1  itojun 			unsigned int		:1;
    675  1.1  itojun 			unsigned int A0S0	:1;
    676  1.1  itojun 			unsigned int A0H1	:1;
    677  1.1  itojun 			unsigned int A0H0	:1;
    678  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    679  1.1  itojun 			/* Bit 0..31 */
    680  1.1  itojun 			unsigned int A0H0	:1;
    681  1.1  itojun 			unsigned int A0H1	:1;
    682  1.1  itojun 			unsigned int A0S0	:1;
    683  1.1  itojun 			unsigned int		:1;
    684  1.1  itojun 			unsigned int A1H0	:1;
    685  1.1  itojun 			unsigned int A1H1	:1;
    686  1.1  itojun 			unsigned int A1S0	:1;
    687  1.1  itojun 			unsigned int		:1;
    688  1.1  itojun 			unsigned int A2H0	:1;
    689  1.1  itojun 			unsigned int A2H1	:1;
    690  1.1  itojun 			unsigned int A2S0	:1;
    691  1.1  itojun 			unsigned int		:1;
    692  1.1  itojun 			unsigned int A3H0	:1;
    693  1.1  itojun 			unsigned int A3H1	:1;
    694  1.1  itojun 			unsigned int A3S0	:1;
    695  1.1  itojun 			unsigned int		:1;
    696  1.1  itojun 			unsigned int A4H0	:1;
    697  1.1  itojun 			unsigned int A4H1	:1;
    698  1.1  itojun 			unsigned int A4S0	:1;
    699  1.1  itojun 			unsigned int		:1;
    700  1.1  itojun 			unsigned int A5H0	:1;
    701  1.1  itojun 			unsigned int A5H1	:1;
    702  1.1  itojun 			unsigned int A5S0	:1;
    703  1.1  itojun 			unsigned int		:1;
    704  1.1  itojun 			unsigned int A6H0	:1;
    705  1.1  itojun 			unsigned int A6H1	:1;
    706  1.1  itojun 			unsigned int A6S0	:1;
    707  1.1  itojun 			unsigned int		:5;
    708  1.1  itojun #endif
    709  1.1  itojun 		} BIT;
    710  1.1  itojun 	} WCR3;
    711  1.1  itojun 
    712  1.1  itojun 	/*  Memory Control Register 0xff800014) */
    713  1.1  itojun 	union {
    714  1.1  itojun 		unsigned int	 WORD;	/* Word Access */
    715  1.1  itojun 		struct {		/* Bit	Access */
    716  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
    717  1.1  itojun 			/* Bit 31..0 */
    718  1.1  itojun 			unsigned int RASD	:1;
    719  1.1  itojun 			unsigned int MRSET	:1;
    720  1.1  itojun 			unsigned int TRC2	:1;
    721  1.1  itojun 			unsigned int TRC1	:1;
    722  1.1  itojun 			unsigned int TRC0	:1;
    723  1.1  itojun 			unsigned int		:3;
    724  1.1  itojun 			unsigned int TCAS	:1;
    725  1.1  itojun 			unsigned int		:1;
    726  1.1  itojun 			unsigned int TPC2	:1;
    727  1.1  itojun 			unsigned int TPC1	:1;
    728  1.1  itojun 			unsigned int TPC0	:1;
    729  1.1  itojun 			unsigned int		:1;
    730  1.1  itojun 			unsigned int RCD1	:1;
    731  1.1  itojun 			unsigned int RCD0	:1;
    732  1.1  itojun 			unsigned int TRWL2	:1;
    733  1.1  itojun 			unsigned int TRWL1	:1;
    734  1.1  itojun 			unsigned int TRWL0	:1;
    735  1.1  itojun 			unsigned int TRAS2	:1;
    736  1.1  itojun 			unsigned int TRAS1	:1;
    737  1.1  itojun 			unsigned int TRAS0	:1;
    738  1.1  itojun 			unsigned int BE		:1;
    739  1.1  itojun 			unsigned int SZ1	:1;
    740  1.1  itojun 			unsigned int SZ0	:1;
    741  1.1  itojun 			unsigned int AMXEXT	:1;
    742  1.1  itojun 			unsigned int AMX2	:1;
    743  1.1  itojun 			unsigned int AMX1	:1;
    744  1.1  itojun 			unsigned int AMX0	:1;
    745  1.1  itojun 			unsigned int RFSH	:1;
    746  1.1  itojun 			unsigned int RMODE	:1;
    747  1.1  itojun 			unsigned int EDOMODE	:1;
    748  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    749  1.1  itojun 			/* Bit 0..31 */
    750  1.1  itojun 			unsigned int EDOMODE	:1;
    751  1.1  itojun 			unsigned int RMODE	:1;
    752  1.1  itojun 			unsigned int RFSH	:1;
    753  1.1  itojun 			unsigned int AMX0	:1;
    754  1.1  itojun 			unsigned int AMX1	:1;
    755  1.1  itojun 			unsigned int AMX2	:1;
    756  1.1  itojun 			unsigned int AMXEXT	:1;
    757  1.1  itojun 			unsigned int SZ0	:1;
    758  1.1  itojun 			unsigned int SZ1	:1;
    759  1.1  itojun 			unsigned int BE		:1;
    760  1.1  itojun 			unsigned int TRAS0	:1;
    761  1.1  itojun 			unsigned int TRAS1	:1;
    762  1.1  itojun 			unsigned int TRAS2	:1;
    763  1.1  itojun 			unsigned int TRWL0	:1;
    764  1.1  itojun 			unsigned int TRWL1	:1;
    765  1.1  itojun 			unsigned int TRWL2	:1;
    766  1.1  itojun 			unsigned int RCD0	:1;
    767  1.1  itojun 			unsigned int RCD1	:1;
    768  1.1  itojun 			unsigned int		:1;
    769  1.1  itojun 			unsigned int TPC0	:1;
    770  1.1  itojun 			unsigned int TPC1	:1;
    771  1.1  itojun 			unsigned int TPC2	:1;
    772  1.1  itojun 			unsigned int		:1;
    773  1.1  itojun 			unsigned int TCAS	:1;
    774  1.1  itojun 			unsigned int		:3;
    775  1.1  itojun 			unsigned int TRC0	:1;
    776  1.1  itojun 			unsigned int TRC1	:1;
    777  1.1  itojun 			unsigned int TRC2	:1;
    778  1.1  itojun 			unsigned int MRSET	:1;
    779  1.1  itojun 			unsigned int RASD	:1;
    780  1.1  itojun #endif
    781  1.1  itojun 		} BIT;
    782  1.1  itojun 	} MCR;
    783  1.1  itojun 
    784  1.1  itojun 	/* PCMCIA Control Register 0xff800018) */
    785  1.1  itojun 	union {
    786  1.1  itojun 		unsigned short	 WORD;	/* Word Access */
    787  1.1  itojun 		struct {		/* Bit	Access */
    788  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
    789  1.1  itojun 			/* Bit 15..0 */
    790  1.1  itojun 			unsigned short A5PCW1	:1;
    791  1.1  itojun 			unsigned short A5PCW0	:1;
    792  1.1  itojun 			unsigned short A6PCW1	:1;
    793  1.1  itojun 			unsigned short A6PCW0	:1;
    794  1.1  itojun 			unsigned short A5TED2	:1;
    795  1.1  itojun 			unsigned short A5TED1	:1;
    796  1.1  itojun 			unsigned short A5TED0	:1;
    797  1.1  itojun 			unsigned short A6TED2	:1;
    798  1.1  itojun 			unsigned short A6TED1	:1;
    799  1.1  itojun 			unsigned short A6TED0	:1;
    800  1.1  itojun 			unsigned short A5TEH2	:1;
    801  1.1  itojun 			unsigned short A5TEH1	:1;
    802  1.1  itojun 			unsigned short A5TEH0	:1;
    803  1.1  itojun 			unsigned short A6TEH2	:1;
    804  1.1  itojun 			unsigned short A6TEH1	:1;
    805  1.1  itojun 			unsigned short A6TEH0	:1;
    806  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    807  1.1  itojun 			/* Bit 0..15 */
    808  1.1  itojun 			unsigned short A6TEH0	:1;
    809  1.1  itojun 			unsigned short A6TEH1	:1;
    810  1.1  itojun 			unsigned short A6TEH2	:1;
    811  1.1  itojun 			unsigned short A5TEH0	:1;
    812  1.1  itojun 			unsigned short A5TEH1	:1;
    813  1.1  itojun 			unsigned short A5TEH2	:1;
    814  1.1  itojun 			unsigned short A6TED0	:1;
    815  1.1  itojun 			unsigned short A6TED1	:1;
    816  1.1  itojun 			unsigned short A6TED2	:1;
    817  1.1  itojun 			unsigned short A5TED0	:1;
    818  1.1  itojun 			unsigned short A5TED1	:1;
    819  1.1  itojun 			unsigned short A5TED2	:1;
    820  1.1  itojun 			unsigned short A6PCW0	:1;
    821  1.1  itojun 			unsigned short A6PCW1	:1;
    822  1.1  itojun 			unsigned short A5PCW0	:1;
    823  1.1  itojun 			unsigned short A5PCW1	:1;
    824  1.1  itojun #endif
    825  1.1  itojun 		} BIT;
    826  1.1  itojun 	} PCR;
    827  1.1  itojun 
    828  1.1  itojun 	/* Refresh Timer Control/Status Register 0xff80001c) */
    829  1.1  itojun 	union {
    830  1.1  itojun 		unsigned short	 WORD;	/* Word Access */
    831  1.1  itojun 		struct {		/* Bit	Access */
    832  1.1  itojun #if BYTE_ORDER == BIG_ENDIAN
    833  1.1  itojun 			/* Bit 15..0 */
    834  1.1  itojun 			unsigned short		:8;
    835  1.1  itojun 			unsigned short CMF	:1;
    836  1.1  itojun 			unsigned short CMIE	:1;
    837  1.1  itojun 			unsigned short CKS2	:1;
    838  1.1  itojun 			unsigned short CKS1	:1;
    839  1.1  itojun 			unsigned short CKS0	:1;
    840  1.1  itojun 			unsigned short OVF	:1;
    841  1.1  itojun 			unsigned short OVIE	:1;
    842  1.1  itojun 			unsigned short LMTS	:1;
    843  1.1  itojun #else  /* BYTE_ORDER == LITTLE_ENDIAN */
    844  1.1  itojun 			/* Bit 0..15 */
    845  1.1  itojun 			unsigned short LMTS	:1;
    846  1.1  itojun 			unsigned short OVIE	:1;
    847  1.1  itojun 			unsigned short OVF	:1;
    848  1.1  itojun 			unsigned short CKS0	:1;
    849  1.1  itojun 			unsigned short CKS1	:1;
    850  1.1  itojun 			unsigned short CKS2	:1;
    851  1.1  itojun 			unsigned short CMIE	:1;
    852  1.1  itojun 			unsigned short CMF	:1;
    853  1.1  itojun 			unsigned short		:8;
    854  1.1  itojun #endif
    855  1.1  itojun 		} BIT;
    856  1.1  itojun 	} RTCSR;
    857  1.1  itojun 
    858  1.1  itojun 	/* Refresh Timer CouNTer 0xff800020) */
    859  1.1  itojun 	unsigned short	  RTCNT;
    860  1.1  itojun 
    861  1.1  itojun 	/* Refresh Time Constant cOunteR 0xff800024) */
    862  1.1  itojun 	unsigned short	  RTCOR;
    863  1.1  itojun 
    864  1.1  itojun 	/* Refresh Count Register 0xff800028) */
    865  1.1  itojun 	unsigned short	  RFCR;
    866  1.1  itojun };
    867  1.1  itojun 
    868  1.1  itojun /* BSC	Address */
    869  1.1  itojun #define SHREG_BSC	(*(volatile struct sh3_bsc *)	0xff800000)
    870  1.1  itojun 
    871  1.1  itojun #endif
    872  1.1  itojun #endif	/* !_SH3_BSCREG_H_ */
    873