RetroArch/README-OMAP.md
twinaphex 420b7913d4 Squashed 'deps/SPIRV-Cross/' changes from 8aa6731925..2820ab0b51
2820ab0b51 Merge pull request #1076 from KhronosGroup/bitcast-pre-330-glsl
63bcbd511e GLSL: Need extension to use bitcast on GLSL < 330.
9f3bebe3d0 Merge pull request #1075 from lifpan/master
b11c20fc1d Remove unreasonable assertion for OpTypeImage Sampled parameter.
1a592b7c0f Merge pull request #1067 from cdavis5e/msl-scalar-block-layout
28454facbb MSL: Handle packed matrices.
ea5c0ed82f MSL: Fix alignment of packed types.
44f688bf0b Merge pull request #1070 from KhronosGroup/fix-1066
25c74b324e Forget loop variable enables after emitting block chain.
6b010e0cbc Merge pull request #1069 from KhronosGroup/fix-1053
f6f849397e MSL: Re-roll array expressions in initializers.
e5fa7edfd6 MSL: Support scalar block layout.

git-subtree-dir: deps/SPIRV-Cross
git-subtree-split: 2820ab0b51bf5e4187435d904b34e762b988f48b
2019-07-11 20:37:45 +02:00

1.8 KiB

RetroArch OMAP video driver

The OMAP video driver for RetroArch uses the omapfb (OMAP framebuffer) driver from the Linux kernel. omapfb is not to be confused with omapdrm, which is the corresponding DRM driver. OMAP framebuffer support is available on platforms like the Pandora (OMAP3) handheld console, the Beagleboard (OMAP3) single-board computer or the Pandaboard (OMAP4), which is also a single-board computer. The OMAP display hardware provides free scaling to native screen dimensions, using a high-quality polyphase filter.

DSS setup

The DSS is the underlying layer, which manages the OMAP display hardware. Through DSS we can setup which framebuffer device outputs to which display device. For example there are three framebuffer devices (fb0, fb1 and fb2) on the Pandaboard, each one connected to a 'overlay' device. The DSS controls are exported in '/sys/devices/platform/omapdss'. Here we configure fb1 to connect to our HDMI display connected to the board.

First we disable the overlay we want to use and the two displays:

echo -n 0 > overlay1/enabled
echo -n 0 > display0/enabled
echo -n 0 > display1/enabled

Check that 'manager1' (name = tv) is connected to HDMI:

cat manager1/display:
hdmi

The free scaling property mentioned above is not available on all overlays. Here 'overlay1' supports zero-cost scaling.

Now we connect 'overlay1' to 'manager1':

echo -n tv > overlay1/manager

Last but not least enable the overlay and the HDMI display:

echo -n 1 > overlay1/enabled
echo -n 1 > display0/enabled

Configuration

The video driver name is 'omap'. It honors the following video settings:

  • video_monitor_index (selects the fb device used, index = 1 -> fb0, index = 2 -> fb1, etc.)
  • video_vsync (use to disable vsync, however this is not recommended)