Home | History | Annotate | Line # | Download | only in vr
bcureg.h revision 1.1.1.1.2.3
      1  1.1.1.1.2.3    bouyer /*	$NetBSD: bcureg.h,v 1.1.1.1.2.3 2001/04/23 09:41:44 bouyer Exp $	*/
      2          1.1  takemura 
      3          1.1  takemura /*-
      4  1.1.1.1.2.2    bouyer  * Copyright (c) 1999-2001 SATO Kazumi. All rights reserved.
      5          1.1  takemura  * Copyright (c) 1999 PocketBSD Project. All rights reserved.
      6          1.1  takemura  *
      7          1.1  takemura  * Redistribution and use in source and binary forms, with or without
      8          1.1  takemura  * modification, are permitted provided that the following conditions
      9          1.1  takemura  * are met:
     10          1.1  takemura  * 1. Redistributions of source code must retain the above copyright
     11          1.1  takemura  *    notice, this list of conditions and the following disclaimer.
     12          1.1  takemura  * 2. Redistributions in binary form must reproduce the above copyright
     13          1.1  takemura  *    notice, this list of conditions and the following disclaimer in the
     14          1.1  takemura  *    documentation and/or other materials provided with the distribution.
     15          1.1  takemura  * 3. All advertising materials mentioning features or use of this software
     16          1.1  takemura  *    must display the following acknowledgement:
     17          1.1  takemura  *	This product includes software developed by the PocketBSD project
     18          1.1  takemura  *	and its contributors.
     19          1.1  takemura  * 4. Neither the name of the project nor the names of its contributors
     20          1.1  takemura  *    may be used to endorse or promote products derived from this software
     21          1.1  takemura  *    without specific prior written permission.
     22          1.1  takemura  *
     23          1.1  takemura  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
     24          1.1  takemura  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     25          1.1  takemura  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
     26          1.1  takemura  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
     27          1.1  takemura  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     28          1.1  takemura  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     29          1.1  takemura  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     30          1.1  takemura  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
     31          1.1  takemura  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
     32          1.1  takemura  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
     33          1.1  takemura  * SUCH DAMAGE.
     34          1.1  takemura  *
     35          1.1  takemura  */
     36          1.1  takemura 
     37          1.1  takemura /*
     38          1.1  takemura  *	BCU (Bus Control Unit) Registers definitions.
     39  1.1.1.1.2.2    bouyer  *		start 0xB000000 (vr4101,4102,4111,4121)
     40  1.1.1.1.2.2    bouyer  *		start 0xA000000 (vr4181)
     41  1.1.1.1.2.2    bouyer  *		start 0xF000000 (vr4122)
     42          1.1  takemura  */
     43          1.1  takemura 
     44          1.1  takemura #define	BCUCNT1_REG_W		0x000	/* BCU Control Register 1 */
     45          1.1  takemura 
     46  1.1.1.1.2.2    bouyer #define		BCUCNT1_ROMMASK		(1<<15)	/* ROM SIZE (<= 4121,>= 4102) */
     47          1.1  takemura #define		BCUCNT1_ROM64M		(1<<15)	/* ROM SIZE 64Mbit*/
     48          1.1  takemura #define		BCUCNT1_ROM32M		(0<<15)	/* ROM SIZE 32Mbit*/
     49          1.1  takemura 
     50  1.1.1.1.2.2    bouyer #define		BCUCNT1_DRAMMASK	(1<<14)	/* DRAM SIZE (<= 4121,>= 4102) */
     51          1.1  takemura #define		BCUCNT1_DRAM64M		(1<<14)	/* DRAM SIZE 64Mbit*/
     52          1.1  takemura #define		BCUCNT1_DRAM32M		(0<<14)	/* DRAM SIZE 32Mbit*/
     53          1.1  takemura 
     54  1.1.1.1.2.3    bouyer #define		BCUCNT1_ROMSMASK	(0x3<<14) /* ROM SIZE (=4181) */
     55  1.1.1.1.2.3    bouyer #define		BCUCNT1_ROMS64M		(0x2<<14) /* ROM SIZE 64Mbit */
     56  1.1.1.1.2.3    bouyer #define		BCUCNT1_ROMS32M		(0x1<<14) /* ROM SIZE 32Mbit */
     57  1.1.1.1.2.3    bouyer 
     58  1.1.1.1.2.2    bouyer #define		BCUCNT1_ISAMLCD		(1<<13)	/* ISAM/LCD 0x0a000000 to 0xaffffff(>= 4102) */
     59          1.1  takemura #define		BCUCNT1_ISA		(1<<13)	/* ISA memory space */
     60          1.1  takemura #define		BCUCNT1_LCD		(0<<13)	/* LCD  space*/
     61          1.1  takemura 
     62  1.1.1.1.2.2    bouyer #define		BCUCNT1_PAGEMASK	(1<<12)	/* Maximum burst access size for Page Rom (<= 4121,>= 4102) */
     63          1.1  takemura #define		BCUCNT1_PAGE128		(1<<12)	/* 128bit */
     64          1.1  takemura #define		BCUCNT1_PAGE64		(0<<12)	/* 64bit */
     65          1.1  takemura 
     66  1.1.1.1.2.2    bouyer #define		BCUCNT1_PAGESIZEMASK	(3<<12)	/* PageROM PAGESIZE (= 4122) */
     67  1.1.1.1.2.2    bouyer #define		BCUCNT1_PASESIZE32	(2<<12)	/* 32 byte */
     68  1.1.1.1.2.2    bouyer #define		BCUCNT1_PASESIZE16	(1<<12)	/* 16 byte */
     69  1.1.1.1.2.2    bouyer #define		BCUCNT1_PASESIZE8	(0<<12)	/* 8 byte */
     70  1.1.1.1.2.2    bouyer 
     71  1.1.1.1.2.2    bouyer #define		BCUCNT1_PAGE2MASK	(1<<10)	/* (<= 4122,>= 4102) */
     72          1.1  takemura #define		BCUCNT1_PAGE2PAGE	(1<<10)	/* Page ROM */
     73          1.1  takemura #define		BCUCNT1_PAGE2ORD	(0<<10)	/* Prginary ROM */
     74          1.1  takemura 
     75  1.1.1.1.2.2    bouyer #define		BCUCNT1_PAGE0MASK	(1<<8)	/* (<= 4122,>= 4102) */
     76          1.1  takemura #define		BCUCNT1_PAGE0PAGE	(1<<8)	/* Page ROM */
     77          1.1  takemura #define		BCUCNT1_PAGE0ORD	(0<<8)	/* Prginary ROM */
     78          1.1  takemura 
     79  1.1.1.1.2.2    bouyer #define		BCUCNT1_REFMASK		(1<<7)	/* DRAM refresh interval (= 4101) */
     80  1.1.1.1.2.2    bouyer #define		BCUCNT1_REF1024		(1<<7)	/* 1024 cycles/128ms */
     81  1.1.1.1.2.2    bouyer #define		BCUCNT1_REF4096		(0<<7)	/* 4096 cycles/128ms */
     82  1.1.1.1.2.2    bouyer 
     83  1.1.1.1.2.2    bouyer #define		BCUCNT1_ROMWEN2		(1<<6)	/* Enable Flash memory write ROM 2 (<= 4122,>= 4102) */
     84          1.1  takemura #define		BCUCNT1_ROMWEN2EN	(1<<6)	/* Enable */
     85          1.1  takemura #define		BCUCNT1_ROMWEN2DS	(0<<6)	/* Prohibit */
     86          1.1  takemura 
     87  1.1.1.1.2.2    bouyer #define		BCUCNT1_PAGEROM		(1<<6)	/* Enable page ROM access (= 4101) */
     88  1.1.1.1.2.2    bouyer #define		BCUCNT1_PAGEROMEN	(1<<6)	/* Page ROM */
     89  1.1.1.1.2.2    bouyer #define		BCUCNT1_PAGEROMDIS	(0<<6)	/* not Page ROM */
     90  1.1.1.1.2.2    bouyer 
     91  1.1.1.1.2.2    bouyer #define		BCUCNT1_ROMWEN		(1<<5)	/* Enable Flash memory write ROM 0 (= 4101) */
     92  1.1.1.1.2.2    bouyer #define		BCUCNT1_ROMWENEN	(1<<5)	/* Enable */
     93  1.1.1.1.2.2    bouyer #define		BCUCNT1_ROMWENDS	(0<<5)	/* Prohibit */
     94  1.1.1.1.2.2    bouyer 
     95  1.1.1.1.2.3    bouyer #define		BCUCNT1_ROMWEN0		(1<<4)	/* Enable Flash memory write ROM 0 (<= 4122,>= 4102, =4181) */
     96          1.1  takemura #define		BCUCNT1_ROMWEN0EN	(1<<4)	/* Enable */
     97          1.1  takemura #define		BCUCNT1_ROMWEN0DS	(0<<4)	/* Prohibit */
     98          1.1  takemura 
     99  1.1.1.1.2.2    bouyer #define		BCUCNT1_SRFSTAT		(1<<4)	/* DRAM refresh mode (= 4101) */
    100  1.1.1.1.2.2    bouyer #define		BCUCNT1_SRFSTATSRF	(1<<4)	/* self refresh */
    101  1.1.1.1.2.2    bouyer #define		BCUCNT1_SRFSTATCBR	(0<<4)	/* CBR refresh */
    102  1.1.1.1.2.2    bouyer 
    103  1.1.1.1.2.2    bouyer #define		BCUCNT1_BCPUR		(1<<3)	/* CPU bus cycle control (= 4101) */
    104  1.1.1.1.2.2    bouyer #define		BCUCNT1_BCPUREN		(1<<3)	/* CPU bus cycle control enable */
    105  1.1.1.1.2.2    bouyer #define		BCUCNT1_BCPURDIS	(0<<3)	/* CPU bus cycle control disable */
    106  1.1.1.1.2.2    bouyer 
    107  1.1.1.1.2.2    bouyer #define		BCUCNT1_HLD		(1<<2)	/* Bus hold enable (= 4122) */
    108  1.1.1.1.2.2    bouyer #define		BCUCNT1_HLDEN		(1<<2)	/* enable */
    109  1.1.1.1.2.2    bouyer #define		BCUCNT1_HLDDIS		(1<<2)	/* disable */
    110  1.1.1.1.2.2    bouyer 
    111  1.1.1.1.2.2    bouyer #define		BCUCNT1_BUSHERR		(1<<1)	/* Bus Timeout detection enable  (<= 4121,>= 4102) */
    112          1.1  takemura 
    113          1.1  takemura #define		BCUCNT1_BUSHERREN	(1<<1)	/* Enable */
    114          1.1  takemura #define		BCUCNT1_BUSHERRDS	(0<<1)	/* Prohibit */
    115          1.1  takemura 
    116  1.1.1.1.2.3    bouyer #define		BCUCNT1_RTYPE		(0x3<<1) /* ROM type (=4181) */
    117  1.1.1.1.2.3    bouyer #define		BCUCNT1_RTOROM		(0<<1)	/* Odinary ROM */
    118  1.1.1.1.2.3    bouyer #define		BCUCNT1_RTFLASH		(1<<1)	/* flash ROM */
    119  1.1.1.1.2.3    bouyer #define		BCUCNT1_RTPAGEROM	(2<<1)	/* Page ROM */
    120  1.1.1.1.2.3    bouyer 
    121          1.1  takemura #define		BCUCNT1_RSTOUT		(1)	/* RSTOUT control bit */
    122          1.1  takemura #define		BCUCNT1_RSTOUTH		(1)	/* RSTOUT high level*/
    123          1.1  takemura #define		BCUCNT1_RSTOUTL		(0)	/* RSTOUT low level*/
    124          1.1  takemura 
    125          1.1  takemura 
    126  1.1.1.1.2.3    bouyer #define	BCUCNT2_REG_W		0x002	/* BCU Control Register 2 (<= 4121,>= 4102, =4181) */
    127          1.1  takemura 
    128          1.1  takemura #define		BCUCNT2_GMODE		(1)	/* LCD access control */
    129          1.1  takemura #define		BCUCNT2_GMODENOM	(1)	/* not invert LCD */
    130          1.1  takemura #define		BCUCNT2_GMODEINV	(0)	/* invert LCD */
    131          1.1  takemura 
    132  1.1.1.1.2.2    bouyer #define BCUBR_REG_W		0x002	/* BCU Bus Restrain Register (= 4101) */
    133  1.1.1.1.2.2    bouyer 
    134  1.1.1.1.2.2    bouyer #define BCUROMSIZE_REG_W	0x004	/* ROM size setting register (= 4122) */
    135  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE3	(7<<12)	/* Bank3 size */
    136  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE3_64	(5<<12)	/* 64MB */
    137  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE3_32	(4<<12)	/* 32MB */
    138  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE3_16	(3<<12)	/* 16MB */
    139  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE3_8	(2<<12)	/* 8MB */
    140  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE3_4	(1<<12)	/* 4MB */
    141  1.1.1.1.2.2    bouyer 
    142  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE2	(7<<8)	/* Bank2 size */
    143  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE2_64	(5<<8)	/* 64MB */
    144  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE2_32	(4<<8)	/* 32MB */
    145  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE2_16	(3<<8)	/* 16MB */
    146  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE2_8	(2<<8)	/* 8MB */
    147  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE2_4	(1<<8)	/* 4MB */
    148  1.1.1.1.2.2    bouyer 
    149  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE1	(7<<4)	/* Bank1 size */
    150  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE1_64	(5<<4)	/* 64MB */
    151  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE1_32	(4<<4)	/* 32MB */
    152  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE1_16	(3<<4)	/* 16MB */
    153  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE1_8	(2<<4)	/* 8MB */
    154  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE1_4	(1<<4)	/* 4MB */
    155  1.1.1.1.2.2    bouyer 
    156  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE0	(7)	/* Bank0 size */
    157  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE0_64	(5)	/* 64MB */
    158  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE0_32	(4)	/* 32MB */
    159  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE0_16	(3)	/* 16MB */
    160  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE0_8	(2)	/* 8MB */
    161  1.1.1.1.2.2    bouyer #define		BCUROMSIZE_SIZE0_4	(1)	/* 4MB */
    162  1.1.1.1.2.2    bouyer 
    163  1.1.1.1.2.2    bouyer #define	BCUBRCNT_REG_W		0x004	/* BCU Bus Restrain Count Register (= 4101) */
    164  1.1.1.1.2.2    bouyer 
    165  1.1.1.1.2.2    bouyer #define BCUROMSPEED_REG_W	0x006	/* BCU ROM Speed Register (=4122) */
    166  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_PATIME	(0x3<<12)	/* Page Access time */
    167  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_PATIME_5VT	(0x3<<12)	/* 5VTClock */
    168  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_PATIME_4VT	(0x2<<12)	/* 4VTClock */
    169  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_PATIME_3VT	(0x1<<12)	/* 3VTClock */
    170  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_PATIME_2VT	(0x0<<12)	/* 2VTClock */
    171  1.1.1.1.2.2    bouyer 
    172  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME	(0xf)	/* Access time */
    173  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_18VT	(0xf)	/* 18VTClock */
    174  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_17VT	(0xe)	/* 17VTClock */
    175  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_16VT	(0xd)	/* 16VTClock */
    176  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_15VT	(0xc)	/* 15VTClock */
    177  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_14VT	(0xb)	/* 14VTClock */
    178  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_13VT	(0xa)	/* 13VTClock */
    179  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_12VT	(0x9)	/* 12VTClock */
    180  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_11VT	(0x8)	/* 11VTClock */
    181  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_10VT	(0x7)	/* 10VTClock */
    182  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_9VT	(0x6)	/* 9VTClock */
    183  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_8VT	(0x5)	/* 8VTClock */
    184  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_7VT	(0x4)	/* 7VTClock */
    185  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_6VT	(0x3)	/* 6VTClock */
    186  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_5VT	(0x2)	/* 5VTClock */
    187  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_4VT	(0x1)	/* 4VTClock */
    188  1.1.1.1.2.2    bouyer #define		BCUROMSPEED_ATIME_3VT	(0x0)	/* 3VTClock */
    189  1.1.1.1.2.2    bouyer 
    190  1.1.1.1.2.2    bouyer #define BCUBCL_REG_W		0x006	/* BCU CPU Restrain Disable Register (= 4101) */
    191  1.1.1.1.2.2    bouyer 
    192  1.1.1.1.2.2    bouyer #define BCUIO0SPEED_REG_W	0x008	/* BCU IO0 Speed Register (=4122) */
    193  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWCS	(0x3<<12)	/* R/W - CS time */
    194  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWCS_5VT	(0x3<<12)	/* 5VTClock */
    195  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWCS_4VT	(0x2<<12)	/* 4VTClock */
    196  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWCS_3VT	(0x1<<12)	/* 3VTClock */
    197  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWCS_2VT	(0x0<<12)	/* 2VTClock */
    198  1.1.1.1.2.2    bouyer 
    199  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW	(0xf<<8)	/* IORDY-R/W time */
    200  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_18VT	(0xf)	/* 18VTClock */
    201  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_17VT	(0xe)	/* 17VTClock */
    202  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_16VT	(0xd)	/* 16VTClock */
    203  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_15VT	(0xc)	/* 15VTClock */
    204  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_14VT	(0xb)	/* 14VTClock */
    205  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_13VT	(0xa)	/* 13VTClock */
    206  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_12VT	(0x9)	/* 12VTClock */
    207  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_11VT	(0x8)	/* 11VTClock */
    208  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_10VT	(0x7)	/* 10VTClock */
    209  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_9VT	(0x6)	/* 9VTClock */
    210  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_8VT	(0x5)	/* 8VTClock */
    211  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_7VT	(0x4)	/* 7VTClock */
    212  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_6VT	(0x3)	/* 6VTClock */
    213  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_5VT	(0x2)	/* 5VTClock */
    214  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_4VT	(0x1)	/* 4VTClock */
    215  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RDYRW_3VT	(0x0)	/* 3VTClock */
    216  1.1.1.1.2.2    bouyer 
    217  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY	(0xf<<4)	/* R/W-IORDY time */
    218  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_14VT	(0xf)	/* 14VTClock */
    219  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_13VT	(0xe)	/* 13VTClock */
    220  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_12VT	(0xd)	/* 12VTClock */
    221  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_11VT	(0xc)	/* 11VTClock */
    222  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_10VT	(0xb)	/* 10VTClock */
    223  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_9VT	(0xa)	/* 9VTClock */
    224  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_8VT	(0x9)	/* 8VTClock */
    225  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_7VT	(0x8)	/* 7VTClock */
    226  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_6VT	(0x7)	/* 6VTClock */
    227  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_5VT	(0x6)	/* 5VTClock */
    228  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_4VT	(0x5)	/* 4VTClock */
    229  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_3VT	(0x4)	/* 3VTClock */
    230  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_2VT	(0x3)	/* 2VTClock */
    231  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_1VT	(0x2)	/* 1VTClock */
    232  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_0VT	(0x1)	/* 0VTClock */
    233  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_RWRDY_M1VT	(0x0)	/* -1VTClock */
    234  1.1.1.1.2.2    bouyer 
    235  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW	(0xf<<0)	/* IORDY-R/W time */
    236  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_16VT	(0xf)	/* 16VTClock */
    237  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_15VT	(0xe)	/* 15VTClock */
    238  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_14VT	(0xd)	/* 14VTClock */
    239  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_13VT	(0xc)	/* 13VTClock */
    240  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_12VT	(0xb)	/* 12VTClock */
    241  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_11VT	(0xa)	/* 11VTClock */
    242  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_10VT	(0x9)	/* 10VTClock */
    243  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_9VT	(0x8)	/* 9VTClock */
    244  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_8VT	(0x7)	/* 8VTClock */
    245  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_7VT	(0x6)	/* 7VTClock */
    246  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_6VT	(0x5)	/* 6VTClock */
    247  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_5VT	(0x4)	/* 5VTClock */
    248  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_4VT	(0x3)	/* 4VTClock */
    249  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_3VT	(0x2)	/* 3VTClock */
    250  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_2VT	(0x1)	/* 2VTClock */
    251  1.1.1.1.2.2    bouyer #define		BCUIO0SPEED_CSRW_1VT	(0x0)	/* 1VTClock */
    252  1.1.1.1.2.2    bouyer 
    253  1.1.1.1.2.2    bouyer #define BCUBCLCNT_REG_W		0x008	/* BCU CPU Restrain Disable Count Register (= 4101) */
    254  1.1.1.1.2.2    bouyer 
    255  1.1.1.1.2.2    bouyer #define BCUIO1SPEED_REG_W	0x00A	/* BCU IO1 Speed Register (=4122) */
    256  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWCS	(0x3<<12)	/* R/W - CS time */
    257  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWCS_5VT	(0x3<<12)	/* 5VTClock */
    258  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWCS_4VT	(0x2<<12)	/* 4VTClock */
    259  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWCS_3VT	(0x1<<12)	/* 3VTClock */
    260  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWCS_2VT	(0x0<<12)	/* 2VTClock */
    261  1.1.1.1.2.2    bouyer 
    262  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW	(0xf<<8)	/* IORDY-R/W time */
    263  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_18VT	(0xf)	/* 18VTClock */
    264  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_17VT	(0xe)	/* 17VTClock */
    265  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_16VT	(0xd)	/* 16VTClock */
    266  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_15VT	(0xc)	/* 15VTClock */
    267  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_14VT	(0xb)	/* 14VTClock */
    268  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_13VT	(0xa)	/* 13VTClock */
    269  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_12VT	(0x9)	/* 12VTClock */
    270  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_11VT	(0x8)	/* 11VTClock */
    271  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_10VT	(0x7)	/* 10VTClock */
    272  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_9VT	(0x6)	/* 9VTClock */
    273  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_8VT	(0x5)	/* 8VTClock */
    274  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_7VT	(0x4)	/* 7VTClock */
    275  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_6VT	(0x3)	/* 6VTClock */
    276  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_5VT	(0x2)	/* 5VTClock */
    277  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_4VT	(0x1)	/* 4VTClock */
    278  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RDYRW_3VT	(0x0)	/* 3VTClock */
    279  1.1.1.1.2.2    bouyer 
    280  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY	(0xf<<4)	/* R/W-IORDY time */
    281  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_14VT	(0xf)	/* 14VTClock */
    282  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_13VT	(0xe)	/* 13VTClock */
    283  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_12VT	(0xd)	/* 12VTClock */
    284  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_11VT	(0xc)	/* 11VTClock */
    285  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_10VT	(0xb)	/* 10VTClock */
    286  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_9VT	(0xa)	/* 9VTClock */
    287  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_8VT	(0x9)	/* 8VTClock */
    288  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_7VT	(0x8)	/* 7VTClock */
    289  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_6VT	(0x7)	/* 6VTClock */
    290  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_5VT	(0x6)	/* 5VTClock */
    291  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_4VT	(0x5)	/* 4VTClock */
    292  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_3VT	(0x4)	/* 3VTClock */
    293  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_2VT	(0x3)	/* 2VTClock */
    294  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_1VT	(0x2)	/* 1VTClock */
    295  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_0VT	(0x1)	/* 0VTClock */
    296  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_RWRDY_M1VT	(0x0)	/* -1VTClock */
    297  1.1.1.1.2.2    bouyer 
    298  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW	(0xf<<0)	/* IORDY-R/W time */
    299  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_16VT	(0xf)	/* 16VTClock */
    300  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_15VT	(0xe)	/* 15VTClock */
    301  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_14VT	(0xd)	/* 14VTClock */
    302  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_13VT	(0xc)	/* 13VTClock */
    303  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_12VT	(0xb)	/* 12VTClock */
    304  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_11VT	(0xa)	/* 11VTClock */
    305  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_10VT	(0x9)	/* 10VTClock */
    306  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_9VT	(0x8)	/* 9VTClock */
    307  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_8VT	(0x7)	/* 8VTClock */
    308  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_7VT	(0x6)	/* 7VTClock */
    309  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_6VT	(0x5)	/* 6VTClock */
    310  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_5VT	(0x4)	/* 5VTClock */
    311  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_4VT	(0x3)	/* 4VTClock */
    312  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_3VT	(0x2)	/* 3VTClock */
    313  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_2VT	(0x1)	/* 2VTClock */
    314  1.1.1.1.2.2    bouyer #define		BCUIO1SPEED_CSRW_1VT	(0x0)	/* 1VTClock */
    315          1.1  takemura 
    316  1.1.1.1.2.3    bouyer #define	BCUSPEED_REG_W		0x00A	/* BCU Access Cycle Change Register (4121>=4102)*/
    317          1.1  takemura 
    318          1.1  takemura #define		BCUSPD_WPROM		(0x3<<12)	/* Page ROM access speed */
    319          1.1  takemura #define		BCUSPD_WPROMRFU		(0x3<<12)	/* RFU */
    320          1.1  takemura #define		BCUSPD_WPROM1T		(0x2<<12)	/* 1TClock */
    321          1.1  takemura #define		BCUSPD_WPROM2T		(0x1<<12)	/* 2TClock */
    322          1.1  takemura #define		BCUSPD_WPROM3T		(0x0<<12)	/* 3TClock */
    323          1.1  takemura 
    324  1.1.1.1.2.2    bouyer #define		BCUSPD_WLCDM		(0x7<<8)	/* access speed 0x0a000000-0affffff */
    325          1.1  takemura 
    326          1.1  takemura 		/* BCUCNT1_ISAMLCD == BCUCNT1_LCD */
    327  1.1.1.1.2.2    bouyer #define		BCUSPD_WLCDRFU		(0x7<<8)	/* LCD RFU */
    328  1.1.1.1.2.2    bouyer #define		BCUSPD_WLCDRFU1		(0x6<<8)	/* LCD RFU */
    329  1.1.1.1.2.2    bouyer #define		BCUSPD_WLCDRFU2		(0x5<<8)	/* LCD RFU */
    330  1.1.1.1.2.2    bouyer #define		BCUSPD_WLCDRFU3		(0x4<<8)	/* LCD RFU */
    331  1.1.1.1.2.2    bouyer #define		BCUSPD_WLCD2T		(0x3<<8)	/* LCD 2TClock */
    332  1.1.1.1.2.2    bouyer #define		BCUSPD_WLCD4T		(0x2<<8)	/* LCD 4TClock */
    333  1.1.1.1.2.2    bouyer #define		BCUSPD_WLCD6T		(0x1<<8)	/* LCD 6TClock */
    334  1.1.1.1.2.2    bouyer #define		BCUSPD_WLCD8T		(0x0<<8)	/* LCD 8TClock */
    335          1.1  takemura 		/* BCUCNT1_ISAMLCD == BCUCNT1_ISAM */
    336  1.1.1.1.2.2    bouyer #define		BCUSPD_ISAM1T		(0x7<<8)	/* ISAM 1TClock */
    337  1.1.1.1.2.2    bouyer #define		BCUSPD_ISAM2T		(0x6<<8)	/* ISAM 2TClock */
    338  1.1.1.1.2.2    bouyer #define		BCUSPD_ISAM3T		(0x5<<8)	/* ISAM 3TClock */
    339  1.1.1.1.2.2    bouyer #define		BCUSPD_ISAM4T		(0x4<<8)	/* ISAM 4TClock */
    340  1.1.1.1.2.2    bouyer #define		BCUSPD_ISAM5T		(0x3<<8)	/* ISAM 5TClock */
    341  1.1.1.1.2.2    bouyer #define		BCUSPD_ISAM6T		(0x2<<8)	/* ISAM 6TClock */
    342  1.1.1.1.2.2    bouyer #define		BCUSPD_ISAM7T		(0x1<<8)	/* ISAM 7TClock */
    343  1.1.1.1.2.2    bouyer #define		BCUSPD_ISAM8T		(0x0<<8)	/* ISAM 8TClock */
    344          1.1  takemura 
    345          1.1  takemura #define		BCUSPD_WISAA		(0x7<<4)	/* System Bus Access Speed */
    346          1.1  takemura #define		BCUSPD_WISAA3T		(0x5<<4)	/* 3TClock */
    347          1.1  takemura #define		BCUSPD_WISAA4T		(0x4<<4)	/* 4TClock */
    348          1.1  takemura #define		BCUSPD_WISAA5T		(0x3<<4)	/* 5TClock */
    349          1.1  takemura #define		BCUSPD_WISAA6T		(0x2<<4)	/* 6TClock */
    350          1.1  takemura #define		BCUSPD_WISAA7T		(0x1<<4)	/* 7TClock */
    351          1.1  takemura #define		BCUSPD_WISAA8T		(0x0<<4)	/* 8TClock */
    352          1.1  takemura 
    353          1.1  takemura #define		BCUSPD_WROMA		(0x7<<0)	/* System Bus Access Speed */
    354          1.1  takemura #define		BCUSPD_WROMA2T		(0x7<<0)	/* 2TClock */
    355          1.1  takemura #define		BCUSPD_WROMA3T		(0x6<<0)	/* 3TClock */
    356          1.1  takemura #define		BCUSPD_WROMA4T		(0x5<<0)	/* 4TClock */
    357          1.1  takemura #define		BCUSPD_WROMA5T		(0x4<<0)	/* 5TClock */
    358          1.1  takemura #define		BCUSPD_WROMA6T		(0x3<<0)	/* 6TClock */
    359          1.1  takemura #define		BCUSPD_WROMA7T		(0x2<<0)	/* 7TClock */
    360          1.1  takemura #define		BCUSPD_WROMA8T		(0x1<<0)	/* 8TClock */
    361          1.1  takemura #define		BCUSPD_WROMA9T		(0x0<<0)	/* 9TClock */
    362          1.1  takemura 
    363          1.1  takemura 
    364  1.1.1.1.2.3    bouyer #define	BCUERRST_REG_W		0x00C	/* BCU BUS ERROR Status Register (4121>=4102)*/
    365          1.1  takemura 
    366          1.1  takemura #define		BCUERRST_BUSERRMASK	(1)		/* Bus error, clear to 0 when 1 is written */
    367          1.1  takemura #define		BCUERRST_BUSERR		(1)		/* Bus error */
    368          1.1  takemura #define		BCUERRST_BUSNORM	(0)		/* Normal */
    369          1.1  takemura 
    370  1.1.1.1.2.3    bouyer #define	BCU81SPEED_REG_W	0x00C	/* BCU Access Cycle Change Register (=4181)*/
    371          1.1  takemura 
    372  1.1.1.1.2.3    bouyer #define		BCU81SPD_WPROM		(0x7<<12)	/* Page ROM access speed */
    373  1.1.1.1.2.3    bouyer #define		BCU81SPD_WPROM8T	(0x7<<12)	/* 8TClock */
    374  1.1.1.1.2.3    bouyer #define		BCU81SPD_WPROM7T	(0x6<<12)	/* 7TClock */
    375  1.1.1.1.2.3    bouyer #define		BCU81SPD_WPROM6T	(0x5<<12)	/* 6TClock */
    376  1.1.1.1.2.3    bouyer #define		BCU81SPD_WPROM5T	(0x4<<12)	/* 5TClock */
    377  1.1.1.1.2.3    bouyer #define		BCU81SPD_WPROM4T	(0x3<<12)	/* 4TClock */
    378  1.1.1.1.2.3    bouyer #define		BCU81SPD_WPROM3T	(0x2<<12)	/* 3TClock */
    379  1.1.1.1.2.3    bouyer #define		BCU81SPD_WPROM2T	(0x1<<12)	/* 2TClock */
    380  1.1.1.1.2.3    bouyer #define		BCU81SPD_WPROM1T	(0x0<<12)	/* 1TClock */
    381  1.1.1.1.2.3    bouyer 
    382  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA		(0xf<<0)	/* System Bus Access Speed */
    383  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA16T	(0xf<<0)	/* 16TClock */
    384  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA15T	(0xe<<0)	/* 15TClock */
    385  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA14T	(0xd<<0)	/* 14TClock */
    386  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA13T	(0xc<<0)	/* 13TClock */
    387  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA12T	(0xb<<0)	/* 12TClock */
    388  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA11T	(0xa<<0)	/* 11TClock */
    389  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA10T	(0x9<<0)	/* 10TClock */
    390  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA9T	(0x8<<0)	/* 9TClock */
    391  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA8T	(0x7<<0)	/* 8TClock */
    392  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA7T	(0x6<<0)	/* 7TClock */
    393  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA6T	(0x5<<0)	/* 6TClock */
    394  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA5T	(0x4<<0)	/* 5TClock */
    395  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA4T	(0x3<<0)	/* 4TClock */
    396  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA3T	(0x2<<0)	/* 3TClock */
    397  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA2T	(0x1<<0)	/* 2TClock */
    398  1.1.1.1.2.3    bouyer #define		BCU81SPD_WROMA1T	(0x0<<0)	/* 1TClock */
    399  1.1.1.1.2.3    bouyer 
    400  1.1.1.1.2.3    bouyer #define	BCURFCNT_REG_W		0x00E	/* BCU Refresh Control Register(4121>=4102) */
    401  1.1.1.1.2.3    bouyer #define	BCU81RFCNT_REG_W	0x00E	/* BCU Refresh Control Register(=4181) */
    402          1.1  takemura 
    403          1.1  takemura #define		BCURFCNT_MASK		0x3fff		/* refresh interval MASK */
    404          1.1  takemura 
    405  1.1.1.1.2.3    bouyer #define	BCUREVID_REG_W		0x010	/* BCU Revision ID Register (4122>=4101)*/
    406  1.1.1.1.2.3    bouyer #define	BCU81REVID_REG_W	0x010	/* BCU Revision ID Register (=4181)*/
    407          1.1  takemura 
    408  1.1.1.1.2.2    bouyer #define		BCUREVID_RIDMASK	(0xf<<12)	/* Revision ID */
    409          1.1  takemura #define		BCUREVID_RIDSHFT	(12)		/* Revision ID */
    410  1.1.1.1.2.2    bouyer #define		BCUREVID_RID_4122	(0x4)		/* VR4122 */
    411          1.1  takemura #define		BCUREVID_RID_4121	(0x3)		/* VR4121 */
    412          1.1  takemura #define		BCUREVID_RID_4111	(0x2)		/* VR4111 */
    413          1.1  takemura #define		BCUREVID_RID_4102	(0x1)		/* VR4102 */
    414          1.1  takemura #define		BCUREVID_RID_4101	(0x0)		/* VR4101 */
    415  1.1.1.1.2.2    bouyer #define		BCUREVID_RID_4181	(0x0)		/* VR4181 conflict VR4101 */
    416  1.1.1.1.2.2    bouyer #define		BCUREVID_FIXRID_OFF	(0x10)		/* conflict offset */
    417  1.1.1.1.2.2    bouyer #define		BCUREVID_FIXRID_4181	(0x10)		/* VR4181 for kernel */
    418          1.1  takemura 
    419  1.1.1.1.2.2    bouyer #define		BCUREVID_MJREVMASK	(0xf<<8)	/* Major Revision */
    420          1.1  takemura #define		BCUREVID_MJREVSHFT	(8)		/* Major Revision */
    421          1.1  takemura 
    422  1.1.1.1.2.2    bouyer #define		BCUREVID_MNREVMASK	(0xf)		/* Minor Revision */
    423          1.1  takemura #define		BCUREVID_MNREVSHFT	(0)		/* Minor Revision */
    424          1.1  takemura 
    425          1.1  takemura 
    426  1.1.1.1.2.2    bouyer #define	BCUREFCOUNT_REG_W	0x012	/* BCU Refresh Count Register (>= 4102) */
    427          1.1  takemura 
    428          1.1  takemura #define		BCUREFCOUNT_MASK	0x3fff	/* refresh 	count MASK */
    429          1.1  takemura 
    430          1.1  takemura 
    431  1.1.1.1.2.2    bouyer #define	BCUCLKSPEED_REG_W	0x014	/* Clock Speed Register (>= 4102) */
    432  1.1.1.1.2.3    bouyer #define	BCU81CLKSPEED_REG_W	0x014	/* Clock Speed Register (= 4181) */
    433          1.1  takemura 
    434  1.1.1.1.2.2    bouyer #define		BCUCLKSPEED_DIVT2B	(1<<15)		/* (= 4102, 4111) */
    435  1.1.1.1.2.2    bouyer #define		BCUCLKSPEED_DIVT3B	(1<<14)		/* (= 4111) */
    436  1.1.1.1.2.2    bouyer #define		BCUCLKSPEED_DIVT4B	(1<<13)		/* (= 4111) */
    437  1.1.1.1.2.1    bouyer 
    438  1.1.1.1.2.2    bouyer #define		BCUCLKSPEED_DIVTMASK	(0xf<<12)	/* (= 4121) */
    439  1.1.1.1.2.1    bouyer #define			BCUCLKSPEED_DIVT3	0x3
    440  1.1.1.1.2.1    bouyer #define			BCUCLKSPEED_DIVT4	0x4
    441  1.1.1.1.2.1    bouyer #define			BCUCLKSPEED_DIVT5	0x5
    442  1.1.1.1.2.1    bouyer #define			BCUCLKSPEED_DIVT6	0x6
    443  1.1.1.1.2.1    bouyer #define		BCUCLKSPEED_DIVTSHFT	(12)
    444  1.1.1.1.2.1    bouyer 
    445  1.1.1.1.2.2    bouyer #define		BCUCLKSPEED_TDIVMODE	(0x1<<12)	/* (= 4122) */
    446  1.1.1.1.2.2    bouyer #define			BCUCLKSPEED_TDIV4	0x1
    447  1.1.1.1.2.2    bouyer #define			BCUCLKSPEED_TDIV2	0x0
    448  1.1.1.1.2.2    bouyer #define		BCUCLKSPEED_TDIVSHFT	(12)
    449  1.1.1.1.2.3    bouyer 
    450  1.1.1.1.2.3    bouyer #define		BCU81CLKSPEED_DIVTMASK	(0x7<<12)	/* (=4181) */
    451  1.1.1.1.2.3    bouyer #define			BCU81CLKSPEED_DIVT1	0x7
    452  1.1.1.1.2.3    bouyer #define			BCU81CLKSPEED_DIVT2	0x3
    453  1.1.1.1.2.3    bouyer #define			BCU81CLKSPEED_DIVT3	0x5
    454  1.1.1.1.2.3    bouyer #define			BCU81CLKSPEED_DIVT4	0x6
    455  1.1.1.1.2.3    bouyer #define		BCU81CLKSPEED_DIVTSHFT	(12)
    456  1.1.1.1.2.2    bouyer 
    457  1.1.1.1.2.2    bouyer #define		BCUCLKSPEED_DIVVTMASK	(0xf<<8)	/* (= 4121) */
    458  1.1.1.1.2.1    bouyer #define			BCUCLKSPEED_DIVVT1	0x1
    459  1.1.1.1.2.1    bouyer #define			BCUCLKSPEED_DIVVT2	0x2
    460  1.1.1.1.2.1    bouyer #define			BCUCLKSPEED_DIVVT3	0x3
    461  1.1.1.1.2.1    bouyer #define			BCUCLKSPEED_DIVVT4	0x4
    462  1.1.1.1.2.1    bouyer #define			BCUCLKSPEED_DIVVT5	0x5
    463  1.1.1.1.2.1    bouyer #define			BCUCLKSPEED_DIVVT6	0x6
    464  1.1.1.1.2.1    bouyer #define			BCUCLKSPEED_DIVVT1_5	0x9
    465  1.1.1.1.2.1    bouyer #define			BCUCLKSPEED_DIVVT2_5	0xa
    466  1.1.1.1.2.1    bouyer #define		BCUCLKSPEED_DIVVTSHFT	(8)
    467          1.1  takemura 
    468  1.1.1.1.2.2    bouyer #define		BCUCLKSPEED_VTDIVMODE	(0x7<<8)	/* (= 4122) */
    469  1.1.1.1.2.2    bouyer #define			BCUCLKSPEED_VTDIV6	0x6
    470  1.1.1.1.2.2    bouyer #define			BCUCLKSPEED_VTDIVT5	0x5
    471  1.1.1.1.2.2    bouyer #define			BCUCLKSPEED_VTDIVT4	0x4
    472  1.1.1.1.2.2    bouyer #define			BCUCLKSPEED_VTDIVT3	0x3
    473  1.1.1.1.2.2    bouyer #define			BCUCLKSPEED_VTDIVT2	0x2
    474  1.1.1.1.2.2    bouyer #define			BCUCLKSPEED_VTDIVT1	0x1
    475  1.1.1.1.2.2    bouyer #define		BCUCLKSPEED_VTDIVSHFT	(8)
    476  1.1.1.1.2.2    bouyer 
    477  1.1.1.1.2.1    bouyer #define		BCUCLKSPEED_CLKSPMASK	(0x1f)		/* calculate for Clock */
    478          1.1  takemura #define		BCUCLKSPEED_CLKSPSHFT	(0)
    479          1.1  takemura 
    480  1.1.1.1.2.2    bouyer #define	BCUCNT3_REG_W		0x016	/* BCU Control Register 3 (>= 4111) */
    481          1.1  takemura 
    482  1.1.1.1.2.2    bouyer #define		BCUCNT3_EXTROMMASK	(1<<15)		/* ROM SIZE (4111,4121)*/
    483  1.1.1.1.2.1    bouyer #define		BCUCNT3_EXTROM64M	(1<<15)		/* 64Mbit DRAM */
    484  1.1.1.1.2.1    bouyer #define		BCUCNT3_EXTROM32M	(0<<15)		/* 32Mbit DRAM */
    485          1.1  takemura 
    486  1.1.1.1.2.2    bouyer #define		BCUCNT3_EXTDRAMMASK	(1<<14)		/* DRAM SIZE (4111,4121)*/
    487  1.1.1.1.2.1    bouyer #define		BCUCNT3_EXTDRAM64M	(1<<14)		/* 64Mbit DRAM */
    488  1.1.1.1.2.1    bouyer #define		BCUCNT3_EXTDRAM16M	(0<<14)		/* 16Mbit DRAM */
    489          1.1  takemura 
    490          1.1  takemura #define		BCUCNT3_EXTROMCS	(0x3<<12)	/* Bank3,2 */
    491          1.1  takemura #define		BCUCNT3_ROMROM		(0x3<<12)	/* Bank3 ROM ,2 ROM  */
    492          1.1  takemura #define		BCUCNT3_ROMRAM		(0x2<<12)	/* Bank3 ROM ,2 RAM  */
    493          1.1  takemura #define		BCUCNT3_RAMRAM		(0x0<<12)	/* Bank3 RAM ,2 RAM  */
    494          1.1  takemura 
    495  1.1.1.1.2.2    bouyer #define		BCUCNT3_EXTMEM		(1<<11)		/* EXT MEN enable (4111,4121)*/
    496          1.1  takemura #define		BCUCNT3_EXTMEMEN	(1<<11)		/* EXT MEN enable */
    497          1.1  takemura #define		BCUCNT3_EXTMEMDS	(0<<11)		/* EXT MEN disable */
    498          1.1  takemura 
    499          1.1  takemura #define		BCUCNT3_LCDSIZE		(1<<7)		/* LCD bus size */
    500          1.1  takemura #define		BCUCNT3_LCD32		(1<<7)		/* LCD bus 32bit */
    501          1.1  takemura #define		BCUCNT3_LCD16		(0<<7)		/* LCD bus 16bit */
    502  1.1.1.1.2.2    bouyer 
    503  1.1.1.1.2.2    bouyer #define		BCUCNT3_SYSDIREN	(1<<3)		/* SYSDIR or GPIO6(=4122)*/
    504  1.1.1.1.2.2    bouyer #define		BCUCNT3_SYSDIR		(1<<3)		/* SYSDIR */
    505  1.1.1.1.2.2    bouyer #define		BCUCNT3_GPIO6		(0<<3)		/* GPIO6 */
    506  1.1.1.1.2.2    bouyer 
    507  1.1.1.1.2.2    bouyer #define		BCUCNT3_LCDSEL1		(1<<1)		/* 0xc00-0xdff area buffer (=4122)*/
    508  1.1.1.1.2.2    bouyer #define		BCUCNT3_LCDSEL1_NOBUF	(1<<1)		/* nobuffer */
    509  1.1.1.1.2.2    bouyer #define		BCUCNT3_LCDSEL1_BUF	(0<<1)		/* buffer */
    510  1.1.1.1.2.2    bouyer 
    511  1.1.1.1.2.2    bouyer #define		BCUCNT3_LCDSEL0		(1<<1)		/* 0xa00-0xbff area buffer (=4122)*/
    512  1.1.1.1.2.2    bouyer #define		BCUCNT3_LCDSEL0_NOBUF	(1<<1)		/* nobuffer */
    513  1.1.1.1.2.2    bouyer #define		BCUCNT3_LCDSEL0_BUF	(0<<1)		/* buffer */
    514          1.1  takemura 
    515          1.1  takemura /* END bcureg.h */
    516