[RFC v2 0/5] Add NVIDIA Tegra DRM support
Thierry Reding
thierry.reding at avionic-design.de
Wed Apr 25 19:44:57 EST 2012
This series adds a basic DRM driver for NVIDIA Tegra 2 processors. It
currently only supports the RGB output and I've successfully tested it
against the fbcon kernel module and the xf86-video-modesetting driver.
The code uses the Tegra's IOMMU/GART to remap non-contiguous memory.
This means that currently video memory is limited to 32 MB, the size of
the GART aperture.
Changes in v2:
- split into several smaller source files
- represent individual devices in DT
- add drivers for individual devices
- EDID probing support via "ddc" property
- EDID support in DT using binary blobs
- basic (non-working) HDMI support
- support for carveout memory in DT
A lot of the above are really just stub implementations. Most notably
HDMI support is pretty much a copy of what NVIDIA has in their
downstream kernels, though I wasn't able to make it work except for the
EDID probing (I probably missed some pieces). Carveout memory also isn't
used right now.
Still this should now be in a state where other people (like Jon and
Terje from NVIDIA) and Lucas can start contributing. This series is
based on next-20120424.
Thierry
Robert Morell (1):
drm: fixed: Add dfixed_frac
Thierry Reding (4):
iommu: Include linux/types.h
tps6586x: Add device tree support
i2c: Add of_i2c_get_adapter() function
drm: Add NVIDIA Tegra support
.../devicetree/bindings/gpu/drm/tegra.txt | 125 +++
.../devicetree/bindings/regulator/tps6586x.txt | 97 ++
arch/arm/mach-tegra/board-dt-tegra20.c | 14 +
arch/arm/mach-tegra/include/mach/iomap.h | 6 +
arch/arm/mach-tegra/tegra2_clocks.c | 19 +-
drivers/gpu/drm/Kconfig | 2 +
drivers/gpu/drm/Makefile | 1 +
drivers/gpu/drm/tegra/Kconfig | 19 +
drivers/gpu/drm/tegra/Makefile | 7 +
drivers/gpu/drm/tegra/tegra-dc.c | 630 +++++++++++++
drivers/gpu/drm/tegra/tegra-dc.h | 245 +++++
drivers/gpu/drm/tegra/tegra-drv.c | 600 ++++++++++++
drivers/gpu/drm/tegra/tegra-drv.h | 201 ++++
drivers/gpu/drm/tegra/tegra-dsi.c | 145 +++
drivers/gpu/drm/tegra/tegra-encon.c | 406 ++++++++
drivers/gpu/drm/tegra/tegra-fb.c | 355 +++++++
drivers/gpu/drm/tegra/tegra-gem.c | 425 +++++++++
drivers/gpu/drm/tegra/tegra-hdmi.c | 994 ++++++++++++++++++++
drivers/gpu/drm/tegra/tegra-hdmi.h | 462 +++++++++
drivers/gpu/drm/tegra/tegra-host1x.c | 90 ++
drivers/gpu/drm/tegra/tegra-rgb.c | 148 +++
drivers/gpu/drm/tegra/tegra-tvo.c | 152 +++
drivers/i2c/i2c-core.c | 34 +
drivers/mfd/tps6586x.c | 105 +++
drivers/regulator/tps6586x-regulator.c | 1 +
include/drm/drm_fixed.h | 1 +
include/drm/tegra_drm.h | 40 +
include/linux/iommu.h | 1 +
include/linux/mfd/tps6586x.h | 1 +
include/linux/of_i2c.h | 7 +
30 files changed, 5322 insertions(+), 11 deletions(-)
create mode 100644 Documentation/devicetree/bindings/gpu/drm/tegra.txt
create mode 100644 Documentation/devicetree/bindings/regulator/tps6586x.txt
create mode 100644 drivers/gpu/drm/tegra/Kconfig
create mode 100644 drivers/gpu/drm/tegra/Makefile
create mode 100644 drivers/gpu/drm/tegra/tegra-dc.c
create mode 100644 drivers/gpu/drm/tegra/tegra-dc.h
create mode 100644 drivers/gpu/drm/tegra/tegra-drv.c
create mode 100644 drivers/gpu/drm/tegra/tegra-drv.h
create mode 100644 drivers/gpu/drm/tegra/tegra-dsi.c
create mode 100644 drivers/gpu/drm/tegra/tegra-encon.c
create mode 100644 drivers/gpu/drm/tegra/tegra-fb.c
create mode 100644 drivers/gpu/drm/tegra/tegra-gem.c
create mode 100644 drivers/gpu/drm/tegra/tegra-hdmi.c
create mode 100644 drivers/gpu/drm/tegra/tegra-hdmi.h
create mode 100644 drivers/gpu/drm/tegra/tegra-host1x.c
create mode 100644 drivers/gpu/drm/tegra/tegra-rgb.c
create mode 100644 drivers/gpu/drm/tegra/tegra-tvo.c
create mode 100644 include/drm/tegra_drm.h
--
1.7.10
More information about the devicetree-discuss
mailing list