Allwinner A10 register guide

This page aims at documenting the known Allwinner A10 I/O registers. Any addresses in this document is using physical addressing.

How to contribute

Copy register information from headers in the kernel & u-boot sources, and hunt down what it means by reading how the registers are used in the sources.

Memory map sources

Memory map

  • 0x00000000-0x00003fff 16KB ?SRAM A1
  • 0x00004000-0x00007fff 16KB ?SRAM A2
  • 0x00008000-0x0000b3ff 13KB ?SRAM A3
  • 0x0000b400-0x0000bfff 3KB ?SRAM A4
  • 0x01c00000-0x1c00ffff 64KB ?SRAM B (secure)
  • 0x01c00000-?????????? ??KB ?SRAM D
  • 0x01c00000-0x3fffffff ??KB I/O
  • 0x01c00000-0x1c000fff 4KB ?SRAMC
  • 0x01c01000-0x1c001fff 4KB DRAMC
  • 0x01c02000-0x1c002fff 4KB ?DMA
  • 0x01c03000-0x1c003fff 4KB NAND
  • 0x01c04000-0x1c004fff 4KB ?TS
  • 0X01C05000-0X01C05fff 4KB ?SPI0
  • 0X01C06000-0X01C06fff 4KB ?SPI1
  • 0X01C07000-0X01C07fff 4KB ?MS
  • 0X01C08000-0X01C08fff 4KB ?TVD
  • 0X01C09000-0X01C09fff 4KB ?CSI0
  • 0X01C0A000-0X01C0Afff 4KB ?TVE0
  • 0X01C0B000 EMAC Ethernet Controller
  • 0X01C0C000 ?LCD0
  • 0X01C0D000 ?LCD1
  • 0X01C0E000 VE
  • 0X01C0F000 MMC0
  • 0X01C10000 MMC1
  • 0X01C11000 MMC2
  • 0X01C12000 MMC3
  • 0X01C13000 USB0 USB2.0 OTG Controller
  • 0X01C14000 USB1 USB2.0 HOST Controller
  • 0X01C15000 SS
  • 0X01C16000 ?HDMI
  • 0X01C17000 ?SPI2
  • 0X01C18000 SATA
  • 0X01C19000 ?PATA
  • 0X01C1A000 ?ACE
  • 0X01C1B000 ?TVE1
  • 0X01C1C000 USB2 USB2.0 HOST Controller
  • 0X01C1D000 ?CSI1
  • 0X01C1E000 ?TZASC
  • 0X01C1F000 ?SPI3
  • 0X01C20000 CCM
  • 0X01C20400 ?INTC
  • 0X01C20800 ?PIO
  • 0X01C20C00 TIMER
  • 0X01C21000 ?SPDIF
  • 0X01C21400 ?AC97
  • 0X01C21800 ?IR0
  • 0X01C21C00 ?IR1
  • 0X01C22400 ?IIS
  • 0X01C22800 ?LRADC
  • 0X01C22C00 ?AD DA
  • 0X01C23000 ?KEYPAD
  • 0X01C23400 ?TZPC
  • 0X01C23800 ?SID
  • 0X01C23C00 ?SJTAG
  • 0X01C25000 ?TP
  • 0X01C25400 ?PMU
  • 0X01C28000 UART0
  • 0X01C28400 UART1
  • 0X01C28800 UART2
  • 0X01C28C00 UART3
  • 0X01C29000 UART4
  • 0X01C29400 UART5
  • 0X01C29800 UART6
  • 0X01C29C00 UART7
  • 0X01C2A000 ?PS20
  • 0X01C2A400 ?PS21
  • 0X01C2AC00 ?TWI0
  • 0X01C2B000 ?TWI1
  • 0X01C2B400 ?TWI2
  • 0X01C2BC00 ?CAN
  • 0X01C2C400 ?SCR
  • 0X01C30000 ?GPS
  • 0X01C40000 ?MALI400
  • 0X01D00000 ?SRAM C /* module sram */
  • 0X01E00000 ?DE FE0
  • 0X01E20000 ?DE FE1
  • 0X01E60000 ?DE BE0
  • 0X01E40000 ?DE BE1
  • 0X01E80000 ?MP
  • 0X01EA0000 ?AVG
  • 0X3F500000 ?CSDM /* CoreSight Debug Module*/
  • 0x40000000-0xbfffffff 2GB SDRAM
  • 0xffff0000-0xffff8fff 32KB ?BROM

SUNXI_CPU_CFG = (SUNXI_TIMER_BASE + 0x13c)

I/O Controllers

edittemplate A10 registers registered for A10_register_guide/*