Skip to content

Switch L4T Ubuntu 5.1.1

Compare
Choose a tag to compare
@CTCaer CTCaer released this 13 Jun 16:46

L4T Ubuntu 5.1.1 Changelog

hekate 6.0.5 v2 or newer is mandatory for doing the necessary configuration to the bootstack and kernel.
Otherwise various features won't work correctly.

Kernel/Driver changes

  • RAM OC support of 2133 for T210 and 3000 MHz for T210B01
  • Improved calibration support for Lite Gamepad (Sio). Needs hekate v6.0.5 v2 or newer. Use the Dump Joy-Con BT.
  • Fixed an issue where some Taishin/Silicon Power SD cards where they would fail to init
  • Several extra checks were added for SD Card UHS DDR200 tuning.
    Any card that requires the Sandisk method of tuning and fails these checks is barred from using it and they fallback to UHS SDR104.
    ddr200_disable is now removed, since it was abused and no one reported the issue to the proper channels.
  • Stick Calibration is now tighter for Joy-Con/Pro-Con/Lite controllers when factory or user calibration is empty or can't be acquired.
  • Fixed an old railed Joy-Con issue which could make UART communications hang if it was plugged during suspend procedure.
  • Added Generic and FTDI USB serial drivers as modules
  • Support unfused BRCM4354 mascaraed as BRCM4356 WiFi chip on some old Switch units
  • Add support for WiFi 5 GHz bonding restriction of VHT80 and VHT160 to mitigate possible bugs in the WiFi firmware if needed.

Ubuntu/Userspace changes

  • mem-bench command was added. It is able to use most of RAM bandwidth. Use together with Perf OC All power profile for better results.
    Frequency reported there is the actual real frequency of RAM. Reason why it changes everytime, because of clock jitter.
  • Fixed an issue with jc-dump-ltk command failing to acquire Pro-Con or Joy-Con Grip MAC addresses and LTK properly.

Boot Stack changes

  • Initramfs
    -- Failed to find rootfs issues can now also be debugged via USB. Simply follow the instruction in the Red screen and connect to a PC.
    -- Added support for Procon auto BT pairing creation
    Simply add this in switchroot/joycon_mac.ini

    [joycon_02]
    type=3
    mac={MAC address of Procon}
    host={MAC address of Switch}
    ltk={LTK (connection key) of Procon}
    

    And fill in the {brackets} with the correct information. All of it can be acquired from the jc-dump-ltk command when you connect Procon via USB.
    Reminder that if the file is created anew, the line-endings MUST be Unix based. CRLF are not supported.

  • INI config
    -- Added ram_oc_vdd2, ram_oc_vddq for fine tuning RAM voltage and improved ram_oc key. Read below for more.
    -- Added wifi_disable_vht80 key that can disable WiFi 5GHz bonding of VHT80 and VHT160 to mitigate possible bugs in the WiFi firmware if needed.
    All info can be found in README_CONFIG.txt also.

  • Misc
    -- Added full proper factory calibration support for Lite Gamepad.
    Get latest hekate, v6.0.5 v2 or newer, and use Dump Joy-Con BT to enable it.

RAM Overclocking

RAM overclocking was significantly improved.
Now max frequencies allowed are 2133MHz for T210 and 3000 MHz for T210B01.
Can be set in ini. Guide will be in wiki also.

[ram_oc=0]

Set RAM Overclock frequency in KHz.

If you hang or get corruption or artifacts, try to reduce it.
Unlike HOS which uses encryption for storage, such situations are safer when
they are happening in L4T, so just set power profile to handheld and reboot.
mem-bench command can use almost all of the available bandwidth so it can be
used for a quick testing.
Actual stability can only be confirmed by memtester command on as high as
possible RAM temperature for several hours and with a big test size.
Running 2-4 instances of 128-256MB can help on running it on all RAM banks.
Running a secondary GPU benchmark can help raise temperature.

Creating more L4T boot entries in the ini with different RAM clocks can help
with fast testing. Especially when Reboot 2 Config from Switch tray icon is used.

Any clock increase will also increase RAM power consumption like a CPU/GPU OC.
For example on T210B01, with 1z-nm ram, going from 1866 to 2133 causes a
146 mW increase on active reads/writes which is 19.8%.
Any other state is affected only with a voltage change.

T210 (Erista max 2133 MHz):
List of supported frequencies:
1728000, 1795200, 1862400, 1894400, 1932800, 1958400, 1996800, 2035200,
2064000, 2099200, 2131200.

Input frequency is normalized to one of the above.

Suggested Jedec Frequencies:

  • 1862400
  • 2131200

Suggested Custom:

  • Any, if it works.

T210B01 (Mariko max 3000 MHz):
List of supported frequencies:
1866000, 2133000, 2166000, 2200000, 2233000, 2266000, 2300000, 2333000,
2366000, 2400000, 2433000, 2466000, 2500000, 2533000, 2566000, 2600000,
2633000, 2666000, 2700000, 2733000, 2766000, 2800000, 2833000, 2866000,
2900000, 2933000, 2966000, 3000000.

Input frequency is generally normalized to one of the above.

Suggested Jedec Frequencies:

  • 1866000
  • 2133000
  • 2400000
  • 2666000

Suggested Custom Frequencies:

  • Any, if it works.

Timing based overclocking:
To enable that, edit the last 2 (T210) or 3 (T210B01) digits of the frequency.

It's generally better to find a good base frequency before touching these.

Do not touch them at all for guaranteed stability on max possible frequency,
since without these, the whole configuration is exactly per Nvidia's and
RAM vendor's specifications.

Syntax:
T210: Freq MHz + BA. FFFFFBA. (1862400 -> 1862452)
T210B01: Freq MHz + CBA. FFFFCBA. (2133000 -> 2133252)

Description of F, A, B and C timing overclocking options:
[F]: Actual clock frequency.
Exceeding chip's real max is actual OC.

  • Range: check above for T210 and T210B01 lists.

[A]: Base Latency reduction.
Base latency decreases based on selected frequency bracket.
Brackets: 1333/1600/1866/2133.

  • Range: 0 - 3. 0 to -3 bracket change.
    Example 1: 1866 with 2 is 1333 base latency. Originally 1866 bracket.
    Example 1: 1866 with 3 is 1333 base latency. Originally 1866 bracket.
    Example 2: 1996 with 3 is 1333 base latency. Originally 2133 bracket.
    Example 3: 2133 with 2 is 1600 base latency. Originally 2133 bracket.
    Example 4: 2400 with 0 is 2133 base latency. Originally 2133 bracket.

[B]: Core Timings reduction.
Timings that massively get affected by temperatures are not touched.

  • Range: 0 - 9. 0% to 45% reduction.

[C]: BW Increase. T210B01/LPDDR4x only. RAM Temperature limited timings.
Can cause significant ram data corruption if ram temperature exceeds max.
Reason is not allowed on T210 and LPDDR4.

  • 0/1/2/3/4: for max 85/75/65/55/45 oC RAM temperature

RAM Temperature is only related to MEM/PLL sensors and not to Tdiode or Tboard.
45oC is 50/51 oC MEM/PLL (around 43 oC Tdiode, depends on temp equilibrium).
65oC is 68/69 oC MEM/PLL (around 60 oC Tdiode, depends on temp equilibrium).

Full Examples:

Old (no timing adjustments) OC equivalents:

  • 1862 Old OC: 15% -> [A1,B3,C0] - 1866031
  • 1996 Old OC: 25% -> [A2,B5,C0] - 2000052

T210:

  • 1996800 -> 1996800: 1996 MHz with read/write base latency of 2133 MHz
    and proper 1996 MHz core timings.
  • 1996800 -> 1996852: 1996 MHz with read/write base latency of 1600 MHz
    and reduced core timings by 25%.

T210B01:

  • 2666000 -> 2666000: 2666 MHz with read/write base latency of 2133 MHz
    and proper 2666 MHz core timings.
  • 2666000 -> 2666252: 2666 MHz with read/write base latency of 1600 MHz,
    reduced core timings by 25% and up to 65C operation.

Again, do not use them if you want the ram running like Nvidia and RAM vendor
made the tables, and write the frequency as is in that case.

[ram_oc_vdd2=0]

Changes VDDIO/VDDQ voltage for T210. VDDIO only for T210B01.
Can stabilize timing reduction. Do not use for zero reason.
It's useless on proper timings. It will just raise power draw for nothing.

  • Range: 1100 - 1175. (Unit in mV).

[ram_oc_vddq=0]

Changes VDDQ voltage for T210B01.
Can stabilize timing reduction. Do not use for zero reason.
It's useless on proper timings. It will just raise power draw for nothing.

  • Range: 600 - 650. (Unit in mV).

Full commit log:
https://github.com/CTCaer/switch-l4t-kernel-4.9/commits/linux-5.1.1
https://github.com/CTCaer/switch-l4t-kernel-nvidia/commits/linux-5.1.0
https://github.com/CTCaer/switch-l4t-platform-t210-nx/commits/linux-5.1.1

Wiki
Features: https://wiki.switchroot.org/en/Linux/FeaturesAndPrograms
Installation: https://wiki.switchroot.org/en/Linux/Ubuntu-Install-Guide