CONFIG11 Registers: Difference between revisions

Split
 
(10 intermediate revisions by the same user not shown)
Line 18: Line 18:
| 1*8
| 1*8
| Boot11, Process9, [[DSP Services]]
| Boot11, Process9, [[DSP Services]]
|-
|-style="border-top: double"
| style="background: green" | Yes
| style="background: green" | Yes
| ?
| [[#CFG11_NULLPAGE_CNT|CFG11_NULLPAGE_CNT]]
| 0x10140100
| 0x10140100
| 2
| 4
|
|  
|-
| style="background: green" | Yes
| ?
| 0x10140102
| 2
|
|-
|-
| style="background: green" | Yes
| style="background: green" | Yes
| [[#CFG11_FIQ_CNT|CFG11_FIQ_CNT]]
| [[#CFG11_FIQ_MASK|CFG11_FIQ_MASK]]
| 0x10140104
| 0x10140104
| 1
| 1
Line 38: Line 32:
|-
|-
| style="background: green" | Yes
| style="background: green" | Yes
| ?
| Debug related bitfield?
Observed: 0b1100(N3DS)/0b0000(O3DS)
| 0x10140105
| 0x10140105
| 1
| 1
| Kernel11.
|  
|-
|-
| style="background: green" | Yes
| style="background: green" | Yes
| Related to [[HID_Registers|HID_?]]
| [[#CFG11_CDMA_CNT|CFG_CDMA_CNT]]
| 0x10140108
| 2
| TwlBg
|-
| style="background: green" | Yes
| Related to [[HID_Registers|HID_?]]
| 0x1014010C
| 0x1014010C
| 2
| 2
Line 72: Line 61:
| 2
| 2
| [[SPI Services]], TwlBg
| [[SPI Services]], TwlBg
|-
|-style="border-top: double"
| style="background: green" | Yes
| style="background: green" | Yes
| ?
| ?
Line 80: Line 69:
|-style="border-top: double"
|-style="border-top: double"
| style="background: red" | No
| style="background: red" | No
| Clock related?
| [[#CFG11_GPU_N3DS_CNT|CFG11_GPU_N3DS_CNT]]
| 0x10140400
| 0x10140400
| 1
| 1
Line 86: Line 75:
|-
|-
| style="background: red" | No
| style="background: red" | No
| Clock related?
| [[#CFG11_CDMA_PERIPHERALS|CFG11_CDMA_PERIPHERALS]]
| 0x10140410
| 0x10140410
| 4
| 4
Line 155: Line 144:
| Enable (0=Disable, 1=Enable)
| Enable (0=Disable, 1=Enable)
|}
|}
== CFG11_NULLPAGE_CNT ==
{| class="wikitable" border="1"
!  Bit
!  Description
|-
| 0
| Trap all ''data'' accesses to physmem addresses 0x0000 to 0x1000
|-
| 16
| Unknown
|}
The reset value of this register is 0x10000.


== CFG11_FIQ_MASK ==
== CFG11_FIQ_MASK ==
Write bit N to mask FIQ interrutps on core N? (judging from what Kernel11 does -- it only ever configures FIQ for core1)
Write bit N to mask FIQ interrutps on core N? (judging from what Kernel11 does -- it only ever configures FIQ for core1)
Reset value: 0xF
== CFG11_CDMA_CNT ==
Write 1 to enable, to disable.
{| class="wikitable" border="1"
!  Bits
!  Description
|-
| 0
| Enable Microphone DMA (CDMA 0x00)
|-
| 1
| Enable NTRCARD DMA on Arm11 side (CDMA 0x01)
|-
| 2-4
| ?
|-
| 5
| WiFi. Enabled during kernel init since 11.4.
|}


== CFG11_SPI_CNT ==
== CFG11_SPI_CNT ==
Line 173: Line 198:
| 2
| 2
| Enable [[SPI Registers]] 0x10143800.
| Enable [[SPI Registers]] 0x10143800.
|}
== CFG11_GPU_N3DS_CNT ==
{| class="wikitable" border="1"
!  Bit
!  Description
|-
| 0
| Enable N3DS mode? (enables access to the extra N3DS FCRAM banks, etc.)
|-
| 1
| Texture related? (observing texture glitches when disabling this bit)
|}
== CFG11_CDMA_PERIPHERALS ==
{| class="wikitable" border="1"
!  Bit
!  Description
|-
| 0-17
| CDMA Peripheral 0x00-0x11 data request target (0=Old CDMA, 1=New CDMA)
|-
| 18-31
| Unused
|}
|}


Line 179: Line 228:


== CFG11_BOOTROM_OVERLAY_VAL ==
== CFG11_BOOTROM_OVERLAY_VAL ==
The 32-bit value to overlay data-reads to bootrom with. See [[PDN Registers#PDN_MPCORE_BOOTCNT|PDN_MPCORE_BOOTCNT]].
The 32-bit value to overlay data-reads to bootrom with. See [[PDN Registers#PDN_LGR_CPU_CNT<0-3>|PDN_LGR_CPU_CNT]]<0-3>.


== CFG11_SOCINFO ==
== CFG11_SOCINFO ==
Read-only register.
Read-only register. Identifies the maximum mode-switching capabilities of the SoC.
 
* CTR: O3DS
* LGR1: N3DS prototype, 4 cores (orginally 2), up to 535MHz, no L2C (see below)
* LGR2: retail N3DS, 4 cores, up to 804MHz, has L2C
 
Kernel code suggests that devices that support LGR1 but not LGR2 only had 2 cores. All cores (the number of which can be read from MPCORE SCU registers) are usable in LGR1 mode.


{| class="wikitable" border="1"
{| class="wikitable" border="1"
Line 190: Line 245:
|-
|-
| 0
| 0
| 1 on both Old3DS and New3DS.
| CTR mode (1 on all 3DSes)
| Boot11
| Boot11
|-
|-
| 1
| 1
| 1 on New3DS.
| LGR1 (1 on all N3DSes, orginally 2 cores, and 2x clockrate)
| Kernel11
| Kernel11
|-
|-
| 2
| 2
| Clock modifier: if set, use a 3x multiplier, otherwise 2x
| LGR2 (1 on all released N3DSes, 4 cores and 3x clockrate)
| Kernel11
| Kernel11
|}
|}


==CFG11_GPUPROT==
==CFG11_GPUPROT==