[PATCH 00/15] drm/tidss: Add BeagleY-AI display support (and some more)

Tomi Valkeinen posted 15 patches 1 month, 3 weeks ago
There is a newer version of this series
.../bindings/display/ti/ti,am625-oldi.yaml         |   4 +
.../bindings/display/ti/ti,am62l-dss.yaml          | 136 ++++++
.../bindings/display/ti/ti,am65x-dss.yaml          | 176 +++----
Documentation/devicetree/bindings/mfd/syscon.yaml  |   2 +
MAINTAINERS                                        |   1 +
.../boot/dts/ti/k3-am62p-j722s-common-main.dtsi    | 112 +++++
arch/arm64/boot/dts/ti/k3-am62p.dtsi               |  16 +
arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts     | 197 ++++++++
arch/arm64/boot/dts/ti/k3-j722s.dtsi               |  16 +
drivers/gpu/drm/tidss/tidss_crtc.c                 |  10 +-
drivers/gpu/drm/tidss/tidss_crtc.h                 |   4 +-
drivers/gpu/drm/tidss/tidss_dispc.c                |  46 +-
drivers/gpu/drm/tidss/tidss_dispc.h                |   5 +-
drivers/gpu/drm/tidss/tidss_dispc_regs.h           |   5 +
drivers/gpu/drm/tidss/tidss_drv.c                  |  54 ++-
drivers/gpu/drm/tidss/tidss_drv.h                  |   5 +-
drivers/gpu/drm/tidss/tidss_kms.c                  |  55 ++-
drivers/gpu/drm/tidss/tidss_oldi.c                 | 531 +++++++++++++++------
drivers/gpu/drm/tidss/tidss_oldi.h                 |   8 +-
19 files changed, 1095 insertions(+), 288 deletions(-)
[PATCH 00/15] drm/tidss: Add BeagleY-AI display support (and some more)
Posted by Tomi Valkeinen 1 month, 3 weeks ago
This series aims to add display support for all display interfaces on
BeagleY-AI board. More generally, it adds display support for TI AM62P,
J722S, and related SoCs, and, as a bit extra, improves AM62L's DPI
handling.

The main topics to highlight:

- The ti,am625-dss-dpi0-clk-ctrl feels a bit like a hack.
  But it is a single quirk register, among other registers that belong
  to either the firmware or other drivers. So what other options are
  there? This has already been discussed e.g. in
  https://lore.kernel.org/all/20250730-fix-edge-handling-v1-0-1bdfb3fe7922%40bootlin.com/
  without proper conclusion. 

- The tidss OLDI support will now use auxiliary device/driver. This seems
  to solve quite neatly the requirement to have a power-domain for each
  OLDI. The main issue that remains is that on AM62P (and similar) we
  will have three OLDI TX DT nodes, even if there are only two in the
  hardware.

With this series one can use the HDMI output on BeagleY-AI. I have also
tested the DSI output with Raspberry Pi's 7" DSI display, and OLDI
output with an oscilloscope (I don't have a suitable OLDI panel).

 Tomi

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
---
Andrew Davis (1):
      arm64: dts: ti: beagley-ai: Enable HDMI display and audio

Jayesh Choudhary (1):
      arm64: dts: ti: k3-am62p-j722s-common-main: Add support for DSS

Swamil Jain (1):
      drm/tidss: Add support for AM62P display subsystem

Tomi Valkeinen (12):
      dt-bindings: display: ti: Move ti,am62l-dss binding to a new binding file
      dt-bindings: display: ti,am65x-dss: Simplify binding
      dt-bindings: mfd: syscon: Add ti,am625-dss-dpi0-clk-ctrl compatible
      dt-bindings: display: ti,am625-oldi: Add optional power-domain for OLDI
      dt-bindings: display: ti,am65x-dss: Add AM62P DSS
      drm/tidss: Remove extra pm_runtime_mark_last_busy
      drm/tidss: oldi: Remove define for unused register OLDI_LB_CTRL
      drm/tidss: Add mechanism to detect DPI output
      drm/tidss: Add external data and sync signal edge configuration
      drm/tidss: Add support for DPIENABLE bit
      drm/tidss: oldi: Fix OLDI signal polarities
      drm/tidss: oldi: Convert OLDI to an aux driver

 .../bindings/display/ti/ti,am625-oldi.yaml         |   4 +
 .../bindings/display/ti/ti,am62l-dss.yaml          | 136 ++++++
 .../bindings/display/ti/ti,am65x-dss.yaml          | 176 +++----
 Documentation/devicetree/bindings/mfd/syscon.yaml  |   2 +
 MAINTAINERS                                        |   1 +
 .../boot/dts/ti/k3-am62p-j722s-common-main.dtsi    | 112 +++++
 arch/arm64/boot/dts/ti/k3-am62p.dtsi               |  16 +
 arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts     | 197 ++++++++
 arch/arm64/boot/dts/ti/k3-j722s.dtsi               |  16 +
 drivers/gpu/drm/tidss/tidss_crtc.c                 |  10 +-
 drivers/gpu/drm/tidss/tidss_crtc.h                 |   4 +-
 drivers/gpu/drm/tidss/tidss_dispc.c                |  46 +-
 drivers/gpu/drm/tidss/tidss_dispc.h                |   5 +-
 drivers/gpu/drm/tidss/tidss_dispc_regs.h           |   5 +
 drivers/gpu/drm/tidss/tidss_drv.c                  |  54 ++-
 drivers/gpu/drm/tidss/tidss_drv.h                  |   5 +-
 drivers/gpu/drm/tidss/tidss_kms.c                  |  55 ++-
 drivers/gpu/drm/tidss/tidss_oldi.c                 | 531 +++++++++++++++------
 drivers/gpu/drm/tidss/tidss_oldi.h                 |   8 +-
 19 files changed, 1095 insertions(+), 288 deletions(-)
---
base-commit: 3131ff5a117498bb4b9db3a238bb311cbf8383ce
change-id: 20260420-beagley-ai-display-d7f634cde5f4
prerequisite-message-id: <20260415110409.2577633-1-s-jain1@ti.com>
prerequisite-patch-id: 654d90f9cddec8b41e6fb1b3776a632606fef88c

Best regards,
-- 
Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Re: [PATCH 00/15] drm/tidss: Add BeagleY-AI display support (and some more)
Posted by Swamil Jain 1 month ago

On 20-04-2026 18:24, Tomi Valkeinen wrote:
> This series aims to add display support for all display interfaces on
> BeagleY-AI board. More generally, it adds display support for TI AM62P,
> J722S, and related SoCs, and, as a bit extra, improves AM62L's DPI
> handling.
> 
> The main topics to highlight:
> 
> - The ti,am625-dss-dpi0-clk-ctrl feels a bit like a hack.
>    But it is a single quirk register, among other registers that belong
>    to either the firmware or other drivers. So what other options are
>    there? This has already been discussed e.g. in
>    https://lore.kernel.org/all/20250730-fix-edge-handling-v1-0-1bdfb3fe7922%40bootlin.com/
>    without proper conclusion.
> 
> - The tidss OLDI support will now use auxiliary device/driver. This seems
>    to solve quite neatly the requirement to have a power-domain for each
>    OLDI. The main issue that remains is that on AM62P (and similar) we
>    will have three OLDI TX DT nodes, even if there are only two in the
>    hardware.
> 
> With this series one can use the HDMI output on BeagleY-AI. I have also
> tested the DSI output with Raspberry Pi's 7" DSI display, and OLDI
> output with an oscilloscope (I don't have a suitable OLDI panel).
> 
>   Tomi
> 
> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
> ---

The series is tested on TI's AM62P[1] SoC and tested HDMI display and
audio output with BeagleY-AI(AM67A SoC[2]).

Display panels used:
--------------------

DSI Panel: https://www.raspberrypi.com/products/raspberry-pi-touch-display/
OLDI Panel: https://www.ti.com/tool/SK-LCD1
HDMI Panel: https://www.viewsonic.com/in/products/lcd/VA1655-3

Test branch: 
https://github.com/jainswamil/linux-next/tree/AM62P_J722S_BEAGLEY_AI_DSS_V1_TEST

Got some DT check warnings with the above test branch[3].

Links
[1]: https://www.ti.com/product/AM62P
[2]: https://www.ti.com/product/AM67A
[3]: https://gist.github.com/jainswamil/945a9859c0f75b41ef21abeede405b2e

Tested-by: Swamil Jain <s-jain1@ti.com>

> Andrew Davis (1):
>        arm64: dts: ti: beagley-ai: Enable HDMI display and audio
> 
> Jayesh Choudhary (1):
>        arm64: dts: ti: k3-am62p-j722s-common-main: Add support for DSS
> 
> Swamil Jain (1):
>        drm/tidss: Add support for AM62P display subsystem
> 
> Tomi Valkeinen (12):
>        dt-bindings: display: ti: Move ti,am62l-dss binding to a new binding file
>        dt-bindings: display: ti,am65x-dss: Simplify binding
>        dt-bindings: mfd: syscon: Add ti,am625-dss-dpi0-clk-ctrl compatible
>        dt-bindings: display: ti,am625-oldi: Add optional power-domain for OLDI
>        dt-bindings: display: ti,am65x-dss: Add AM62P DSS
>        drm/tidss: Remove extra pm_runtime_mark_last_busy
>        drm/tidss: oldi: Remove define for unused register OLDI_LB_CTRL
>        drm/tidss: Add mechanism to detect DPI output
>        drm/tidss: Add external data and sync signal edge configuration
>        drm/tidss: Add support for DPIENABLE bit
>        drm/tidss: oldi: Fix OLDI signal polarities
>        drm/tidss: oldi: Convert OLDI to an aux driver
> 
>   .../bindings/display/ti/ti,am625-oldi.yaml         |   4 +
>   .../bindings/display/ti/ti,am62l-dss.yaml          | 136 ++++++
>   .../bindings/display/ti/ti,am65x-dss.yaml          | 176 +++----
>   Documentation/devicetree/bindings/mfd/syscon.yaml  |   2 +
>   MAINTAINERS                                        |   1 +
>   .../boot/dts/ti/k3-am62p-j722s-common-main.dtsi    | 112 +++++
>   arch/arm64/boot/dts/ti/k3-am62p.dtsi               |  16 +
>   arch/arm64/boot/dts/ti/k3-am67a-beagley-ai.dts     | 197 ++++++++
>   arch/arm64/boot/dts/ti/k3-j722s.dtsi               |  16 +
>   drivers/gpu/drm/tidss/tidss_crtc.c                 |  10 +-
>   drivers/gpu/drm/tidss/tidss_crtc.h                 |   4 +-
>   drivers/gpu/drm/tidss/tidss_dispc.c                |  46 +-
>   drivers/gpu/drm/tidss/tidss_dispc.h                |   5 +-
>   drivers/gpu/drm/tidss/tidss_dispc_regs.h           |   5 +
>   drivers/gpu/drm/tidss/tidss_drv.c                  |  54 ++-
>   drivers/gpu/drm/tidss/tidss_drv.h                  |   5 +-
>   drivers/gpu/drm/tidss/tidss_kms.c                  |  55 ++-
>   drivers/gpu/drm/tidss/tidss_oldi.c                 | 531 +++++++++++++++------
>   drivers/gpu/drm/tidss/tidss_oldi.h                 |   8 +-
>   19 files changed, 1095 insertions(+), 288 deletions(-)
> ---
> base-commit: 3131ff5a117498bb4b9db3a238bb311cbf8383ce
> change-id: 20260420-beagley-ai-display-d7f634cde5f4
> prerequisite-message-id: <20260415110409.2577633-1-s-jain1@ti.com>
> prerequisite-patch-id: 654d90f9cddec8b41e6fb1b3776a632606fef88c
> 
> Best regards,