mbox series

[RFC,0/6] drm/tidss: new display driver for TI's DSS6

Message ID 20180531124109.3209-1-tomi.valkeinen@ti.com
Headers show
Series drm/tidss: new display driver for TI's DSS6 | expand

Message

Tomi Valkeinen May 31, 2018, 12:41 p.m. UTC
Hi,

This is a new DRM driver for Texas Instruments' Keystone K2G SoC. K2G has DSS6
IP, which is related to the OMAP DSS IPs handled by the omapdrm driver. While
on higher level the DSS6 resembles the older DSS versions, the registers and
the internal pipelines differ a lot.

DSS6 IP on K2G is a "ultra-light" version, and has only a single plane and a
single output. The driver will also support future DSS versions, like DSS7 on
AM6 SoC, which supports multiple planes and outputs, so the driver already has
support for those. This is also the reason for the dispc abstraction layer.

The series is an RFC, as I want to include the DSS7 driver in the final
version. I hope that's ready in a week or two. I'm looking for comments on the
overall architecture.

 Tomi

Peter Ujfalusi (1):
  drm: Add support for extracting sync signal drive edge from videomode

Tomi Valkeinen (5):
  dt-bindings: display/ti: add k2g-dss bindings
  drm/tidss: add new driver for TI Keystone platforms
  drm/panel: simple: add newhaven,nhd-4.3-480272ef-atxl LCD
  ARM: dts: keystone-k2g: add DSS node
  ARM: dts: keystone-k2g-evm: add LCD and HDMI displays

 .../panel/newhaven,nhd-4.3-480272ef-atxl.txt  |    7 +
 .../bindings/display/ti/ti,k2g-dss.txt        |   15 +
 MAINTAINERS                                   |    8 +
 arch/arm/boot/dts/Makefile                    |    1 +
 arch/arm/boot/dts/keystone-k2g-evm-lcd.dts    |   80 +
 arch/arm/boot/dts/keystone-k2g-evm.dts        |   91 ++
 arch/arm/boot/dts/keystone-k2g.dtsi           |   21 +
 drivers/gpu/drm/Kconfig                       |    2 +
 drivers/gpu/drm/Makefile                      |    1 +
 drivers/gpu/drm/drm_modes.c                   |   15 +-
 drivers/gpu/drm/panel/panel-simple.c          |   29 +
 drivers/gpu/drm/tidss/Kconfig                 |   10 +
 drivers/gpu/drm/tidss/Makefile                |   11 +
 drivers/gpu/drm/tidss/tidss_crtc.c            |  464 ++++++
 drivers/gpu/drm/tidss/tidss_crtc.h            |   50 +
 drivers/gpu/drm/tidss/tidss_dispc.h           |  146 ++
 drivers/gpu/drm/tidss/tidss_dispc6.c          | 1397 +++++++++++++++++
 drivers/gpu/drm/tidss/tidss_dispc6.h          |   12 +
 drivers/gpu/drm/tidss/tidss_dispc6_regs.h     |  109 ++
 drivers/gpu/drm/tidss/tidss_drv.c             |  331 ++++
 drivers/gpu/drm/tidss/tidss_drv.h             |   41 +
 drivers/gpu/drm/tidss/tidss_encoder.c         |  101 ++
 drivers/gpu/drm/tidss/tidss_encoder.h         |   22 +
 drivers/gpu/drm/tidss/tidss_irq.c             |  193 +++
 drivers/gpu/drm/tidss/tidss_irq.h             |   25 +
 drivers/gpu/drm/tidss/tidss_kms.c             |   85 +
 drivers/gpu/drm/tidss/tidss_kms.h             |   14 +
 drivers/gpu/drm/tidss/tidss_plane.c           |  187 +++
 drivers/gpu/drm/tidss/tidss_plane.h           |   25 +
 include/drm/drm_connector.h                   |    4 +
 30 files changed, 3493 insertions(+), 4 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/display/panel/newhaven,nhd-4.3-480272ef-atxl.txt
 create mode 100644 Documentation/devicetree/bindings/display/ti/ti,k2g-dss.txt
 create mode 100644 arch/arm/boot/dts/keystone-k2g-evm-lcd.dts
 create mode 100644 drivers/gpu/drm/tidss/Kconfig
 create mode 100644 drivers/gpu/drm/tidss/Makefile
 create mode 100644 drivers/gpu/drm/tidss/tidss_crtc.c
 create mode 100644 drivers/gpu/drm/tidss/tidss_crtc.h
 create mode 100644 drivers/gpu/drm/tidss/tidss_dispc.h
 create mode 100644 drivers/gpu/drm/tidss/tidss_dispc6.c
 create mode 100644 drivers/gpu/drm/tidss/tidss_dispc6.h
 create mode 100644 drivers/gpu/drm/tidss/tidss_dispc6_regs.h
 create mode 100644 drivers/gpu/drm/tidss/tidss_drv.c
 create mode 100644 drivers/gpu/drm/tidss/tidss_drv.h
 create mode 100644 drivers/gpu/drm/tidss/tidss_encoder.c
 create mode 100644 drivers/gpu/drm/tidss/tidss_encoder.h
 create mode 100644 drivers/gpu/drm/tidss/tidss_irq.c
 create mode 100644 drivers/gpu/drm/tidss/tidss_irq.h
 create mode 100644 drivers/gpu/drm/tidss/tidss_kms.c
 create mode 100644 drivers/gpu/drm/tidss/tidss_kms.h
 create mode 100644 drivers/gpu/drm/tidss/tidss_plane.c
 create mode 100644 drivers/gpu/drm/tidss/tidss_plane.h

-- 
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Tomi Valkeinen May 31, 2018, 12:43 p.m. UTC | #1
On 31/05/18 15:41, Tomi Valkeinen wrote:
> Hi,

> 

> This is a new DRM driver for Texas Instruments' Keystone K2G SoC. K2G has DSS6

> IP, which is related to the OMAP DSS IPs handled by the omapdrm driver. While

> on higher level the DSS6 resembles the older DSS versions, the registers and

> the internal pipelines differ a lot.

> 

> DSS6 IP on K2G is a "ultra-light" version, and has only a single plane and a

> single output. The driver will also support future DSS versions, like DSS7 on

> AM6 SoC, which supports multiple planes and outputs, so the driver already has

> support for those. This is also the reason for the dispc abstraction layer.

> 

> The series is an RFC, as I want to include the DSS7 driver in the final

> version. I hope that's ready in a week or two. I'm looking for comments on the

> overall architecture.


Aand I forgot to give credit to Laurent, as I did look at his rcar-du
driver a lot when writing this. There's also a lot of code adapted from
omapdrm.

 Tomi

-- 
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html