Please remember to add a category to the bottom of each page that you create.
See categories help for further details, but most will probably be [[Category:HTC ModelName]].


From XDA-Developers
Jump to: navigation, search
Name address comment
GPIO_Base +0x0000
GPIO_Direction +0x0000 I=1, O=0
GPIO_InterruptType +0x0004 E=1
GPIO_InterruptEdgeType +0x0008 RE=1, FE=0
GPIO_InterruptLevelType +0x000c
GPIO_InterruptClear +0x0010
GPIO_Data +0x0014
GPIO_BattFaultOut +0x0018
GPIO_InterruptEnable +0x001c
GPIO_Alternate +0x003c ALT function
KPIO_Base +0x0200
KPIO_Direction +0x0200 I=1, O=0
KPIO_InterruptType +0x0204 E=1
KPIO_InterruptEdgeType +0x0208 RE=1, FE=0
KPIO_InterruptLevelType +0x020c
KPIO_InterruptClear +0x0210
KPIO_Data +0x0214
KPIO_BattFaultOut +0x0218
KPIO_InterruptEnable +0x021c
KPIO_Alternate +0x023c ALT function
SPI_Base +0x0400
SPI_Control +0x0400
SPI_Data +0x0404
SPI_CS_Disabled +0x0408
PWM0_Base +0x0600
PWM0_TimeBase +0x0600
PWM0_PeriodTime +0x0604
PWM0_DutyTime +0x0608
PWM1_Base +0x0700
PWM1_TimeBase +0x0700
PWM1_PeriodTime +0x0704
PWM1_DutyTime +0x0708
LED0_Base +0x0800
LED0_TimeBase +0x0800
LED0_PeriodTime +0x0804
LED0_DutyTime +0x0808
LED0_AutoStopCount +0x080c
LED1_Base +0x0880
LED1_TimeBase +0x0880
LED1_PeriodTime +0x0884
LED1_DutyTime +0x0888
LED1_AutoStopCount +0x088c
LED2_Base +0x0900
LED2_TimeBase +0x0900
LED2_PeriodTime +0x0904
LED2_DutyTime +0x0908
LED2_AutoStopCount +0x090c
UART0_Base +0x0a00
UART0_Receive +0x0a00
UART0_Transmit +0x0a00
UART0_IntEnable +0x0a04
UART0_IntIdentify +0x0a08
UART0_FIFOControl +0x0a08
UART0_LineControl +0x0a0c
UART0_ModemControl +0x0a10
UART0_LineStatus +0x0a14
UART0_ModemStatus +0x0a18
UART0_ScratchPad +0x0a1c
UART0_Reset +0x0a20
UART1_Base +0x0c00
UART1_Receive +0x0c00
UART1_Transmit +0x0c00
UART1_IntEnable +0x0c04
UART1_IntIdentify +0x0c08
UART1_FIFOControl +0x0c08
UART1_LineControl +0x0c0c
UART1_ModemControl +0x0c10
UART1_LineStatus +0x0c14
UART1_ModemStatus +0x0c18
UART1_ScratchPad +0x0c1c
UART1_Reset +0x0c20
TIMER_Base +0x0e00 /* 8254-compatible timers */
TIMER_Counter0 +0x0e00 /* R/W 8 bits */
TIMER_Counter1 +0x0e04 /* R/W 8 bits */
TIMER_Counter2 +0x0e08 /* R/W 8 bits */
TIMER_Control +0x0e0a /* W 8 bits */
TIMER_Command +0x0e10 /* R/W 8 bits */
CLOCK_Base +0x1000
CLOCK_Enable +0x1000 /* R/W 18 bits */
ADC_Base +0x1200
ADC_Multiplexer +0x1200 /* R/W 4 bits - low 3 bits set channel */
ADC_ControlStatus +0x1204 /* R/W 8 bits */
ADC_Data +0x1208 /* R 10 bits */
INTR_Base +0x1600
INTR_MaskAndFlag +0x1600 /* R/(W) 8bits */
INTR_ClockPrescale +0x1604 /* R/(W) 5bits */
INTR_TimerSet +0x1608 /* R/(W) 8bits */
OWM_Base +0x1800
OWM_Command +0x1800 /* R/W 4 bits command register */
OWM_Data +0x1804 /* R/W 8 bits, transmit / receive buffer */
OWM_Interrupt +0x1808 /* R/W Command register */
OWM_InterruptEnable +0x180c /* R/W Command register */
OWM_ClockDivisor +0x1810 /* R/W 5 bits of divisor and pre-scale */
FlashCtl_Base +0x1a00
ASIC1_MMC_Base +0x1c00
ASIC1_MMC_StartStopClock +0x1c00 /* R/W 8bit */
ASIC1_MMC_Status +0x1c04 /* R See below, default 0x0040 */
ASIC1_MMC_ClockRate +0x1c08 /* R/W 8bit, low 3 bits are clock divisor */
ASIC1_MMC_Revision +0x1c0c /* R/W Write to this to reset the asic! */
ASIC1_MMC_SPIRegister +0x1c10 /* R/W 8bit, see below */
ASIC1_MMC_CmdDataCont +0x1c14 /* R/W 8bit, write to start MMC adapter */
ASIC1_MMC_ResponseTimeout +0x1c18 /* R/W 8bit, clocks before response timeout */
ASIC1_MMC_ReadTimeout +0x1c1c /* R/W 16bit, clocks before received data timeout */
ASIC1_MMC_BlockLength +0x1c20 /* R/W 10bit */
ASIC1_MMC_NumOfBlocks +0x1c24 /* R/W 16bit, in block mode, number of blocks */
ASIC1_MMC_InterruptMask +0x1c34 /* R/W 8bit */
ASIC1_MMC_CommandNumber +0x1c38 /* R/W 6 bits */
ASIC1_MMC_ArgumentH +0x1c3c /* R/W 16 bits */
ASIC1_MMC_ArgumentL +0x1c40 /* R/W 16 bits */
ASIC1_MMC_ResFifo +0x1c44 /* R 8 x 16 bits - contains response FIFO */
ASIC1_MMC_DataBuffer +0x1c4c /* R/W 16 bits?? */
ASIC1_MMC_BufferPartFull +0x1c50 /* R/W 8 bits */
ASIC1_GPIO_Base +0x1e00
ASIC1_GPIO_Mask +0x1e60 /* R/W 0:don't mask, 1:mask interrupt */
ASIC1_GPIO_Direction +0x1e64 /* R/W 0:input, 1:output*/
ASIC1_GPIO_Out +0x1e68 /* R/W 0:output low, 1:output high*/
ASIC1_GPIO_TriggerType +0x1e6c /* R/W 0:level, 1:edge*/
ASIC1_GPIO_EdgeTrigger +0x1e70 /* R/W 0:falling, 1:rising*/
ASIC1_GPIO_LevelTrigger +0x1e74 /* R/W 0:low, 1:high level detect*/
ASIC1_GPIO_LevelStatus +0x1e78 /* R/W 0:none, 1:detect*/
ASIC1_GPIO_EdgeStatus +0x1e7c /* R/W 0:none, 1:detect*/
ASIC1_GPIO_State +0x1e80 /* R See masks below (default 0)*/
ASIC1_GPIO_Reset +0x1e84 /* R/W See masks below (default 0x04)*/
ASIC1_GPIO_SleepMask +0x1e88 /* R/W 0:don't mask, 1:mask trigger in sleep mode*/
ASIC1_GPIO_SleepDir +0x1e8c /* R/W direction 0:input, 1:ouput in sleep mode*/
ASIC1_GPIO_SleepOut +0x1e90 /* R/W level 0:low, 1:high in sleep mode*/
ASIC1_GPIO_Status +0x1e94 /* R Pin status*/
ASIC1_GPIO_BattFaultDir +0x1e98 /* R/W direction 0:input, 1:output in batt_fault*/
ASIC1_GPIO_BattFaultOut +0x1e9c /* R/W level 0:low, 1:high in batt_fault*/
FlashWP_Base +0x1f00
FlashWP_VPP_ON +0x1f00 /* R 1: write, 0: protect */