Skip to content

[Feature] Auto dram cfg & Auto memory mode - #2748

Merged
hexkyz merged 2 commits into
Atmosphere-NX:masterfrom
CTCaer:auto_dram_cfg
Apr 3, 2026
Merged

hexkyz merged 2 commits into
Atmosphere-NX:masterfrom
CTCaer:auto_dram_cfg

Conversation

@CTCaer

@CTCaer CTCaer commented Mar 19, 2026 •

Copy link
Copy Markdown
Contributor

This PR adds the following:

exosphere: automatically adjust dram id if needed:
Support for automatic detection and adjusting of DRAM ID reporting when unit has an 8GB RAM mod and fuses couldn't be burnt.

By comparing the actual physical size from the locked MC registers and DRAM ID supposed size, the id gets adjusted when it doesn't match.
This allows PCV to correctly train the ram frequencies needed for avoiding crashes or degraded performance.

exosphere: allow memory mode to be used on retail
A simple flag configured at bootloader time allows user to bypass the 4GB max ram allocation limit on retail units by enabling auto memory mode.
Enabling this with 8GB ram, sets max to 8GB, otherwise it gets limited to stock max 4GB.
On development units or devices with 4GB, it does nothing since ram config matches max size limit anyway.

By previous communication with @lulle2007200, the second part of this PR replaces #2711
The new implementation is compacted to actually enable NX boot config for retail units.
The default at this time is auto memory mode which should cover 100% of actual real use cases, but still allows additions in the future.

To sum up:
1st part is for allowing automatic dram config detection with 8GB ram mods.
2nd part is for allowing user to choose between 4GB or 8GB max ram limit in such cases.

EDIT:
The automatic detection also allows T210 units with 8GB ram mods and burnt fuse dram id to 7, to boot too.

CTCaer added 2 commits March 19, 2026 16:32
Checks if programmed memory size matches the one from fused dram id.
If not, adjust it properly so PCV can do proper training and not crash.
@hexkyz

hexkyz commented Mar 20, 2026

Copy link
Copy Markdown
Collaborator

Approved for merging into master after 22.0.0 support.

@hexkyz
hexkyz merged commit 8987d64 into Atmosphere-NX:master Apr 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants