Skip to content
shuffle2 edited this page Aug 22, 2018 · 8 revisions

TODO items

Bugs

  • Hang at boot "clk_pll_wait_for_lock: Timed out waiting for pll pll_d lock"
  • Panel/Framebuffer doesn't come up sometimes

Needs more testing

  • Is fan hysteresis actually working?
    • fan on switchos is more agressive: it is on @ 20% duty for larger range, and also will go up to 60% (via my soldering-iron heater)
    • linux only goes between 20% and 30%
      • That's because we only use the on-die temperature sensors for fan control on Linux, not the discrete one, which is fine. Run Dolphin and block the fan port and watch it speed up. -SwtcR
    • hysteresis seems broken though, I probably don't understand the thermal zone config properly -SwtcR

Missing features

  • Coreboot splash screen
    • Would also allow for early boot framebuffer debug and cleaner handover to U-Boot/Linux
  • Sleep / warmboot
    • This needs a different Boot ROM exploit due to the signed lp0 resume code (but we have one)
  • DDR4 periodic training
    • How necessary is this in practice? We need more people to just try 1600MHz mode without reclocking and see what happens
  • USB-C PD
  • DisplayPort / dock support
  • Audio support
    • Needs porting of the driver wholesale from L4T. Mainline has no Tegra X1 audio support (just some ACONNECT scaffolding). We do have a codec driver but it's useless alone.
  • USB
    • xhci seems to work by default via switch dock
    • device mode does not work yet, see USB

Userland crap

  • Joycon uinput daemon
    • someone write ujoycond.py plz

Misc

  • Brcm wifi .txt firmware file & redistribution
    • version from switchos seems to work fine, not sure if there are important differences (there may also be params specific to their fw blob?)
  • brcm bluetooth fw blob redist
    • Currently, blob from switchos (hw is BCM4356A3) works fine with linux. Maybe older fw can be used? Relatively unlikely since fw is patchram that gets applied to rom, and Ax indicates rom revision
  • MTC blob redistribution

Things in the process of being upstreamed (for tracking)

Things already upstreamed

Things that should be easy to upstream:

  • Linux
    • Panel driver (maybe needs RE of the 0x10 command list?)
    • Tegra210 I2C DFLL
    • Tegra210 GPIO IRQ fail
    • BQ24192 "support"
    • of-thermal hwmon
    • stmfts configurable IRQ
    • Tegra210 PWM clocking
    • PWM fan GPIO support
    • Tegra210 PWM inversion?