diff options
Diffstat (limited to 'chip/it83xx/registers.h')
-rw-r--r-- | chip/it83xx/registers.h | 178 |
1 files changed, 147 insertions, 31 deletions
diff --git a/chip/it83xx/registers.h b/chip/it83xx/registers.h index 473f696a6c..9e5d115f81 100644 --- a/chip/it83xx/registers.h +++ b/chip/it83xx/registers.h @@ -292,6 +292,9 @@ #define CPU_INT_2_ALL_GPIOS 255 #define IT83XX_CPU_INT_IRQ_255 2 +#define CPU_INT_GROUP_5 254 +#define IT83XX_CPU_INT_IRQ_254 5 + #define CPU_INT(irq) CONCAT2(IT83XX_CPU_INT_IRQ_, irq) /* --- INTC --- */ @@ -408,6 +411,10 @@ #define IT83XX_WUC_WUESR10 REG8(IT83XX_WUC_BASE+0x21) #define IT83XX_WUC_WUESR11 REG8(IT83XX_WUC_BASE+0x25) +#define IT83XX_WUC_WUEMR3 REG8(IT83XX_WUC_BASE+0x02) +#define IT83XX_WUC_WUESR3 REG8(IT83XX_WUC_BASE+0x06) +#define IT83XX_WUC_WUENR3 REG8(IT83XX_WUC_BASE+0x0A) + /* --- UART --- */ #define IT83XX_UART0_BASE 0x00F02700 #define IT83XX_UART1_BASE 0x00F02800 @@ -434,34 +441,36 @@ #define IT83XX_GPIO_BASE 0x00F01600 -#define IT83XX_GPIO_GPCRA0 REG8(IT83XX_GPIO_BASE+0x10) -#define IT83XX_GPIO_GPCRA1 REG8(IT83XX_GPIO_BASE+0x11) -#define IT83XX_GPIO_GPCRA2 REG8(IT83XX_GPIO_BASE+0x12) -#define IT83XX_GPIO_GPCRA3 REG8(IT83XX_GPIO_BASE+0x13) -#define IT83XX_GPIO_GPCRA4 REG8(IT83XX_GPIO_BASE+0x14) -#define IT83XX_GPIO_GPCRA5 REG8(IT83XX_GPIO_BASE+0x15) -#define IT83XX_GPIO_GPCRA6 REG8(IT83XX_GPIO_BASE+0x16) -#define IT83XX_GPIO_GPCRA7 REG8(IT83XX_GPIO_BASE+0x17) - -#define IT83XX_GPIO_GPCRF0 REG8(IT83XX_GPIO_BASE+0x38) - -#define IT83XX_GPIO_GPCRI0 REG8(IT83XX_GPIO_BASE+0x50) -#define IT83XX_GPIO_GPCRI1 REG8(IT83XX_GPIO_BASE+0x51) -#define IT83XX_GPIO_GPCRI2 REG8(IT83XX_GPIO_BASE+0x52) -#define IT83XX_GPIO_GPCRI3 REG8(IT83XX_GPIO_BASE+0x53) -#define IT83XX_GPIO_GPCRI4 REG8(IT83XX_GPIO_BASE+0x54) -#define IT83XX_GPIO_GPCRI5 REG8(IT83XX_GPIO_BASE+0x55) -#define IT83XX_GPIO_GPCRI6 REG8(IT83XX_GPIO_BASE+0x56) -#define IT83XX_GPIO_GPCRI7 REG8(IT83XX_GPIO_BASE+0x57) - -#define IT83XX_GPIO_GRC1 REG8(IT83XX_GPIO_BASE+0xF0) -#define IT83XX_GPIO_GRC2 REG8(IT83XX_GPIO_BASE+0xF1) -#define IT83XX_GPIO_GRC3 REG8(IT83XX_GPIO_BASE+0xF2) -#define IT83XX_GPIO_GRC4 REG8(IT83XX_GPIO_BASE+0xF3) -#define IT83XX_GPIO_GRC5 REG8(IT83XX_GPIO_BASE+0xF4) -#define IT83XX_GPIO_GRC6 REG8(IT83XX_GPIO_BASE+0xF5) -#define IT83XX_GPIO_GRC7 REG8(IT83XX_GPIO_BASE+0xF6) -#define IT83XX_GPIO_GRC8 REG8(IT83XX_GPIO_BASE+0xF7) +#define IT83XX_GPIO_GCR REG8(IT83XX_GPIO_BASE+0x00) + +#define IT83XX_GPIO_GPCRA0 REG8(IT83XX_GPIO_BASE+0x10) +#define IT83XX_GPIO_GPCRA1 REG8(IT83XX_GPIO_BASE+0x11) +#define IT83XX_GPIO_GPCRA2 REG8(IT83XX_GPIO_BASE+0x12) +#define IT83XX_GPIO_GPCRA3 REG8(IT83XX_GPIO_BASE+0x13) +#define IT83XX_GPIO_GPCRA4 REG8(IT83XX_GPIO_BASE+0x14) +#define IT83XX_GPIO_GPCRA5 REG8(IT83XX_GPIO_BASE+0x15) +#define IT83XX_GPIO_GPCRA6 REG8(IT83XX_GPIO_BASE+0x16) +#define IT83XX_GPIO_GPCRA7 REG8(IT83XX_GPIO_BASE+0x17) + +#define IT83XX_GPIO_GPCRF0 REG8(IT83XX_GPIO_BASE+0x38) + +#define IT83XX_GPIO_GPCRI0 REG8(IT83XX_GPIO_BASE+0x50) +#define IT83XX_GPIO_GPCRI1 REG8(IT83XX_GPIO_BASE+0x51) +#define IT83XX_GPIO_GPCRI2 REG8(IT83XX_GPIO_BASE+0x52) +#define IT83XX_GPIO_GPCRI3 REG8(IT83XX_GPIO_BASE+0x53) +#define IT83XX_GPIO_GPCRI4 REG8(IT83XX_GPIO_BASE+0x54) +#define IT83XX_GPIO_GPCRI5 REG8(IT83XX_GPIO_BASE+0x55) +#define IT83XX_GPIO_GPCRI6 REG8(IT83XX_GPIO_BASE+0x56) +#define IT83XX_GPIO_GPCRI7 REG8(IT83XX_GPIO_BASE+0x57) + +#define IT83XX_GPIO_GRC1 REG8(IT83XX_GPIO_BASE+0xF0) +#define IT83XX_GPIO_GRC2 REG8(IT83XX_GPIO_BASE+0xF1) +#define IT83XX_GPIO_GRC3 REG8(IT83XX_GPIO_BASE+0xF2) +#define IT83XX_GPIO_GRC4 REG8(IT83XX_GPIO_BASE+0xF3) +#define IT83XX_GPIO_GRC5 REG8(IT83XX_GPIO_BASE+0xF4) +#define IT83XX_GPIO_GRC6 REG8(IT83XX_GPIO_BASE+0xF5) +#define IT83XX_GPIO_GRC7 REG8(IT83XX_GPIO_BASE+0xF6) +#define IT83XX_GPIO_GRC8 REG8(IT83XX_GPIO_BASE+0xF7) #define IT83XX_GPIO_DATA_BASE (IT83XX_GPIO_BASE + 0x00) #define IT83XX_GPIO_OUTPUT_TYPE_BASE (IT83XX_GPIO_BASE + 0x70) @@ -561,6 +570,7 @@ enum clock_gate_offsets { #define IT83XX_GCTRL_WNCKR REG8(IT83XX_GCTRL_BASE+0x0B) #define IT83XX_GCTRL_RSTS REG8(IT83XX_GCTRL_BASE+0x06) +#define IT83XX_GCTRL_BADRSEL REG8(IT83XX_GCTRL_BASE+0x0A) /* --- Pulse Width Modulation (PWM) --- */ #define IT83XX_PWM_BASE 0x00F01800 @@ -655,16 +665,122 @@ enum clock_gate_offsets { #define IT83XX_ADC_CMP2THRDATM REG8(IT83XX_ADC_BASE+0x4D) #define IT83XX_ADC_CMP2THRDATL REG8(IT83XX_ADC_BASE+0x4E) +/* Keyboard Controller (KBC) */ +#define IT83XX_KBC_BASE 0x00F01300 + +#define IT83XX_KBC_KBHICR REG8(IT83XX_KBC_BASE+0x00) +#define IT83XX_KBC_KBIRQR REG8(IT83XX_KBC_BASE+0x02) +#define IT83XX_KBC_KBHISR REG8(IT83XX_KBC_BASE+0x04) +#define IT83XX_KBC_KBHIKDOR REG8(IT83XX_KBC_BASE+0x06) +#define IT83XX_KBC_KBHIMDOR REG8(IT83XX_KBC_BASE+0x08) +#define IT83XX_KBC_KBHIDIR REG8(IT83XX_KBC_BASE+0x0A) + +/* Power Management Channel (PMC) */ +#define IT83XX_PMC_BASE 0x00F01500 + +#define IT83XX_PMC_PM1STS REG8(IT83XX_PMC_BASE+0x00) +#define IT83XX_PMC_PM1DO REG8(IT83XX_PMC_BASE+0x01) +#define IT83XX_PMC_PM1DOSCI REG8(IT83XX_PMC_BASE+0x02) +#define IT83XX_PMC_PM1DOSMI REG8(IT83XX_PMC_BASE+0x03) +#define IT83XX_PMC_PM1DI REG8(IT83XX_PMC_BASE+0x04) +#define IT83XX_PMC_PM1DISCI REG8(IT83XX_PMC_BASE+0x05) +#define IT83XX_PMC_PM1CTL REG8(IT83XX_PMC_BASE+0x06) +#define IT83XX_PMC_PM1IC REG8(IT83XX_PMC_BASE+0x07) +#define IT83XX_PMC_PM1IE REG8(IT83XX_PMC_BASE+0x08) +#define IT83XX_PMC_PM2STS REG8(IT83XX_PMC_BASE+0x10) +#define IT83XX_PMC_PM2DO REG8(IT83XX_PMC_BASE+0x11) +#define IT83XX_PMC_PM2DOSCI REG8(IT83XX_PMC_BASE+0x12) +#define IT83XX_PMC_PM2DOSMI REG8(IT83XX_PMC_BASE+0x13) +#define IT83XX_PMC_PM2DI REG8(IT83XX_PMC_BASE+0x14) +#define IT83XX_PMC_PM2DISCI REG8(IT83XX_PMC_BASE+0x15) +#define IT83XX_PMC_PM2CTL REG8(IT83XX_PMC_BASE+0x16) +#define IT83XX_PMC_PM2IC REG8(IT83XX_PMC_BASE+0x17) +#define IT83XX_PMC_PM2IE REG8(IT83XX_PMC_BASE+0x18) +#define IT83XX_PMC_PM3STS REG8(IT83XX_PMC_BASE+0x20) +#define IT83XX_PMC_PM3DO REG8(IT83XX_PMC_BASE+0x21) +#define IT83XX_PMC_PM3DI REG8(IT83XX_PMC_BASE+0x22) +#define IT83XX_PMC_PM3CTL REG8(IT83XX_PMC_BASE+0x23) +#define IT83XX_PMC_PM3IC REG8(IT83XX_PMC_BASE+0x24) +#define IT83XX_PMC_PM3IE REG8(IT83XX_PMC_BASE+0x25) +#define IT83XX_PMC_PM4STS REG8(IT83XX_PMC_BASE+0x30) +#define IT83XX_PMC_PM4DO REG8(IT83XX_PMC_BASE+0x31) +#define IT83XX_PMC_PM4DI REG8(IT83XX_PMC_BASE+0x32) +#define IT83XX_PMC_PM4CTL REG8(IT83XX_PMC_BASE+0x33) +#define IT83XX_PMC_PM4IC REG8(IT83XX_PMC_BASE+0x34) +#define IT83XX_PMC_PM4IE REG8(IT83XX_PMC_BASE+0x35) +#define IT83XX_PMC_PM5STS REG8(IT83XX_PMC_BASE+0x40) +#define IT83XX_PMC_PM5DO REG8(IT83XX_PMC_BASE+0x41) +#define IT83XX_PMC_PM5DI REG8(IT83XX_PMC_BASE+0x42) +#define IT83XX_PMC_PM5CTL REG8(IT83XX_PMC_BASE+0x43) +#define IT83XX_PMC_PM5IC REG8(IT83XX_PMC_BASE+0x44) +#define IT83XX_PMC_PM5IE REG8(IT83XX_PMC_BASE+0x45) +#define IT83XX_PMC_MBXCTRL REG8(IT83XX_PMC_BASE+0x19) +#define IT83XX_PMC_MBXEC_00 REG8(IT83XX_PMC_BASE+0xF0) +#define IT83XX_PMC_MBXEC_01 REG8(IT83XX_PMC_BASE+0xF1) +#define IT83XX_PMC_MBXEC_02 REG8(IT83XX_PMC_BASE+0xF2) +#define IT83XX_PMC_MBXEC_03 REG8(IT83XX_PMC_BASE+0xF3) +#define IT83XX_PMC_MBXEC_04 REG8(IT83XX_PMC_BASE+0xF4) +#define IT83XX_PMC_MBXEC_05 REG8(IT83XX_PMC_BASE+0xF5) +#define IT83XX_PMC_MBXEC_06 REG8(IT83XX_PMC_BASE+0xF6) +#define IT83XX_PMC_MBXEC_07 REG8(IT83XX_PMC_BASE+0xF7) +#define IT83XX_PMC_MBXEC_08 REG8(IT83XX_PMC_BASE+0xF8) +#define IT83XX_PMC_MBXEC_09 REG8(IT83XX_PMC_BASE+0xF9) +#define IT83XX_PMC_MBXEC_10 REG8(IT83XX_PMC_BASE+0xFA) +#define IT83XX_PMC_MBXEC_11 REG8(IT83XX_PMC_BASE+0xFB) +#define IT83XX_PMC_MBXEC_12 REG8(IT83XX_PMC_BASE+0xFC) +#define IT83XX_PMC_MBXEC_13 REG8(IT83XX_PMC_BASE+0xFD) +#define IT83XX_PMC_MBXEC_14 REG8(IT83XX_PMC_BASE+0xFE) +#define IT83XX_PMC_MBXEC_15 REG8(IT83XX_PMC_BASE+0xFF) + +/* Keyboard Matrix Scan control (KBS) */ +#define IT83XX_KBS_BASE 0x00F01D00 + +#define IT83XX_KBS_KSOL REG8(IT83XX_KBS_BASE+0x00) +#define IT83XX_KBS_KSOH1 REG8(IT83XX_KBS_BASE+0x01) +#define IT83XX_KBS_KSOCTRL REG8(IT83XX_KBS_BASE+0x02) +#define IT83XX_KBS_KSOH2 REG8(IT83XX_KBS_BASE+0x03) +#define IT83XX_KBS_KSI REG8(IT83XX_KBS_BASE+0x04) +#define IT83XX_KBS_KSICTRL REG8(IT83XX_KBS_BASE+0x05) +#define IT83XX_KBS_KSIGCTRL REG8(IT83XX_KBS_BASE+0x06) +#define IT83XX_KBS_KSIGOEN REG8(IT83XX_KBS_BASE+0x07) +#define IT83XX_KBS_KSIGDAT REG8(IT83XX_KBS_BASE+0x08) +#define IT83XX_KBS_KSIGDMRR REG8(IT83XX_KBS_BASE+0x09) +#define IT83XX_KBS_KSOHGCTRL REG8(IT83XX_KBS_BASE+0x0A) +#define IT83XX_KBS_KSOHGOEN REG8(IT83XX_KBS_BASE+0x0B) +#define IT83XX_KBS_KSOHGDMRR REG8(IT83XX_KBS_BASE+0x0C) +#define IT83XX_KBS_KSOLGCTRL REG8(IT83XX_KBS_BASE+0x0D) +#define IT83XX_KBS_KSOLGOEN REG8(IT83XX_KBS_BASE+0x0E) +#define IT83XX_KBS_KSOLGDMRR REG8(IT83XX_KBS_BASE+0x0F) +#define IT83XX_KBS_KSO0LSDR REG8(IT83XX_KBS_BASE+0x10) +#define IT83XX_KBS_KSO1LSDR REG8(IT83XX_KBS_BASE+0x11) +#define IT83XX_KBS_KSO2LSDR REG8(IT83XX_KBS_BASE+0x12) +#define IT83XX_KBS_KSO3LSDR REG8(IT83XX_KBS_BASE+0x13) +#define IT83XX_KBS_KSO4LSDR REG8(IT83XX_KBS_BASE+0x14) +#define IT83XX_KBS_KSO5LSDR REG8(IT83XX_KBS_BASE+0x15) +#define IT83XX_KBS_KSO6LSDR REG8(IT83XX_KBS_BASE+0x16) +#define IT83XX_KBS_KSO7LSDR REG8(IT83XX_KBS_BASE+0x17) +#define IT83XX_KBS_KSO8LSDR REG8(IT83XX_KBS_BASE+0x18) +#define IT83XX_KBS_KSO9LSDR REG8(IT83XX_KBS_BASE+0x19) +#define IT83XX_KBS_KSO10LSDR REG8(IT83XX_KBS_BASE+0x1A) +#define IT83XX_KBS_KSO11LSDR REG8(IT83XX_KBS_BASE+0x1B) +#define IT83XX_KBS_KSO12LSDR REG8(IT83XX_KBS_BASE+0x1C) +#define IT83XX_KBS_KSO13LSDR REG8(IT83XX_KBS_BASE+0x1D) +#define IT83XX_KBS_KSO14LSDR REG8(IT83XX_KBS_BASE+0x1E) +#define IT83XX_KBS_KSO15LSDR REG8(IT83XX_KBS_BASE+0x1F) +#define IT83XX_KBS_KSO16LSDR REG8(IT83XX_KBS_BASE+0x20) +#define IT83XX_KBS_KSO17LSDR REG8(IT83XX_KBS_BASE+0x21) +#define IT83XX_KBS_SDC1R REG8(IT83XX_KBS_BASE+0x22) +#define IT83XX_KBS_SDC2R REG8(IT83XX_KBS_BASE+0x23) +#define IT83XX_KBS_SDC3R REG8(IT83XX_KBS_BASE+0x24) +#define IT83XX_KBS_SDSR REG8(IT83XX_KBS_BASE+0x25) + /* --- MISC (not implemented yet) --- */ #define IT83XX_SMFI_BASE 0x00F01000 -#define IT83XX_KBC_BASE 0x00F01300 -#define IT83XX_PMC_BASE 0x00F01500 #define IT83XX_PS2_BASE 0x00F01700 #define IT83XX_DAC_BASE 0x00F01A00 #define IT83XX_WUC_BASE 0x00F01B00 #define IT83XX_SMB_BASE 0x00F01C00 -#define IT83XX_KBS_BASE 0x00F01D00 #define IT83XX_EGPIO_BASE 0x00F02100 #define IT83XX_BRAM_BASE 0x00F02200 #define IT83XX_CIR_BASE 0x00F02300 |