xda-developers.com
forum.xda-developers.com
device database
wiki.xda-developers.com
Wiki HomePage
FAQ
|
Xanadux
RecentChanges
|
FindPage
|
|
LikePages
|
BackLinks
ASIC3
model
regspace
ASIC3_GPIO_BASE
ASIC3_SDIO_BASE
Device Link
HTC Himalaya
normal
0x0d800000
0x0c800000
HimalayaASIC3
HTC Blueangel
packed
0x0c000000
0x0e000000
BlueangelASIC3
HTC Universal
packed
0x10000000
0x0c000000
UniversalASIC3
HTC Roadster (hx470x)
packed
0x0c000000
0x0e000000
HandheldsOrg
HTC Beetles (hw651x)
packed
0x10000000
0x0e000000
BeetlesASIC3
HTC Sable (hw691x)
packed
0x10000000
0x0c000000
SableASIC3
h4xxx
normal
0x0c000000
0x10000000
HandheldsOrg
h19xx
normal
0x0c000000
0x10000000
HandheldsOrg
h39xx
normal
0x14800000
-
HandheldsOrg
rx37xx
normal
0x08000000
0x10000000
HandheldsOrg
Zaurus SL-A300
packed
0x08000000
-
?
Name
normal addr
packed addr
comment
GPIOA_Base
+0x0000
+0x000
GPIOA_Mask
+0x0000
+0x000
GPIOA_Direction
+0x0004
+0x002
I=0, O=1 .dir
GPIOA_Out
+0x0008
+0x004
Write here .init
GPIOA_
?
TriggerType
+0x000c
+0x006
E=1
GPIOA_
?
EdgeTrigger
+0x0010
+0x008
RE=1, FE=0
GPIOA_
?
LevelTrigger
+0x0014
+0x00a
GPIOA_
?
SleepMask
+0x0018
+0x00c
GPIOA_
?
SleepOut
+0x001c
+0x00e
.sleep_out
GPIOA_
?
BattFaultOut
+0x0020
+0x010
.batt_fault_out
GPIOA_
?
IntStatus
+0x0024
+0x012
GPIOA_
?
AltFunction
+0x0028
+0x014
ALT function .alt_function
GPIOA_
?
SleepConf
+0x002c
+0x016
.sleep_conf
GPIOA_Status
+0x0030
+0x018
Read here
GPIOB_Base
+0x0100
+0x080
GPIOB_Mask
+0x0100
+0x080
GPIOA_Direction
+0x0104
+0x082
I=0, O=1 .dir
GPIOB_Out
+0x0108
+0x084
Write here .init
GPIOB_
?
TriggerType
+0x010c
+0x086
E=1
GPIOB_
?
EdgeTrigger
+0x0110
+0x088
RE=1, FE=0
GPIOB_
?
LevelTrigger
+0x0114
+0x08a
GPIOB_
?
SleepMask
+0x0118
+0x08c
GPIOB_
?
SleepOut
+0x011c
+0x08e
.sleep_out
GPIOB_
?
BattFaultOut
+0x0120
+0x090
.batt_fault_out
GPIOB_
?
IntStatus
+0x0124
+0x092
GPIOB_
?
AltFunction
+0x0128
+0x094
ALT function .alt_function
GPIOB_
?
SleepConf
+0x012c
+0x096
.sleep_conf
GPIOB_Status
+0x0130
+0x098
Read here
GPIOC_Base
+0x0200
+0x100
GPIOC_Mask
+0x0200
+0x100
GPIOC_Direction
+0x0204
+0x102
I=0, O=1 .dir
GPIOC_Out
+0x0208
+0x104
Write here .init
GPIOC_
?
TriggerType
+0x020c
+0x106
E=1
GPIOC_
?
EdgeTrigger
+0x0210
+0x108
RE=1, FE=0
GPIOC_
?
LevelTrigger
+0x0214
+0x10a
GPIOC_
?
SleepMask
+0x0218
+0x10c
GPIOC_
?
SleepOut
+0x021c
+0x10e
.sleep_out
GPIOC_
?
BattFaultOut
+0x0220
+0x110
.batt_fault_out
GPIOC_
?
IntStatus
+0x0224
+0x112
GPIOC_
?
AltFunction
+0x0228
+0x114
ALT function .alt_function
GPIOC_
?
SleepConf
+0x022c
+0x116
.sleep_conf
GPIOC_Status
+0x0230
+0x118
Read here
GPIOD_Base
+0x0300
+0x180
GPIOD_Mask
+0x0300
+0x180
GPIOD_Direction
+0x0304
+0x182
I=0, O=1 .dir
GPIOD_Out
+0x0308
+0x184
Write here .init
GPIOD_
?
TriggerType
+0x030c
+0x186
E=1
GPIOD_
?
EdgeTrigger
+0x0310
+0x188
RE=1, FE=0
GPIOD_
?
LevelTrigger
+0x0314
+0x18a
GPIOD_
?
SleepMask
+0x0318
+0x18c
GPIOD_
?
SleepOut
+0x031c
+0x18e
.sleep_out
GPIOD_
?
BattFaultOut
+0x0320
+0x190
GPIOD_
?
IntStatus
+0x0324
+0x192
GPIOD_
?
AltFunction
+0x0328
+0x194
ALT function .alt_function
GPIOD_
?
SleepConf
+0x032c
+0x196
.sleep_conf
GPIOD_Status
+0x0330
+0x198
Read here
SPI_Base
+0x0400
+0x200
SPI_Control
+0x0400
+0x200
SPI_Transmit
+0x0404
+0x202
SPI_Receive
+0x0408
+0x204
SPI_
?
IntStatus
+0x040c
+0x206
SPI_Status
+0x0410
+0x208
PWM0_Base
+0x0500
+0x280
PWM0_
?
TimeBase
+0x0500
+0x280
from ASIC2
PWM0_
?
PeriodTime
+0x0504
+0x282
from ASIC2
PWM0_
?
DutyTime
+0x0508
+0x284
from ASIC2
PWM1_Base
+0x0600
+0x300
PWM1_
?
TimeBase
+0x0600
+0x300
from ASIC2
PWM1_
?
PeriodTime
+0x0604
+0x302
from ASIC2
PWM1_
?
DutyTime
+0x0608
+0x304
from ASIC2
LED0_Base
+0x0700
+0x380
LED0_
?
TimeBase
+0x0700
+0x380
LED0_
?
PeriodTime
+0x0704
+0x382
LED0_
?
DutyTime
+0x0708
+0x384
LED0_
?
AutoStopCount
+0x070c
+0x386
LED1_Base
+0x0800
+0x400
LED1_
?
TimeBase
+0x0800
+0x400
LED1_
?
PeriodTime
+0x0804
+0x402
LED1_
?
DutyTime
+0x0808
+0x404
LED1_
?
AutoStopCount
+0x080c
+0x406
LED2_Base
+0x0900
+0x480
LED2_
?
TimeBase
+0x0900
+0x480
LED2_
?
PeriodTime
+0x0904
+0x482
LED2_
?
DutyTime
+0x0908
+0x484
LED2_
?
AutoStopCount
+0x090c
+0x486
CLOCK_Base
+0x0a00
+0x500
CLOCK_CDEX
+0x0a00
+0x500
Source,Source,SPI,PWM0,PWM1,LED0,LED1,LED2,SD_HOST,SD_BUS,SMBUS,CONTROL_CX,EX0,EX1
CLOCK_SEL
+0x0a04
+0x502
SD_HLCK_SEL,SD_BCLK_SEL,CX
INTR_Base
+0x0b00
+0x580
A,B,C,D,LED0,LED1,LED2,SPI,SMBUS,OWM
INTR_
?
IntMask
+0x0b00
+0x580
INTR_
?
PIntStat
+0x0b04
+0x582
INTR_
?
IntCPS
+0x0b08
+0x584
INTR_
?
IntTBS
+0x0b0c
+0x586
OWM_Base
+0x0c00
+0x600
OWM_CMD
+0x0c00
+0x600
OWM_DAT
+0x0c04
+0x602
OWM_INTR
+0x0c08
+0x604
OWM_INTEN
+0x0c0c
+0x606
OWM_CLKDIV
+0x0c10
+0x608
?
+0x0d00
+0x680
Non-existing?
SDHWCTRL_Base
+0x0e00
+0x700
SUSPEND,CLKSEL,PCLR,LEVCD,LEVWP,SDLED,SDPWR
?
FlashWP
_VPP_ON?
+0x0f00
+0x780
used for flashing on Himalaya & Universal (1: write, 0: protect ?)
HWPROTECT
+0x1000
+0x800
HTC-SDIO P/N:30H80028-0
EXTCF_Base
+0x1100
+0x880
EXTCF_Select
+0x1100
+0x880
SMOD0,SMOD1,SMOD2,OWM_EN,OWM_SMB,CF0_SLEEP,CF1_SLEEP,...
EXTCF_Reset
+0x1104
+0x882
Name
normal addr
packed addr
comment
SM_CONFIG_Base
+0x0200?
+0x100
Not used on any known hardware
SD_CONFIG_Base
+0x0400
+0x200
CONFIG_Command
+0x0408
+0x204
/* R/W: Command */
SD_CONFIG_Addr0
+0x0420
+0x210
/*
?
9:31
SD Control Register Base Address */
SD_CONFIG_Addr1
+0x0424
+0x212
/*
?
9:31
SD Control Register Base Address */
SD_CONFIG_
?
IntPin
+0x0478
+0x23c
/* R/O: interrupt assigned to pin */
SD_CONFIG_
?
ClkStop
+0x0480
+0x240
/* Set to 0x1f to clock SD controller, 0 otherwise. */
Gated Clock Control
+0x0482
+0x241
/* at 0x82 - Gated Clock Control */
SD_CONFIG_
?
ClockMode
+0x0484
+0x242
/* Control clock of SD controller */
SD_CONFIG_SDHC_
?
PinStatus
+0x0488
+0x244
/* R/0: read status of SD pins */
SD_CONFIG_SDHC_Power1
+0x0490
+0x248
/* Power1 - manual power control */
SD_CONFIG_SDHC_Power1
+0x0492
+0x249
/* 0x92 - auto power up after card inserted */
SD_CONFIG_SDHC_Power3
+0x0494
+0x24a
/* auto power down when card removed */
SD_CONFIG_SDHC_
?
CardDetect
+0x0498
+0x24c
/* */
SD_CONFIG_SDHC_Slot
+0x04A0
+0x250
/* R/O: define support slot number */
SD_CONFIG_SDHC_
?
ExtGateClk1
+0x05e0
+0x2f0
/* Could be used for gated clock (don't use) */
SD_CONFIG_SDHC_
?
ExtGateClk2
+0x05e2
+0x2f1
/* Could be used for gated clock (don't use) */
SD_CONFIG_SDHC_GPIO_
?
OutAndEnable
+0x05e8
+0x2f4
/* GPIO Output Reg. , at 0x1EA - GPIO Output Enable Reg. */
SD_CONFIG_SDHC_GPIO_Status
+0x05ec
+0x2f6
/* GPIO Status Reg. */
SD_CONFIG_SDHC_
?
ExtGateClk3
+0x05f0
+0x2f8
/* Bit 1: double buffer/single buffer */
SD_CTRL_Base
+0x1000
+0x800
SD_CTRL_Cmd
+0x1000
+0x800
SD_CTRL_Arg0
+0x1008
+0x804
SD_CTRL_Arg1
+0x100c
+0x806
SD_CTRL_
?
StopInternal
+0x1010
+0x808
SD_CTRL_
?
TransferSectorCount
+0x1014
+0x80a
SD_CTRL_Response0
+0x1018
+0x80c
SD_CTRL_Response1
+0x101c
+0x80e
SD_CTRL_Response2
+0x1020
+0x810
SD_CTRL_Response3
+0x1024
+0x812
SD_CTRL_Response4
+0x1028
+0x814
SD_CTRL_Response5
+0x102c
+0x816
SD_CTRL_Response6
+0x1030
+0x818
SD_CTRL_Response7
+0x1034
+0x81a
SD_CTRL_
?
CardStatus
+0x1038
+0x81c
SD_CTRL_
?
BufferCtrl
+0x103c
+0x81e
SD_CTRL_
?
IntMaskCard
+0x1040
+0x820
SD_CTRL_
?
IntMaskBuffer
+0x1044
+0x822
SD_CTRL_
?
CardClockCtrl
+0x1048
+0x824
SD_CTRL_
?
MemCardXferDataLen
+0x104c
+0x826
SD_CTRL_
?
MemCardOptionSetup
+0x1050
+0x828
SD_CTRL_
?
ErrorStatus0
+0x1058
+0x82c
SD_CTRL_
?
ErrorStatus1
+0x105c
+0x82e
SD_CTRL_
?
DataPort
+0x1060
+0x830
SD_CTRL_
?
TransactionCtrl
+0x1068
+0x834
SD_CTRL_
?
SoftwareReset
+0x11c0
+0x8e0
SDIO_CTRL_Base
+0x1200
+0x900
SDIO_CTRL_Cmd
+0x1200
+0x900
SDIO_CTRL_
?
CardPortSel
+0x1204
+0x902
SDIO_CTRL_Arg0
+0x1208
+0x904
SDIO_CTRL_Arg1
+0x120c
+0x906
SDIO_CTRL_
?
StopInternal
+0x1210
SDIO_CTRL_
?
TransferBlockCount
+0x1214
+0x90a
SDIO_CTRL_Response0
+0x1218
+0x90c
SDIO_CTRL_Response1
+0x121c
+0x90e
SDIO_CTRL_Response2
+0x1220
+0x910
SDIO_CTRL_Response3
+0x1224
+0x912
SDIO_CTRL_Response4
+0x1228
+0x914
SDIO_CTRL_Response5
+0x122c
+0x916
SDIO_CTRL_Response6
+0x1230
+0x918
SDIO_CTRL_Response7
+0x1234
+0x91a
SDIO_CTRL_
?
CardStatus
+0x1238
+0x91c
SDIO_CTRL_
?
BufferCtrl
+0x123c
+0x91e
SDIO_CTRL_
?
IntMaskCard
+0x1240
+0x920
SDIO_CTRL_
?
IntMaskBuffer
+0x1244
+0x922
SDIO_CTRL_
?
CardClockCtrl
+0x1248
SDIO_CTRL_
?
CardXferDataLen
+0x124c
+0x926
SDIO_CTRL_
?
CardOptionSetup
+0x1250
+0x928
SDIO_CTRL_
?
ErrorStatus0
+0x1254
+0x92c
SDIO_CTRL_
?
ErrorStatus1
+0x1258
+0x92e
SDIO_CTRL_
?
DataPort
+0x1260
+0x930
+0x1264
SDIO_CTRL_
?
TransactionCtrl
+0x1268
+0x934
SDIO_CTRL_
?
CardIntCtrl
+0x126c
+0x936
SDIO_CTRL_
?
ClocknWaitCtrl
+0x1270
+0x938
SDIO_CTRL_
?
HostInformation
+0x1274
+0x93a
SDIO_CTRL_
?
ErrorCtrl
+0x1278
+0x93c
SDIO_CTRL_LEDCtrl
+0x127c
+0x93e
SDIO_CTRL_
?
SoftwareReset
+0x13c0
+0x9e0
+0x13c4
Alternative functions on GPIOs:
pin
ALT
Driver
GPIOA0
?
GPIOA1
?
GPIOA2
?
GPIOA3
?
GPIOA4
?
GPIOA5
?
GPIOA6
?
GPIOA7
?
GPIOA8
?
GPIOA9
?
GPIOA10
?
GPIOA11
PWM0
asic3_pwm
GPIOA12
PWM1
asic3_pwm
GPIOA13
used for flashing? (set on
Himalaya
, SL-A300,
HTC_Beetles
,
HTC_Sable
)
?
GPIOA14
used for flashing? (set on
Himalaya
, SL-A300,
HTC_Beetles
,
HTC_Sable
)
?
GPIOA15
CLOCK_CDEX_CONTROL_CX
blueangel_audio, rx3715_bt
pin
ALT
GPIOB0
?
GPIOB1
?
GPIOB2
?
GPIOB3
?
GPIOB4
?
GPIOB5
?
GPIOB6
?
GPIOB7
?
GPIOB8
?
GPIOB9
?
GPIOB10
?
GPIOB11
?
GPIOB12
?
GPIOB13
?
GPIOB14
?
GPIOB15
?
pin
ALT
Driver
GPIOC0
LED0 output
asic3_leds
GPIOC1
LED1 output
asic3_leds
GPIOC2
LED2 output
asic3_leds
GPIOC3
SPI_RX
asic3_spi
GPIOC4
SPI_TX
asic3_spi
GPIOC5
SPI_CLK
asic3_spi
GPIOC6
SPI_CS
asic3_spi
GPIOC7
?
GPIOC8
?
GPIOC9
?
GPIOC10
?
GPIOC11
?
GPIOC12
?
GPIOC13
?
GPIOC14
?
GPIOC15
?
pin
ALT
GPIOD0
?
GPIOD1
?
GPIOD2
?
GPIOD3
?
GPIOD4
?
GPIOD5
?
GPIOD6
?
GPIOD7
?
GPIOD8
?
GPIOD9
?
GPIOD11
?
GPIOD12
?
GPIOD13
?
GPIOD14
?
GPIOD15
?
bit
bitmask
CLOCK_CDEX
Driver
0
0x0001 ~fffe
Source0
1
0x0002 ~fffd
Source1
blueangel_audio
2
0x0004 ~fffb
SPI
asic3_spi
3
0x0008 ~fff7
OWM
asic3_owm
4
0x0010 ~ffef
PWM0
asic3_pwm
5
0x0020 ~ffdf
PWM1
asic3_pwm
6
0x0040 ~ffbf
LED0
asic3_leds
7
0x0080 ~ff7f
LED1
asic3_leds
8
0x0100 ~feff
LED2
asic3_leds
9
0x0200 ~fdff
SD_HOST
asic3_mmc
10
0x0400 ~fbff
SD_BUS
asic3_mmc
11
0x0800 ~f7ff
SM_BUS
12
0x1000 ~efff
CONTROL_CX
blueangel_audio, blueangel_camera, brf61xx_bt
13
0x2000 ~dfff
EX0
asic3_spi,asic3_mmc,asic3_owm,asic3_pcmcia
14
0x4000 ~bfff
EX1
asic3_spi,asic3_mmc,asic3_owm,asic3_pcmcia,asic3_pwm,blueangel_audio
15
0x8000 ~7fff
?
bit
bitmask
EXTCF
Driver
0
0x0001 ~fffe
SMOD0
1
0x0002 ~fffd
SMOD1
2
0x0004 ~fffb
SMOD2
3
0x0008 ~fff7
?
4
0x0010 ~ffef
OWM_EN
asic3_owm
5
0x0020 ~ffdf
OWM_SMB
asic3_owm
6
0x0040 ~ffbf
OWM_RESET
asic3_owm, asic3_pcmcia
7
0x0080 ~ff7f
CF0_SLEEP_MODE
asic3_pcmcia
8
0x0100 ~feff
CF1_SLEEP_MODE
asic3_pcmcia
9
0x0200 ~fdff
?
10
0x0400 ~fbff
CF0_PWAIT_EN
asic3_pcmcia
11
0x0800 ~f7ff
CF1_PWAIT_EN
asic3_pcmcia
12
0x1000 ~efff
CF0_BUF_EN
asic3_pcmcia
13
0x2000 ~dfff
CF1_BUF_EN
asic3_pcmcia
14
0x4000 ~bfff
SD_MEM_ENABLE
asic3_mmc
15
0x8000 ~7fff
CF_SLEEP
asic3_pcmcia