Nvidia Tegra 2 (tegra20)

From postmarketOS
Revision as of 11:52, 25 May 2020 by Okias (talk | contribs)
Jump to navigation Jump to search
Nvidia Tegra 2
[[|200px|alt=]]
Manufacturer Nvidia
Name Tegra 2
Architecture armv7
Year 2010
Process 40nm
Mainline yes
Components
CPU
Works
UART
Works
Storage
Works
USB
Works
Display
Works
GPU
Partial
Pinctrl
Works
I²C
Works
Audio
Works
Video
Works
Thermal
Works
WiFi
Works
Bluetooth
Works
Modem
Broken
GPS
Camera
Partial
Suspend


Development

This diagram ilustrates how is Tegra developed.

Tegra.svg

Graphics

Tegra mesa.svg

Components (source)

  • libdrm
  • Mesa-3D (minimal implementation, not complete enough (GL 1.4) to run XWayland (requires GL 2.1 or GLES2)
  • xf86-video-tegra (2D acceleration for X11, EXA)
  • libvdpau-tegra

Usability

Wayland:

  • Phosh works, but UI is accelerated trough llvmpipe (software rendering), thus is slow.
  • Plasma mobile not tested (please update)

X11:

  • Xfce4 and Mate desktop will run on 2D acceleration.
  • Hildon requires an OpenGL backend.
    • As of cogl 1.22.2 the clutter/cogl backend requires stencil buffers (EGL_STENCIL_SIZE). This not yet implemented in the grate-driver.

Video Decoding

Video Decoder Engine (VDE) was added to mainline kernel v4.16. The grate-driver includes hardware h264 decoding with libvdpau-tegra.

The vdpau driver does not support h264 videos encoded with:

  • weighted prediction
  • CABAC

Sample video that can be decoded with hardware acceleration: https://peach.blender.org/trailer-page/

$ mpv --hwdec=vdpau trailer_720p.mov
Using hardware decoding (vdpau).
VO: [vdpau] 1280x720 vdpau[yuv420p]

Participate development

Develop

Mesa3D Gallium driver

https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3456

  • Host1x ABI rework (required before mesa implemenetation): (G. docs)
  • migrate from TGSI to NIR
  • establishing demos that work, where can be seen regression

Test & Review

sound: tegra_wm8994

Sound codec used to glue WM8994 and Tegra boards. Used in Samsung P4, P4WiFi, i927.

Source (two latest commits):

Previous source:

two implementations, needs to be tested.

Present on: device list

vibrator: isa1200

Vibrator used in multiple devices and Tegra boards. Used in Samsung P4, P4WiFi, i927.

Source (last commit):

Present on: device list

  • if your device has this vibrator, use these patches + change or add DTS has entry for isa1200 pointing to this vibrator
  • test vibrator if works
  • if works as expected provide "Tested-by" or "Reviewed-by" tags to author

Devices with a Nvidia Tegra 2 Chipset

TODO Update the condition in the table to work generic.
Device Mainline
Acer Iconia Tab A200 P
Acer Iconia Tab A500 Y
ASUS Eee Pad Transformer
Samsung Captivate Glide P

See also