Line 11:
Line 11:
| style="background: green" | Yes
| style="background: green" | Yes
| A9
| A9
−
| [[CONFIG Registers]]
+
| [[CONFIG rgstrs]]
| 0x10000000
| 0x10000000
| Boot9, Process9
| Boot9, Process9
Line 18:
Line 18:
| style="background: green" | Yes
| style="background: green" | Yes
| A9
| A9
−
| [[IRQ Registers]]
+
| [[IRQ rgstrs]]
| 0x10001000
| 0x10001000
| Boot9, Process9, Kernel9
| Boot9, Process9, Kernel9
Line 25:
Line 25:
| style="background: green" | Yes
| style="background: green" | Yes
| A9
| A9
−
| [[NDMA Registers]]
+
| [[NDMA rgstrs]]
| 0x10002000
| 0x10002000
| Boot9, Process9
| Boot9, Process9
Line 32:
Line 32:
| style="background: green" | Yes
| style="background: green" | Yes
| A9
| A9
−
| [[TIMER Registers]]
+
| [[TIMER rgstrs]]
| 0x10003000
| 0x10003000
| Boot9, Process9
| Boot9, Process9
Line 39:
Line 39:
| style="background: green" | Yes
| style="background: green" | Yes
| A9
| A9
−
| [[CTRCARD Registers]]
+
| [[CTRCARD rgstrs]]
| 0x10004000 / 0x10005000
| 0x10004000 / 0x10005000
| Process9
| Process9
Line 46:
Line 46:
| style="background: green" | Yes
| style="background: green" | Yes
| A9
| A9
−
| [[EMMC Registers]]
+
| [[EMMC rgstrs]]
| 0x10006000 / 0x10007000
| 0x10006000 / 0x10007000
| Boot9, Process9
| Boot9, Process9
Line 53:
Line 53:
| style="background: green" | Yes
| style="background: green" | Yes
| A9
| A9
−
| [[PXI Registers]]
+
| [[PXI rgstrs]]
| 0x10008000
| 0x10008000
| Boot9, Process9
| Boot9, Process9
Line 60:
Line 60:
| style="background: green" | Yes
| style="background: green" | Yes
| A9
| A9
−
| [[AES Registers]]
+
| [[AES rgstrs]]
| 0x10009000
| 0x10009000
| Boot9, Process9
| Boot9, Process9
Line 67:
Line 67:
| style="background: green" | Yes
| style="background: green" | Yes
| A9
| A9
−
| [[SHA Registers]]
+
| [[SHA rgstrs]]
| 0x1000A000
| 0x1000A000
| Boot9, Process9
| Boot9, Process9
Line 74:
Line 74:
| style="background: green" | Yes
| style="background: green" | Yes
| A9
| A9
−
| [[RSA Registers]]
+
| [[RSA rgstrs]]
| 0x1000B000
| 0x1000B000
| Boot9, Process9
| Boot9, Process9
Line 81:
Line 81:
| style="background: green" | Yes
| style="background: green" | Yes
| A9
| A9
−
| [[XDMA Registers]]
+
| [[XDMA rgstrs]]
| 0x1000C000
| 0x1000C000
| Boot9, Kernel9
| Boot9, Kernel9
Line 88:
Line 88:
| style="background: green" | Yes
| style="background: green" | Yes
| A9
| A9
−
| [[SPICARD Registers]]
+
| [[SPICARD rgstrs]]
| 0x1000D800
| 0x1000D800
| Process9
| Process9
Line 95:
Line 95:
| style="background: green" | Yes
| style="background: green" | Yes
| ?
| ?
−
| [[CONFIG Registers]]
+
| [[CONFIG rgstrs]]
| 0x10010000
| 0x10010000
| Process9
| Process9
Line 102:
Line 102:
| style="background: green" | Yes
| style="background: green" | Yes
| ?
| ?
−
| PRNG Registers
+
| PRNG rgstrs
| 0x10011000
| 0x10011000
| Process9
| Process9
Line 109:
Line 109:
| style="background: green" | Yes
| style="background: green" | Yes
| ?
| ?
−
| [[OTP Registers]]
+
| [[OTP rgstrs]]
| 0x10012000
| 0x10012000
| Kernel9, NewKernel9Loader
| Kernel9, NewKernel9Loader
Line 130:
Line 130:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[HASH Registers]]
+
| [[HASH rgstrs]]
| 0x10101000
| 0x10101000
| [[Filesystem services]]
| [[Filesystem services]]
Line 137:
Line 137:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[Camera Registers]]
+
| [[Camera rgstrs]]
| 0x10102000
| 0x10102000
| [[Camera Services]]
| [[Camera Services]]
Line 144:
Line 144:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[CSND Registers]] / [[DSP Registers]]
+
| [[CSND rgstrs]] / [[DSP rgstrs]]
| 0x10103000
| 0x10103000
| TwlBg, [[Codec Services]], [[CSND Services]], [[DSP Services]]
| TwlBg, [[Codec Services]], [[CSND Services]], [[DSP Services]]
Line 154:
Line 154:
| 0x10110000
| 0x10110000
| TwlBg
| TwlBg
−
| IO registers used to access legacy output framebuffer, as well as configure the upscaling filter.
+
| IO rgstrs used to access legacy output framebuffer, as well as configure the upscaling filter.
|-
|-
| style="background: green" | Yes
| style="background: green" | Yes
Line 161:
Line 161:
| 0x10111000
| 0x10111000
| TwlBg
| TwlBg
−
| IO registers used to access legacy output framebuffer, as well as configure the upscaling filter.
+
| IO rgstrs used to access legacy output framebuffer, as well as configure the upscaling filter.
|-style="border-top: double"
|-style="border-top: double"
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[Camera Registers]]
+
| [[Camera rgstrs]]
| 0x10120000
| 0x10120000
| [[Camera Services]]
| [[Camera Services]]
Line 172:
Line 172:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[Camera Registers]]
+
| [[Camera rgstrs]]
| 0x10121000
| 0x10121000
| [[Camera Services]]
| [[Camera Services]]
Line 193:
Line 193:
| style="background: red" | No
| style="background: red" | No
| A11/A9
| A11/A9
−
| [[MVD Registers]]
+
| [[MVD rgstrs]]
| 0x10130000
| 0x10130000
| [[MVD Services]]
| [[MVD Services]]
Line 200:
Line 200:
| style="background: red" | No
| style="background: red" | No
| A11/A9
| A11/A9
−
| [[MVD Registers]]
+
| [[MVD rgstrs]]
| 0x10131000
| 0x10131000
| [[MVD Services]]
| [[MVD Services]]
Line 207:
Line 207:
| style="background: red" | No
| style="background: red" | No
| A11/A9
| A11/A9
−
| [[MVD Registers]]
+
| [[MVD rgstrs]]
| 0x10132000
| 0x10132000
| [[MVD Services]]
| [[MVD Services]]
Line 214:
Line 214:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[PDN Registers]]
+
| [[PDN rgstrs]]
| 0x10140000
| 0x10140000
| Process9, Boot11, Kernel11, TwlBg, [[DSP Services]], [[NWM Services]], [[SPI Services]]
| Process9, Boot11, Kernel11, TwlBg, [[DSP Services]], [[NWM Services]], [[SPI Services]]
Line 221:
Line 221:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[PDN Registers]]
+
| [[PDN rgstrs]]
| 0x10141000
| 0x10141000
| Process9, Boot11, Kernel11, TwlBg, [[Codec Services]], [[NWM Services]], [[SPI Services]], [[PDN Services]]
| Process9, Boot11, Kernel11, TwlBg, [[Codec Services]], [[NWM Services]], [[SPI Services]], [[PDN Services]]
Line 228:
Line 228:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[SPI Registers]]
+
| [[SPI rgstrs]]
| 0x10142000
| 0x10142000
| TwlBg, [[SPI Services]]
| TwlBg, [[SPI Services]]
Line 235:
Line 235:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[SPI Registers]]
+
| [[SPI rgstrs]]
| 0x10143000
| 0x10143000
| TwlBg
| TwlBg
Line 242:
Line 242:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[I2C Registers]]
+
| [[I2C rgstrs]]
| 0x10144000
| 0x10144000
| Boot11, Kernel11, TwlBg, [[I2C Services]]
| Boot11, Kernel11, TwlBg, [[I2C Services]]
Line 249:
Line 249:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[CODEC Registers]]
+
| [[CODEC rgstrs]]
| 0x10145000
| 0x10145000
| TwlBg, [[Codec Services]]
| TwlBg, [[Codec Services]]
Line 256:
Line 256:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[HID Registers]]
+
| [[HID rgstrs]]
| 0x10146000
| 0x10146000
| Boot11, Kernel11, TwlBg, [[HID Services]], dlp Services
| Boot11, Kernel11, TwlBg, [[HID Services]], dlp Services
Line 263:
Line 263:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[GPIO Registers]]
+
| [[GPIO rgstrs]]
| 0x10147000
| 0x10147000
| Boot11, TwlBg, [[GPIO Services]], [[DSP Services]](v0)
| Boot11, TwlBg, [[GPIO Services]], [[DSP Services]](v0)
Line 270:
Line 270:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[I2C Registers]]
+
| [[I2C rgstrs]]
| 0x10148000
| 0x10148000
| TwlBg, [[I2C Services]]
| TwlBg, [[I2C Services]]
Line 277:
Line 277:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[SPI Registers]]
+
| [[SPI rgstrs]]
| 0x10160000
| 0x10160000
| Boot9, TwlBg, [[SPI Services]]
| Boot9, TwlBg, [[SPI Services]]
Line 284:
Line 284:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[I2C Registers]]
+
| [[I2C rgstrs]]
| 0x10161000
| 0x10161000
| Boot11, TwlBg, [[I2C Services]]
| Boot11, TwlBg, [[I2C Services]]
Line 291:
Line 291:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[MIC Registers]]
+
| [[MIC rgstrs]]
| 0x10162000
| 0x10162000
| [[MIC Services]]
| [[MIC Services]]
Line 298:
Line 298:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[PXI Registers]]
+
| [[PXI rgstrs]]
| 0x10163000
| 0x10163000
| Boot11, Kernel11, TwlBg, [[PXI Services]]
| Boot11, Kernel11, TwlBg, [[PXI Services]]
Line 305:
Line 305:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[NTRCARD Registers]]
+
| [[NTRCARD rgstrs]]
| 0x10164000
| 0x10164000
| Boot9, Process9
| Boot9, Process9
Line 312:
Line 312:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[MP Registers]]
+
| [[MP rgstrs]]
| 0x10165000
| 0x10165000
| [[MP Services]]
| [[MP Services]]
Line 319:
Line 319:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[MP Registers]]
+
| [[MP rgstrs]]
| 0x10170000
| 0x10170000
| [[MP Services]]
| [[MP Services]]
−
| NTR WIFI Registers, see [http://problemkaputt.de/gbatek.htm#dswirelesscommunications GBATek].
+
| NTR WIFI rgstrs, see [http://problemkaputt.de/gbatek.htm#dswirelesscommunications GBATek].
|-
|-
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[MP Registers]]
+
| [[MP rgstrs]]
| 0x10171000
| 0x10171000
| [[MP Services]]
| [[MP Services]]
−
| NTR WIFI Registers (mirror)
+
| NTR WIFI rgstrs (mirror)
|-
|-
| style="background: green" | Yes
| style="background: green" | Yes
Line 347:
Line 347:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[MP Registers]]
+
| [[MP rgstrs]]
| 0x10174000
| 0x10174000
| [[MP Services]]
| [[MP Services]]
Line 354:
Line 354:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[MP Registers]]
+
| [[MP rgstrs]]
| 0x10175000
| 0x10175000
|?
|?
Line 361:
Line 361:
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[MP Registers]]
+
| [[MP rgstrs]]
| 0x10176000
| 0x10176000
|?
|?
−
| NTR WIFI Registers (mirror)
+
| NTR WIFI rgstrs (mirror)
|-
|-
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[MP Registers]]
+
| [[MP rgstrs]]
| 0x10177000
| 0x10177000
|?
|?
−
| NTR WIFI Registers (mirror)
+
| NTR WIFI rgstrs (mirror)
|-
|-
| style="background: green" | Yes
| style="background: green" | Yes
| A11/A9
| A11/A9
−
| [[MP Registers]]
+
| [[MP rgstrs]]
| 0x10178000 - 0x10180000
| 0x10178000 - 0x10180000
| [[MP Services]]
| [[MP Services]]
Line 396:
Line 396:
| style="background: green" | Yes
| style="background: green" | Yes
| A11
| A11
−
| [[LCD Registers]]
+
| [[LCD rgstrs]]
| 0x10202000
| 0x10202000
| TwlBg, Kernel11, [[GSP Services]]
| TwlBg, Kernel11, [[GSP Services]]
Line 403:
Line 403:
| style="background: green" | Yes
| style="background: green" | Yes
| A11
| A11
−
| [[DSP Registers]]
+
| [[DSP rgstrs]]
| 0x10203000
| 0x10203000
| [[DSP Services]]
| [[DSP Services]]
Line 424:
Line 424:
| style="background: red" | No
| style="background: red" | No
| A11
| A11
−
| [[MVD Registers]]
+
| [[MVD rgstrs]]
| 0x10207000
| 0x10207000
| [[MVD Services]]
| [[MVD Services]]
Line 445:
Line 445:
| style="background: green" | Yes
| style="background: green" | Yes
| A11
| A11
−
| [[GPU Registers]]
+
| [[GPU rgstrs]]
| 0x10400000
| 0x10400000
| Boot11, Kernel11, [[GSP Services]]
| Boot11, Kernel11, [[GSP Services]]
Line 451:
Line 451:
|}
|}
−
IO registers starting at physical address 0x10200000 are not accessible from the ARM9 (which includes all LCD/GPU registers). It seems IO registers below physical address 0x10100000 are not accessible from the ARM11 bus.
+
IO rgstrs starting at physical address 0x10200000 are not accessible from the ARM9 (which includes all LCD/GPU rgstrs). It seems IO rgstrs below physical address 0x10100000 are not accessible from the ARM11 bus.
−
ARM11 kernel virtual address mappings for these registers varies for different builds. For ARM11 user mode applications you have:
+
ARM11 kernel virtual address mappings for these rgstrs varies for different builds. For ARM11 user mode applications you have:
physaddr = virtaddr - 0x1EC00000 + 0x10100000
physaddr = virtaddr - 0x1EC00000 + 0x10100000