Home | History | Annotate | Line # | Download | only in vr
      1  1.8       igy /*	$NetBSD: icureg.h,v 1.8 2003/04/01 02:45:34 igy Exp $	*/
      2  1.1  takemura 
      3  1.1  takemura /*-
      4  1.1  takemura  * Copyright (c) 1999 Shin Takemura. All rights reserved.
      5  1.3      sato  * Copyright (c) 1999-2001 SATO Kazumi. All rights reserved.
      6  1.1  takemura  * Copyright (c) 1999 PocketBSD Project. All rights reserved.
      7  1.1  takemura  *
      8  1.1  takemura  * Redistribution and use in source and binary forms, with or without
      9  1.1  takemura  * modification, are permitted provided that the following conditions
     10  1.1  takemura  * are met:
     11  1.1  takemura  * 1. Redistributions of source code must retain the above copyright
     12  1.1  takemura  *    notice, this list of conditions and the following disclaimer.
     13  1.1  takemura  * 2. Redistributions in binary form must reproduce the above copyright
     14  1.1  takemura  *    notice, this list of conditions and the following disclaimer in the
     15  1.1  takemura  *    documentation and/or other materials provided with the distribution.
     16  1.1  takemura  * 3. All advertising materials mentioning features or use of this software
     17  1.1  takemura  *    must display the following acknowledgement:
     18  1.1  takemura  *	This product includes software developed by the PocketBSD project
     19  1.1  takemura  *	and its contributors.
     20  1.1  takemura  * 4. Neither the name of the project nor the names of its contributors
     21  1.1  takemura  *    may be used to endorse or promote products derived from this software
     22  1.1  takemura  *    without specific prior written permission.
     23  1.1  takemura  *
     24  1.1  takemura  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
     25  1.1  takemura  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     26  1.1  takemura  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
     27  1.1  takemura  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
     28  1.1  takemura  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     29  1.1  takemura  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     30  1.1  takemura  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     31  1.1  takemura  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
     32  1.1  takemura  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
     33  1.1  takemura  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
     34  1.1  takemura  * SUCH DAMAGE.
     35  1.1  takemura  *
     36  1.1  takemura  */
     37  1.1  takemura 
     38  1.1  takemura /*
     39  1.1  takemura  *	ICU (Interrupt Control UNIT) Registers definitions
     40  1.8       igy  *		start 0x0A000080 (vr4181)
     41  1.3      sato  *		start 0x0B000080 (vr4102/4111/4121)
     42  1.3      sato  *		start 0x0F000080 (vr4122)
     43  1.1  takemura  */
     44  1.4      sato #include "opt_vr41xx.h"
     45  1.4      sato #include <hpcmips/vr/vrcpudef.h>
     46  1.4      sato 
     47  1.6      sato #define ICU_NO_REG_W		0xffffffff	/* no register */
     48  1.4      sato 
     49  1.5      sato 
     50  1.5      sato /* SYSINT1 & MSYSINT1 */
     51  1.1  takemura #define SYSINT1_REG_W		0x000	/* Level1 System intr reg 1 */
     52  1.1  takemura #define MSYSINT1_REG_W		0x00c	/* Level1 Mask System intr reg 1 */
     53  1.1  takemura 
     54  1.1  takemura #define SYSINT1_INT15			(1<<15)
     55  1.1  takemura #define SYSINT1_INT14			(1<<14)
     56  1.3      sato #define SYSINT1_INT13			(1<<13)
     57  1.1  takemura #define SYSINT1_DOZEPIU			(1<<13)	/* PIU intr during Suspend */
     58  1.1  takemura #define SYSINT1_INT12			(1<<12)
     59  1.3      sato #define SYSINT1_CLKRUN			(1<<12) /* CLKRUN intr (=vr4122) */
     60  1.3      sato #define SYSINT1_INT11			(1<<11)
     61  1.1  takemura #define SYSINT1_SOFT			(1<<11)	/* Software intr */
     62  1.3      sato #define SYSINT1_INT10			(1<<10)
     63  1.3      sato #define SYSINT1_WRBERR			(1<<10)	/* Bus error intr (4102 <=,<= 4121)*/
     64  1.3      sato #define SYSINT1_INT9			(1<<9)
     65  1.1  takemura #define SYSINT1_SIU			(1<<9)	/* SIU intr */
     66  1.3      sato #define SYSINT1_INT8			(1<<8)
     67  1.1  takemura #define SYSINT1_GIU			(1<<8)	/* GIU intr */
     68  1.3      sato #define SYSINT1_INT7			(1<<7)
     69  1.3      sato #define SYSINT1_KIU			(1<<7)	/* KIU intr (4102 <=,<= 4121)*/
     70  1.3      sato #define SYSINT1_INT6			(1<<6)
     71  1.3      sato #define SYSINT1_AIU			(1<<6)	/* AIU intr (4102 <=,<= 4121)*/
     72  1.3      sato #define SYSINT1_INT5			(1<<5)
     73  1.3      sato #define SYSINT1_PIU			(1<<5)	/* PIU intr (4102 <=,<= 4121)*/
     74  1.1  takemura #define SYSINT1_INT4			(1<<4)
     75  1.3      sato #define SYSINT1_INT3			(1<<3)
     76  1.1  takemura #define SYSINT1_ETIMER			(1<<3)	/* ETIMER intr */
     77  1.3      sato #define SYSINT1_INT2			(1<<2)
     78  1.1  takemura #define SYSINT1_RTCL1			(1<<2)	/* RTClong1 intr */
     79  1.3      sato #define SYSINT1_INT1			(1<<1)
     80  1.1  takemura #define SYSINT1_POWER			(1<<1)	/* PowerSW intr */
     81  1.3      sato #define SYSINT1_INT0			(1<<0)
     82  1.1  takemura #define SYSINT1_BAT			(1<<0)	/* Battery intr */
     83  1.1  takemura 
     84  1.1  takemura 
     85  1.5      sato /* PIUINT & MPIUINT */
     86  1.2  takemura #define ICUPIUINT_REG_W		0x002	/* Level2 PIU intr reg */
     87  1.1  takemura #define MPIUINT_REG_W		0x00e	/* Level2 Mask PIU intr reg */
     88  1.1  takemura 
     89  1.1  takemura #define		PIUINT_PADCMD		(1<<6)	/* PIU command scan intr */
     90  1.1  takemura #define		PIUINT_PADADP		(1<<5)	/* PIU AD port scan intr */
     91  1.1  takemura #define		PIUINT_PADPAGE1		(1<<4)	/* PIU data page 1 intr */
     92  1.1  takemura #define		PIUINT_PADPAGE0		(1<<3)	/* PIU data page 0 intr */
     93  1.1  takemura #define		PIUINT_PADLOST		(1<<2)	/* A/D data timeout intr */
     94  1.1  takemura #define		PIUINT_PENCHG		(1)	/* Touch Panel contact intr */
     95  1.1  takemura 
     96  1.5      sato 
     97  1.5      sato /* AIUINT & MAIUINT */
     98  1.4      sato #define VR4102_AIUINT_REG_W	0x004	/* Level2 AIU intr reg */
     99  1.4      sato #define VR4102_MAIUINT_REG_W	0x010	/* Level2 Mask AIU intr reg */
    100  1.6      sato #define VR4122_AIUINT_REG_W	ICU_NO_REG_W	/* Level2 AIU intr reg */
    101  1.6      sato #define VR4122_MAIUINT_REG_W	ICU_NO_REG_W	/* Level2 Mask AIU intr reg */
    102  1.5      sato #define VR4181_AIUINT_REG_W	0x004	/* Level2 AIU intr reg */
    103  1.5      sato #define VR4181_MAIUINT_REG_W	0x010	/* Level2 Mask AIU intr reg */
    104  1.4      sato #if defined SINGLE_VRIP_BASE
    105  1.4      sato #if defined VRGROUP_4102_4121
    106  1.4      sato #define AIUINT_REG_W		VR4102_AIUINT_REG_W
    107  1.4      sato #define MAIUINT_REG_W		VR4102_MAIUINT_REG_W
    108  1.4      sato #endif /* VRGROUP_4102_4121 */
    109  1.5      sato #if defined VRGROUP_4122_4131
    110  1.4      sato #define AIUINT_REG_W		VR4122_AIUINT_REG_W
    111  1.4      sato #define MAIUINT_REG_W		VR4122_MAIUINT_REG_W
    112  1.5      sato #endif /* VRGROUP_4122_4131 */
    113  1.5      sato #if defined VRGROUP_4181
    114  1.5      sato #define AIUINT_REG_W		VR4181_AIUINT_REG_W
    115  1.5      sato #define MAIUINT_REG_W		VR4181_MAIUINT_REG_W
    116  1.5      sato #endif /* VRGROUP_4181 */
    117  1.4      sato #endif
    118  1.1  takemura 
    119  1.1  takemura #define		AIUINT_INTMEND		(1<<11)	/* Audio input DMA buffer 2 page */
    120  1.1  takemura #define		AIUINT_INTM		(1<<10)	/* Audio input DMA buffer 1 page */
    121  1.1  takemura #define		AIUINT_INTMIDLE		(1<<9)	/* Audio input idle intr */
    122  1.1  takemura #define		AIUINT_INTMST		(1<<8)	/* Audio input receive completion intr */
    123  1.1  takemura #define		AIUINT_INTSEND		(1<<3)	/* Audio output buffer 2 page */
    124  1.1  takemura #define		AIUINT_INTS		(1<<2)	/* Audio output buffer 1 page */
    125  1.1  takemura #define		AIUINT_INTSIDLE		(1<<1)	/* Audio output idle intr */
    126  1.1  takemura 
    127  1.1  takemura 
    128  1.5      sato /* KIUINT & MKIUINT */
    129  1.4      sato #define VR4102_KIUINT_REG_W	0x006	/* Level2 KIU intr reg */
    130  1.4      sato #define VR4102_MKIUINT_REG_W	0x012	/* Level2 Mask KIU intr reg */
    131  1.6      sato #define VR4122_KIUINT_REG_W	ICU_NO_REG_W	/* Level2 KIU intr reg */
    132  1.6      sato #define VR4122_MKIUINT_REG_W	ICU_NO_REG_W	/* Level2 Mask KIU intr reg */
    133  1.5      sato #define VR4181_KIUINT_REG_W	0x118	/* Level2 KIU intr reg */
    134  1.5      sato #define VR4181_MKIUINT_REG_W	0x012	/* Level2 Mask KIU intr reg */
    135  1.4      sato #if defined SINGLE_VRIP_BASE
    136  1.4      sato #if defined VRGROUP_4102_4121
    137  1.4      sato #define KIUINT_REG_W		VR4102_KIUINT_REG_W
    138  1.4      sato #define MKIUINT_REG_W		VR4102_MKIUINT_REG_W
    139  1.4      sato #endif /* VRGROUP_4102_4121 */
    140  1.5      sato #if defined VRGROUP_4122_4131
    141  1.4      sato #define KIUINT_REG_W		VR4122_KIUINT_REG_W
    142  1.4      sato #define MKIUINT_REG_W		VR4122_MKIUINT_REG_W
    143  1.5      sato #endif /* VRGROUP_4122_4131 */
    144  1.5      sato #if defined VRGROUP_4181
    145  1.5      sato #define KIUINT_REG_W		VR4181_KIUINT_REG_W
    146  1.5      sato #define MKIUINT_REG_W		VR4181_MKIUINT_REG_W
    147  1.5      sato #endif /* VRGROUP_4181 */
    148  1.4      sato #endif
    149  1.1  takemura 
    150  1.1  takemura #define		KIUINT_KDATLOST		(1<<2)	/* Key scan data lost */
    151  1.1  takemura #define		KIUINT_KDATRDY		(1<<1)	/* Key scan data complete */
    152  1.1  takemura #define		KIUINT_SCANINT		(1)	/* Key input detect intr */
    153  1.1  takemura 
    154  1.1  takemura 
    155  1.5      sato /* GIUINTL & MGIUINTL */
    156  1.5      sato #define VR4102_GIUINT_L_REG_W	0x008	/* Level2 GIU intr reg Low */
    157  1.5      sato #define VR4102_MGIUINT_L_REG_W	0x014	/* Level2 Mask GIU intr reg Low */
    158  1.5      sato #define VR4122_GIUINT_L_REG_W	0x008	/* Level2 GIU intr reg Low */
    159  1.5      sato #define VR4122_MGIUINT_L_REG_W	0x014	/* Level2 Mask GIU intr reg Low */
    160  1.6      sato #define VR4181_GIUINT_L_REG_W	ICU_NO_REG_W	/* Level2 GIU intr reg Low */
    161  1.6      sato #define VR4181_MGIUINT_L_REG_W	ICU_NO_REG_W	/* Level2 Mask GIU intr reg Low */
    162  1.5      sato #if defined SINGLE_VRIP_BASE
    163  1.5      sato #if defined VRGROUP_4102_4121
    164  1.5      sato #define GIUINT_L_REG_W		VR4102_GIUINT_L_REG_W
    165  1.5      sato #define MGIUINT_L_REG_W		VR4102_MGIUINT_L_REG_W
    166  1.5      sato #endif /* VRGROUP_4102_4121 */
    167  1.5      sato #if defined VRGROUP_4122_4131
    168  1.5      sato #define GIUINT_L_REG_W		VR4122_GIUINT_L_REG_W
    169  1.5      sato #define MGIUINT_L_REG_W		VR4122_MGIUINT_L_REG_W
    170  1.5      sato #endif /* VRGROUP_4122_4131 */
    171  1.5      sato #if defined VRGROUP_4181
    172  1.5      sato #define GIUINT_L_REG_W		VR4181_GIUINT_L_REG_W
    173  1.5      sato #define MGIUINT_L_REG_W		VR4181_MGIUINT_L_REG_W
    174  1.5      sato #endif /* VRGROUP_4181 */
    175  1.5      sato #endif
    176  1.1  takemura 
    177  1.1  takemura #define		GIUINT_GPIO15		(1<<15)	/* GPIO 15 */
    178  1.1  takemura #define		GIUINT_GPIO14		(1<<14)	/* GPIO 14 */
    179  1.1  takemura #define		GIUINT_GPIO13		(1<<13)	/* GPIO 13 */
    180  1.1  takemura #define		GIUINT_GPIO12		(1<<12)	/* GPIO 12 */
    181  1.1  takemura #define		GIUINT_GPIO11		(1<<11)	/* GPIO 11 */
    182  1.1  takemura #define		GIUINT_GPIO10		(1<<10)	/* GPIO 10 */
    183  1.1  takemura #define		GIUINT_GPIO9		(1<<9)	/* GPIO 9 */
    184  1.1  takemura #define		GIUINT_GPIO8		(1<<8)	/* GPIO 8 */
    185  1.1  takemura #define		GIUINT_GPIO7		(1<<7)	/* GPIO 7 */
    186  1.1  takemura #define		GIUINT_GPIO6		(1<<6)	/* GPIO 6 */
    187  1.1  takemura #define		GIUINT_GPIO5		(1<<5)	/* GPIO 5 */
    188  1.1  takemura #define		GIUINT_GPIO4		(1<<4)	/* GPIO 4 */
    189  1.1  takemura #define		GIUINT_GPIO3		(1<<3)	/* GPIO 3 */
    190  1.1  takemura #define		GIUINT_GPIO2		(1<<2)	/* GPIO 2 */
    191  1.1  takemura #define		GIUINT_GPIO1		(1<<1)	/* GPIO 1 */
    192  1.1  takemura #define		GIUINT_GPIO0		(1)	/* GPIO 0 */
    193  1.1  takemura 
    194  1.1  takemura 
    195  1.5      sato /* DSIUINT & MDSIUINT */
    196  1.5      sato #define VR4102_DSIUINT_REG_W		0x00a	/* Level2 DSIU intr reg */
    197  1.5      sato #define VR4102_MDSIUINT_REG_W		0x016	/* Level2 Mask DSIU intr reg */
    198  1.5      sato #define VR4122_DSIUINT_REG_W		0x00a	/* Level2 DSIU intr reg */
    199  1.5      sato #define VR4122_MDSIUINT_REG_W		0x016	/* Level2 Mask DSIU intr reg */
    200  1.6      sato #define VR4181_DSIUINT_REG_W		ICU_NO_REG_W	/* Level2 DSIU intr reg */
    201  1.6      sato #define VR4181_MDSIUINT_REG_W		ICU_NO_REG_W	/* Level2 Mask DSIU intr reg */
    202  1.5      sato #if defined SINGLE_VRIP_BASE
    203  1.5      sato #if defined VRGROUP_4102_4121
    204  1.5      sato #define DSIUINT_REG_W		VR4102_DSIUINT_REG_W
    205  1.5      sato #define MDSIUINT_REG_W		VR4102_MDSIUINT_REG_W
    206  1.5      sato #endif /* VRGROUP_4102_4121 */
    207  1.5      sato #if defined VRGROUP_4122_4131
    208  1.5      sato #define DSIUINT_REG_W		VR4122_DSIUINT_REG_W
    209  1.5      sato #define MDSIUINT_REG_W		VR4122_MDSIUINT_REG_W
    210  1.5      sato #endif /* VRGROUP_4122_4131 */
    211  1.5      sato #if defined VRGROUP_4181
    212  1.5      sato #define DSIUINT_REG_W		VR4181_DSIUINT_REG_W
    213  1.5      sato #define MDSIUINT_REG_W		VR4181_MDSIUINT_REG_W
    214  1.5      sato #endif /* VRGROUP_4181 */
    215  1.5      sato #endif
    216  1.1  takemura 
    217  1.1  takemura #define		DSIUINT_DCTS		(1<<11)	/* DCTS# change */
    218  1.1  takemura #define		DSIUINT_SER0		(1<<10)	/* Debug serial receive error */
    219  1.1  takemura #define		DSIUINT_SR0		(1<<9)	/* Debug serial receive */
    220  1.1  takemura #define		DSIUINT_ST0		(1<<8)	/* Debug serial transmit */
    221  1.1  takemura 
    222  1.5      sato 
    223  1.5      sato /* NMI */
    224  1.1  takemura #define NMI_REG_W		0x018	/* NMI reg */
    225  1.1  takemura 
    226  1.1  takemura #define		LOWBATT_NMIORINT	(1)	/* Low battery type */
    227  1.1  takemura #define		LOWBATT_INT0		(1)	/* Low battery int 0 */
    228  1.1  takemura #define		LOWBATT_NMI		(0)	/* Low battery NMI */
    229  1.1  takemura 
    230  1.1  takemura 
    231  1.5      sato /* SOFTINT */
    232  1.1  takemura #define SOFTINT_REG_W		0x01a	/* Software intr reg */
    233  1.1  takemura 
    234  1.1  takemura #define		SOFTINT_MASK3		(1<<3)	/* Softint3 mask */
    235  1.1  takemura #define		SOFTINT_SET3		(1<<3)	/* Softint3 set */
    236  1.1  takemura #define		SOFTINT_CLEAR3		(0<<3)	/* Softint3 clear */
    237  1.1  takemura 
    238  1.1  takemura #define		SOFTINT_MASK2		(1<<2)	/* Softint2 mask */
    239  1.1  takemura #define		SOFTINT_SET2		(1<<2)	/* Softint2 set */
    240  1.1  takemura #define		SOFTINT_CLEAR2		(0<<2)	/* Softint2 clear */
    241  1.1  takemura 
    242  1.1  takemura #define		SOFTINT_MASK1		(1<<1)	/* Softint1 mask */
    243  1.1  takemura #define		SOFTINT_SET1		(1<<1)	/* Softint1 set */
    244  1.1  takemura #define		SOFTINT_CLEAR1		(0<<1)	/* Softint1 clear */
    245  1.1  takemura 
    246  1.1  takemura #define		SOFTINT_MASK0		(1)	/* Softint0 mask */
    247  1.1  takemura #define		SOFTINT_SET0		(1)	/* Softint0 set */
    248  1.1  takemura #define		SOFTINT_CLEAR0		(0)	/* Softint0 clear */
    249  1.1  takemura 
    250  1.1  takemura 
    251  1.5      sato /* SYSINT2 & MSYSINT2 */
    252  1.3      sato #define VR4102_SYSINT2_REG_W	0x180	/* Level1 System intr reg 2 */
    253  1.3      sato #define VR4102_MSYSINT2_REG_W	0x186	/* Level1 Mask System intr reg 2 */
    254  1.3      sato #define VR4122_SYSINT2_REG_W	0x020	/* Level1 System intr reg 2 */
    255  1.3      sato #define VR4122_MSYSINT2_REG_W	0x026	/* Level1 Mask System intr reg 2 */
    256  1.5      sato #define VR4181_SYSINT2_REG_W	0x180	/* Level1 System intr reg 2 */
    257  1.5      sato #define VR4181_MSYSINT2_REG_W	0x186	/* Level1 Mask System intr reg 2 */
    258  1.4      sato #if defined SINGLE_VRIP_BASE
    259  1.4      sato #if defined VRGROUP_4102_4121
    260  1.4      sato #define SYSINT2_REG_W		VR4102_SYSINT2_REG_W
    261  1.4      sato #define MSYSINT2_REG_W		VR4102_MSYSINT2_REG_W
    262  1.4      sato #endif /* VRGROUP_4102_4121 */
    263  1.5      sato #if defined VRGROUP_4122_4131
    264  1.4      sato #define SYSINT2_REG_W		VR4122_SYSINT2_REG_W
    265  1.4      sato #define MSYSINT2_REG_W		VR4122_MSYSINT2_REG_W
    266  1.5      sato #endif /* VRGROUP_4122_4131 */
    267  1.5      sato #if defined VRGROUP_4181
    268  1.5      sato #define SYSINT2_REG_W		VR4181_SYSINT2_REG_W
    269  1.5      sato #define MSYSINT2_REG_W		VR4181_MSYSINT2_REG_W
    270  1.5      sato #endif /* VRGROUP_4181 */
    271  1.4      sato #endif
    272  1.1  takemura 
    273  1.1  takemura #define SYSINT2_INT31			(1<<15)
    274  1.1  takemura #define SYSINT2_INT30			(1<<14)
    275  1.1  takemura #define SYSINT2_INT29			(1<<13)
    276  1.1  takemura #define SYSINT2_INT28			(1<<12)
    277  1.1  takemura #define SYSINT2_INT27			(1<<11)
    278  1.1  takemura #define SYSINT2_INT26			(1<<10)
    279  1.1  takemura #define SYSINT2_INT25			(1<<9)
    280  1.3      sato #define SYSINT2_BCU			(1<<9)  /* BCU intr (=vr4122) */
    281  1.1  takemura #define SYSINT2_INT24			(1<<8)
    282  1.3      sato #define SYSINT2_CSI			(1<<8)  /* CSI intr (=vr4122) */
    283  1.1  takemura #define SYSINT2_INT23			(1<<7)
    284  1.3      sato #define SYSINT2_SCU			(1<<7)	/* SCU intr (=vr4122) */
    285  1.1  takemura #define SYSINT2_INT22			(1<<6)
    286  1.3      sato #define SYSINT2_PCI			(1<<6)	/* PCI intr (=vr4122) */
    287  1.5      sato #define SYSINT2_LCD			(1<<6)	/* LCD intr (=vr4181) */
    288  1.1  takemura #define SYSINT2_DSIU			(1<<5)	/* DSUI intr */
    289  1.5      sato #define SYSINT2_DCU81			(1<<5)	/* DCU intr (=4181) */
    290  1.1  takemura #define SYSINT2_FIR			(1<<4)	/* FIR intr */
    291  1.1  takemura #define SYSINT2_TCLK			(1<<3)	/* TClock Counter intr */
    292  1.5      sato #define SYSINT2_CSI81			(1<<3)	/* CSI intr (=4181) */
    293  1.3      sato #define SYSINT2_HSP			(1<<2)	/* HSP intr (4122>=4102)*/
    294  1.5      sato #define SYSINT2_ECU			(1<<2)	/* EUC intr (=4181)*/
    295  1.1  takemura #define SYSINT2_LED			(1<<1)	/* LED intr */
    296  1.1  takemura #define SYSINT2_RTCL2			(1<<0)	/* RTCLong2 intr */
    297  1.1  takemura 
    298  1.1  takemura 
    299  1.5      sato /* GIUINTH & MGIUINTH */
    300  1.3      sato #define VR4102_GIUINT_H_REG_W	0x182	/* Level2 GIU intr reg High */
    301  1.3      sato #define VR4102_MGIUINT_H_REG_W	0x188	/* Level2 Mask GIU intr reg High */
    302  1.3      sato #define VR4122_GIUINT_H_REG_W	0x022	/* Level2 GIU intr reg High */
    303  1.3      sato #define VR4122_MGIUINT_H_REG_W	0x028	/* Level2 Mask GIU intr reg High */
    304  1.6      sato #define VR4181_GIUINT_H_REG_W	ICU_NO_REG_W	/* Level2 GIU intr reg High */
    305  1.6      sato #define VR4181_MGIUINT_H_REG_W	ICU_NO_REG_W	/* Level2 Mask GIU intr reg High */
    306  1.4      sato #if defined SINGLE_VRIP_BASE
    307  1.4      sato #if defined VRGROUP_4102_4121
    308  1.4      sato #define GIUINT_H_REG_W		VR4102_GIUINT_H_REG_W
    309  1.4      sato #define MGIUINT_H_REG_W		VR4102_MGIUINT_H_REG_W
    310  1.4      sato #endif /* VRGROUP_4102_4121 */
    311  1.5      sato #if defined VRGROUP_4122_4131
    312  1.4      sato #define GIUINT_H_REG_W		VR4122_GIUINT_H_REG_W
    313  1.4      sato #define MGIUINT_H_REG_W		VR4122_MGIUINT_H_REG_W
    314  1.5      sato #endif /* VRGROUP_4122_4131 */
    315  1.5      sato #if defined VRGROUP_4181
    316  1.5      sato #define GIUINT_H_REG_W		VR4181_GIUINT_H_REG_W
    317  1.5      sato #define MGIUINT_H_REG_W		VR4181_MGIUINT_H_REG_W
    318  1.5      sato #endif /* VRGROUP_4181 */
    319  1.4      sato #endif
    320  1.1  takemura 
    321  1.1  takemura #define		GIUINT_GPIO31		(1<<15)	/* GPIO 31 */
    322  1.1  takemura #define		GIUINT_GPIO30		(1<<14)	/* GPIO 30 */
    323  1.1  takemura #define		GIUINT_GPIO29		(1<<13)	/* GPIO 29 */
    324  1.1  takemura #define		GIUINT_GPIO28		(1<<12)	/* GPIO 28 */
    325  1.1  takemura #define		GIUINT_GPIO27		(1<<11)	/* GPIO 27 */
    326  1.1  takemura #define		GIUINT_GPIO26		(1<<10)	/* GPIO 26 */
    327  1.1  takemura #define		GIUINT_GPIO25		(1<<9)	/* GPIO 25 */
    328  1.1  takemura #define		GIUINT_GPIO24		(1<<8)	/* GPIO 24 */
    329  1.1  takemura #define		GIUINT_GPIO23		(1<<7)	/* GPIO 23 */
    330  1.1  takemura #define		GIUINT_GPIO22		(1<<6)	/* GPIO 22 */
    331  1.1  takemura #define		GIUINT_GPIO21		(1<<5)	/* GPIO 21 */
    332  1.1  takemura #define		GIUINT_GPIO20		(1<<4)	/* GPIO 20 */
    333  1.1  takemura #define		GIUINT_GPIO19		(1<<3)	/* GPIO 19 */
    334  1.1  takemura #define		GIUINT_GPIO18		(1<<2)	/* GPIO 18 */
    335  1.1  takemura #define		GIUINT_GPIO17		(1<<1)	/* GPIO 17 */
    336  1.1  takemura #define		GIUINT_GPIO16		(1)	/* GPIO 16 */
    337  1.1  takemura 
    338  1.1  takemura 
    339  1.5      sato /* FIRINT & MFIRINT */
    340  1.3      sato #define VR4102_FIRINT_REG_W	0x184	/* Level2 FIR intr reg */
    341  1.3      sato #define VR4102_MFIRINT_REG_W	0x18a	/* Level2 Mask FIR intr reg */
    342  1.3      sato #define VR4122_FIRINT_REG_W	0x024	/* Level2 FIR intr reg */
    343  1.3      sato #define VR4122_MFIRINT_REG_W	0x02a	/* Level2 Mask FIR intr reg */
    344  1.6      sato #define VR4181_FIRINT_REG_W	ICU_NO_REG_W	/* Level2 FIR intr reg */
    345  1.6      sato #define VR4181_MFIRINT_REG_W	ICU_NO_REG_W	/* Level2 Mask FIR intr reg */
    346  1.4      sato #if defined SINGLE_VRIP_BASE
    347  1.4      sato #if defined VRGROUP_4102_4121
    348  1.4      sato #define FIRINT_REG_W		VR4102_FIRINT_REG_W
    349  1.4      sato #define MFIRINT_REG_W		VR4102_MFIRINT_REG_W
    350  1.4      sato #endif /* VRGROUP_4102_4121 */
    351  1.5      sato #if defined VRGROUP_4122_4131
    352  1.4      sato #define FIRINT_REG_W		VR4122_FIRINT_REG_W
    353  1.4      sato #define MFIRINT_REG_W		VR4122_MFIRINT_REG_W
    354  1.5      sato #endif /* VRGROUP_4122_4131 */
    355  1.5      sato #if defined VRGROUP_4181
    356  1.5      sato #define FIRINT_REG_W		VR4181_FIRINT_REG_W
    357  1.5      sato #define MFIRINT_REG_W		VR4181_MFIRINT_REG_W
    358  1.5      sato #endif /* VRGROUP_4181 */
    359  1.4      sato #endif
    360  1.1  takemura 
    361  1.1  takemura #define		FIRINT_FIR		(1<<4)	/* FIR intr */
    362  1.1  takemura #define		FIRINT_RECV2		(1<<3)	/* FIR DMA buf recv buffer2 */
    363  1.1  takemura #define		FIRINT_TRNS2		(1<<2)	/* FIR DMA buf transmit buffer2 */
    364  1.1  takemura #define		FIRINT_RECV1		(1<<1)	/* FIR DMA buf recv buffer1 */
    365  1.1  takemura #define		FIRINT_TRNS1		(1)	/* FIR DMA buf transmit buffer1 */
    366  1.3      sato 
    367  1.5      sato 
    368  1.5      sato /* PCIINT & MPCIINT */
    369  1.6      sato #define VR4102_PCIINT_REG_W	ICU_NO_REG_W	/* Level2 PCI intr reg */
    370  1.6      sato #define VR4102_MPCIINT_REG_W	ICU_NO_REG_W	/* Level2 PCI intr mask */
    371  1.3      sato #define VR4122_PCIINT_REG_W	0x2c	/* Level2 PCI intr reg */
    372  1.3      sato #define VR4122_MPCIINT_REG_W	0x32	/* Level2 PCI intr mask */
    373  1.6      sato #define VR4181_PCIINT_REG_W	ICU_NO_REG_W	/* Level2 PCI intr reg */
    374  1.6      sato #define VR4181_MPCIINT_REG_W	ICU_NO_REG_W	/* Level2 PCI intr mask */
    375  1.4      sato #if defined SINGLE_VRIP_BASE
    376  1.4      sato #if defined VRGROUP_4102_4121
    377  1.4      sato #define PCIINT_REG_W		VR4102_PCIINT_REG_W
    378  1.4      sato #define MPCIINT_REG_W		VR4102_MPCIINT_REG_W
    379  1.4      sato #endif /* VRGROUP_4102_4121 */
    380  1.5      sato #if defined VRGROUP_4122_4131
    381  1.4      sato #define PCIINT_REG_W		VR4122_PCIINT_REG_W
    382  1.4      sato #define MPCIINT_REG_W		VR4122_MPCIINT_REG_W
    383  1.5      sato #endif /* VRGROUP_4122_4131 */
    384  1.5      sato #if defined VRGROUP_4181
    385  1.5      sato #define PCIINT_REG_W		VR4181_PCIINT_REG_W
    386  1.5      sato #define MPCIINT_REG_W		VR4181_MPCIINT_REG_W
    387  1.5      sato #endif /* VRGROUP_4181 */
    388  1.4      sato #endif
    389  1.4      sato 
    390  1.3      sato #define		PCIINT_INT0		(1)	/* PCI INT 0 */
    391  1.3      sato 
    392  1.5      sato 
    393  1.5      sato /* SCUINT & MSCUINT */
    394  1.6      sato #define VR4102_SCUINT_REG_W	ICU_NO_REG_W	/* Level2 SCU intr reg */
    395  1.6      sato #define VR4102_MSCUINT_REG_W	ICU_NO_REG_W	/* Level2 SCU intr mask */
    396  1.3      sato #define VR4122_SCUINT_REG_W	0x2e	/* Level2 SCU intr reg */
    397  1.3      sato #define VR4122_MSCUINT_REG_W	0x34	/* Level2 SCU intr mask */
    398  1.6      sato #define VR4181_SCUINT_REG_W	ICU_NO_REG_W	/* Level2 SCU intr reg */
    399  1.6      sato #define VR4181_MSCUINT_REG_W	ICU_NO_REG_W	/* Level2 SCU intr mask */
    400  1.4      sato #if defined SINGLE_VRIP_BASE
    401  1.4      sato #if defined VRGROUP_4102_4121
    402  1.4      sato #define SCUINT_REG_W		VR4102_SCUINT_REG_W
    403  1.4      sato #define MSCUINT_REG_W		VR4102_MSCUINT_REG_W
    404  1.4      sato #endif /* VRGROUP_4102_4121 */
    405  1.5      sato #if defined VRGROUP_4122_4131
    406  1.4      sato #define SCUINT_REG_W		VR4122_SCUINT_REG_W
    407  1.4      sato #define MSCUINT_REG_W		VR4122_MSCUINT_REG_W
    408  1.5      sato #endif /* VRGROUP_4122_4131 */
    409  1.5      sato #if defined VRGROUP_4181
    410  1.5      sato #define SCUINT_REG_W		VR4181_SCUINT_REG_W
    411  1.5      sato #define MSCUINT_REG_W		VR4181_MSCUINT_REG_W
    412  1.5      sato #endif /* VRGROUP_4181 */
    413  1.4      sato #endif
    414  1.4      sato 
    415  1.3      sato #define		SCUINT_INT0		(1)	/* SCU INT 0 */
    416  1.3      sato 
    417  1.5      sato 
    418  1.5      sato /* CSIINT & MCSIINT */
    419  1.6      sato #define VR4102_CSIINT_REG_W	ICU_NO_REG_W	/* Level2 CSI intr reg */
    420  1.6      sato #define VR4102_MCSIINT_REG_W	ICU_NO_REG_W	/* Level2 CSI intr mask */
    421  1.3      sato #define VR4122_CSIINT_REG_W	0x30	/* Level2 CSI intr reg */
    422  1.3      sato #define VR4122_MCSIINT_REG_W	0x36	/* Level2 CSI intr mask */
    423  1.6      sato #define VR4181_CSIINT_REG_W	ICU_NO_REG_W	/* Level2 CSI intr reg */
    424  1.6      sato #define VR4181_MCSIINT_REG_W	ICU_NO_REG_W	/* Level2 CSI intr mask */
    425  1.4      sato #if defined SINGLE_VRIP_BASE
    426  1.4      sato #if defined VRGROUP_4102_4121
    427  1.4      sato #define CSIINT_REG_W		VR4102_CSIINT_REG_W
    428  1.4      sato #define MCSIINT_REG_W		VR4102_MCSIINT_REG_W
    429  1.4      sato #endif /* VRGROUP_4102_4121 */
    430  1.5      sato #if defined VRGROUP_4122_4131
    431  1.4      sato #define CSIINT_REG_W		VR4122_CSIINT_REG_W
    432  1.4      sato #define MCSIINT_REG_W		VR4122_MCSIINT_REG_W
    433  1.5      sato #endif /* VRGROUP_4122_4131 */
    434  1.5      sato #if defined VRGROUP_4181
    435  1.5      sato #define CSIINT_REG_W		VR4181_CSIINT_REG_W
    436  1.5      sato #define MCSIINT_REG_W		VR4181_MCSIINT_REG_W
    437  1.5      sato #endif /* VRGROUP_4181 */
    438  1.4      sato #endif
    439  1.4      sato 
    440  1.3      sato #define		CSIINT_TRPAGE2		(1<<6)	/* DMA send page 2 intr */
    441  1.3      sato #define		CSIINT_TRPAGE1		(1<<5)	/* DMA send page 1 intr */
    442  1.3      sato #define		CSIINT_TREND		(1<<4)	/* send every data intr */
    443  1.3      sato #define		CSIINT_TREMPTY		(1<<3)	/* send FIFO empty intr */
    444  1.3      sato #define		CSIINT_RCPAGE2		(1<<2)	/* DMA recv page 2 intr */
    445  1.3      sato #define		CSIINT_RCPAGE1		(1<<1)	/* DMA recv page 1 intr */
    446  1.3      sato #define		CSIINT_RCOVER		(1)	/* recv FIFO overrun intr */
    447  1.3      sato 
    448  1.5      sato 
    449  1.5      sato /* BCUINT & MBCUINT */
    450  1.6      sato #define VR4102_BCUINT_REG_W	ICU_NO_REG_W	/* Level2 BCU intr reg */
    451  1.6      sato #define VR4102_MBCUINT_REG_W	ICU_NO_REG_W	/* Level2 BCU intr mask */
    452  1.3      sato #define VR4122_BCUINT_REG_W	0x38	/* Level2 BCU intr reg */
    453  1.3      sato #define VR4122_MBCUINT_REG_W	0x3a	/* Level2 BCU intr mask */
    454  1.6      sato #define VR4181_BCUINT_REG_W	ICU_NO_REG_W	/* Level2 BCU intr reg */
    455  1.6      sato #define VR4181_MBCUINT_REG_W	ICU_NO_REG_W	/* Level2 BCU intr mask */
    456  1.4      sato #if defined SINGLE_VRIP_BASE
    457  1.4      sato #if defined VRGROUP_4102_4121
    458  1.4      sato #define BCUINT_REG_W		VR4102_BCUINT_REG_W
    459  1.4      sato #define MBCUINT_REG_W		VR4102_MBCUINT_REG_W
    460  1.4      sato #endif /* VRGROUP_4102_4121 */
    461  1.5      sato #if defined VRGROUP_4122_4131
    462  1.4      sato #define BCUINT_REG_W		VR4122_BCUINT_REG_W
    463  1.4      sato #define MBCUINT_REG_W		VR4122_MBCUINT_REG_W
    464  1.5      sato #endif /* VRGROUP_4122_4131 */
    465  1.5      sato #if defined VRGROUP_4181
    466  1.5      sato #define BCUINT_REG_W		VR4181_BCUINT_REG_W
    467  1.5      sato #define MBCUINT_REG_W		VR4181_MBCUINT_REG_W
    468  1.5      sato #endif /* VRGROUP_4181 */
    469  1.4      sato #endif
    470  1.4      sato 
    471  1.3      sato #define		BCUINT_INT		(1)	/* BCU INT */
    472  1.1  takemura 
    473  1.1  takemura /* END icureg.h */
    474