All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/21] Add display support for the MT8365-EVK board.
@ 2023-03-09 14:22 ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

The purpose of this series is to add the display support for the mt8365-evk.

This is the list of HWs / IPs support added:
- Connectors (HW):
  - HDMI
  - MIPI DSI (Mobile Industry Processor Interface Display Serial Interface)
- HDMI bridge (it66121)
- DSI pannel (startek,kd070fhfid015)
- SoC display blocks (IP):
  - OVL0 (Overlay)
  - RDMA0 (Data Path Read DMA)
  - Color0
  - CCorr0 (Color Correction)
  - AAL0 (Adaptive Ambient Light)
  - GAMMA0
  - Dither0
  - DSI0 (Display Serial Interface)
  - RDMA1 (Data Path Read DMA)
  - DPI0 (Display Parallel Interface)

The Mediatek DSI, DPI and DRM drivers are also improved.

This series depends to another one which add I2C, IOMMU and Power Domain support
for MT8365 SoC and EVK board [1].

Regards,
Alex

[1]: https://lore.kernel.org/all/20230207-iommu-support-v1-0-4f0c81fd52c1@baylibre.com/

To: Chun-Kuang Hu <chunkuang.hu@kernel.org>
To: Philipp Zabel <p.zabel@pengutronix.de>
To: David Airlie <airlied@gmail.com>
To: Daniel Vetter <daniel@ffwll.ch>
To: Rob Herring <robh+dt@kernel.org>
To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
To: Matthias Brugger <matthias.bgg@gmail.com>
To: Jitao Shi <jitao.shi@mediatek.com>
To: Xinlei Lee <xinlei.lee@mediatek.com>
To: CK Hu <ck.hu@mediatek.com>
To: Thierry Reding <thierry.reding@gmail.com>
To: Sam Ravnborg <sam@ravnborg.org>
To: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Cc: dri-devel@lists.freedesktop.org
Cc: linux-mediatek@lists.infradead.org
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-pwm@vger.kernel.org
Cc: Fabien Parent <fparent@baylibre.com>
Cc: Guillaume La Roque <glaroque@baylibre.com>
Cc: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>

---
Alexandre Mergnat (16):
      dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
      dt-bindings: display: mediatek: ccorr: add binding for MT8365 SoC
      dt-bindings: display: mediatek: color: add binding for MT8365 SoC
      dt-bindings: display: mediatek: dither: add binding for MT8365 SoC
      dt-bindings: display: mediatek: dsi: add binding for MT8365 SoC
      dt-bindings: display: mediatek: gamma: add binding for MT8365 SoC
      dt-bindings: display: mediatek: ovl: add binding for MT8365 SoC
      dt-bindings: display: mediatek: rdma: add binding for MT8365 SoC
      dt-bindings: display: pannel: add startek kd070fhfid015 binding documentation
      dt-bindings: pwm: add power-domains property
      dt-bindings: pwm: add binding for mt8365 SoC
      dt-bindings: soc: mediatek: specify which compatible requires clocks property
      dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
      arm64: dts: mediatek: add display blocks support for the MT8365 SoC
      arm64: dts: mediatek: add display support for mt8365-evk
      drm/mediatek: dsi: Improves the DSI lane setup robustness

Fabien Parent (4):
      dt-bindings: display: mediatek: dpi: add power-domains property
      dt-bindings: display: mediatek: dpi: add binding for MT8365
      drm/mediatek: dpi: add support for dpi clock
      drm/mediatek: add MT8365 SoC support

Guillaume La Roque (1):
      panel: startek-kd070fhfid015: add support of this display

 .../bindings/display/mediatek/mediatek,aal.yaml    |   1 +
 .../bindings/display/mediatek/mediatek,ccorr.yaml  |   1 +
 .../bindings/display/mediatek/mediatek,color.yaml  |   1 +
 .../bindings/display/mediatek/mediatek,dither.yaml |   1 +
 .../bindings/display/mediatek/mediatek,dpi.yaml    |  53 ++-
 .../bindings/display/mediatek/mediatek,dsi.yaml    |  19 +-
 .../bindings/display/mediatek/mediatek,gamma.yaml  |   1 +
 .../bindings/display/mediatek/mediatek,ovl.yaml    |   1 +
 .../bindings/display/mediatek/mediatek,rdma.yaml   |   1 +
 .../display/panel/startek,kd070fhfid015.yaml       |  55 +++
 .../devicetree/bindings/pwm/mediatek,pwm-disp.yaml |   9 +
 .../bindings/soc/mediatek/mediatek,mutex.yaml      |  21 +-
 arch/arm64/boot/dts/mediatek/mt8365-evk.dts        | 204 +++++++++
 arch/arm64/boot/dts/mediatek/mt8365.dtsi           | 147 +++++++
 drivers/gpu/drm/mediatek/mtk_dpi.c                 |  18 +-
 drivers/gpu/drm/mediatek/mtk_drm_drv.c             |  35 ++
 drivers/gpu/drm/mediatek/mtk_dsi.c                 |   2 +
 drivers/gpu/drm/panel/Kconfig                      |  12 +
 drivers/gpu/drm/panel/Makefile                     |   1 +
 .../gpu/drm/panel/panel-startek-kd070fhfid015.c    | 483 +++++++++++++++++++++
 20 files changed, 1048 insertions(+), 18 deletions(-)
---
base-commit: ae88468858a66ebe3fb5b3116400d75397f03e6d
change-id: 20230220-display-53dfb6312ec7

Best regards,
-- 
Alexandre Mergnat <amergnat@baylibre.com>

^ permalink raw reply	[flat|nested] 174+ messages in thread

* [PATCH 00/21] Add display support for the MT8365-EVK board.
@ 2023-03-09 14:22 ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

The purpose of this series is to add the display support for the mt8365-evk.

This is the list of HWs / IPs support added:
- Connectors (HW):
  - HDMI
  - MIPI DSI (Mobile Industry Processor Interface Display Serial Interface)
- HDMI bridge (it66121)
- DSI pannel (startek,kd070fhfid015)
- SoC display blocks (IP):
  - OVL0 (Overlay)
  - RDMA0 (Data Path Read DMA)
  - Color0
  - CCorr0 (Color Correction)
  - AAL0 (Adaptive Ambient Light)
  - GAMMA0
  - Dither0
  - DSI0 (Display Serial Interface)
  - RDMA1 (Data Path Read DMA)
  - DPI0 (Display Parallel Interface)

The Mediatek DSI, DPI and DRM drivers are also improved.

This series depends to another one which add I2C, IOMMU and Power Domain support
for MT8365 SoC and EVK board [1].

Regards,
Alex

[1]: https://lore.kernel.org/all/20230207-iommu-support-v1-0-4f0c81fd52c1@baylibre.com/

To: Chun-Kuang Hu <chunkuang.hu@kernel.org>
To: Philipp Zabel <p.zabel@pengutronix.de>
To: David Airlie <airlied@gmail.com>
To: Daniel Vetter <daniel@ffwll.ch>
To: Rob Herring <robh+dt@kernel.org>
To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
To: Matthias Brugger <matthias.bgg@gmail.com>
To: Jitao Shi <jitao.shi@mediatek.com>
To: Xinlei Lee <xinlei.lee@mediatek.com>
To: CK Hu <ck.hu@mediatek.com>
To: Thierry Reding <thierry.reding@gmail.com>
To: Sam Ravnborg <sam@ravnborg.org>
To: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Cc: dri-devel@lists.freedesktop.org
Cc: linux-mediatek@lists.infradead.org
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-pwm@vger.kernel.org
Cc: Fabien Parent <fparent@baylibre.com>
Cc: Guillaume La Roque <glaroque@baylibre.com>
Cc: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>

---
Alexandre Mergnat (16):
      dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
      dt-bindings: display: mediatek: ccorr: add binding for MT8365 SoC
      dt-bindings: display: mediatek: color: add binding for MT8365 SoC
      dt-bindings: display: mediatek: dither: add binding for MT8365 SoC
      dt-bindings: display: mediatek: dsi: add binding for MT8365 SoC
      dt-bindings: display: mediatek: gamma: add binding for MT8365 SoC
      dt-bindings: display: mediatek: ovl: add binding for MT8365 SoC
      dt-bindings: display: mediatek: rdma: add binding for MT8365 SoC
      dt-bindings: display: pannel: add startek kd070fhfid015 binding documentation
      dt-bindings: pwm: add power-domains property
      dt-bindings: pwm: add binding for mt8365 SoC
      dt-bindings: soc: mediatek: specify which compatible requires clocks property
      dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
      arm64: dts: mediatek: add display blocks support for the MT8365 SoC
      arm64: dts: mediatek: add display support for mt8365-evk
      drm/mediatek: dsi: Improves the DSI lane setup robustness

Fabien Parent (4):
      dt-bindings: display: mediatek: dpi: add power-domains property
      dt-bindings: display: mediatek: dpi: add binding for MT8365
      drm/mediatek: dpi: add support for dpi clock
      drm/mediatek: add MT8365 SoC support

Guillaume La Roque (1):
      panel: startek-kd070fhfid015: add support of this display

 .../bindings/display/mediatek/mediatek,aal.yaml    |   1 +
 .../bindings/display/mediatek/mediatek,ccorr.yaml  |   1 +
 .../bindings/display/mediatek/mediatek,color.yaml  |   1 +
 .../bindings/display/mediatek/mediatek,dither.yaml |   1 +
 .../bindings/display/mediatek/mediatek,dpi.yaml    |  53 ++-
 .../bindings/display/mediatek/mediatek,dsi.yaml    |  19 +-
 .../bindings/display/mediatek/mediatek,gamma.yaml  |   1 +
 .../bindings/display/mediatek/mediatek,ovl.yaml    |   1 +
 .../bindings/display/mediatek/mediatek,rdma.yaml   |   1 +
 .../display/panel/startek,kd070fhfid015.yaml       |  55 +++
 .../devicetree/bindings/pwm/mediatek,pwm-disp.yaml |   9 +
 .../bindings/soc/mediatek/mediatek,mutex.yaml      |  21 +-
 arch/arm64/boot/dts/mediatek/mt8365-evk.dts        | 204 +++++++++
 arch/arm64/boot/dts/mediatek/mt8365.dtsi           | 147 +++++++
 drivers/gpu/drm/mediatek/mtk_dpi.c                 |  18 +-
 drivers/gpu/drm/mediatek/mtk_drm_drv.c             |  35 ++
 drivers/gpu/drm/mediatek/mtk_dsi.c                 |   2 +
 drivers/gpu/drm/panel/Kconfig                      |  12 +
 drivers/gpu/drm/panel/Makefile                     |   1 +
 .../gpu/drm/panel/panel-startek-kd070fhfid015.c    | 483 +++++++++++++++++++++
 20 files changed, 1048 insertions(+), 18 deletions(-)
---
base-commit: ae88468858a66ebe3fb5b3116400d75397f03e6d
change-id: 20230220-display-53dfb6312ec7

Best regards,
-- 
Alexandre Mergnat <amergnat@baylibre.com>


^ permalink raw reply	[flat|nested] 174+ messages in thread

* [PATCH 00/21] Add display support for the MT8365-EVK board.
@ 2023-03-09 14:22 ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

The purpose of this series is to add the display support for the mt8365-evk.

This is the list of HWs / IPs support added:
- Connectors (HW):
  - HDMI
  - MIPI DSI (Mobile Industry Processor Interface Display Serial Interface)
- HDMI bridge (it66121)
- DSI pannel (startek,kd070fhfid015)
- SoC display blocks (IP):
  - OVL0 (Overlay)
  - RDMA0 (Data Path Read DMA)
  - Color0
  - CCorr0 (Color Correction)
  - AAL0 (Adaptive Ambient Light)
  - GAMMA0
  - Dither0
  - DSI0 (Display Serial Interface)
  - RDMA1 (Data Path Read DMA)
  - DPI0 (Display Parallel Interface)

The Mediatek DSI, DPI and DRM drivers are also improved.

This series depends to another one which add I2C, IOMMU and Power Domain support
for MT8365 SoC and EVK board [1].

Regards,
Alex

[1]: https://lore.kernel.org/all/20230207-iommu-support-v1-0-4f0c81fd52c1@baylibre.com/

To: Chun-Kuang Hu <chunkuang.hu@kernel.org>
To: Philipp Zabel <p.zabel@pengutronix.de>
To: David Airlie <airlied@gmail.com>
To: Daniel Vetter <daniel@ffwll.ch>
To: Rob Herring <robh+dt@kernel.org>
To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
To: Matthias Brugger <matthias.bgg@gmail.com>
To: Jitao Shi <jitao.shi@mediatek.com>
To: Xinlei Lee <xinlei.lee@mediatek.com>
To: CK Hu <ck.hu@mediatek.com>
To: Thierry Reding <thierry.reding@gmail.com>
To: Sam Ravnborg <sam@ravnborg.org>
To: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Cc: dri-devel@lists.freedesktop.org
Cc: linux-mediatek@lists.infradead.org
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-pwm@vger.kernel.org
Cc: Fabien Parent <fparent@baylibre.com>
Cc: Guillaume La Roque <glaroque@baylibre.com>
Cc: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>

---
Alexandre Mergnat (16):
      dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
      dt-bindings: display: mediatek: ccorr: add binding for MT8365 SoC
      dt-bindings: display: mediatek: color: add binding for MT8365 SoC
      dt-bindings: display: mediatek: dither: add binding for MT8365 SoC
      dt-bindings: display: mediatek: dsi: add binding for MT8365 SoC
      dt-bindings: display: mediatek: gamma: add binding for MT8365 SoC
      dt-bindings: display: mediatek: ovl: add binding for MT8365 SoC
      dt-bindings: display: mediatek: rdma: add binding for MT8365 SoC
      dt-bindings: display: pannel: add startek kd070fhfid015 binding documentation
      dt-bindings: pwm: add power-domains property
      dt-bindings: pwm: add binding for mt8365 SoC
      dt-bindings: soc: mediatek: specify which compatible requires clocks property
      dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
      arm64: dts: mediatek: add display blocks support for the MT8365 SoC
      arm64: dts: mediatek: add display support for mt8365-evk
      drm/mediatek: dsi: Improves the DSI lane setup robustness

Fabien Parent (4):
      dt-bindings: display: mediatek: dpi: add power-domains property
      dt-bindings: display: mediatek: dpi: add binding for MT8365
      drm/mediatek: dpi: add support for dpi clock
      drm/mediatek: add MT8365 SoC support

Guillaume La Roque (1):
      panel: startek-kd070fhfid015: add support of this display

 .../bindings/display/mediatek/mediatek,aal.yaml    |   1 +
 .../bindings/display/mediatek/mediatek,ccorr.yaml  |   1 +
 .../bindings/display/mediatek/mediatek,color.yaml  |   1 +
 .../bindings/display/mediatek/mediatek,dither.yaml |   1 +
 .../bindings/display/mediatek/mediatek,dpi.yaml    |  53 ++-
 .../bindings/display/mediatek/mediatek,dsi.yaml    |  19 +-
 .../bindings/display/mediatek/mediatek,gamma.yaml  |   1 +
 .../bindings/display/mediatek/mediatek,ovl.yaml    |   1 +
 .../bindings/display/mediatek/mediatek,rdma.yaml   |   1 +
 .../display/panel/startek,kd070fhfid015.yaml       |  55 +++
 .../devicetree/bindings/pwm/mediatek,pwm-disp.yaml |   9 +
 .../bindings/soc/mediatek/mediatek,mutex.yaml      |  21 +-
 arch/arm64/boot/dts/mediatek/mt8365-evk.dts        | 204 +++++++++
 arch/arm64/boot/dts/mediatek/mt8365.dtsi           | 147 +++++++
 drivers/gpu/drm/mediatek/mtk_dpi.c                 |  18 +-
 drivers/gpu/drm/mediatek/mtk_drm_drv.c             |  35 ++
 drivers/gpu/drm/mediatek/mtk_dsi.c                 |   2 +
 drivers/gpu/drm/panel/Kconfig                      |  12 +
 drivers/gpu/drm/panel/Makefile                     |   1 +
 .../gpu/drm/panel/panel-startek-kd070fhfid015.c    | 483 +++++++++++++++++++++
 20 files changed, 1048 insertions(+), 18 deletions(-)
---
base-commit: ae88468858a66ebe3fb5b3116400d75397f03e6d
change-id: 20230220-display-53dfb6312ec7

Best regards,
-- 
Alexandre Mergnat <amergnat@baylibre.com>

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:22   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
index d4d585485e7b..d47bc72f09c0 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
@@ -33,6 +33,7 @@ properties:
               - mediatek,mt8186-disp-aal
               - mediatek,mt8192-disp-aal
               - mediatek,mt8195-disp-aal
+              - mediatek,mt8365-disp-aal
           - const: mediatek,mt8183-disp-aal
 
   reg:

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
index d4d585485e7b..d47bc72f09c0 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
@@ -33,6 +33,7 @@ properties:
               - mediatek,mt8186-disp-aal
               - mediatek,mt8192-disp-aal
               - mediatek,mt8195-disp-aal
+              - mediatek,mt8365-disp-aal
           - const: mediatek,mt8183-disp-aal
 
   reg:

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
index d4d585485e7b..d47bc72f09c0 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
@@ -33,6 +33,7 @@ properties:
               - mediatek,mt8186-disp-aal
               - mediatek,mt8192-disp-aal
               - mediatek,mt8195-disp-aal
+              - mediatek,mt8365-disp-aal
           - const: mediatek,mt8183-disp-aal
 
   reg:

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 02/21] dt-bindings: display: mediatek: ccorr: add binding for MT8365 SoC
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:22   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

Display Color Correction for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
index 63fb02014a56..fc999e614718 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
@@ -32,6 +32,7 @@ properties:
       - items:
           - enum:
               - mediatek,mt8186-disp-ccorr
+              - mediatek,mt8365-disp-ccorr
           - const: mediatek,mt8183-disp-ccorr
 
   reg:

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 02/21] dt-bindings: display: mediatek: ccorr: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display Color Correction for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
index 63fb02014a56..fc999e614718 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
@@ -32,6 +32,7 @@ properties:
       - items:
           - enum:
               - mediatek,mt8186-disp-ccorr
+              - mediatek,mt8365-disp-ccorr
           - const: mediatek,mt8183-disp-ccorr
 
   reg:

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 02/21] dt-bindings: display: mediatek: ccorr: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display Color Correction for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
index 63fb02014a56..fc999e614718 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
@@ -32,6 +32,7 @@ properties:
       - items:
           - enum:
               - mediatek,mt8186-disp-ccorr
+              - mediatek,mt8365-disp-ccorr
           - const: mediatek,mt8183-disp-ccorr
 
   reg:

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 03/21] dt-bindings: display: mediatek: color: add binding for MT8365 SoC
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:22   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

Display Color for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
index d2f89ee7996f..9d081da433e8 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
@@ -39,6 +39,7 @@ properties:
               - mediatek,mt8186-disp-color
               - mediatek,mt8192-disp-color
               - mediatek,mt8195-disp-color
+              - mediatek,mt8365-disp-color
           - const: mediatek,mt8173-disp-color
   reg:
     maxItems: 1

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 03/21] dt-bindings: display: mediatek: color: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display Color for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
index d2f89ee7996f..9d081da433e8 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
@@ -39,6 +39,7 @@ properties:
               - mediatek,mt8186-disp-color
               - mediatek,mt8192-disp-color
               - mediatek,mt8195-disp-color
+              - mediatek,mt8365-disp-color
           - const: mediatek,mt8173-disp-color
   reg:
     maxItems: 1

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 03/21] dt-bindings: display: mediatek: color: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display Color for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
index d2f89ee7996f..9d081da433e8 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
@@ -39,6 +39,7 @@ properties:
               - mediatek,mt8186-disp-color
               - mediatek,mt8192-disp-color
               - mediatek,mt8195-disp-color
+              - mediatek,mt8365-disp-color
           - const: mediatek,mt8173-disp-color
   reg:
     maxItems: 1

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 04/21] dt-bindings: display: mediatek: dither: add binding for MT8365 SoC
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:22   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

Display Dither for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
index 8ad8187c02d1..a7706cd65675 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
@@ -29,6 +29,7 @@ properties:
               - mediatek,mt8186-disp-dither
               - mediatek,mt8192-disp-dither
               - mediatek,mt8195-disp-dither
+              - mediatek,mt8365-disp-dither
           - const: mediatek,mt8183-disp-dither
 
   reg:

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 04/21] dt-bindings: display: mediatek: dither: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display Dither for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
index 8ad8187c02d1..a7706cd65675 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
@@ -29,6 +29,7 @@ properties:
               - mediatek,mt8186-disp-dither
               - mediatek,mt8192-disp-dither
               - mediatek,mt8195-disp-dither
+              - mediatek,mt8365-disp-dither
           - const: mediatek,mt8183-disp-dither
 
   reg:

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 04/21] dt-bindings: display: mediatek: dither: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display Dither for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
index 8ad8187c02d1..a7706cd65675 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
@@ -29,6 +29,7 @@ properties:
               - mediatek,mt8186-disp-dither
               - mediatek,mt8192-disp-dither
               - mediatek,mt8195-disp-dither
+              - mediatek,mt8365-disp-dither
           - const: mediatek,mt8183-disp-dither
 
   reg:

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 05/21] dt-bindings: display: mediatek: dsi: add binding for MT8365 SoC
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:22   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

Display Serial Interface for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 .../bindings/display/mediatek/mediatek,dsi.yaml       | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
index 4707b60238b0..b6579d3effc5 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
@@ -22,13 +22,18 @@ allOf:
 
 properties:
   compatible:
-    enum:
-      - mediatek,mt2701-dsi
-      - mediatek,mt7623-dsi
-      - mediatek,mt8167-dsi
-      - mediatek,mt8173-dsi
-      - mediatek,mt8183-dsi
-      - mediatek,mt8186-dsi
+    oneOf:
+      - enum:
+          - mediatek,mt2701-dsi
+          - mediatek,mt7623-dsi
+          - mediatek,mt8167-dsi
+          - mediatek,mt8173-dsi
+          - mediatek,mt8183-dsi
+          - mediatek,mt8186-dsi
+      - items:
+          - enum:
+              - mediatek,mt8365-dsi
+          - const: mediatek,mt8183-dsi
 
   reg:
     maxItems: 1

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 05/21] dt-bindings: display: mediatek: dsi: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display Serial Interface for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 .../bindings/display/mediatek/mediatek,dsi.yaml       | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
index 4707b60238b0..b6579d3effc5 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
@@ -22,13 +22,18 @@ allOf:
 
 properties:
   compatible:
-    enum:
-      - mediatek,mt2701-dsi
-      - mediatek,mt7623-dsi
-      - mediatek,mt8167-dsi
-      - mediatek,mt8173-dsi
-      - mediatek,mt8183-dsi
-      - mediatek,mt8186-dsi
+    oneOf:
+      - enum:
+          - mediatek,mt2701-dsi
+          - mediatek,mt7623-dsi
+          - mediatek,mt8167-dsi
+          - mediatek,mt8173-dsi
+          - mediatek,mt8183-dsi
+          - mediatek,mt8186-dsi
+      - items:
+          - enum:
+              - mediatek,mt8365-dsi
+          - const: mediatek,mt8183-dsi
 
   reg:
     maxItems: 1

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 05/21] dt-bindings: display: mediatek: dsi: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display Serial Interface for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 .../bindings/display/mediatek/mediatek,dsi.yaml       | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
index 4707b60238b0..b6579d3effc5 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
@@ -22,13 +22,18 @@ allOf:
 
 properties:
   compatible:
-    enum:
-      - mediatek,mt2701-dsi
-      - mediatek,mt7623-dsi
-      - mediatek,mt8167-dsi
-      - mediatek,mt8173-dsi
-      - mediatek,mt8183-dsi
-      - mediatek,mt8186-dsi
+    oneOf:
+      - enum:
+          - mediatek,mt2701-dsi
+          - mediatek,mt7623-dsi
+          - mediatek,mt8167-dsi
+          - mediatek,mt8173-dsi
+          - mediatek,mt8183-dsi
+          - mediatek,mt8186-dsi
+      - items:
+          - enum:
+              - mediatek,mt8365-dsi
+          - const: mediatek,mt8183-dsi
 
   reg:
     maxItems: 1

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 06/21] dt-bindings: display: mediatek: dpi: add power-domains property
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:22   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

From: Fabien Parent <fparent@baylibre.com>

DPI is part of the display / multimedia block in MediaTek SoCs, and
always have a power-domain (at least in the upstream device-trees).
Add the power-domains property to the binding documentation.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
index d976380801e3..56511c4d4b9b 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
@@ -59,6 +59,9 @@ properties:
       Output port node. This port should be connected to the input port of an
       attached HDMI, LVDS or DisplayPort encoder chip.
 
+  power-domains:
+    maxItems: 1
+
 required:
   - compatible
   - reg
@@ -73,11 +76,13 @@ examples:
   - |
     #include <dt-bindings/interrupt-controller/arm-gic.h>
     #include <dt-bindings/clock/mt8173-clk.h>
+    #include <dt-bindings/power/mt8173-power.h>
 
     dpi0: dpi@1401d000 {
         compatible = "mediatek,mt8173-dpi";
         reg = <0x1401d000 0x1000>;
         interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_LOW>;
+        power-domains = <&spm MT8173_POWER_DOMAIN_MM>;
         clocks = <&mmsys CLK_MM_DPI_PIXEL>,
              <&mmsys CLK_MM_DPI_ENGINE>,
              <&apmixedsys CLK_APMIXED_TVDPLL>;

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 06/21] dt-bindings: display: mediatek: dpi: add power-domains property
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

From: Fabien Parent <fparent@baylibre.com>

DPI is part of the display / multimedia block in MediaTek SoCs, and
always have a power-domain (at least in the upstream device-trees).
Add the power-domains property to the binding documentation.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
index d976380801e3..56511c4d4b9b 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
@@ -59,6 +59,9 @@ properties:
       Output port node. This port should be connected to the input port of an
       attached HDMI, LVDS or DisplayPort encoder chip.
 
+  power-domains:
+    maxItems: 1
+
 required:
   - compatible
   - reg
@@ -73,11 +76,13 @@ examples:
   - |
     #include <dt-bindings/interrupt-controller/arm-gic.h>
     #include <dt-bindings/clock/mt8173-clk.h>
+    #include <dt-bindings/power/mt8173-power.h>
 
     dpi0: dpi@1401d000 {
         compatible = "mediatek,mt8173-dpi";
         reg = <0x1401d000 0x1000>;
         interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_LOW>;
+        power-domains = <&spm MT8173_POWER_DOMAIN_MM>;
         clocks = <&mmsys CLK_MM_DPI_PIXEL>,
              <&mmsys CLK_MM_DPI_ENGINE>,
              <&apmixedsys CLK_APMIXED_TVDPLL>;

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 06/21] dt-bindings: display: mediatek: dpi: add power-domains property
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

From: Fabien Parent <fparent@baylibre.com>

DPI is part of the display / multimedia block in MediaTek SoCs, and
always have a power-domain (at least in the upstream device-trees).
Add the power-domains property to the binding documentation.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
index d976380801e3..56511c4d4b9b 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
@@ -59,6 +59,9 @@ properties:
       Output port node. This port should be connected to the input port of an
       attached HDMI, LVDS or DisplayPort encoder chip.
 
+  power-domains:
+    maxItems: 1
+
 required:
   - compatible
   - reg
@@ -73,11 +76,13 @@ examples:
   - |
     #include <dt-bindings/interrupt-controller/arm-gic.h>
     #include <dt-bindings/clock/mt8173-clk.h>
+    #include <dt-bindings/power/mt8173-power.h>
 
     dpi0: dpi@1401d000 {
         compatible = "mediatek,mt8173-dpi";
         reg = <0x1401d000 0x1000>;
         interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_LOW>;
+        power-domains = <&spm MT8173_POWER_DOMAIN_MM>;
         clocks = <&mmsys CLK_MM_DPI_PIXEL>,
              <&mmsys CLK_MM_DPI_ENGINE>,
              <&apmixedsys CLK_APMIXED_TVDPLL>;

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:22   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

From: Fabien Parent <fparent@baylibre.com>

DPI for MT8365 is compatible with MT8192 but requires an additional
clock. Modify the documentation to requires this clock only on MT8365 SoCs.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 .../bindings/display/mediatek/mediatek,dpi.yaml    | 48 ++++++++++++++++++----
 1 file changed, 39 insertions(+), 9 deletions(-)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
index 56511c4d4b9b..3f6cca81340c 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
@@ -17,15 +17,20 @@ description: |
 
 properties:
   compatible:
-    enum:
-      - mediatek,mt2701-dpi
-      - mediatek,mt7623-dpi
-      - mediatek,mt8173-dpi
-      - mediatek,mt8183-dpi
-      - mediatek,mt8186-dpi
-      - mediatek,mt8188-dp-intf
-      - mediatek,mt8192-dpi
-      - mediatek,mt8195-dp-intf
+    oneOf:
+      - enum:
+          - mediatek,mt2701-dpi
+          - mediatek,mt7623-dpi
+          - mediatek,mt8173-dpi
+          - mediatek,mt8183-dpi
+          - mediatek,mt8186-dpi
+          - mediatek,mt8188-dp-intf
+          - mediatek,mt8192-dpi
+          - mediatek,mt8195-dp-intf
+      - items:
+          - enum:
+              - mediatek,mt8365-dpi
+          - const: mediatek,mt8192-dpi
 
   reg:
     maxItems: 1
@@ -34,16 +39,20 @@ properties:
     maxItems: 1
 
   clocks:
+    minItems: 3
     items:
       - description: Pixel Clock
       - description: Engine Clock
       - description: DPI PLL
+      - description: DPI Clock
 
   clock-names:
+    minItems: 3
     items:
       - const: pixel
       - const: engine
       - const: pll
+      - const: dpi
 
   pinctrl-0: true
   pinctrl-1: true
@@ -72,6 +81,27 @@ required:
 
 additionalProperties: false
 
+allOf:
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: mediatek,mt8365-dpi
+
+    then:
+      properties:
+        clocks:
+          maxItems: 4
+        clock-names:
+          maxItems: 4
+
+    else:
+      properties:
+        clocks:
+          maxItems: 3
+        clock-names:
+          maxItems: 3
+
 examples:
   - |
     #include <dt-bindings/interrupt-controller/arm-gic.h>

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

From: Fabien Parent <fparent@baylibre.com>

DPI for MT8365 is compatible with MT8192 but requires an additional
clock. Modify the documentation to requires this clock only on MT8365 SoCs.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 .../bindings/display/mediatek/mediatek,dpi.yaml    | 48 ++++++++++++++++++----
 1 file changed, 39 insertions(+), 9 deletions(-)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
index 56511c4d4b9b..3f6cca81340c 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
@@ -17,15 +17,20 @@ description: |
 
 properties:
   compatible:
-    enum:
-      - mediatek,mt2701-dpi
-      - mediatek,mt7623-dpi
-      - mediatek,mt8173-dpi
-      - mediatek,mt8183-dpi
-      - mediatek,mt8186-dpi
-      - mediatek,mt8188-dp-intf
-      - mediatek,mt8192-dpi
-      - mediatek,mt8195-dp-intf
+    oneOf:
+      - enum:
+          - mediatek,mt2701-dpi
+          - mediatek,mt7623-dpi
+          - mediatek,mt8173-dpi
+          - mediatek,mt8183-dpi
+          - mediatek,mt8186-dpi
+          - mediatek,mt8188-dp-intf
+          - mediatek,mt8192-dpi
+          - mediatek,mt8195-dp-intf
+      - items:
+          - enum:
+              - mediatek,mt8365-dpi
+          - const: mediatek,mt8192-dpi
 
   reg:
     maxItems: 1
@@ -34,16 +39,20 @@ properties:
     maxItems: 1
 
   clocks:
+    minItems: 3
     items:
       - description: Pixel Clock
       - description: Engine Clock
       - description: DPI PLL
+      - description: DPI Clock
 
   clock-names:
+    minItems: 3
     items:
       - const: pixel
       - const: engine
       - const: pll
+      - const: dpi
 
   pinctrl-0: true
   pinctrl-1: true
@@ -72,6 +81,27 @@ required:
 
 additionalProperties: false
 
+allOf:
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: mediatek,mt8365-dpi
+
+    then:
+      properties:
+        clocks:
+          maxItems: 4
+        clock-names:
+          maxItems: 4
+
+    else:
+      properties:
+        clocks:
+          maxItems: 3
+        clock-names:
+          maxItems: 3
+
 examples:
   - |
     #include <dt-bindings/interrupt-controller/arm-gic.h>

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

From: Fabien Parent <fparent@baylibre.com>

DPI for MT8365 is compatible with MT8192 but requires an additional
clock. Modify the documentation to requires this clock only on MT8365 SoCs.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 .../bindings/display/mediatek/mediatek,dpi.yaml    | 48 ++++++++++++++++++----
 1 file changed, 39 insertions(+), 9 deletions(-)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
index 56511c4d4b9b..3f6cca81340c 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
@@ -17,15 +17,20 @@ description: |
 
 properties:
   compatible:
-    enum:
-      - mediatek,mt2701-dpi
-      - mediatek,mt7623-dpi
-      - mediatek,mt8173-dpi
-      - mediatek,mt8183-dpi
-      - mediatek,mt8186-dpi
-      - mediatek,mt8188-dp-intf
-      - mediatek,mt8192-dpi
-      - mediatek,mt8195-dp-intf
+    oneOf:
+      - enum:
+          - mediatek,mt2701-dpi
+          - mediatek,mt7623-dpi
+          - mediatek,mt8173-dpi
+          - mediatek,mt8183-dpi
+          - mediatek,mt8186-dpi
+          - mediatek,mt8188-dp-intf
+          - mediatek,mt8192-dpi
+          - mediatek,mt8195-dp-intf
+      - items:
+          - enum:
+              - mediatek,mt8365-dpi
+          - const: mediatek,mt8192-dpi
 
   reg:
     maxItems: 1
@@ -34,16 +39,20 @@ properties:
     maxItems: 1
 
   clocks:
+    minItems: 3
     items:
       - description: Pixel Clock
       - description: Engine Clock
       - description: DPI PLL
+      - description: DPI Clock
 
   clock-names:
+    minItems: 3
     items:
       - const: pixel
       - const: engine
       - const: pll
+      - const: dpi
 
   pinctrl-0: true
   pinctrl-1: true
@@ -72,6 +81,27 @@ required:
 
 additionalProperties: false
 
+allOf:
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: mediatek,mt8365-dpi
+
+    then:
+      properties:
+        clocks:
+          maxItems: 4
+        clock-names:
+          maxItems: 4
+
+    else:
+      properties:
+        clocks:
+          maxItems: 3
+        clock-names:
+          maxItems: 3
+
 examples:
   - |
     #include <dt-bindings/interrupt-controller/arm-gic.h>

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 08/21] dt-bindings: display: mediatek: gamma: add binding for MT8365 SoC
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:22   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

Display GAMMA for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
index a89ea0ea7542..f54859cfc97b 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
@@ -30,6 +30,7 @@ properties:
               - mediatek,mt8186-disp-gamma
               - mediatek,mt8192-disp-gamma
               - mediatek,mt8195-disp-gamma
+              - mediatek,mt8365-disp-gamma
           - const: mediatek,mt8183-disp-gamma
 
   reg:

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 08/21] dt-bindings: display: mediatek: gamma: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display GAMMA for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
index a89ea0ea7542..f54859cfc97b 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
@@ -30,6 +30,7 @@ properties:
               - mediatek,mt8186-disp-gamma
               - mediatek,mt8192-disp-gamma
               - mediatek,mt8195-disp-gamma
+              - mediatek,mt8365-disp-gamma
           - const: mediatek,mt8183-disp-gamma
 
   reg:

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 08/21] dt-bindings: display: mediatek: gamma: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display GAMMA for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
index a89ea0ea7542..f54859cfc97b 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
@@ -30,6 +30,7 @@ properties:
               - mediatek,mt8186-disp-gamma
               - mediatek,mt8192-disp-gamma
               - mediatek,mt8195-disp-gamma
+              - mediatek,mt8365-disp-gamma
           - const: mediatek,mt8183-disp-gamma
 
   reg:

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 09/21] dt-bindings: display: mediatek: ovl: add binding for MT8365 SoC
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:22   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

Display Overlay for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8192 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
index a2a27d0ca038..20e4ca4fc915 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
@@ -41,6 +41,7 @@ properties:
       - items:
           - enum:
               - mediatek,mt8186-disp-ovl
+              - mediatek,mt8365-disp-ovl
           - const: mediatek,mt8192-disp-ovl
 
   reg:

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 09/21] dt-bindings: display: mediatek: ovl: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display Overlay for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8192 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
index a2a27d0ca038..20e4ca4fc915 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
@@ -41,6 +41,7 @@ properties:
       - items:
           - enum:
               - mediatek,mt8186-disp-ovl
+              - mediatek,mt8365-disp-ovl
           - const: mediatek,mt8192-disp-ovl
 
   reg:

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 09/21] dt-bindings: display: mediatek: ovl: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display Overlay for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8192 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
index a2a27d0ca038..20e4ca4fc915 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
@@ -41,6 +41,7 @@ properties:
       - items:
           - enum:
               - mediatek,mt8186-disp-ovl
+              - mediatek,mt8365-disp-ovl
           - const: mediatek,mt8192-disp-ovl
 
   reg:

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 10/21] dt-bindings: display: mediatek: rdma: add binding for MT8365 SoC
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:22   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

Display Data Path Read DMA for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
index 0882ae86e6c4..3bc914785976 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
@@ -40,6 +40,7 @@ properties:
           - enum:
               - mediatek,mt8186-disp-rdma
               - mediatek,mt8192-disp-rdma
+              - mediatek,mt8365-disp-rdma
           - const: mediatek,mt8183-disp-rdma
 
   reg:

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 10/21] dt-bindings: display: mediatek: rdma: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display Data Path Read DMA for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
index 0882ae86e6c4..3bc914785976 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
@@ -40,6 +40,7 @@ properties:
           - enum:
               - mediatek,mt8186-disp-rdma
               - mediatek,mt8192-disp-rdma
+              - mediatek,mt8365-disp-rdma
           - const: mediatek,mt8183-disp-rdma
 
   reg:

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 10/21] dt-bindings: display: mediatek: rdma: add binding for MT8365 SoC
@ 2023-03-09 14:22   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:22 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display Data Path Read DMA for MT8365 is compatible with another SoC.
Then, add MT8365 binding along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
index 0882ae86e6c4..3bc914785976 100644
--- a/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
+++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
@@ -40,6 +40,7 @@ properties:
           - enum:
               - mediatek,mt8186-disp-rdma
               - mediatek,mt8192-disp-rdma
+              - mediatek,mt8365-disp-rdma
           - const: mediatek,mt8183-disp-rdma
 
   reg:

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 11/21] dt-bindings: display: pannel: add startek kd070fhfid015 binding documentation
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:23   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

The Startek KD070FHFID015 is a 7-inch TFT LCD display with a resolution
of 1024 x 600 pixels.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 .../display/panel/startek,kd070fhfid015.yaml       | 55 ++++++++++++++++++++++
 1 file changed, 55 insertions(+)

diff --git a/Documentation/devicetree/bindings/display/panel/startek,kd070fhfid015.yaml b/Documentation/devicetree/bindings/display/panel/startek,kd070fhfid015.yaml
new file mode 100644
index 000000000000..5fde552838e5
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/startek,kd070fhfid015.yaml
@@ -0,0 +1,55 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/panel/startek,kd070fhfid015.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Startek Electronic Technology Co. kd070fhfid015 7 inch TFT LCD panel
+
+maintainers:
+  - Alexandre Mergnat <amergnat@baylibre.com>
+
+allOf:
+  - $ref: panel-common.yaml#
+
+properties:
+  compatible:
+    const: startek,kd070fhfid015
+
+  dcdc-gpios: true
+
+  height-mm:
+    const: 119
+
+  iovcc-supply:
+    description: Reference to the regulator powering the panel IO pins.
+
+  reg:
+    maxItems: 1
+    description: DSI virtual channel
+
+  reset-gpios: true
+
+  pinctrl-0: true
+
+  pinctrl-names: true
+
+  port: true
+
+  power-supply: true
+
+  width-mm:
+    const: 178
+
+additionalProperties: false
+
+required:
+  - compatible
+  - dcdc-gpios
+  - iovcc-supply
+  - reg
+  - reset-gpios
+  - port
+  - power-supply
+
+...

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 11/21] dt-bindings: display: pannel: add startek kd070fhfid015 binding documentation
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

The Startek KD070FHFID015 is a 7-inch TFT LCD display with a resolution
of 1024 x 600 pixels.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 .../display/panel/startek,kd070fhfid015.yaml       | 55 ++++++++++++++++++++++
 1 file changed, 55 insertions(+)

diff --git a/Documentation/devicetree/bindings/display/panel/startek,kd070fhfid015.yaml b/Documentation/devicetree/bindings/display/panel/startek,kd070fhfid015.yaml
new file mode 100644
index 000000000000..5fde552838e5
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/startek,kd070fhfid015.yaml
@@ -0,0 +1,55 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/panel/startek,kd070fhfid015.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Startek Electronic Technology Co. kd070fhfid015 7 inch TFT LCD panel
+
+maintainers:
+  - Alexandre Mergnat <amergnat@baylibre.com>
+
+allOf:
+  - $ref: panel-common.yaml#
+
+properties:
+  compatible:
+    const: startek,kd070fhfid015
+
+  dcdc-gpios: true
+
+  height-mm:
+    const: 119
+
+  iovcc-supply:
+    description: Reference to the regulator powering the panel IO pins.
+
+  reg:
+    maxItems: 1
+    description: DSI virtual channel
+
+  reset-gpios: true
+
+  pinctrl-0: true
+
+  pinctrl-names: true
+
+  port: true
+
+  power-supply: true
+
+  width-mm:
+    const: 178
+
+additionalProperties: false
+
+required:
+  - compatible
+  - dcdc-gpios
+  - iovcc-supply
+  - reg
+  - reset-gpios
+  - port
+  - power-supply
+
+...

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 11/21] dt-bindings: display: pannel: add startek kd070fhfid015 binding documentation
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

The Startek KD070FHFID015 is a 7-inch TFT LCD display with a resolution
of 1024 x 600 pixels.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 .../display/panel/startek,kd070fhfid015.yaml       | 55 ++++++++++++++++++++++
 1 file changed, 55 insertions(+)

diff --git a/Documentation/devicetree/bindings/display/panel/startek,kd070fhfid015.yaml b/Documentation/devicetree/bindings/display/panel/startek,kd070fhfid015.yaml
new file mode 100644
index 000000000000..5fde552838e5
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/panel/startek,kd070fhfid015.yaml
@@ -0,0 +1,55 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/display/panel/startek,kd070fhfid015.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Startek Electronic Technology Co. kd070fhfid015 7 inch TFT LCD panel
+
+maintainers:
+  - Alexandre Mergnat <amergnat@baylibre.com>
+
+allOf:
+  - $ref: panel-common.yaml#
+
+properties:
+  compatible:
+    const: startek,kd070fhfid015
+
+  dcdc-gpios: true
+
+  height-mm:
+    const: 119
+
+  iovcc-supply:
+    description: Reference to the regulator powering the panel IO pins.
+
+  reg:
+    maxItems: 1
+    description: DSI virtual channel
+
+  reset-gpios: true
+
+  pinctrl-0: true
+
+  pinctrl-names: true
+
+  port: true
+
+  power-supply: true
+
+  width-mm:
+    const: 178
+
+additionalProperties: false
+
+required:
+  - compatible
+  - dcdc-gpios
+  - iovcc-supply
+  - reg
+  - reset-gpios
+  - port
+  - power-supply
+
+...

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 12/21] dt-bindings: pwm: add power-domains property
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:23   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

According to the Mediatek datasheet, the display PWM block has a power
domain.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml b/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
index 0088bc8e7c54..8a0005a8bf40 100644
--- a/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
+++ b/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
@@ -51,6 +51,12 @@ properties:
       - const: main
       - const: mm
 
+  power-domains:
+    maxItems: 1
+    description: A phandle and PM domain specifier as defined by bindings of
+      the power controller specified by phandle. See
+      Documentation/devicetree/bindings/power/power-domain.yaml for details.
+
 required:
   - compatible
   - reg
@@ -65,6 +71,7 @@ examples:
     #include <dt-bindings/interrupt-controller/arm-gic.h>
     #include <dt-bindings/clock/mt8173-clk.h>
     #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/power/mt8173-power.h>
 
     pwm0: pwm@1401e000 {
         compatible = "mediatek,mt8173-disp-pwm";
@@ -73,4 +80,5 @@ examples:
         clocks = <&mmsys CLK_MM_DISP_PWM026M>,
                  <&mmsys CLK_MM_DISP_PWM0MM>;
         clock-names = "main", "mm";
+        power-domains = <&spm MT8173_POWER_DOMAIN_MM>;
     };

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 12/21] dt-bindings: pwm: add power-domains property
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

According to the Mediatek datasheet, the display PWM block has a power
domain.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml b/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
index 0088bc8e7c54..8a0005a8bf40 100644
--- a/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
+++ b/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
@@ -51,6 +51,12 @@ properties:
       - const: main
       - const: mm
 
+  power-domains:
+    maxItems: 1
+    description: A phandle and PM domain specifier as defined by bindings of
+      the power controller specified by phandle. See
+      Documentation/devicetree/bindings/power/power-domain.yaml for details.
+
 required:
   - compatible
   - reg
@@ -65,6 +71,7 @@ examples:
     #include <dt-bindings/interrupt-controller/arm-gic.h>
     #include <dt-bindings/clock/mt8173-clk.h>
     #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/power/mt8173-power.h>
 
     pwm0: pwm@1401e000 {
         compatible = "mediatek,mt8173-disp-pwm";
@@ -73,4 +80,5 @@ examples:
         clocks = <&mmsys CLK_MM_DISP_PWM026M>,
                  <&mmsys CLK_MM_DISP_PWM0MM>;
         clock-names = "main", "mm";
+        power-domains = <&spm MT8173_POWER_DOMAIN_MM>;
     };

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 12/21] dt-bindings: pwm: add power-domains property
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

According to the Mediatek datasheet, the display PWM block has a power
domain.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml b/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
index 0088bc8e7c54..8a0005a8bf40 100644
--- a/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
+++ b/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
@@ -51,6 +51,12 @@ properties:
       - const: main
       - const: mm
 
+  power-domains:
+    maxItems: 1
+    description: A phandle and PM domain specifier as defined by bindings of
+      the power controller specified by phandle. See
+      Documentation/devicetree/bindings/power/power-domain.yaml for details.
+
 required:
   - compatible
   - reg
@@ -65,6 +71,7 @@ examples:
     #include <dt-bindings/interrupt-controller/arm-gic.h>
     #include <dt-bindings/clock/mt8173-clk.h>
     #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/power/mt8173-power.h>
 
     pwm0: pwm@1401e000 {
         compatible = "mediatek,mt8173-disp-pwm";
@@ -73,4 +80,5 @@ examples:
         clocks = <&mmsys CLK_MM_DISP_PWM026M>,
                  <&mmsys CLK_MM_DISP_PWM0MM>;
         clock-names = "main", "mm";
+        power-domains = <&spm MT8173_POWER_DOMAIN_MM>;
     };

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 13/21] dt-bindings: pwm: add binding for mt8365 SoC
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:23   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

Display PWM for MT8365 is compatible with MT8183. Then, add MT8365 binding
along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml b/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
index 8a0005a8bf40..889d2b376212 100644
--- a/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
+++ b/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
@@ -30,6 +30,7 @@ properties:
               - mediatek,mt8188-disp-pwm
               - mediatek,mt8192-disp-pwm
               - mediatek,mt8195-disp-pwm
+              - mediatek,mt8365-disp-pwm
           - const: mediatek,mt8183-disp-pwm
 
   reg:

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 13/21] dt-bindings: pwm: add binding for mt8365 SoC
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display PWM for MT8365 is compatible with MT8183. Then, add MT8365 binding
along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml b/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
index 8a0005a8bf40..889d2b376212 100644
--- a/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
+++ b/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
@@ -30,6 +30,7 @@ properties:
               - mediatek,mt8188-disp-pwm
               - mediatek,mt8192-disp-pwm
               - mediatek,mt8195-disp-pwm
+              - mediatek,mt8365-disp-pwm
           - const: mediatek,mt8183-disp-pwm
 
   reg:

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 13/21] dt-bindings: pwm: add binding for mt8365 SoC
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Display PWM for MT8365 is compatible with MT8183. Then, add MT8365 binding
along with MT8183 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml b/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
index 8a0005a8bf40..889d2b376212 100644
--- a/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
+++ b/Documentation/devicetree/bindings/pwm/mediatek,pwm-disp.yaml
@@ -30,6 +30,7 @@ properties:
               - mediatek,mt8188-disp-pwm
               - mediatek,mt8192-disp-pwm
               - mediatek,mt8195-disp-pwm
+              - mediatek,mt8365-disp-pwm
           - const: mediatek,mt8183-disp-pwm
 
   reg:

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 14/21] dt-bindings: soc: mediatek: specify which compatible requires clocks property
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:23   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

According to the mtk-mutex.c driver and the SoC DTS, the clock isn't
required to work properly for some of MTK SoC. Improve the clock
requirement by adding a condition which is function to the compatible.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 .../bindings/soc/mediatek/mediatek,mutex.yaml        | 20 +++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
index 9241e5fc7cff..ca0ca549257d 100644
--- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
+++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
@@ -69,12 +69,30 @@ properties:
       4 arguments defined in this property. Each GCE subsys id is mapping to
       a client defined in the header include/dt-bindings/gce/<chip>-gce.h.
 
+allOf:
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - mediatek,mt2701-disp-mutex
+              - mediatek,mt2712-disp-mutex
+              - mediatek,mt6795-disp-mutex
+              - mediatek,mt8173-disp-mutex
+              - mediatek,mt8186-disp-mutex
+              - mediatek,mt8186-mdp3-mutex
+              - mediatek,mt8192-disp-mutex
+              - mediatek,mt8195-disp-mutex
+    then:
+      required:
+        - clocks
+
+
 required:
   - compatible
   - reg
   - interrupts
   - power-domains
-  - clocks
 
 additionalProperties: false
 

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 14/21] dt-bindings: soc: mediatek: specify which compatible requires clocks property
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

According to the mtk-mutex.c driver and the SoC DTS, the clock isn't
required to work properly for some of MTK SoC. Improve the clock
requirement by adding a condition which is function to the compatible.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 .../bindings/soc/mediatek/mediatek,mutex.yaml        | 20 +++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
index 9241e5fc7cff..ca0ca549257d 100644
--- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
+++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
@@ -69,12 +69,30 @@ properties:
       4 arguments defined in this property. Each GCE subsys id is mapping to
       a client defined in the header include/dt-bindings/gce/<chip>-gce.h.
 
+allOf:
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - mediatek,mt2701-disp-mutex
+              - mediatek,mt2712-disp-mutex
+              - mediatek,mt6795-disp-mutex
+              - mediatek,mt8173-disp-mutex
+              - mediatek,mt8186-disp-mutex
+              - mediatek,mt8186-mdp3-mutex
+              - mediatek,mt8192-disp-mutex
+              - mediatek,mt8195-disp-mutex
+    then:
+      required:
+        - clocks
+
+
 required:
   - compatible
   - reg
   - interrupts
   - power-domains
-  - clocks
 
 additionalProperties: false
 

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 14/21] dt-bindings: soc: mediatek: specify which compatible requires clocks property
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

According to the mtk-mutex.c driver and the SoC DTS, the clock isn't
required to work properly for some of MTK SoC. Improve the clock
requirement by adding a condition which is function to the compatible.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 .../bindings/soc/mediatek/mediatek,mutex.yaml        | 20 +++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
index 9241e5fc7cff..ca0ca549257d 100644
--- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
+++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
@@ -69,12 +69,30 @@ properties:
       4 arguments defined in this property. Each GCE subsys id is mapping to
       a client defined in the header include/dt-bindings/gce/<chip>-gce.h.
 
+allOf:
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - mediatek,mt2701-disp-mutex
+              - mediatek,mt2712-disp-mutex
+              - mediatek,mt6795-disp-mutex
+              - mediatek,mt8173-disp-mutex
+              - mediatek,mt8186-disp-mutex
+              - mediatek,mt8186-mdp3-mutex
+              - mediatek,mt8192-disp-mutex
+              - mediatek,mt8195-disp-mutex
+    then:
+      required:
+        - clocks
+
+
 required:
   - compatible
   - reg
   - interrupts
   - power-domains
-  - clocks
 
 additionalProperties: false
 

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:23   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

Add compatible for the MT8365 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
index ca0ca549257d..931d66893dff 100644
--- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
+++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
@@ -34,6 +34,7 @@ properties:
       - mediatek,mt8186-mdp3-mutex
       - mediatek,mt8192-disp-mutex
       - mediatek,mt8195-disp-mutex
+      - mediatek,mt8365-disp-mutex
 
   reg:
     maxItems: 1

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Add compatible for the MT8365 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
index ca0ca549257d..931d66893dff 100644
--- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
+++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
@@ -34,6 +34,7 @@ properties:
       - mediatek,mt8186-mdp3-mutex
       - mediatek,mt8192-disp-mutex
       - mediatek,mt8195-disp-mutex
+      - mediatek,mt8365-disp-mutex
 
   reg:
     maxItems: 1

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Add compatible for the MT8365 SoC.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
index ca0ca549257d..931d66893dff 100644
--- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
+++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
@@ -34,6 +34,7 @@ properties:
       - mediatek,mt8186-mdp3-mutex
       - mediatek,mt8192-disp-mutex
       - mediatek,mt8195-disp-mutex
+      - mediatek,mt8365-disp-mutex
 
   reg:
     maxItems: 1

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 16/21] arm64: dts: mediatek: add display blocks support for the MT8365 SoC
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:23   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

- Add aliases for each display components to help display drivers.
- Add the Display Pulse Width Modulation (DISP_PWM) to provide PWM signals
  for the LED driver of mobile LCM.
- Add the MIPI Display Serial Interface (DSI) PHY support. (up to 4-lane
  output)
- Add the display mutex support.
- Add the following display component support:
  - OVL0 (Overlay)
  - RDMA0 (Data Path Read DMA)
  - Color0
  - CCorr0 (Color Correction)
  - AAL0 (Adaptive Ambient Light)
  - GAMMA0
  - Dither0
  - DSI0 (Display Serial Interface)
  - RDMA1 (Data Path Read DMA)
  - DPI0 (Display Parallel Interface)

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 arch/arm64/boot/dts/mediatek/mt8365.dtsi | 147 +++++++++++++++++++++++++++++++
 1 file changed, 147 insertions(+)

diff --git a/arch/arm64/boot/dts/mediatek/mt8365.dtsi b/arch/arm64/boot/dts/mediatek/mt8365.dtsi
index 1034b652dd0f..49d8bf145933 100644
--- a/arch/arm64/boot/dts/mediatek/mt8365.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8365.dtsi
@@ -8,6 +8,7 @@
 #include <dt-bindings/clock/mediatek,mt8365-clk.h>
 #include <dt-bindings/interrupt-controller/arm-gic.h>
 #include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/memory/mediatek,mt8365-larb-port.h>
 #include <dt-bindings/phy/phy.h>
 #include <dt-bindings/power/mediatek,mt8365-power.h>
 
@@ -17,6 +18,19 @@ / {
 	#address-cells = <2>;
 	#size-cells = <2>;
 
+	aliases {
+		aal0 = &aal0;
+		ccorr0 = &ccorr0;
+		color0 = &color0;
+		dither0 = &dither0;
+		dpi0 = &dpi0;
+		dsi0 = &dsi0;
+		gamma0 = &gamma0;
+		ovl0 = &ovl0;
+		rdma0 = &rdma0;
+		rdma1 = &rdma1;
+	};
+
 	cpus {
 		#address-cells = <1>;
 		#size-cells = <0>;
@@ -481,6 +495,17 @@ spi: spi@1100a000 {
 			status = "disabled";
 		};
 
+		disp_pwm: pwm@1100e000 {
+			compatible = "mediatek,mt8365-disp-pwm",
+				     "mediatek,mt8183-disp-pwm";
+			reg = <0 0x1100e000 0 0x1000>;
+			clock-names = "main", "mm";
+			clocks = <&topckgen CLK_TOP_DISP_PWM_SEL>,
+				 <&infracfg CLK_IFR_DISP_PWM>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+			#pwm-cells = <2>;
+		};
+
 		i2c3: i2c@1100f000 {
 			compatible = "mediatek,mt8365-i2c",
 				     "mediatek,mt8168-i2c";
@@ -580,6 +605,15 @@ ethernet: ethernet@112a0000 {
 			status = "disabled";
 		};
 
+		mipi_tx0: dsi-phy@11c00000 {
+			compatible = "mediatek,mt8365-mipi-tx", "mediatek,mt8183-mipi-tx";
+			reg = <0 0x11c00000 0 0x800>;
+			clock-output-names = "mipi_tx0_pll";
+			clocks = <&clk26m>;
+			#clock-cells = <0>;
+			#phy-cells = <0>;
+		};
+
 		u3phy: t-phy@11cc0000 {
 			compatible = "mediatek,mt8365-tphy", "mediatek,generic-tphy-v2";
 			#address-cells = <1>;
@@ -609,6 +643,13 @@ mmsys: syscon@14000000 {
 			#clock-cells = <1>;
 		};
 
+		mutex: mutex@14001000 {
+			compatible =  "mediatek,mt8365-disp-mutex";
+			reg = <0 0x14001000 0 0x1000>;
+			interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
 		smi_common: smi@14002000 {
 			compatible = "mediatek,mt8365-smi-common",
 				     "mediatek,mt8186-smi-common";
@@ -633,6 +674,112 @@ larb0: larb@14003000 {
 			mediatek,larb-id = <0>;
 		};
 
+		ovl0: ovl@1400b000 {
+			compatible = "mediatek,mt8365-disp-ovl",
+				     "mediatek,mt8192-disp-ovl";
+			reg = <0 0x1400b000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_OVL0>;
+			interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_LOW>;
+			iommus = <&iommu M4U_PORT_DISP_OVL0>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		rdma0: rdma@1400d000 {
+			compatible = "mediatek,mt8365-disp-rdma",
+				     "mediatek,mt8183-disp-rdma";
+			reg = <0 0x1400d000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_RDMA0>;
+			interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_LOW>;
+			iommus = <&iommu M4U_PORT_DISP_RDMA0>;
+			mediatek,rdma-fifo-size = <5120>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		color0: color@1400f000 {
+			compatible = "mediatek,mt8365-disp-color",
+				     "mediatek,mt8173-disp-color";
+			reg = <0 0x1400f000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_COLOR0>;
+			interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		ccorr0: ccorr@14010000 {
+			compatible = "mediatek,mt8365-disp-ccorr",
+				     "mediatek,mt8183-disp-ccorr";
+			reg = <0 0x14010000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_CCORR0>;
+			interrupts = <GIC_SPI 165 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		aal0: aal@14011000 {
+			compatible = "mediatek,mt8365-disp-aal",
+				     "mediatek,mt8183-disp-aal";
+			reg = <0 0x14011000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_AAL0>;
+			interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		gamma0: gamma@14012000 {
+			compatible = "mediatek,mt8365-disp-gamma",
+				     "mediatek,mt8183-disp-gamma";
+			reg = <0 0x14012000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_GAMMA0>;
+			interrupts = <GIC_SPI 167 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		dither0: dither@14013000 {
+			compatible = "mediatek,mt8365-disp-dither",
+				     "mediatek,mt8183-disp-dither";
+			reg = <0 0x14013000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_DITHER0>;
+			interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		dsi0: dsi@14014000 {
+			compatible = "mediatek,mt8183-dsi";
+			reg = <0 0x14014000 0 0x1000>;
+			clock-names = "engine", "digital", "hs";
+			clocks = <&mmsys CLK_MM_MM_DSI0>,
+				 <&mmsys CLK_MM_DSI0_DIG_DSI>,
+				 <&mipi_tx0>;
+			interrupts = <GIC_SPI 169 IRQ_TYPE_LEVEL_LOW>;
+			phy-names = "dphy";
+			phys = <&mipi_tx0>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		rdma1: rdma@14016000 {
+			compatible = "mediatek,mt8365-disp-rdma",
+				     "mediatek,mt8183-disp-rdma";
+			reg = <0 0x14016000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_RDMA1>;
+			interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_LOW>;
+			iommus = <&iommu M4U_PORT_DISP_RDMA1>;
+			mediatek,rdma-fifo-size = <2048>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		dpi0: dpi@14018000 {
+			compatible = "mediatek,mt8365-dpi",
+				     "mediatek,mt8192-dpi";
+			reg = <0 0x14018000 0 0x1000>;
+			assigned-clock-parents = <&topckgen CLK_TOP_LVDSPLL_D4>;
+			assigned-clocks = <&topckgen CLK_TOP_DPI0_SEL>;
+			clock-names = "pixel", "engine", "pll", "dpi";
+			clocks = <&topckgen CLK_TOP_DPI0_SEL>,
+				 <&mmsys CLK_MM_MM_DPI0>,
+				 <&apmixedsys CLK_APMIXED_LVDSPLL>,
+				 <&mmsys CLK_MM_DPI0_DPI0>;
+			interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+			status = "disabled";
+		};
+
 		camsys: syscon@15000000 {
 			compatible = "mediatek,mt8365-imgsys", "syscon";
 			reg = <0 0x15000000 0 0x1000>;

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 16/21] arm64: dts: mediatek: add display blocks support for the MT8365 SoC
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

- Add aliases for each display components to help display drivers.
- Add the Display Pulse Width Modulation (DISP_PWM) to provide PWM signals
  for the LED driver of mobile LCM.
- Add the MIPI Display Serial Interface (DSI) PHY support. (up to 4-lane
  output)
- Add the display mutex support.
- Add the following display component support:
  - OVL0 (Overlay)
  - RDMA0 (Data Path Read DMA)
  - Color0
  - CCorr0 (Color Correction)
  - AAL0 (Adaptive Ambient Light)
  - GAMMA0
  - Dither0
  - DSI0 (Display Serial Interface)
  - RDMA1 (Data Path Read DMA)
  - DPI0 (Display Parallel Interface)

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 arch/arm64/boot/dts/mediatek/mt8365.dtsi | 147 +++++++++++++++++++++++++++++++
 1 file changed, 147 insertions(+)

diff --git a/arch/arm64/boot/dts/mediatek/mt8365.dtsi b/arch/arm64/boot/dts/mediatek/mt8365.dtsi
index 1034b652dd0f..49d8bf145933 100644
--- a/arch/arm64/boot/dts/mediatek/mt8365.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8365.dtsi
@@ -8,6 +8,7 @@
 #include <dt-bindings/clock/mediatek,mt8365-clk.h>
 #include <dt-bindings/interrupt-controller/arm-gic.h>
 #include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/memory/mediatek,mt8365-larb-port.h>
 #include <dt-bindings/phy/phy.h>
 #include <dt-bindings/power/mediatek,mt8365-power.h>
 
@@ -17,6 +18,19 @@ / {
 	#address-cells = <2>;
 	#size-cells = <2>;
 
+	aliases {
+		aal0 = &aal0;
+		ccorr0 = &ccorr0;
+		color0 = &color0;
+		dither0 = &dither0;
+		dpi0 = &dpi0;
+		dsi0 = &dsi0;
+		gamma0 = &gamma0;
+		ovl0 = &ovl0;
+		rdma0 = &rdma0;
+		rdma1 = &rdma1;
+	};
+
 	cpus {
 		#address-cells = <1>;
 		#size-cells = <0>;
@@ -481,6 +495,17 @@ spi: spi@1100a000 {
 			status = "disabled";
 		};
 
+		disp_pwm: pwm@1100e000 {
+			compatible = "mediatek,mt8365-disp-pwm",
+				     "mediatek,mt8183-disp-pwm";
+			reg = <0 0x1100e000 0 0x1000>;
+			clock-names = "main", "mm";
+			clocks = <&topckgen CLK_TOP_DISP_PWM_SEL>,
+				 <&infracfg CLK_IFR_DISP_PWM>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+			#pwm-cells = <2>;
+		};
+
 		i2c3: i2c@1100f000 {
 			compatible = "mediatek,mt8365-i2c",
 				     "mediatek,mt8168-i2c";
@@ -580,6 +605,15 @@ ethernet: ethernet@112a0000 {
 			status = "disabled";
 		};
 
+		mipi_tx0: dsi-phy@11c00000 {
+			compatible = "mediatek,mt8365-mipi-tx", "mediatek,mt8183-mipi-tx";
+			reg = <0 0x11c00000 0 0x800>;
+			clock-output-names = "mipi_tx0_pll";
+			clocks = <&clk26m>;
+			#clock-cells = <0>;
+			#phy-cells = <0>;
+		};
+
 		u3phy: t-phy@11cc0000 {
 			compatible = "mediatek,mt8365-tphy", "mediatek,generic-tphy-v2";
 			#address-cells = <1>;
@@ -609,6 +643,13 @@ mmsys: syscon@14000000 {
 			#clock-cells = <1>;
 		};
 
+		mutex: mutex@14001000 {
+			compatible =  "mediatek,mt8365-disp-mutex";
+			reg = <0 0x14001000 0 0x1000>;
+			interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
 		smi_common: smi@14002000 {
 			compatible = "mediatek,mt8365-smi-common",
 				     "mediatek,mt8186-smi-common";
@@ -633,6 +674,112 @@ larb0: larb@14003000 {
 			mediatek,larb-id = <0>;
 		};
 
+		ovl0: ovl@1400b000 {
+			compatible = "mediatek,mt8365-disp-ovl",
+				     "mediatek,mt8192-disp-ovl";
+			reg = <0 0x1400b000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_OVL0>;
+			interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_LOW>;
+			iommus = <&iommu M4U_PORT_DISP_OVL0>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		rdma0: rdma@1400d000 {
+			compatible = "mediatek,mt8365-disp-rdma",
+				     "mediatek,mt8183-disp-rdma";
+			reg = <0 0x1400d000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_RDMA0>;
+			interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_LOW>;
+			iommus = <&iommu M4U_PORT_DISP_RDMA0>;
+			mediatek,rdma-fifo-size = <5120>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		color0: color@1400f000 {
+			compatible = "mediatek,mt8365-disp-color",
+				     "mediatek,mt8173-disp-color";
+			reg = <0 0x1400f000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_COLOR0>;
+			interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		ccorr0: ccorr@14010000 {
+			compatible = "mediatek,mt8365-disp-ccorr",
+				     "mediatek,mt8183-disp-ccorr";
+			reg = <0 0x14010000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_CCORR0>;
+			interrupts = <GIC_SPI 165 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		aal0: aal@14011000 {
+			compatible = "mediatek,mt8365-disp-aal",
+				     "mediatek,mt8183-disp-aal";
+			reg = <0 0x14011000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_AAL0>;
+			interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		gamma0: gamma@14012000 {
+			compatible = "mediatek,mt8365-disp-gamma",
+				     "mediatek,mt8183-disp-gamma";
+			reg = <0 0x14012000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_GAMMA0>;
+			interrupts = <GIC_SPI 167 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		dither0: dither@14013000 {
+			compatible = "mediatek,mt8365-disp-dither",
+				     "mediatek,mt8183-disp-dither";
+			reg = <0 0x14013000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_DITHER0>;
+			interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		dsi0: dsi@14014000 {
+			compatible = "mediatek,mt8183-dsi";
+			reg = <0 0x14014000 0 0x1000>;
+			clock-names = "engine", "digital", "hs";
+			clocks = <&mmsys CLK_MM_MM_DSI0>,
+				 <&mmsys CLK_MM_DSI0_DIG_DSI>,
+				 <&mipi_tx0>;
+			interrupts = <GIC_SPI 169 IRQ_TYPE_LEVEL_LOW>;
+			phy-names = "dphy";
+			phys = <&mipi_tx0>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		rdma1: rdma@14016000 {
+			compatible = "mediatek,mt8365-disp-rdma",
+				     "mediatek,mt8183-disp-rdma";
+			reg = <0 0x14016000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_RDMA1>;
+			interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_LOW>;
+			iommus = <&iommu M4U_PORT_DISP_RDMA1>;
+			mediatek,rdma-fifo-size = <2048>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		dpi0: dpi@14018000 {
+			compatible = "mediatek,mt8365-dpi",
+				     "mediatek,mt8192-dpi";
+			reg = <0 0x14018000 0 0x1000>;
+			assigned-clock-parents = <&topckgen CLK_TOP_LVDSPLL_D4>;
+			assigned-clocks = <&topckgen CLK_TOP_DPI0_SEL>;
+			clock-names = "pixel", "engine", "pll", "dpi";
+			clocks = <&topckgen CLK_TOP_DPI0_SEL>,
+				 <&mmsys CLK_MM_MM_DPI0>,
+				 <&apmixedsys CLK_APMIXED_LVDSPLL>,
+				 <&mmsys CLK_MM_DPI0_DPI0>;
+			interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+			status = "disabled";
+		};
+
 		camsys: syscon@15000000 {
 			compatible = "mediatek,mt8365-imgsys", "syscon";
 			reg = <0 0x15000000 0 0x1000>;

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 16/21] arm64: dts: mediatek: add display blocks support for the MT8365 SoC
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

- Add aliases for each display components to help display drivers.
- Add the Display Pulse Width Modulation (DISP_PWM) to provide PWM signals
  for the LED driver of mobile LCM.
- Add the MIPI Display Serial Interface (DSI) PHY support. (up to 4-lane
  output)
- Add the display mutex support.
- Add the following display component support:
  - OVL0 (Overlay)
  - RDMA0 (Data Path Read DMA)
  - Color0
  - CCorr0 (Color Correction)
  - AAL0 (Adaptive Ambient Light)
  - GAMMA0
  - Dither0
  - DSI0 (Display Serial Interface)
  - RDMA1 (Data Path Read DMA)
  - DPI0 (Display Parallel Interface)

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 arch/arm64/boot/dts/mediatek/mt8365.dtsi | 147 +++++++++++++++++++++++++++++++
 1 file changed, 147 insertions(+)

diff --git a/arch/arm64/boot/dts/mediatek/mt8365.dtsi b/arch/arm64/boot/dts/mediatek/mt8365.dtsi
index 1034b652dd0f..49d8bf145933 100644
--- a/arch/arm64/boot/dts/mediatek/mt8365.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8365.dtsi
@@ -8,6 +8,7 @@
 #include <dt-bindings/clock/mediatek,mt8365-clk.h>
 #include <dt-bindings/interrupt-controller/arm-gic.h>
 #include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/memory/mediatek,mt8365-larb-port.h>
 #include <dt-bindings/phy/phy.h>
 #include <dt-bindings/power/mediatek,mt8365-power.h>
 
@@ -17,6 +18,19 @@ / {
 	#address-cells = <2>;
 	#size-cells = <2>;
 
+	aliases {
+		aal0 = &aal0;
+		ccorr0 = &ccorr0;
+		color0 = &color0;
+		dither0 = &dither0;
+		dpi0 = &dpi0;
+		dsi0 = &dsi0;
+		gamma0 = &gamma0;
+		ovl0 = &ovl0;
+		rdma0 = &rdma0;
+		rdma1 = &rdma1;
+	};
+
 	cpus {
 		#address-cells = <1>;
 		#size-cells = <0>;
@@ -481,6 +495,17 @@ spi: spi@1100a000 {
 			status = "disabled";
 		};
 
+		disp_pwm: pwm@1100e000 {
+			compatible = "mediatek,mt8365-disp-pwm",
+				     "mediatek,mt8183-disp-pwm";
+			reg = <0 0x1100e000 0 0x1000>;
+			clock-names = "main", "mm";
+			clocks = <&topckgen CLK_TOP_DISP_PWM_SEL>,
+				 <&infracfg CLK_IFR_DISP_PWM>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+			#pwm-cells = <2>;
+		};
+
 		i2c3: i2c@1100f000 {
 			compatible = "mediatek,mt8365-i2c",
 				     "mediatek,mt8168-i2c";
@@ -580,6 +605,15 @@ ethernet: ethernet@112a0000 {
 			status = "disabled";
 		};
 
+		mipi_tx0: dsi-phy@11c00000 {
+			compatible = "mediatek,mt8365-mipi-tx", "mediatek,mt8183-mipi-tx";
+			reg = <0 0x11c00000 0 0x800>;
+			clock-output-names = "mipi_tx0_pll";
+			clocks = <&clk26m>;
+			#clock-cells = <0>;
+			#phy-cells = <0>;
+		};
+
 		u3phy: t-phy@11cc0000 {
 			compatible = "mediatek,mt8365-tphy", "mediatek,generic-tphy-v2";
 			#address-cells = <1>;
@@ -609,6 +643,13 @@ mmsys: syscon@14000000 {
 			#clock-cells = <1>;
 		};
 
+		mutex: mutex@14001000 {
+			compatible =  "mediatek,mt8365-disp-mutex";
+			reg = <0 0x14001000 0 0x1000>;
+			interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
 		smi_common: smi@14002000 {
 			compatible = "mediatek,mt8365-smi-common",
 				     "mediatek,mt8186-smi-common";
@@ -633,6 +674,112 @@ larb0: larb@14003000 {
 			mediatek,larb-id = <0>;
 		};
 
+		ovl0: ovl@1400b000 {
+			compatible = "mediatek,mt8365-disp-ovl",
+				     "mediatek,mt8192-disp-ovl";
+			reg = <0 0x1400b000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_OVL0>;
+			interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_LOW>;
+			iommus = <&iommu M4U_PORT_DISP_OVL0>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		rdma0: rdma@1400d000 {
+			compatible = "mediatek,mt8365-disp-rdma",
+				     "mediatek,mt8183-disp-rdma";
+			reg = <0 0x1400d000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_RDMA0>;
+			interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_LOW>;
+			iommus = <&iommu M4U_PORT_DISP_RDMA0>;
+			mediatek,rdma-fifo-size = <5120>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		color0: color@1400f000 {
+			compatible = "mediatek,mt8365-disp-color",
+				     "mediatek,mt8173-disp-color";
+			reg = <0 0x1400f000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_COLOR0>;
+			interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		ccorr0: ccorr@14010000 {
+			compatible = "mediatek,mt8365-disp-ccorr",
+				     "mediatek,mt8183-disp-ccorr";
+			reg = <0 0x14010000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_CCORR0>;
+			interrupts = <GIC_SPI 165 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		aal0: aal@14011000 {
+			compatible = "mediatek,mt8365-disp-aal",
+				     "mediatek,mt8183-disp-aal";
+			reg = <0 0x14011000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_AAL0>;
+			interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		gamma0: gamma@14012000 {
+			compatible = "mediatek,mt8365-disp-gamma",
+				     "mediatek,mt8183-disp-gamma";
+			reg = <0 0x14012000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_GAMMA0>;
+			interrupts = <GIC_SPI 167 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		dither0: dither@14013000 {
+			compatible = "mediatek,mt8365-disp-dither",
+				     "mediatek,mt8183-disp-dither";
+			reg = <0 0x14013000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_DITHER0>;
+			interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		dsi0: dsi@14014000 {
+			compatible = "mediatek,mt8183-dsi";
+			reg = <0 0x14014000 0 0x1000>;
+			clock-names = "engine", "digital", "hs";
+			clocks = <&mmsys CLK_MM_MM_DSI0>,
+				 <&mmsys CLK_MM_DSI0_DIG_DSI>,
+				 <&mipi_tx0>;
+			interrupts = <GIC_SPI 169 IRQ_TYPE_LEVEL_LOW>;
+			phy-names = "dphy";
+			phys = <&mipi_tx0>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		rdma1: rdma@14016000 {
+			compatible = "mediatek,mt8365-disp-rdma",
+				     "mediatek,mt8183-disp-rdma";
+			reg = <0 0x14016000 0 0x1000>;
+			clocks = <&mmsys CLK_MM_MM_DISP_RDMA1>;
+			interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_LOW>;
+			iommus = <&iommu M4U_PORT_DISP_RDMA1>;
+			mediatek,rdma-fifo-size = <2048>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+		};
+
+		dpi0: dpi@14018000 {
+			compatible = "mediatek,mt8365-dpi",
+				     "mediatek,mt8192-dpi";
+			reg = <0 0x14018000 0 0x1000>;
+			assigned-clock-parents = <&topckgen CLK_TOP_LVDSPLL_D4>;
+			assigned-clocks = <&topckgen CLK_TOP_DPI0_SEL>;
+			clock-names = "pixel", "engine", "pll", "dpi";
+			clocks = <&topckgen CLK_TOP_DPI0_SEL>,
+				 <&mmsys CLK_MM_MM_DPI0>,
+				 <&apmixedsys CLK_APMIXED_LVDSPLL>,
+				 <&mmsys CLK_MM_DPI0_DPI0>;
+			interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_LOW>;
+			power-domains = <&spm MT8365_POWER_DOMAIN_MM>;
+			status = "disabled";
+		};
+
 		camsys: syscon@15000000 {
 			compatible = "mediatek,mt8365-imgsys", "syscon";
 			reg = <0 0x15000000 0 0x1000>;

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 17/21] arm64: dts: mediatek: add display support for mt8365-evk
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:23   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

MIPI DSI:
- Add "vsys_lcm_reg" regulator support and setup the "mt6357_vsim1_reg",
to power the pannel plugged to the DSI connector.
- Setup the Display Parallel Interface.
  - Add the startek kd070fhfid015 pannel support.

HDMI:
- Add HDMI connector support.
- Add the "ite,it66121" HDMI bridge support, driven by I2C1.
- Setup the Display Parallel Interface.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 arch/arm64/boot/dts/mediatek/mt8365-evk.dts | 204 ++++++++++++++++++++++++++++
 1 file changed, 204 insertions(+)

diff --git a/arch/arm64/boot/dts/mediatek/mt8365-evk.dts b/arch/arm64/boot/dts/mediatek/mt8365-evk.dts
index 30850e7c8155..793f5a9cbeae 100644
--- a/arch/arm64/boot/dts/mediatek/mt8365-evk.dts
+++ b/arch/arm64/boot/dts/mediatek/mt8365-evk.dts
@@ -26,6 +26,18 @@ chosen {
 		stdout-path = "serial0:921600n8";
 	};
 
+	connector {
+		compatible = "hdmi-connector";
+		label = "hdmi";
+		type = "d";
+
+		port {
+			hdmi_connector_in: endpoint {
+				remote-endpoint = <&hdmi_connector_out>;
+			};
+		};
+	};
+
 	firmware {
 		optee {
 			compatible = "linaro,optee-tz";
@@ -86,6 +98,59 @@ optee_reserved: optee@43200000 {
 			reg = <0 0x43200000 0 0x00c00000>;
 		};
 	};
+
+	vsys_lcm_reg: regulator-vsys-lcm {
+		compatible = "regulator-fixed";
+		enable-active-high;
+		gpio = <&pio 129 GPIO_ACTIVE_HIGH>;
+		regulator-max-microvolt = <5000000>;
+		regulator-min-microvolt = <5000000>;
+		regulator-name = "vsys_lcm";
+	};
+};
+
+&dpi0 {
+	pinctrl-0 = <&dpi_default_pins>;
+	pinctrl-1 = <&dpi_idle_pins>;
+	pinctrl-names = "default", "sleep";
+	status = "okay";
+
+	port {
+		dpi_out: endpoint {
+			remote-endpoint = <&it66121_in>;
+		};
+	};
+};
+
+
+&dsi0 {
+	#address-cells = <1>;
+	#size-cells = <0>;
+	status = "okay";
+
+	panel@0 {
+		compatible = "startek,kd070fhfid015";
+		status = "okay";
+		reg = <0>;
+		dcdc-gpios = <&pio 67 GPIO_ACTIVE_HIGH>;
+		reset-gpios = <&pio 20 GPIO_ACTIVE_HIGH>;
+		pinctrl-0 = <&default_panel_pins>;
+		pinctrl-names = "default";
+		iovcc-supply = <&mt6357_vsim1_reg>;
+		power-supply = <&vsys_lcm_reg>;
+
+		port {
+			panel_in: endpoint {
+				remote-endpoint = <&dsi_out>;
+			};
+		};
+	};
+
+	port {
+		dsi_out: endpoint {
+			remote-endpoint = <&panel_in>;
+		};
+	};
 };
 
 &i2c0 {
@@ -97,6 +162,50 @@ &i2c0 {
 	#size-cells = <0>;
 };
 
+&i2c1 {
+	#address-cells = <1>;
+	#size-cells = <0>;
+	clock-div = <2>;
+	clock-frequency = <100000>;
+	pinctrl-0 = <&i2c1_pins>;
+	pinctrl-names = "default";
+	status = "okay";
+
+	it66121hdmitx: it66121hdmitx@4c {
+		#sound-dai-cells = <0>;
+		compatible = "ite,it66121";
+		interrupt-parent = <&pio>;
+		interrupts = <68 IRQ_TYPE_LEVEL_LOW>;
+		pinctrl-0 = <&ite_pins>;
+		pinctrl-names = "default";
+		reg = <0x4c>;
+		reset-gpios = <&pio 69 GPIO_ACTIVE_LOW>;
+		vcn18-supply = <&mt6357_vsim2_reg>;
+		vcn33-supply = <&mt6357_vibr_reg>;
+		vrf12-supply = <&mt6357_vrf12_reg>;
+
+		ports {
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			port@0 {
+				reg = <0>;
+				it66121_in: endpoint {
+					bus-width = <12>;
+					remote-endpoint = <&dpi_out>;
+				};
+			};
+
+			port@1 {
+				reg = <1>;
+				hdmi_connector_out: endpoint {
+					remote-endpoint = <&hdmi_connector_in>;
+				};
+			};
+		};
+	};
+};
+
 &mmc0 {
 	pinctrl-names = "default", "state_uhs";
 	pinctrl-0 = <&mmc0_default_pins>;
@@ -150,12 +259,60 @@ &mt6357_vmc_reg {
 	regulator-always-on;
 };
 
+&mt6357_vsim1_reg {
+	regulator-min-microvolt = <1800000>;
+	regulator-max-microvolt = <1800000>;
+};
+
 /* Needed by ethernet */
 &mt6357_vsim2_reg {
 	regulator-always-on;
 };
 
 &pio {
+	dpi_default_pins: dpi-default-pins {
+		pins {
+			pinmux = <MT8365_PIN_0_GPIO0__FUNC_DPI_D0>,
+				 <MT8365_PIN_1_GPIO1__FUNC_DPI_D1>,
+				 <MT8365_PIN_2_GPIO2__FUNC_DPI_D2>,
+				 <MT8365_PIN_3_GPIO3__FUNC_DPI_D3>,
+				 <MT8365_PIN_4_GPIO4__FUNC_DPI_D4>,
+				 <MT8365_PIN_5_GPIO5__FUNC_DPI_D5>,
+				 <MT8365_PIN_6_GPIO6__FUNC_DPI_D6>,
+				 <MT8365_PIN_7_GPIO7__FUNC_DPI_D7>,
+				 <MT8365_PIN_8_GPIO8__FUNC_DPI_D8>,
+				 <MT8365_PIN_9_GPIO9__FUNC_DPI_D9>,
+				 <MT8365_PIN_10_GPIO10__FUNC_DPI_D10>,
+				 <MT8365_PIN_11_GPIO11__FUNC_DPI_D11>,
+				 <MT8365_PIN_12_GPIO12__FUNC_DPI_DE>,
+				 <MT8365_PIN_13_GPIO13__FUNC_DPI_VSYNC>,
+				 <MT8365_PIN_14_GPIO14__FUNC_DPI_CK>,
+				 <MT8365_PIN_15_GPIO15__FUNC_DPI_HSYNC>;
+			drive-strength = <MTK_DRIVE_4mA>;
+		};
+	};
+
+	dpi_idle_pins: dpi-idle-pins {
+		pins {
+			pinmux = <MT8365_PIN_0_GPIO0__FUNC_GPIO0>,
+				 <MT8365_PIN_1_GPIO1__FUNC_GPIO1>,
+				 <MT8365_PIN_2_GPIO2__FUNC_GPIO2>,
+				 <MT8365_PIN_3_GPIO3__FUNC_GPIO3>,
+				 <MT8365_PIN_4_GPIO4__FUNC_GPIO4>,
+				 <MT8365_PIN_5_GPIO5__FUNC_GPIO5>,
+				 <MT8365_PIN_6_GPIO6__FUNC_GPIO6>,
+				 <MT8365_PIN_7_GPIO7__FUNC_GPIO7>,
+				 <MT8365_PIN_8_GPIO8__FUNC_GPIO8>,
+				 <MT8365_PIN_9_GPIO9__FUNC_GPIO9>,
+				 <MT8365_PIN_10_GPIO10__FUNC_GPIO10>,
+				 <MT8365_PIN_11_GPIO11__FUNC_GPIO11>,
+				 <MT8365_PIN_12_GPIO12__FUNC_GPIO12>,
+				 <MT8365_PIN_13_GPIO13__FUNC_GPIO13>,
+				 <MT8365_PIN_14_GPIO14__FUNC_GPIO14>,
+				 <MT8365_PIN_15_GPIO15__FUNC_GPIO15>;
+		};
+	};
+
 	gpio_keys: gpio-keys-pins {
 		pins {
 			pinmux = <MT8365_PIN_24_KPCOL0__FUNC_KPCOL0>;
@@ -174,6 +331,36 @@ pins_i2c {
 		};
 	};
 
+	i2c1_pins: i2c1 {
+		pins_i2c {
+			pinmux = <MT8365_PIN_59_SDA1__FUNC_SDA1_0>,
+				 <MT8365_PIN_60_SCL1__FUNC_SCL1_0>;
+			mediatek,pull-up-adv = <3>;
+			mediatek,drive-strength-adv = <00>;
+			bias-pull-up;
+		};
+	};
+
+	ite_pins: ite-pins {
+
+		irq_ite_pins {
+			pinmux = <MT8365_PIN_68_CMDAT0__FUNC_GPIO68>;
+			input-enable;
+			bias-pull-up;
+		};
+
+		pwr_pins {
+			pinmux = <MT8365_PIN_70_CMDAT2__FUNC_GPIO70>,
+				 <MT8365_PIN_71_CMDAT3__FUNC_GPIO71>;
+			output-high;
+		};
+
+		rst_ite_pins {
+			pinmux = <MT8365_PIN_69_CMDAT1__FUNC_GPIO69>;
+			output-high;
+		};
+	};
+
 	mmc0_default_pins: mmc0-default-pins {
 		clk-pins {
 			pinmux = <MT8365_PIN_99_MSDC0_CLK__FUNC_MSDC0_CLK>;
@@ -315,6 +502,23 @@ usb1-vbus-pins {
 		};
 	};
 
+	default_panel_pins: default-panel-pins {
+		dcdc-pins {
+			pinmux = <MT8365_PIN_67_CMPCLK__FUNC_GPIO67>;
+			output-low;
+		};
+
+		en-pins {
+			pinmux = <MT8365_PIN_129_TDM_TX_BCK__FUNC_GPIO129>;
+			output-low;
+		};
+
+		rst-pins {
+			pinmux = <MT8365_PIN_20_LCM_RST__FUNC_GPIO20>;
+			output-high;
+		};
+	};
+
 	pwm_pins: pwm-pins {
 		pins {
 			pinmux = <MT8365_PIN_19_DISP_PWM__FUNC_PWM_A>,

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 17/21] arm64: dts: mediatek: add display support for mt8365-evk
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

MIPI DSI:
- Add "vsys_lcm_reg" regulator support and setup the "mt6357_vsim1_reg",
to power the pannel plugged to the DSI connector.
- Setup the Display Parallel Interface.
  - Add the startek kd070fhfid015 pannel support.

HDMI:
- Add HDMI connector support.
- Add the "ite,it66121" HDMI bridge support, driven by I2C1.
- Setup the Display Parallel Interface.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 arch/arm64/boot/dts/mediatek/mt8365-evk.dts | 204 ++++++++++++++++++++++++++++
 1 file changed, 204 insertions(+)

diff --git a/arch/arm64/boot/dts/mediatek/mt8365-evk.dts b/arch/arm64/boot/dts/mediatek/mt8365-evk.dts
index 30850e7c8155..793f5a9cbeae 100644
--- a/arch/arm64/boot/dts/mediatek/mt8365-evk.dts
+++ b/arch/arm64/boot/dts/mediatek/mt8365-evk.dts
@@ -26,6 +26,18 @@ chosen {
 		stdout-path = "serial0:921600n8";
 	};
 
+	connector {
+		compatible = "hdmi-connector";
+		label = "hdmi";
+		type = "d";
+
+		port {
+			hdmi_connector_in: endpoint {
+				remote-endpoint = <&hdmi_connector_out>;
+			};
+		};
+	};
+
 	firmware {
 		optee {
 			compatible = "linaro,optee-tz";
@@ -86,6 +98,59 @@ optee_reserved: optee@43200000 {
 			reg = <0 0x43200000 0 0x00c00000>;
 		};
 	};
+
+	vsys_lcm_reg: regulator-vsys-lcm {
+		compatible = "regulator-fixed";
+		enable-active-high;
+		gpio = <&pio 129 GPIO_ACTIVE_HIGH>;
+		regulator-max-microvolt = <5000000>;
+		regulator-min-microvolt = <5000000>;
+		regulator-name = "vsys_lcm";
+	};
+};
+
+&dpi0 {
+	pinctrl-0 = <&dpi_default_pins>;
+	pinctrl-1 = <&dpi_idle_pins>;
+	pinctrl-names = "default", "sleep";
+	status = "okay";
+
+	port {
+		dpi_out: endpoint {
+			remote-endpoint = <&it66121_in>;
+		};
+	};
+};
+
+
+&dsi0 {
+	#address-cells = <1>;
+	#size-cells = <0>;
+	status = "okay";
+
+	panel@0 {
+		compatible = "startek,kd070fhfid015";
+		status = "okay";
+		reg = <0>;
+		dcdc-gpios = <&pio 67 GPIO_ACTIVE_HIGH>;
+		reset-gpios = <&pio 20 GPIO_ACTIVE_HIGH>;
+		pinctrl-0 = <&default_panel_pins>;
+		pinctrl-names = "default";
+		iovcc-supply = <&mt6357_vsim1_reg>;
+		power-supply = <&vsys_lcm_reg>;
+
+		port {
+			panel_in: endpoint {
+				remote-endpoint = <&dsi_out>;
+			};
+		};
+	};
+
+	port {
+		dsi_out: endpoint {
+			remote-endpoint = <&panel_in>;
+		};
+	};
 };
 
 &i2c0 {
@@ -97,6 +162,50 @@ &i2c0 {
 	#size-cells = <0>;
 };
 
+&i2c1 {
+	#address-cells = <1>;
+	#size-cells = <0>;
+	clock-div = <2>;
+	clock-frequency = <100000>;
+	pinctrl-0 = <&i2c1_pins>;
+	pinctrl-names = "default";
+	status = "okay";
+
+	it66121hdmitx: it66121hdmitx@4c {
+		#sound-dai-cells = <0>;
+		compatible = "ite,it66121";
+		interrupt-parent = <&pio>;
+		interrupts = <68 IRQ_TYPE_LEVEL_LOW>;
+		pinctrl-0 = <&ite_pins>;
+		pinctrl-names = "default";
+		reg = <0x4c>;
+		reset-gpios = <&pio 69 GPIO_ACTIVE_LOW>;
+		vcn18-supply = <&mt6357_vsim2_reg>;
+		vcn33-supply = <&mt6357_vibr_reg>;
+		vrf12-supply = <&mt6357_vrf12_reg>;
+
+		ports {
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			port@0 {
+				reg = <0>;
+				it66121_in: endpoint {
+					bus-width = <12>;
+					remote-endpoint = <&dpi_out>;
+				};
+			};
+
+			port@1 {
+				reg = <1>;
+				hdmi_connector_out: endpoint {
+					remote-endpoint = <&hdmi_connector_in>;
+				};
+			};
+		};
+	};
+};
+
 &mmc0 {
 	pinctrl-names = "default", "state_uhs";
 	pinctrl-0 = <&mmc0_default_pins>;
@@ -150,12 +259,60 @@ &mt6357_vmc_reg {
 	regulator-always-on;
 };
 
+&mt6357_vsim1_reg {
+	regulator-min-microvolt = <1800000>;
+	regulator-max-microvolt = <1800000>;
+};
+
 /* Needed by ethernet */
 &mt6357_vsim2_reg {
 	regulator-always-on;
 };
 
 &pio {
+	dpi_default_pins: dpi-default-pins {
+		pins {
+			pinmux = <MT8365_PIN_0_GPIO0__FUNC_DPI_D0>,
+				 <MT8365_PIN_1_GPIO1__FUNC_DPI_D1>,
+				 <MT8365_PIN_2_GPIO2__FUNC_DPI_D2>,
+				 <MT8365_PIN_3_GPIO3__FUNC_DPI_D3>,
+				 <MT8365_PIN_4_GPIO4__FUNC_DPI_D4>,
+				 <MT8365_PIN_5_GPIO5__FUNC_DPI_D5>,
+				 <MT8365_PIN_6_GPIO6__FUNC_DPI_D6>,
+				 <MT8365_PIN_7_GPIO7__FUNC_DPI_D7>,
+				 <MT8365_PIN_8_GPIO8__FUNC_DPI_D8>,
+				 <MT8365_PIN_9_GPIO9__FUNC_DPI_D9>,
+				 <MT8365_PIN_10_GPIO10__FUNC_DPI_D10>,
+				 <MT8365_PIN_11_GPIO11__FUNC_DPI_D11>,
+				 <MT8365_PIN_12_GPIO12__FUNC_DPI_DE>,
+				 <MT8365_PIN_13_GPIO13__FUNC_DPI_VSYNC>,
+				 <MT8365_PIN_14_GPIO14__FUNC_DPI_CK>,
+				 <MT8365_PIN_15_GPIO15__FUNC_DPI_HSYNC>;
+			drive-strength = <MTK_DRIVE_4mA>;
+		};
+	};
+
+	dpi_idle_pins: dpi-idle-pins {
+		pins {
+			pinmux = <MT8365_PIN_0_GPIO0__FUNC_GPIO0>,
+				 <MT8365_PIN_1_GPIO1__FUNC_GPIO1>,
+				 <MT8365_PIN_2_GPIO2__FUNC_GPIO2>,
+				 <MT8365_PIN_3_GPIO3__FUNC_GPIO3>,
+				 <MT8365_PIN_4_GPIO4__FUNC_GPIO4>,
+				 <MT8365_PIN_5_GPIO5__FUNC_GPIO5>,
+				 <MT8365_PIN_6_GPIO6__FUNC_GPIO6>,
+				 <MT8365_PIN_7_GPIO7__FUNC_GPIO7>,
+				 <MT8365_PIN_8_GPIO8__FUNC_GPIO8>,
+				 <MT8365_PIN_9_GPIO9__FUNC_GPIO9>,
+				 <MT8365_PIN_10_GPIO10__FUNC_GPIO10>,
+				 <MT8365_PIN_11_GPIO11__FUNC_GPIO11>,
+				 <MT8365_PIN_12_GPIO12__FUNC_GPIO12>,
+				 <MT8365_PIN_13_GPIO13__FUNC_GPIO13>,
+				 <MT8365_PIN_14_GPIO14__FUNC_GPIO14>,
+				 <MT8365_PIN_15_GPIO15__FUNC_GPIO15>;
+		};
+	};
+
 	gpio_keys: gpio-keys-pins {
 		pins {
 			pinmux = <MT8365_PIN_24_KPCOL0__FUNC_KPCOL0>;
@@ -174,6 +331,36 @@ pins_i2c {
 		};
 	};
 
+	i2c1_pins: i2c1 {
+		pins_i2c {
+			pinmux = <MT8365_PIN_59_SDA1__FUNC_SDA1_0>,
+				 <MT8365_PIN_60_SCL1__FUNC_SCL1_0>;
+			mediatek,pull-up-adv = <3>;
+			mediatek,drive-strength-adv = <00>;
+			bias-pull-up;
+		};
+	};
+
+	ite_pins: ite-pins {
+
+		irq_ite_pins {
+			pinmux = <MT8365_PIN_68_CMDAT0__FUNC_GPIO68>;
+			input-enable;
+			bias-pull-up;
+		};
+
+		pwr_pins {
+			pinmux = <MT8365_PIN_70_CMDAT2__FUNC_GPIO70>,
+				 <MT8365_PIN_71_CMDAT3__FUNC_GPIO71>;
+			output-high;
+		};
+
+		rst_ite_pins {
+			pinmux = <MT8365_PIN_69_CMDAT1__FUNC_GPIO69>;
+			output-high;
+		};
+	};
+
 	mmc0_default_pins: mmc0-default-pins {
 		clk-pins {
 			pinmux = <MT8365_PIN_99_MSDC0_CLK__FUNC_MSDC0_CLK>;
@@ -315,6 +502,23 @@ usb1-vbus-pins {
 		};
 	};
 
+	default_panel_pins: default-panel-pins {
+		dcdc-pins {
+			pinmux = <MT8365_PIN_67_CMPCLK__FUNC_GPIO67>;
+			output-low;
+		};
+
+		en-pins {
+			pinmux = <MT8365_PIN_129_TDM_TX_BCK__FUNC_GPIO129>;
+			output-low;
+		};
+
+		rst-pins {
+			pinmux = <MT8365_PIN_20_LCM_RST__FUNC_GPIO20>;
+			output-high;
+		};
+	};
+
 	pwm_pins: pwm-pins {
 		pins {
 			pinmux = <MT8365_PIN_19_DISP_PWM__FUNC_PWM_A>,

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 17/21] arm64: dts: mediatek: add display support for mt8365-evk
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

MIPI DSI:
- Add "vsys_lcm_reg" regulator support and setup the "mt6357_vsim1_reg",
to power the pannel plugged to the DSI connector.
- Setup the Display Parallel Interface.
  - Add the startek kd070fhfid015 pannel support.

HDMI:
- Add HDMI connector support.
- Add the "ite,it66121" HDMI bridge support, driven by I2C1.
- Setup the Display Parallel Interface.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 arch/arm64/boot/dts/mediatek/mt8365-evk.dts | 204 ++++++++++++++++++++++++++++
 1 file changed, 204 insertions(+)

diff --git a/arch/arm64/boot/dts/mediatek/mt8365-evk.dts b/arch/arm64/boot/dts/mediatek/mt8365-evk.dts
index 30850e7c8155..793f5a9cbeae 100644
--- a/arch/arm64/boot/dts/mediatek/mt8365-evk.dts
+++ b/arch/arm64/boot/dts/mediatek/mt8365-evk.dts
@@ -26,6 +26,18 @@ chosen {
 		stdout-path = "serial0:921600n8";
 	};
 
+	connector {
+		compatible = "hdmi-connector";
+		label = "hdmi";
+		type = "d";
+
+		port {
+			hdmi_connector_in: endpoint {
+				remote-endpoint = <&hdmi_connector_out>;
+			};
+		};
+	};
+
 	firmware {
 		optee {
 			compatible = "linaro,optee-tz";
@@ -86,6 +98,59 @@ optee_reserved: optee@43200000 {
 			reg = <0 0x43200000 0 0x00c00000>;
 		};
 	};
+
+	vsys_lcm_reg: regulator-vsys-lcm {
+		compatible = "regulator-fixed";
+		enable-active-high;
+		gpio = <&pio 129 GPIO_ACTIVE_HIGH>;
+		regulator-max-microvolt = <5000000>;
+		regulator-min-microvolt = <5000000>;
+		regulator-name = "vsys_lcm";
+	};
+};
+
+&dpi0 {
+	pinctrl-0 = <&dpi_default_pins>;
+	pinctrl-1 = <&dpi_idle_pins>;
+	pinctrl-names = "default", "sleep";
+	status = "okay";
+
+	port {
+		dpi_out: endpoint {
+			remote-endpoint = <&it66121_in>;
+		};
+	};
+};
+
+
+&dsi0 {
+	#address-cells = <1>;
+	#size-cells = <0>;
+	status = "okay";
+
+	panel@0 {
+		compatible = "startek,kd070fhfid015";
+		status = "okay";
+		reg = <0>;
+		dcdc-gpios = <&pio 67 GPIO_ACTIVE_HIGH>;
+		reset-gpios = <&pio 20 GPIO_ACTIVE_HIGH>;
+		pinctrl-0 = <&default_panel_pins>;
+		pinctrl-names = "default";
+		iovcc-supply = <&mt6357_vsim1_reg>;
+		power-supply = <&vsys_lcm_reg>;
+
+		port {
+			panel_in: endpoint {
+				remote-endpoint = <&dsi_out>;
+			};
+		};
+	};
+
+	port {
+		dsi_out: endpoint {
+			remote-endpoint = <&panel_in>;
+		};
+	};
 };
 
 &i2c0 {
@@ -97,6 +162,50 @@ &i2c0 {
 	#size-cells = <0>;
 };
 
+&i2c1 {
+	#address-cells = <1>;
+	#size-cells = <0>;
+	clock-div = <2>;
+	clock-frequency = <100000>;
+	pinctrl-0 = <&i2c1_pins>;
+	pinctrl-names = "default";
+	status = "okay";
+
+	it66121hdmitx: it66121hdmitx@4c {
+		#sound-dai-cells = <0>;
+		compatible = "ite,it66121";
+		interrupt-parent = <&pio>;
+		interrupts = <68 IRQ_TYPE_LEVEL_LOW>;
+		pinctrl-0 = <&ite_pins>;
+		pinctrl-names = "default";
+		reg = <0x4c>;
+		reset-gpios = <&pio 69 GPIO_ACTIVE_LOW>;
+		vcn18-supply = <&mt6357_vsim2_reg>;
+		vcn33-supply = <&mt6357_vibr_reg>;
+		vrf12-supply = <&mt6357_vrf12_reg>;
+
+		ports {
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			port@0 {
+				reg = <0>;
+				it66121_in: endpoint {
+					bus-width = <12>;
+					remote-endpoint = <&dpi_out>;
+				};
+			};
+
+			port@1 {
+				reg = <1>;
+				hdmi_connector_out: endpoint {
+					remote-endpoint = <&hdmi_connector_in>;
+				};
+			};
+		};
+	};
+};
+
 &mmc0 {
 	pinctrl-names = "default", "state_uhs";
 	pinctrl-0 = <&mmc0_default_pins>;
@@ -150,12 +259,60 @@ &mt6357_vmc_reg {
 	regulator-always-on;
 };
 
+&mt6357_vsim1_reg {
+	regulator-min-microvolt = <1800000>;
+	regulator-max-microvolt = <1800000>;
+};
+
 /* Needed by ethernet */
 &mt6357_vsim2_reg {
 	regulator-always-on;
 };
 
 &pio {
+	dpi_default_pins: dpi-default-pins {
+		pins {
+			pinmux = <MT8365_PIN_0_GPIO0__FUNC_DPI_D0>,
+				 <MT8365_PIN_1_GPIO1__FUNC_DPI_D1>,
+				 <MT8365_PIN_2_GPIO2__FUNC_DPI_D2>,
+				 <MT8365_PIN_3_GPIO3__FUNC_DPI_D3>,
+				 <MT8365_PIN_4_GPIO4__FUNC_DPI_D4>,
+				 <MT8365_PIN_5_GPIO5__FUNC_DPI_D5>,
+				 <MT8365_PIN_6_GPIO6__FUNC_DPI_D6>,
+				 <MT8365_PIN_7_GPIO7__FUNC_DPI_D7>,
+				 <MT8365_PIN_8_GPIO8__FUNC_DPI_D8>,
+				 <MT8365_PIN_9_GPIO9__FUNC_DPI_D9>,
+				 <MT8365_PIN_10_GPIO10__FUNC_DPI_D10>,
+				 <MT8365_PIN_11_GPIO11__FUNC_DPI_D11>,
+				 <MT8365_PIN_12_GPIO12__FUNC_DPI_DE>,
+				 <MT8365_PIN_13_GPIO13__FUNC_DPI_VSYNC>,
+				 <MT8365_PIN_14_GPIO14__FUNC_DPI_CK>,
+				 <MT8365_PIN_15_GPIO15__FUNC_DPI_HSYNC>;
+			drive-strength = <MTK_DRIVE_4mA>;
+		};
+	};
+
+	dpi_idle_pins: dpi-idle-pins {
+		pins {
+			pinmux = <MT8365_PIN_0_GPIO0__FUNC_GPIO0>,
+				 <MT8365_PIN_1_GPIO1__FUNC_GPIO1>,
+				 <MT8365_PIN_2_GPIO2__FUNC_GPIO2>,
+				 <MT8365_PIN_3_GPIO3__FUNC_GPIO3>,
+				 <MT8365_PIN_4_GPIO4__FUNC_GPIO4>,
+				 <MT8365_PIN_5_GPIO5__FUNC_GPIO5>,
+				 <MT8365_PIN_6_GPIO6__FUNC_GPIO6>,
+				 <MT8365_PIN_7_GPIO7__FUNC_GPIO7>,
+				 <MT8365_PIN_8_GPIO8__FUNC_GPIO8>,
+				 <MT8365_PIN_9_GPIO9__FUNC_GPIO9>,
+				 <MT8365_PIN_10_GPIO10__FUNC_GPIO10>,
+				 <MT8365_PIN_11_GPIO11__FUNC_GPIO11>,
+				 <MT8365_PIN_12_GPIO12__FUNC_GPIO12>,
+				 <MT8365_PIN_13_GPIO13__FUNC_GPIO13>,
+				 <MT8365_PIN_14_GPIO14__FUNC_GPIO14>,
+				 <MT8365_PIN_15_GPIO15__FUNC_GPIO15>;
+		};
+	};
+
 	gpio_keys: gpio-keys-pins {
 		pins {
 			pinmux = <MT8365_PIN_24_KPCOL0__FUNC_KPCOL0>;
@@ -174,6 +331,36 @@ pins_i2c {
 		};
 	};
 
+	i2c1_pins: i2c1 {
+		pins_i2c {
+			pinmux = <MT8365_PIN_59_SDA1__FUNC_SDA1_0>,
+				 <MT8365_PIN_60_SCL1__FUNC_SCL1_0>;
+			mediatek,pull-up-adv = <3>;
+			mediatek,drive-strength-adv = <00>;
+			bias-pull-up;
+		};
+	};
+
+	ite_pins: ite-pins {
+
+		irq_ite_pins {
+			pinmux = <MT8365_PIN_68_CMDAT0__FUNC_GPIO68>;
+			input-enable;
+			bias-pull-up;
+		};
+
+		pwr_pins {
+			pinmux = <MT8365_PIN_70_CMDAT2__FUNC_GPIO70>,
+				 <MT8365_PIN_71_CMDAT3__FUNC_GPIO71>;
+			output-high;
+		};
+
+		rst_ite_pins {
+			pinmux = <MT8365_PIN_69_CMDAT1__FUNC_GPIO69>;
+			output-high;
+		};
+	};
+
 	mmc0_default_pins: mmc0-default-pins {
 		clk-pins {
 			pinmux = <MT8365_PIN_99_MSDC0_CLK__FUNC_MSDC0_CLK>;
@@ -315,6 +502,23 @@ usb1-vbus-pins {
 		};
 	};
 
+	default_panel_pins: default-panel-pins {
+		dcdc-pins {
+			pinmux = <MT8365_PIN_67_CMPCLK__FUNC_GPIO67>;
+			output-low;
+		};
+
+		en-pins {
+			pinmux = <MT8365_PIN_129_TDM_TX_BCK__FUNC_GPIO129>;
+			output-low;
+		};
+
+		rst-pins {
+			pinmux = <MT8365_PIN_20_LCM_RST__FUNC_GPIO20>;
+			output-high;
+		};
+	};
+
 	pwm_pins: pwm-pins {
 		pins {
 			pinmux = <MT8365_PIN_19_DISP_PWM__FUNC_PWM_A>,

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 18/21] drm/mediatek: dsi: Improves the DSI lane setup robustness
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:23   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

Currently, mtk_dsi_lane_ready (which setup the DSI lane) is triggered
before mtk_dsi_poweron. lanes_ready flag toggle to true during
mtk_dsi_lane_ready function, and the DSI module is set up during
mtk_dsi_poweron.

Later, during panel driver init, mtk_dsi_lane_ready is triggered but does
nothing because lanes are considered ready. Unfortunately, when the panel
driver try to communicate, the DSI returns a timeout.

The solution found here is to put lanes_ready flag to false after the DSI
module setup into mtk_dsi_poweron to init the DSI lanes after the power /
setup of the DSI module.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 drivers/gpu/drm/mediatek/mtk_dsi.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c
index 3b7d13028fb6..35c36cc05c04 100644
--- a/drivers/gpu/drm/mediatek/mtk_dsi.c
+++ b/drivers/gpu/drm/mediatek/mtk_dsi.c
@@ -667,6 +667,8 @@ static int mtk_dsi_poweron(struct mtk_dsi *dsi)
 	mtk_dsi_config_vdo_timing(dsi);
 	mtk_dsi_set_interrupt_enable(dsi);
 
+	dsi->lanes_ready = false;
+
 	return 0;
 err_disable_engine_clk:
 	clk_disable_unprepare(dsi->engine_clk);

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 18/21] drm/mediatek: dsi: Improves the DSI lane setup robustness
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Currently, mtk_dsi_lane_ready (which setup the DSI lane) is triggered
before mtk_dsi_poweron. lanes_ready flag toggle to true during
mtk_dsi_lane_ready function, and the DSI module is set up during
mtk_dsi_poweron.

Later, during panel driver init, mtk_dsi_lane_ready is triggered but does
nothing because lanes are considered ready. Unfortunately, when the panel
driver try to communicate, the DSI returns a timeout.

The solution found here is to put lanes_ready flag to false after the DSI
module setup into mtk_dsi_poweron to init the DSI lanes after the power /
setup of the DSI module.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 drivers/gpu/drm/mediatek/mtk_dsi.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c
index 3b7d13028fb6..35c36cc05c04 100644
--- a/drivers/gpu/drm/mediatek/mtk_dsi.c
+++ b/drivers/gpu/drm/mediatek/mtk_dsi.c
@@ -667,6 +667,8 @@ static int mtk_dsi_poweron(struct mtk_dsi *dsi)
 	mtk_dsi_config_vdo_timing(dsi);
 	mtk_dsi_set_interrupt_enable(dsi);
 
+	dsi->lanes_ready = false;
+
 	return 0;
 err_disable_engine_clk:
 	clk_disable_unprepare(dsi->engine_clk);

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 18/21] drm/mediatek: dsi: Improves the DSI lane setup robustness
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

Currently, mtk_dsi_lane_ready (which setup the DSI lane) is triggered
before mtk_dsi_poweron. lanes_ready flag toggle to true during
mtk_dsi_lane_ready function, and the DSI module is set up during
mtk_dsi_poweron.

Later, during panel driver init, mtk_dsi_lane_ready is triggered but does
nothing because lanes are considered ready. Unfortunately, when the panel
driver try to communicate, the DSI returns a timeout.

The solution found here is to put lanes_ready flag to false after the DSI
module setup into mtk_dsi_poweron to init the DSI lanes after the power /
setup of the DSI module.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 drivers/gpu/drm/mediatek/mtk_dsi.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c
index 3b7d13028fb6..35c36cc05c04 100644
--- a/drivers/gpu/drm/mediatek/mtk_dsi.c
+++ b/drivers/gpu/drm/mediatek/mtk_dsi.c
@@ -667,6 +667,8 @@ static int mtk_dsi_poweron(struct mtk_dsi *dsi)
 	mtk_dsi_config_vdo_timing(dsi);
 	mtk_dsi_set_interrupt_enable(dsi);
 
+	dsi->lanes_ready = false;
+
 	return 0;
 err_disable_engine_clk:
 	clk_disable_unprepare(dsi->engine_clk);

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 19/21] drm/mediatek: dpi: add support for dpi clock
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:23   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

From: Fabien Parent <fparent@baylibre.com>

MT8365 requires an additional clock for DPI. Add support for that
additional clock.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 drivers/gpu/drm/mediatek/mtk_dpi.c | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c
index 4317595a15d1..474c6e5bbf04 100644
--- a/drivers/gpu/drm/mediatek/mtk_dpi.c
+++ b/drivers/gpu/drm/mediatek/mtk_dpi.c
@@ -68,6 +68,7 @@ struct mtk_dpi {
 	struct device *dev;
 	struct clk *engine_clk;
 	struct clk *pixel_clk;
+	struct clk *dpi_clk;
 	struct clk *tvd_clk;
 	int irq;
 	struct drm_display_mode mode;
@@ -464,6 +465,7 @@ static void mtk_dpi_power_off(struct mtk_dpi *dpi)
 	mtk_dpi_disable(dpi);
 	clk_disable_unprepare(dpi->pixel_clk);
 	clk_disable_unprepare(dpi->engine_clk);
+	clk_disable_unprepare(dpi->dpi_clk);
 }
 
 static int mtk_dpi_power_on(struct mtk_dpi *dpi)
@@ -473,10 +475,16 @@ static int mtk_dpi_power_on(struct mtk_dpi *dpi)
 	if (++dpi->refcount != 1)
 		return 0;
 
+	ret = clk_prepare_enable(dpi->dpi_clk);
+	if (ret) {
+		dev_err(dpi->dev, "failed to enable dpi clock: %d\n", ret);
+		goto err_refcount;
+	}
+
 	ret = clk_prepare_enable(dpi->engine_clk);
 	if (ret) {
 		dev_err(dpi->dev, "Failed to enable engine clock: %d\n", ret);
-		goto err_refcount;
+		goto err_engine;
 	}
 
 	ret = clk_prepare_enable(dpi->pixel_clk);
@@ -489,6 +497,8 @@ static int mtk_dpi_power_on(struct mtk_dpi *dpi)
 
 err_pixel:
 	clk_disable_unprepare(dpi->engine_clk);
+err_engine:
+	clk_disable_unprepare(dpi->dpi_clk);
 err_refcount:
 	dpi->refcount--;
 	return ret;
@@ -1044,6 +1054,12 @@ static int mtk_dpi_probe(struct platform_device *pdev)
 		return ret;
 	}
 
+	dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");
+	if (IS_ERR(dpi->dpi_clk)) {
+		return dev_err_probe(dev, ret, "Failed to get dpi clock: %p\n",
+				     dpi->dpi_clk);
+	}
+
 	dpi->irq = platform_get_irq(pdev, 0);
 	if (dpi->irq <= 0)
 		return -EINVAL;

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 19/21] drm/mediatek: dpi: add support for dpi clock
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

From: Fabien Parent <fparent@baylibre.com>

MT8365 requires an additional clock for DPI. Add support for that
additional clock.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 drivers/gpu/drm/mediatek/mtk_dpi.c | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c
index 4317595a15d1..474c6e5bbf04 100644
--- a/drivers/gpu/drm/mediatek/mtk_dpi.c
+++ b/drivers/gpu/drm/mediatek/mtk_dpi.c
@@ -68,6 +68,7 @@ struct mtk_dpi {
 	struct device *dev;
 	struct clk *engine_clk;
 	struct clk *pixel_clk;
+	struct clk *dpi_clk;
 	struct clk *tvd_clk;
 	int irq;
 	struct drm_display_mode mode;
@@ -464,6 +465,7 @@ static void mtk_dpi_power_off(struct mtk_dpi *dpi)
 	mtk_dpi_disable(dpi);
 	clk_disable_unprepare(dpi->pixel_clk);
 	clk_disable_unprepare(dpi->engine_clk);
+	clk_disable_unprepare(dpi->dpi_clk);
 }
 
 static int mtk_dpi_power_on(struct mtk_dpi *dpi)
@@ -473,10 +475,16 @@ static int mtk_dpi_power_on(struct mtk_dpi *dpi)
 	if (++dpi->refcount != 1)
 		return 0;
 
+	ret = clk_prepare_enable(dpi->dpi_clk);
+	if (ret) {
+		dev_err(dpi->dev, "failed to enable dpi clock: %d\n", ret);
+		goto err_refcount;
+	}
+
 	ret = clk_prepare_enable(dpi->engine_clk);
 	if (ret) {
 		dev_err(dpi->dev, "Failed to enable engine clock: %d\n", ret);
-		goto err_refcount;
+		goto err_engine;
 	}
 
 	ret = clk_prepare_enable(dpi->pixel_clk);
@@ -489,6 +497,8 @@ static int mtk_dpi_power_on(struct mtk_dpi *dpi)
 
 err_pixel:
 	clk_disable_unprepare(dpi->engine_clk);
+err_engine:
+	clk_disable_unprepare(dpi->dpi_clk);
 err_refcount:
 	dpi->refcount--;
 	return ret;
@@ -1044,6 +1054,12 @@ static int mtk_dpi_probe(struct platform_device *pdev)
 		return ret;
 	}
 
+	dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");
+	if (IS_ERR(dpi->dpi_clk)) {
+		return dev_err_probe(dev, ret, "Failed to get dpi clock: %p\n",
+				     dpi->dpi_clk);
+	}
+
 	dpi->irq = platform_get_irq(pdev, 0);
 	if (dpi->irq <= 0)
 		return -EINVAL;

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 19/21] drm/mediatek: dpi: add support for dpi clock
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

From: Fabien Parent <fparent@baylibre.com>

MT8365 requires an additional clock for DPI. Add support for that
additional clock.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 drivers/gpu/drm/mediatek/mtk_dpi.c | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c
index 4317595a15d1..474c6e5bbf04 100644
--- a/drivers/gpu/drm/mediatek/mtk_dpi.c
+++ b/drivers/gpu/drm/mediatek/mtk_dpi.c
@@ -68,6 +68,7 @@ struct mtk_dpi {
 	struct device *dev;
 	struct clk *engine_clk;
 	struct clk *pixel_clk;
+	struct clk *dpi_clk;
 	struct clk *tvd_clk;
 	int irq;
 	struct drm_display_mode mode;
@@ -464,6 +465,7 @@ static void mtk_dpi_power_off(struct mtk_dpi *dpi)
 	mtk_dpi_disable(dpi);
 	clk_disable_unprepare(dpi->pixel_clk);
 	clk_disable_unprepare(dpi->engine_clk);
+	clk_disable_unprepare(dpi->dpi_clk);
 }
 
 static int mtk_dpi_power_on(struct mtk_dpi *dpi)
@@ -473,10 +475,16 @@ static int mtk_dpi_power_on(struct mtk_dpi *dpi)
 	if (++dpi->refcount != 1)
 		return 0;
 
+	ret = clk_prepare_enable(dpi->dpi_clk);
+	if (ret) {
+		dev_err(dpi->dev, "failed to enable dpi clock: %d\n", ret);
+		goto err_refcount;
+	}
+
 	ret = clk_prepare_enable(dpi->engine_clk);
 	if (ret) {
 		dev_err(dpi->dev, "Failed to enable engine clock: %d\n", ret);
-		goto err_refcount;
+		goto err_engine;
 	}
 
 	ret = clk_prepare_enable(dpi->pixel_clk);
@@ -489,6 +497,8 @@ static int mtk_dpi_power_on(struct mtk_dpi *dpi)
 
 err_pixel:
 	clk_disable_unprepare(dpi->engine_clk);
+err_engine:
+	clk_disable_unprepare(dpi->dpi_clk);
 err_refcount:
 	dpi->refcount--;
 	return ret;
@@ -1044,6 +1054,12 @@ static int mtk_dpi_probe(struct platform_device *pdev)
 		return ret;
 	}
 
+	dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");
+	if (IS_ERR(dpi->dpi_clk)) {
+		return dev_err_probe(dev, ret, "Failed to get dpi clock: %p\n",
+				     dpi->dpi_clk);
+	}
+
 	dpi->irq = platform_get_irq(pdev, 0);
 	if (dpi->irq <= 0)
 		return -EINVAL;

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 20/21] drm/mediatek: add MT8365 SoC support
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:23   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

From: Fabien Parent <fparent@baylibre.com>

Add DRM support for MT8365 SoC.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 drivers/gpu/drm/mediatek/mtk_drm_drv.c | 35 ++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
index cd5b18ef7951..b905f38d5660 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
@@ -210,6 +210,22 @@ static const enum mtk_ddp_comp_id mt8195_mtk_ddp_main[] = {
 	DDP_COMPONENT_DP_INTF0,
 };
 
+static const enum mtk_ddp_comp_id mt8365_mtk_ddp_main[] = {
+	DDP_COMPONENT_OVL0,
+	DDP_COMPONENT_RDMA0,
+	DDP_COMPONENT_COLOR0,
+	DDP_COMPONENT_CCORR,
+	DDP_COMPONENT_AAL0,
+	DDP_COMPONENT_GAMMA,
+	DDP_COMPONENT_DITHER0,
+	DDP_COMPONENT_DSI0,
+};
+
+static const enum mtk_ddp_comp_id mt8365_mtk_ddp_ext[] = {
+	DDP_COMPONENT_RDMA1,
+	DDP_COMPONENT_DPI0,
+};
+
 static const struct mtk_mmsys_driver_data mt2701_mmsys_driver_data = {
 	.main_path = mt2701_mtk_ddp_main,
 	.main_len = ARRAY_SIZE(mt2701_mtk_ddp_main),
@@ -342,6 +358,21 @@ static const struct mtk_mmsys_match_data mt8195_mmsys_match_data = {
 	},
 };
 
+static const struct mtk_mmsys_driver_data mt8365_mmsys_driver_data = {
+	.main_path = mt8365_mtk_ddp_main,
+	.main_len = ARRAY_SIZE(mt8365_mtk_ddp_main),
+	.ext_path = mt8365_mtk_ddp_ext,
+	.ext_len = ARRAY_SIZE(mt8365_mtk_ddp_ext),
+};
+
+static const struct mtk_mmsys_match_data mt8365_mmsys_match_data = {
+	.num_drv_data = 1,
+	.drv_data = {
+		&mt8365_mmsys_driver_data,
+	},
+};
+
+
 static int mtk_drm_kms_init(struct drm_device *drm)
 {
 	struct mtk_drm_private *private = drm->dev_private;
@@ -591,6 +622,8 @@ static const struct of_device_id mtk_ddp_comp_dt_ids[] = {
 	  .data = (void *)MTK_DISP_MUTEX },
 	{ .compatible = "mediatek,mt8195-disp-mutex",
 	  .data = (void *)MTK_DISP_MUTEX },
+	{ .compatible = "mediatek,mt8365-disp-mutex",
+	  .data = (void *)MTK_DISP_MUTEX },
 	{ .compatible = "mediatek,mt8173-disp-od",
 	  .data = (void *)MTK_DISP_OD },
 	{ .compatible = "mediatek,mt2701-disp-ovl",
@@ -673,6 +706,8 @@ static const struct of_device_id mtk_drm_of_ids[] = {
 	  .data = &mt8192_mmsys_match_data},
 	{ .compatible = "mediatek,mt8195-mmsys",
 	  .data = &mt8195_mmsys_match_data},
+	{ .compatible = "mediatek,mt8365-mmsys",
+	  .data = &mt8365_mmsys_match_data},
 	{ }
 };
 MODULE_DEVICE_TABLE(of, mtk_drm_of_ids);

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 20/21] drm/mediatek: add MT8365 SoC support
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

From: Fabien Parent <fparent@baylibre.com>

Add DRM support for MT8365 SoC.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 drivers/gpu/drm/mediatek/mtk_drm_drv.c | 35 ++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
index cd5b18ef7951..b905f38d5660 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
@@ -210,6 +210,22 @@ static const enum mtk_ddp_comp_id mt8195_mtk_ddp_main[] = {
 	DDP_COMPONENT_DP_INTF0,
 };
 
+static const enum mtk_ddp_comp_id mt8365_mtk_ddp_main[] = {
+	DDP_COMPONENT_OVL0,
+	DDP_COMPONENT_RDMA0,
+	DDP_COMPONENT_COLOR0,
+	DDP_COMPONENT_CCORR,
+	DDP_COMPONENT_AAL0,
+	DDP_COMPONENT_GAMMA,
+	DDP_COMPONENT_DITHER0,
+	DDP_COMPONENT_DSI0,
+};
+
+static const enum mtk_ddp_comp_id mt8365_mtk_ddp_ext[] = {
+	DDP_COMPONENT_RDMA1,
+	DDP_COMPONENT_DPI0,
+};
+
 static const struct mtk_mmsys_driver_data mt2701_mmsys_driver_data = {
 	.main_path = mt2701_mtk_ddp_main,
 	.main_len = ARRAY_SIZE(mt2701_mtk_ddp_main),
@@ -342,6 +358,21 @@ static const struct mtk_mmsys_match_data mt8195_mmsys_match_data = {
 	},
 };
 
+static const struct mtk_mmsys_driver_data mt8365_mmsys_driver_data = {
+	.main_path = mt8365_mtk_ddp_main,
+	.main_len = ARRAY_SIZE(mt8365_mtk_ddp_main),
+	.ext_path = mt8365_mtk_ddp_ext,
+	.ext_len = ARRAY_SIZE(mt8365_mtk_ddp_ext),
+};
+
+static const struct mtk_mmsys_match_data mt8365_mmsys_match_data = {
+	.num_drv_data = 1,
+	.drv_data = {
+		&mt8365_mmsys_driver_data,
+	},
+};
+
+
 static int mtk_drm_kms_init(struct drm_device *drm)
 {
 	struct mtk_drm_private *private = drm->dev_private;
@@ -591,6 +622,8 @@ static const struct of_device_id mtk_ddp_comp_dt_ids[] = {
 	  .data = (void *)MTK_DISP_MUTEX },
 	{ .compatible = "mediatek,mt8195-disp-mutex",
 	  .data = (void *)MTK_DISP_MUTEX },
+	{ .compatible = "mediatek,mt8365-disp-mutex",
+	  .data = (void *)MTK_DISP_MUTEX },
 	{ .compatible = "mediatek,mt8173-disp-od",
 	  .data = (void *)MTK_DISP_OD },
 	{ .compatible = "mediatek,mt2701-disp-ovl",
@@ -673,6 +706,8 @@ static const struct of_device_id mtk_drm_of_ids[] = {
 	  .data = &mt8192_mmsys_match_data},
 	{ .compatible = "mediatek,mt8195-mmsys",
 	  .data = &mt8195_mmsys_match_data},
+	{ .compatible = "mediatek,mt8365-mmsys",
+	  .data = &mt8365_mmsys_match_data},
 	{ }
 };
 MODULE_DEVICE_TABLE(of, mtk_drm_of_ids);

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 20/21] drm/mediatek: add MT8365 SoC support
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

From: Fabien Parent <fparent@baylibre.com>

Add DRM support for MT8365 SoC.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 drivers/gpu/drm/mediatek/mtk_drm_drv.c | 35 ++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
index cd5b18ef7951..b905f38d5660 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
@@ -210,6 +210,22 @@ static const enum mtk_ddp_comp_id mt8195_mtk_ddp_main[] = {
 	DDP_COMPONENT_DP_INTF0,
 };
 
+static const enum mtk_ddp_comp_id mt8365_mtk_ddp_main[] = {
+	DDP_COMPONENT_OVL0,
+	DDP_COMPONENT_RDMA0,
+	DDP_COMPONENT_COLOR0,
+	DDP_COMPONENT_CCORR,
+	DDP_COMPONENT_AAL0,
+	DDP_COMPONENT_GAMMA,
+	DDP_COMPONENT_DITHER0,
+	DDP_COMPONENT_DSI0,
+};
+
+static const enum mtk_ddp_comp_id mt8365_mtk_ddp_ext[] = {
+	DDP_COMPONENT_RDMA1,
+	DDP_COMPONENT_DPI0,
+};
+
 static const struct mtk_mmsys_driver_data mt2701_mmsys_driver_data = {
 	.main_path = mt2701_mtk_ddp_main,
 	.main_len = ARRAY_SIZE(mt2701_mtk_ddp_main),
@@ -342,6 +358,21 @@ static const struct mtk_mmsys_match_data mt8195_mmsys_match_data = {
 	},
 };
 
+static const struct mtk_mmsys_driver_data mt8365_mmsys_driver_data = {
+	.main_path = mt8365_mtk_ddp_main,
+	.main_len = ARRAY_SIZE(mt8365_mtk_ddp_main),
+	.ext_path = mt8365_mtk_ddp_ext,
+	.ext_len = ARRAY_SIZE(mt8365_mtk_ddp_ext),
+};
+
+static const struct mtk_mmsys_match_data mt8365_mmsys_match_data = {
+	.num_drv_data = 1,
+	.drv_data = {
+		&mt8365_mmsys_driver_data,
+	},
+};
+
+
 static int mtk_drm_kms_init(struct drm_device *drm)
 {
 	struct mtk_drm_private *private = drm->dev_private;
@@ -591,6 +622,8 @@ static const struct of_device_id mtk_ddp_comp_dt_ids[] = {
 	  .data = (void *)MTK_DISP_MUTEX },
 	{ .compatible = "mediatek,mt8195-disp-mutex",
 	  .data = (void *)MTK_DISP_MUTEX },
+	{ .compatible = "mediatek,mt8365-disp-mutex",
+	  .data = (void *)MTK_DISP_MUTEX },
 	{ .compatible = "mediatek,mt8173-disp-od",
 	  .data = (void *)MTK_DISP_OD },
 	{ .compatible = "mediatek,mt2701-disp-ovl",
@@ -673,6 +706,8 @@ static const struct of_device_id mtk_drm_of_ids[] = {
 	  .data = &mt8192_mmsys_match_data},
 	{ .compatible = "mediatek,mt8195-mmsys",
 	  .data = &mt8195_mmsys_match_data},
+	{ .compatible = "mediatek,mt8365-mmsys",
+	  .data = &mt8365_mmsys_match_data},
 	{ }
 };
 MODULE_DEVICE_TABLE(of, mtk_drm_of_ids);

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 21/21] panel: startek-kd070fhfid015: add support of this display
  2023-03-09 14:22 ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:23   ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, Alexandre Mergnat, linux-kernel, dri-devel,
	linux-pwm, Fabien Parent, devicetree, linux-mediatek,
	Guillaume La Roque, linux-arm-kernel

From: Guillaume La Roque <glaroque@baylibre.com>

This driver support the Startek KD070FHFID015, which is a 7-inch TFT LCD
display using MIPI DSI interface.

Signed-off-by: Guillaume La Roque <glaroque@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 drivers/gpu/drm/panel/Kconfig                      |  12 +
 drivers/gpu/drm/panel/Makefile                     |   1 +
 .../gpu/drm/panel/panel-startek-kd070fhfid015.c    | 483 +++++++++++++++++++++
 3 files changed, 496 insertions(+)

diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig
index 737edcdf9eef..3fccf025013b 100644
--- a/drivers/gpu/drm/panel/Kconfig
+++ b/drivers/gpu/drm/panel/Kconfig
@@ -666,6 +666,17 @@ config DRM_PANEL_SONY_TULIP_TRULY_NT35521
 	  NT35521 1280x720 video mode panel as found on Sony Xperia M4
 	  Aqua phone.
 
+config DRM_PANEL_STARTEK_KD070FHFID015
+	tristate "STARTEK KD070FHFID015 panel"
+	depends on OF
+	depends on DRM_MIPI_DSI
+	depends on BACKLIGHT_CLASS_DEVICE
+	help
+	  Say Y here if you want to enable support for STARTEK KD070FHFID015 DSI panel
+	  based on RENESAS-R69429 controller. The pannel is a 7-inch TFT LCD display
+	  with a resolution of 1024 x 600 pixels. It provides a MIPI DSI interface to
+	  the host, a built-in LED backlight and touch controller.
+
 config DRM_PANEL_TDO_TL070WSH30
 	tristate "TDO TL070WSH30 DSI panel"
 	depends on OF
@@ -736,4 +747,5 @@ config DRM_PANEL_XINPENG_XPP055C272
 	  Say Y here if you want to enable support for the Xinpeng
 	  XPP055C272 controller for 720x1280 LCD panels with MIPI/RGB/SPI
 	  system interfaces.
+
 endmenu
diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile
index f8f9d9f6a307..35771fc51187 100644
--- a/drivers/gpu/drm/panel/Makefile
+++ b/drivers/gpu/drm/panel/Makefile
@@ -67,6 +67,7 @@ obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7703) += panel-sitronix-st7703.o
 obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7789V) += panel-sitronix-st7789v.o
 obj-$(CONFIG_DRM_PANEL_SONY_ACX565AKM) += panel-sony-acx565akm.o
 obj-$(CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521) += panel-sony-tulip-truly-nt35521.o
+obj-$(CONFIG_DRM_PANEL_STARTEK_KD070FHFID015) += panel-startek-kd070fhfid015.o
 obj-$(CONFIG_DRM_PANEL_TDO_TL070WSH30) += panel-tdo-tl070wsh30.o
 obj-$(CONFIG_DRM_PANEL_TPO_TD028TTEC1) += panel-tpo-td028ttec1.o
 obj-$(CONFIG_DRM_PANEL_TPO_TD043MTEA1) += panel-tpo-td043mtea1.o
diff --git a/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c b/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c
new file mode 100644
index 000000000000..88466bf6428d
--- /dev/null
+++ b/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c
@@ -0,0 +1,483 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2016 InforceComputing
+ * Copyright (C) 2016 Linaro Ltd
+ * Copyright (C) 2023 BayLibre, SAS
+ *
+ * Author:
+ * - Vinay Simha BN <simhavcs@gmail.com>
+ * - Sumit Semwal <sumit.semwal@linaro.org>
+ * - Guillaume La Roque <glaroque@baylibre.com>
+ *
+ */
+
+#include <linux/backlight.h>
+#include <linux/delay.h>
+#include <linux/gpio/consumer.h>
+#include <linux/module.h>
+#include <linux/of.h>
+#include <linux/regulator/consumer.h>
+
+#include <video/mipi_display.h>
+
+#include <drm/drm_crtc.h>
+#include <drm/drm_mipi_dsi.h>
+#include <drm/drm_modes.h>
+#include <drm/drm_panel.h>
+
+#define DSI_REG_MCAP	0xB0
+#define DSI_REG_IS	0xB3 /* Interface Setting */
+#define DSI_REG_IIS	0xB4 /* Interface ID Setting */
+#define DSI_REG_CTRL	0xB6
+
+struct stk_panel {
+	struct drm_panel base;
+	struct mipi_dsi_device *dsi;
+
+	struct gpio_desc *enable_gpio;
+	struct gpio_desc *reset_gpio;
+	struct gpio_desc *dcdc_en_gpio;
+	struct backlight_device *backlight;
+	struct regulator *iovcc_supply;
+	struct regulator *power_supply;
+
+	bool prepared;
+	bool enabled;
+
+	const struct drm_display_mode *mode;
+};
+
+static inline struct stk_panel *to_stk_panel(struct drm_panel *panel)
+{
+	return container_of(panel, struct stk_panel, base);
+}
+
+static int stk_panel_init(struct stk_panel *stk)
+{
+	struct mipi_dsi_device *dsi = stk->dsi;
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	ret = mipi_dsi_dcs_soft_reset(dsi);
+	if (ret < 0) {
+		dev_err(dev, "failed to mipi_dsi_dcs_soft_reset: %d\n", ret);
+		return ret;
+	}
+	mdelay(5);
+
+	ret = mipi_dsi_dcs_exit_sleep_mode(dsi);
+	if (ret < 0) {
+		dev_err(dev, "failed to set exit sleep mode: %d\n", ret);
+		return ret;
+	}
+	msleep(120);
+
+	ret = mipi_dsi_generic_write(dsi, (u8[]){DSI_REG_MCAP, 0x04}, 2);
+	if (ret < 0) {
+		dev_err(dev, "failed to set mcap: %d\n", ret);
+		return ret;
+	}
+	/* Interface setting, video mode */
+	ret = mipi_dsi_generic_write(dsi,
+			(u8[]){DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00}, 6);
+	if (ret < 0) {
+		dev_err(dev, "failed to set display interface setting: %d\n",
+			ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_generic_write(dsi, (u8[]){DSI_REG_IIS, 0x0C, 0x00}, 3);
+	if (ret < 0) {
+		dev_err(dev, "failed to set Interface ID setting: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_generic_write(dsi, (u8[]){ DSI_REG_CTRL, 0x3A, 0xD3}, 3);
+	if (ret < 0) {
+		dev_err(dev, "failed to set DSI control: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_set_display_brightness(dsi, 0x77);
+	if (ret < 0) {
+		dev_err(dev, "failed to write display brightness: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_write(dsi, MIPI_DCS_WRITE_CONTROL_DISPLAY,
+				 (u8[]){ MIPI_DCS_WRITE_MEMORY_START }, 1);
+	if (ret < 0) {
+		dev_err(dev, "failed to write control display: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_set_pixel_format(dsi, 0x77);
+	if (ret < 0) {
+		dev_err(dev, "failed to set pixel format: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_set_column_address(dsi, 0, stk->mode->hdisplay - 1);
+	if (ret < 0) {
+		dev_err(dev, "failed to set column address: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_set_page_address(dsi, 0, stk->mode->vdisplay - 1);
+	if (ret < 0) {
+		dev_err(dev, "failed to set page address: %d\n", ret);
+		return ret;
+	}
+
+	return 0;
+}
+
+static int stk_panel_on(struct stk_panel *stk)
+{
+	struct mipi_dsi_device *dsi = stk->dsi;
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	ret = mipi_dsi_dcs_set_display_on(dsi);
+	if (ret < 0)
+		dev_err(dev, "failed to set display on: %d\n", ret);
+
+	mdelay(20);
+
+	return ret;
+}
+
+static void stk_panel_off(struct stk_panel *stk)
+{
+	struct mipi_dsi_device *dsi = stk->dsi;
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
+
+	ret = mipi_dsi_dcs_set_display_off(dsi);
+	if (ret < 0)
+		dev_err(dev, "failed to set display off: %d\n", ret);
+
+	ret = mipi_dsi_dcs_enter_sleep_mode(dsi);
+	if (ret < 0)
+		dev_err(dev, "failed to enter sleep mode: %d\n", ret);
+
+	msleep(100);
+}
+
+static int stk_panel_disable(struct drm_panel *panel)
+{
+	struct stk_panel *stk = to_stk_panel(panel);
+
+	if (!stk->enabled)
+		return 0;
+
+	backlight_disable(stk->backlight);
+
+	stk->enabled = false;
+
+	return 0;
+}
+
+static int stk_panel_unprepare(struct drm_panel *panel)
+{
+	struct stk_panel *stk = to_stk_panel(panel);
+
+	if (!stk->prepared)
+		return 0;
+
+	stk_panel_off(stk);
+	regulator_disable(stk->iovcc_supply);
+	regulator_disable(stk->power_supply);
+	gpiod_set_value(stk->reset_gpio, 0);
+	gpiod_set_value(stk->dcdc_en_gpio, 1);
+
+	stk->prepared = false;
+
+	return 0;
+}
+
+static int stk_panel_prepare(struct drm_panel *panel)
+{
+	struct stk_panel *stk = to_stk_panel(panel);
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	if (stk->prepared)
+		return 0;
+
+	gpiod_set_value(stk->reset_gpio, 0);
+	gpiod_set_value(stk->dcdc_en_gpio, 0);
+	gpiod_set_value(stk->enable_gpio, 0);
+	ret = regulator_enable(stk->iovcc_supply);
+	if (ret < 0)
+		return ret;
+	mdelay(8);
+	ret = regulator_enable(stk->power_supply);
+	if (ret < 0)
+		goto iovccoff;
+	mdelay(20);
+	gpiod_set_value(stk->dcdc_en_gpio, 1);
+	mdelay(20);
+	gpiod_set_value(stk->reset_gpio, 1);
+	mdelay(10);
+
+	ret = stk_panel_init(stk);
+	if (ret < 0) {
+		dev_err(dev, "failed to init panel: %d\n", ret);
+		goto poweroff;
+	}
+
+	ret = stk_panel_on(stk);
+	if (ret < 0) {
+		dev_err(dev, "failed to set panel on: %d\n", ret);
+		goto poweroff;
+	}
+
+	stk->prepared = true;
+
+	return 0;
+
+poweroff:
+	regulator_disable(stk->power_supply);
+iovccoff:
+	regulator_disable(stk->iovcc_supply);
+	gpiod_set_value(stk->enable_gpio, 0);
+	gpiod_set_value(stk->reset_gpio, 0);
+	gpiod_set_value(stk->dcdc_en_gpio, 0);
+
+	return ret;
+}
+
+static int stk_panel_enable(struct drm_panel *panel)
+{
+	struct stk_panel *stk = to_stk_panel(panel);
+
+	if (stk->enabled)
+		return 0;
+
+	backlight_enable(stk->backlight);
+
+	stk->enabled = true;
+
+	return 0;
+}
+
+static const struct drm_display_mode default_mode = {
+		.clock = 163204,
+		.hdisplay = 1200,
+		.hsync_start = 1200 + 144,
+		.hsync_end = 1200 + 144 + 16,
+		.htotal = 1200 + 144 + 16 + 45, // 1405
+		.vdisplay = 1920,
+		.vsync_start = 1920 + 8,
+		.vsync_end = 1920 + 8 + 4,
+		.vtotal = 1920 + 8 + 4 + 4, // 1936
+};
+
+static int stk_panel_get_modes(struct drm_panel *panel,
+				 struct drm_connector *connector)
+{
+	struct drm_display_mode *mode;
+
+	mode = drm_mode_duplicate(connector->dev, &default_mode);
+	if (!mode) {
+		dev_err(panel->dev, "failed to add mode %ux%ux@%u\n",
+			default_mode.hdisplay, default_mode.vdisplay,
+			drm_mode_vrefresh(&default_mode));
+		return -ENOMEM;
+	}
+
+	drm_mode_set_name(mode);
+
+	drm_mode_probed_add(connector, mode);
+
+	connector->display_info.width_mm = 95;
+	connector->display_info.height_mm = 151;
+
+	return 1;
+}
+
+static int dsi_dcs_bl_get_brightness(struct backlight_device *bl)
+{
+	struct mipi_dsi_device *dsi = bl_get_data(bl);
+	int ret;
+	u16 brightness = bl->props.brightness;
+
+	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
+
+	ret = mipi_dsi_dcs_get_display_brightness(dsi, &brightness);
+	if (ret < 0)
+		return ret;
+	dsi->mode_flags |= MIPI_DSI_MODE_LPM;
+
+	return brightness & 0xff;
+}
+
+static int dsi_dcs_bl_update_status(struct backlight_device *bl)
+{
+	struct mipi_dsi_device *dsi = bl_get_data(bl);
+	struct device *dev = &dsi->dev;
+	int ret;
+
+	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
+
+	ret = mipi_dsi_dcs_set_display_brightness(dsi, bl->props.brightness);
+	if (ret < 0) {
+		dev_err(dev, "failed to set DSI control: %d\n", ret);
+		return ret;
+	}
+
+	dsi->mode_flags |= MIPI_DSI_MODE_LPM;
+
+	return 0;
+}
+
+static const struct backlight_ops dsi_bl_ops = {
+	.update_status = dsi_dcs_bl_update_status,
+	.get_brightness = dsi_dcs_bl_get_brightness,
+};
+
+static struct backlight_device *
+drm_panel_create_dsi_backlight(struct mipi_dsi_device *dsi)
+{
+	struct device *dev = &dsi->dev;
+	struct backlight_properties props;
+
+	memset(&props, 0, sizeof(props));
+	props.type = BACKLIGHT_RAW;
+	props.brightness = 255;
+	props.max_brightness = 255;
+
+	return devm_backlight_device_register(dev, dev_name(dev), dev, dsi,
+					      &dsi_bl_ops, &props);
+}
+
+static const struct drm_panel_funcs stk_panel_funcs = {
+	.disable = stk_panel_disable,
+	.unprepare = stk_panel_unprepare,
+	.prepare = stk_panel_prepare,
+	.enable = stk_panel_enable,
+	.get_modes = stk_panel_get_modes,
+};
+
+static const struct of_device_id stk_of_match[] = {
+	{ .compatible = "startek,kd070fhfid015", },
+	{ }
+};
+MODULE_DEVICE_TABLE(of, stk_of_match);
+
+static int stk_panel_add(struct stk_panel *stk)
+{
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	stk->mode = &default_mode;
+
+	stk->iovcc_supply = devm_regulator_get(dev, "iovcc");
+	if (IS_ERR(stk->iovcc_supply))
+		return PTR_ERR(stk->iovcc_supply);
+
+	stk->power_supply = devm_regulator_get(dev, "power");
+	if (IS_ERR(stk->power_supply))
+		return PTR_ERR(stk->power_supply);
+
+	stk->reset_gpio = devm_gpiod_get(dev, "reset", GPIOD_OUT_LOW);
+	if (IS_ERR(stk->reset_gpio)) {
+		ret = PTR_ERR(stk->reset_gpio);
+		dev_err(dev, "cannot get reset-gpios %d\n", ret);
+		return ret;
+	}
+
+	stk->dcdc_en_gpio = devm_gpiod_get(dev, "dcdc", GPIOD_OUT_LOW);
+	if (IS_ERR(stk->dcdc_en_gpio)) {
+		ret = PTR_ERR(stk->dcdc_en_gpio);
+		dev_err(dev, "cannot get dcdc-en-gpio %d\n", ret);
+		return ret;
+	}
+
+	stk->backlight = drm_panel_create_dsi_backlight(stk->dsi);
+	if (IS_ERR(stk->backlight)) {
+		ret = PTR_ERR(stk->backlight);
+		dev_err(dev, "failed to register backlight %d\n", ret);
+		return ret;
+	}
+
+	drm_panel_init(&stk->base, &stk->dsi->dev, &stk_panel_funcs,
+		       DRM_MODE_CONNECTOR_DSI);
+
+	drm_panel_add(&stk->base);
+
+	return 0;
+}
+
+static void stk_panel_del(struct stk_panel *stk)
+{
+	if (stk->base.dev)
+		drm_panel_remove(&stk->base);
+}
+
+static int stk_panel_probe(struct mipi_dsi_device *dsi)
+{
+	struct stk_panel *stk;
+	int ret;
+
+	dsi->lanes = 4;
+	dsi->format = MIPI_DSI_FMT_RGB888;
+	dsi->mode_flags = (MIPI_DSI_MODE_VIDEO |
+			   MIPI_DSI_MODE_LPM);
+
+	stk = devm_kzalloc(&dsi->dev, sizeof(*stk), GFP_KERNEL);
+	if (!stk)
+		return -ENOMEM;
+
+	mipi_dsi_set_drvdata(dsi, stk);
+
+	stk->dsi = dsi;
+
+	ret = stk_panel_add(stk);
+	if (ret < 0)
+		return ret;
+
+	return mipi_dsi_attach(dsi);
+}
+
+static void stk_panel_remove(struct mipi_dsi_device *dsi)
+{
+	struct stk_panel *stk = mipi_dsi_get_drvdata(dsi);
+	int err;
+
+	err = stk_panel_disable(&stk->base);
+	if (err < 0)
+		dev_err(&dsi->dev, "failed to disable panel: %d\n", err);
+
+	err = mipi_dsi_detach(dsi);
+	if (err < 0)
+		dev_err(&dsi->dev, "failed to detach from DSI host: %d\n",
+			err);
+
+	stk_panel_del(stk);
+}
+
+static void stk_panel_shutdown(struct mipi_dsi_device *dsi)
+{
+	struct stk_panel *stk = mipi_dsi_get_drvdata(dsi);
+
+	stk_panel_disable(&stk->base);
+}
+
+static struct mipi_dsi_driver stk_panel_driver = {
+	.driver = {
+		.name = "panel-startek-kd070fhfid015",
+		.of_match_table = stk_of_match,
+	},
+	.probe = stk_panel_probe,
+	.remove = stk_panel_remove,
+	.shutdown = stk_panel_shutdown,
+};
+module_mipi_dsi_driver(stk_panel_driver);
+
+MODULE_AUTHOR("Guillaume La Roque <glaroque@baylibre.com>");
+MODULE_DESCRIPTION("STARTEK KD070FHFID015");
+MODULE_LICENSE("GPL");

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 21/21] panel: startek-kd070fhfid015: add support of this display
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

From: Guillaume La Roque <glaroque@baylibre.com>

This driver support the Startek KD070FHFID015, which is a 7-inch TFT LCD
display using MIPI DSI interface.

Signed-off-by: Guillaume La Roque <glaroque@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 drivers/gpu/drm/panel/Kconfig                      |  12 +
 drivers/gpu/drm/panel/Makefile                     |   1 +
 .../gpu/drm/panel/panel-startek-kd070fhfid015.c    | 483 +++++++++++++++++++++
 3 files changed, 496 insertions(+)

diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig
index 737edcdf9eef..3fccf025013b 100644
--- a/drivers/gpu/drm/panel/Kconfig
+++ b/drivers/gpu/drm/panel/Kconfig
@@ -666,6 +666,17 @@ config DRM_PANEL_SONY_TULIP_TRULY_NT35521
 	  NT35521 1280x720 video mode panel as found on Sony Xperia M4
 	  Aqua phone.
 
+config DRM_PANEL_STARTEK_KD070FHFID015
+	tristate "STARTEK KD070FHFID015 panel"
+	depends on OF
+	depends on DRM_MIPI_DSI
+	depends on BACKLIGHT_CLASS_DEVICE
+	help
+	  Say Y here if you want to enable support for STARTEK KD070FHFID015 DSI panel
+	  based on RENESAS-R69429 controller. The pannel is a 7-inch TFT LCD display
+	  with a resolution of 1024 x 600 pixels. It provides a MIPI DSI interface to
+	  the host, a built-in LED backlight and touch controller.
+
 config DRM_PANEL_TDO_TL070WSH30
 	tristate "TDO TL070WSH30 DSI panel"
 	depends on OF
@@ -736,4 +747,5 @@ config DRM_PANEL_XINPENG_XPP055C272
 	  Say Y here if you want to enable support for the Xinpeng
 	  XPP055C272 controller for 720x1280 LCD panels with MIPI/RGB/SPI
 	  system interfaces.
+
 endmenu
diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile
index f8f9d9f6a307..35771fc51187 100644
--- a/drivers/gpu/drm/panel/Makefile
+++ b/drivers/gpu/drm/panel/Makefile
@@ -67,6 +67,7 @@ obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7703) += panel-sitronix-st7703.o
 obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7789V) += panel-sitronix-st7789v.o
 obj-$(CONFIG_DRM_PANEL_SONY_ACX565AKM) += panel-sony-acx565akm.o
 obj-$(CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521) += panel-sony-tulip-truly-nt35521.o
+obj-$(CONFIG_DRM_PANEL_STARTEK_KD070FHFID015) += panel-startek-kd070fhfid015.o
 obj-$(CONFIG_DRM_PANEL_TDO_TL070WSH30) += panel-tdo-tl070wsh30.o
 obj-$(CONFIG_DRM_PANEL_TPO_TD028TTEC1) += panel-tpo-td028ttec1.o
 obj-$(CONFIG_DRM_PANEL_TPO_TD043MTEA1) += panel-tpo-td043mtea1.o
diff --git a/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c b/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c
new file mode 100644
index 000000000000..88466bf6428d
--- /dev/null
+++ b/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c
@@ -0,0 +1,483 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2016 InforceComputing
+ * Copyright (C) 2016 Linaro Ltd
+ * Copyright (C) 2023 BayLibre, SAS
+ *
+ * Author:
+ * - Vinay Simha BN <simhavcs@gmail.com>
+ * - Sumit Semwal <sumit.semwal@linaro.org>
+ * - Guillaume La Roque <glaroque@baylibre.com>
+ *
+ */
+
+#include <linux/backlight.h>
+#include <linux/delay.h>
+#include <linux/gpio/consumer.h>
+#include <linux/module.h>
+#include <linux/of.h>
+#include <linux/regulator/consumer.h>
+
+#include <video/mipi_display.h>
+
+#include <drm/drm_crtc.h>
+#include <drm/drm_mipi_dsi.h>
+#include <drm/drm_modes.h>
+#include <drm/drm_panel.h>
+
+#define DSI_REG_MCAP	0xB0
+#define DSI_REG_IS	0xB3 /* Interface Setting */
+#define DSI_REG_IIS	0xB4 /* Interface ID Setting */
+#define DSI_REG_CTRL	0xB6
+
+struct stk_panel {
+	struct drm_panel base;
+	struct mipi_dsi_device *dsi;
+
+	struct gpio_desc *enable_gpio;
+	struct gpio_desc *reset_gpio;
+	struct gpio_desc *dcdc_en_gpio;
+	struct backlight_device *backlight;
+	struct regulator *iovcc_supply;
+	struct regulator *power_supply;
+
+	bool prepared;
+	bool enabled;
+
+	const struct drm_display_mode *mode;
+};
+
+static inline struct stk_panel *to_stk_panel(struct drm_panel *panel)
+{
+	return container_of(panel, struct stk_panel, base);
+}
+
+static int stk_panel_init(struct stk_panel *stk)
+{
+	struct mipi_dsi_device *dsi = stk->dsi;
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	ret = mipi_dsi_dcs_soft_reset(dsi);
+	if (ret < 0) {
+		dev_err(dev, "failed to mipi_dsi_dcs_soft_reset: %d\n", ret);
+		return ret;
+	}
+	mdelay(5);
+
+	ret = mipi_dsi_dcs_exit_sleep_mode(dsi);
+	if (ret < 0) {
+		dev_err(dev, "failed to set exit sleep mode: %d\n", ret);
+		return ret;
+	}
+	msleep(120);
+
+	ret = mipi_dsi_generic_write(dsi, (u8[]){DSI_REG_MCAP, 0x04}, 2);
+	if (ret < 0) {
+		dev_err(dev, "failed to set mcap: %d\n", ret);
+		return ret;
+	}
+	/* Interface setting, video mode */
+	ret = mipi_dsi_generic_write(dsi,
+			(u8[]){DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00}, 6);
+	if (ret < 0) {
+		dev_err(dev, "failed to set display interface setting: %d\n",
+			ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_generic_write(dsi, (u8[]){DSI_REG_IIS, 0x0C, 0x00}, 3);
+	if (ret < 0) {
+		dev_err(dev, "failed to set Interface ID setting: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_generic_write(dsi, (u8[]){ DSI_REG_CTRL, 0x3A, 0xD3}, 3);
+	if (ret < 0) {
+		dev_err(dev, "failed to set DSI control: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_set_display_brightness(dsi, 0x77);
+	if (ret < 0) {
+		dev_err(dev, "failed to write display brightness: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_write(dsi, MIPI_DCS_WRITE_CONTROL_DISPLAY,
+				 (u8[]){ MIPI_DCS_WRITE_MEMORY_START }, 1);
+	if (ret < 0) {
+		dev_err(dev, "failed to write control display: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_set_pixel_format(dsi, 0x77);
+	if (ret < 0) {
+		dev_err(dev, "failed to set pixel format: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_set_column_address(dsi, 0, stk->mode->hdisplay - 1);
+	if (ret < 0) {
+		dev_err(dev, "failed to set column address: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_set_page_address(dsi, 0, stk->mode->vdisplay - 1);
+	if (ret < 0) {
+		dev_err(dev, "failed to set page address: %d\n", ret);
+		return ret;
+	}
+
+	return 0;
+}
+
+static int stk_panel_on(struct stk_panel *stk)
+{
+	struct mipi_dsi_device *dsi = stk->dsi;
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	ret = mipi_dsi_dcs_set_display_on(dsi);
+	if (ret < 0)
+		dev_err(dev, "failed to set display on: %d\n", ret);
+
+	mdelay(20);
+
+	return ret;
+}
+
+static void stk_panel_off(struct stk_panel *stk)
+{
+	struct mipi_dsi_device *dsi = stk->dsi;
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
+
+	ret = mipi_dsi_dcs_set_display_off(dsi);
+	if (ret < 0)
+		dev_err(dev, "failed to set display off: %d\n", ret);
+
+	ret = mipi_dsi_dcs_enter_sleep_mode(dsi);
+	if (ret < 0)
+		dev_err(dev, "failed to enter sleep mode: %d\n", ret);
+
+	msleep(100);
+}
+
+static int stk_panel_disable(struct drm_panel *panel)
+{
+	struct stk_panel *stk = to_stk_panel(panel);
+
+	if (!stk->enabled)
+		return 0;
+
+	backlight_disable(stk->backlight);
+
+	stk->enabled = false;
+
+	return 0;
+}
+
+static int stk_panel_unprepare(struct drm_panel *panel)
+{
+	struct stk_panel *stk = to_stk_panel(panel);
+
+	if (!stk->prepared)
+		return 0;
+
+	stk_panel_off(stk);
+	regulator_disable(stk->iovcc_supply);
+	regulator_disable(stk->power_supply);
+	gpiod_set_value(stk->reset_gpio, 0);
+	gpiod_set_value(stk->dcdc_en_gpio, 1);
+
+	stk->prepared = false;
+
+	return 0;
+}
+
+static int stk_panel_prepare(struct drm_panel *panel)
+{
+	struct stk_panel *stk = to_stk_panel(panel);
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	if (stk->prepared)
+		return 0;
+
+	gpiod_set_value(stk->reset_gpio, 0);
+	gpiod_set_value(stk->dcdc_en_gpio, 0);
+	gpiod_set_value(stk->enable_gpio, 0);
+	ret = regulator_enable(stk->iovcc_supply);
+	if (ret < 0)
+		return ret;
+	mdelay(8);
+	ret = regulator_enable(stk->power_supply);
+	if (ret < 0)
+		goto iovccoff;
+	mdelay(20);
+	gpiod_set_value(stk->dcdc_en_gpio, 1);
+	mdelay(20);
+	gpiod_set_value(stk->reset_gpio, 1);
+	mdelay(10);
+
+	ret = stk_panel_init(stk);
+	if (ret < 0) {
+		dev_err(dev, "failed to init panel: %d\n", ret);
+		goto poweroff;
+	}
+
+	ret = stk_panel_on(stk);
+	if (ret < 0) {
+		dev_err(dev, "failed to set panel on: %d\n", ret);
+		goto poweroff;
+	}
+
+	stk->prepared = true;
+
+	return 0;
+
+poweroff:
+	regulator_disable(stk->power_supply);
+iovccoff:
+	regulator_disable(stk->iovcc_supply);
+	gpiod_set_value(stk->enable_gpio, 0);
+	gpiod_set_value(stk->reset_gpio, 0);
+	gpiod_set_value(stk->dcdc_en_gpio, 0);
+
+	return ret;
+}
+
+static int stk_panel_enable(struct drm_panel *panel)
+{
+	struct stk_panel *stk = to_stk_panel(panel);
+
+	if (stk->enabled)
+		return 0;
+
+	backlight_enable(stk->backlight);
+
+	stk->enabled = true;
+
+	return 0;
+}
+
+static const struct drm_display_mode default_mode = {
+		.clock = 163204,
+		.hdisplay = 1200,
+		.hsync_start = 1200 + 144,
+		.hsync_end = 1200 + 144 + 16,
+		.htotal = 1200 + 144 + 16 + 45, // 1405
+		.vdisplay = 1920,
+		.vsync_start = 1920 + 8,
+		.vsync_end = 1920 + 8 + 4,
+		.vtotal = 1920 + 8 + 4 + 4, // 1936
+};
+
+static int stk_panel_get_modes(struct drm_panel *panel,
+				 struct drm_connector *connector)
+{
+	struct drm_display_mode *mode;
+
+	mode = drm_mode_duplicate(connector->dev, &default_mode);
+	if (!mode) {
+		dev_err(panel->dev, "failed to add mode %ux%ux@%u\n",
+			default_mode.hdisplay, default_mode.vdisplay,
+			drm_mode_vrefresh(&default_mode));
+		return -ENOMEM;
+	}
+
+	drm_mode_set_name(mode);
+
+	drm_mode_probed_add(connector, mode);
+
+	connector->display_info.width_mm = 95;
+	connector->display_info.height_mm = 151;
+
+	return 1;
+}
+
+static int dsi_dcs_bl_get_brightness(struct backlight_device *bl)
+{
+	struct mipi_dsi_device *dsi = bl_get_data(bl);
+	int ret;
+	u16 brightness = bl->props.brightness;
+
+	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
+
+	ret = mipi_dsi_dcs_get_display_brightness(dsi, &brightness);
+	if (ret < 0)
+		return ret;
+	dsi->mode_flags |= MIPI_DSI_MODE_LPM;
+
+	return brightness & 0xff;
+}
+
+static int dsi_dcs_bl_update_status(struct backlight_device *bl)
+{
+	struct mipi_dsi_device *dsi = bl_get_data(bl);
+	struct device *dev = &dsi->dev;
+	int ret;
+
+	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
+
+	ret = mipi_dsi_dcs_set_display_brightness(dsi, bl->props.brightness);
+	if (ret < 0) {
+		dev_err(dev, "failed to set DSI control: %d\n", ret);
+		return ret;
+	}
+
+	dsi->mode_flags |= MIPI_DSI_MODE_LPM;
+
+	return 0;
+}
+
+static const struct backlight_ops dsi_bl_ops = {
+	.update_status = dsi_dcs_bl_update_status,
+	.get_brightness = dsi_dcs_bl_get_brightness,
+};
+
+static struct backlight_device *
+drm_panel_create_dsi_backlight(struct mipi_dsi_device *dsi)
+{
+	struct device *dev = &dsi->dev;
+	struct backlight_properties props;
+
+	memset(&props, 0, sizeof(props));
+	props.type = BACKLIGHT_RAW;
+	props.brightness = 255;
+	props.max_brightness = 255;
+
+	return devm_backlight_device_register(dev, dev_name(dev), dev, dsi,
+					      &dsi_bl_ops, &props);
+}
+
+static const struct drm_panel_funcs stk_panel_funcs = {
+	.disable = stk_panel_disable,
+	.unprepare = stk_panel_unprepare,
+	.prepare = stk_panel_prepare,
+	.enable = stk_panel_enable,
+	.get_modes = stk_panel_get_modes,
+};
+
+static const struct of_device_id stk_of_match[] = {
+	{ .compatible = "startek,kd070fhfid015", },
+	{ }
+};
+MODULE_DEVICE_TABLE(of, stk_of_match);
+
+static int stk_panel_add(struct stk_panel *stk)
+{
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	stk->mode = &default_mode;
+
+	stk->iovcc_supply = devm_regulator_get(dev, "iovcc");
+	if (IS_ERR(stk->iovcc_supply))
+		return PTR_ERR(stk->iovcc_supply);
+
+	stk->power_supply = devm_regulator_get(dev, "power");
+	if (IS_ERR(stk->power_supply))
+		return PTR_ERR(stk->power_supply);
+
+	stk->reset_gpio = devm_gpiod_get(dev, "reset", GPIOD_OUT_LOW);
+	if (IS_ERR(stk->reset_gpio)) {
+		ret = PTR_ERR(stk->reset_gpio);
+		dev_err(dev, "cannot get reset-gpios %d\n", ret);
+		return ret;
+	}
+
+	stk->dcdc_en_gpio = devm_gpiod_get(dev, "dcdc", GPIOD_OUT_LOW);
+	if (IS_ERR(stk->dcdc_en_gpio)) {
+		ret = PTR_ERR(stk->dcdc_en_gpio);
+		dev_err(dev, "cannot get dcdc-en-gpio %d\n", ret);
+		return ret;
+	}
+
+	stk->backlight = drm_panel_create_dsi_backlight(stk->dsi);
+	if (IS_ERR(stk->backlight)) {
+		ret = PTR_ERR(stk->backlight);
+		dev_err(dev, "failed to register backlight %d\n", ret);
+		return ret;
+	}
+
+	drm_panel_init(&stk->base, &stk->dsi->dev, &stk_panel_funcs,
+		       DRM_MODE_CONNECTOR_DSI);
+
+	drm_panel_add(&stk->base);
+
+	return 0;
+}
+
+static void stk_panel_del(struct stk_panel *stk)
+{
+	if (stk->base.dev)
+		drm_panel_remove(&stk->base);
+}
+
+static int stk_panel_probe(struct mipi_dsi_device *dsi)
+{
+	struct stk_panel *stk;
+	int ret;
+
+	dsi->lanes = 4;
+	dsi->format = MIPI_DSI_FMT_RGB888;
+	dsi->mode_flags = (MIPI_DSI_MODE_VIDEO |
+			   MIPI_DSI_MODE_LPM);
+
+	stk = devm_kzalloc(&dsi->dev, sizeof(*stk), GFP_KERNEL);
+	if (!stk)
+		return -ENOMEM;
+
+	mipi_dsi_set_drvdata(dsi, stk);
+
+	stk->dsi = dsi;
+
+	ret = stk_panel_add(stk);
+	if (ret < 0)
+		return ret;
+
+	return mipi_dsi_attach(dsi);
+}
+
+static void stk_panel_remove(struct mipi_dsi_device *dsi)
+{
+	struct stk_panel *stk = mipi_dsi_get_drvdata(dsi);
+	int err;
+
+	err = stk_panel_disable(&stk->base);
+	if (err < 0)
+		dev_err(&dsi->dev, "failed to disable panel: %d\n", err);
+
+	err = mipi_dsi_detach(dsi);
+	if (err < 0)
+		dev_err(&dsi->dev, "failed to detach from DSI host: %d\n",
+			err);
+
+	stk_panel_del(stk);
+}
+
+static void stk_panel_shutdown(struct mipi_dsi_device *dsi)
+{
+	struct stk_panel *stk = mipi_dsi_get_drvdata(dsi);
+
+	stk_panel_disable(&stk->base);
+}
+
+static struct mipi_dsi_driver stk_panel_driver = {
+	.driver = {
+		.name = "panel-startek-kd070fhfid015",
+		.of_match_table = stk_of_match,
+	},
+	.probe = stk_panel_probe,
+	.remove = stk_panel_remove,
+	.shutdown = stk_panel_shutdown,
+};
+module_mipi_dsi_driver(stk_panel_driver);
+
+MODULE_AUTHOR("Guillaume La Roque <glaroque@baylibre.com>");
+MODULE_DESCRIPTION("STARTEK KD070FHFID015");
+MODULE_LICENSE("GPL");

-- 
b4 0.10.1


^ permalink raw reply related	[flat|nested] 174+ messages in thread

* [PATCH 21/21] panel: startek-kd070fhfid015: add support of this display
@ 2023-03-09 14:23   ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-09 14:23 UTC (permalink / raw)
  To: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek,
	Alexandre Mergnat, dri-devel, Fabien Parent, Neil Armstrong,
	linux-pwm, devicetree, linux-kernel

From: Guillaume La Roque <glaroque@baylibre.com>

This driver support the Startek KD070FHFID015, which is a 7-inch TFT LCD
display using MIPI DSI interface.

Signed-off-by: Guillaume La Roque <glaroque@baylibre.com>
Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 drivers/gpu/drm/panel/Kconfig                      |  12 +
 drivers/gpu/drm/panel/Makefile                     |   1 +
 .../gpu/drm/panel/panel-startek-kd070fhfid015.c    | 483 +++++++++++++++++++++
 3 files changed, 496 insertions(+)

diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig
index 737edcdf9eef..3fccf025013b 100644
--- a/drivers/gpu/drm/panel/Kconfig
+++ b/drivers/gpu/drm/panel/Kconfig
@@ -666,6 +666,17 @@ config DRM_PANEL_SONY_TULIP_TRULY_NT35521
 	  NT35521 1280x720 video mode panel as found on Sony Xperia M4
 	  Aqua phone.
 
+config DRM_PANEL_STARTEK_KD070FHFID015
+	tristate "STARTEK KD070FHFID015 panel"
+	depends on OF
+	depends on DRM_MIPI_DSI
+	depends on BACKLIGHT_CLASS_DEVICE
+	help
+	  Say Y here if you want to enable support for STARTEK KD070FHFID015 DSI panel
+	  based on RENESAS-R69429 controller. The pannel is a 7-inch TFT LCD display
+	  with a resolution of 1024 x 600 pixels. It provides a MIPI DSI interface to
+	  the host, a built-in LED backlight and touch controller.
+
 config DRM_PANEL_TDO_TL070WSH30
 	tristate "TDO TL070WSH30 DSI panel"
 	depends on OF
@@ -736,4 +747,5 @@ config DRM_PANEL_XINPENG_XPP055C272
 	  Say Y here if you want to enable support for the Xinpeng
 	  XPP055C272 controller for 720x1280 LCD panels with MIPI/RGB/SPI
 	  system interfaces.
+
 endmenu
diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile
index f8f9d9f6a307..35771fc51187 100644
--- a/drivers/gpu/drm/panel/Makefile
+++ b/drivers/gpu/drm/panel/Makefile
@@ -67,6 +67,7 @@ obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7703) += panel-sitronix-st7703.o
 obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7789V) += panel-sitronix-st7789v.o
 obj-$(CONFIG_DRM_PANEL_SONY_ACX565AKM) += panel-sony-acx565akm.o
 obj-$(CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521) += panel-sony-tulip-truly-nt35521.o
+obj-$(CONFIG_DRM_PANEL_STARTEK_KD070FHFID015) += panel-startek-kd070fhfid015.o
 obj-$(CONFIG_DRM_PANEL_TDO_TL070WSH30) += panel-tdo-tl070wsh30.o
 obj-$(CONFIG_DRM_PANEL_TPO_TD028TTEC1) += panel-tpo-td028ttec1.o
 obj-$(CONFIG_DRM_PANEL_TPO_TD043MTEA1) += panel-tpo-td043mtea1.o
diff --git a/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c b/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c
new file mode 100644
index 000000000000..88466bf6428d
--- /dev/null
+++ b/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c
@@ -0,0 +1,483 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2016 InforceComputing
+ * Copyright (C) 2016 Linaro Ltd
+ * Copyright (C) 2023 BayLibre, SAS
+ *
+ * Author:
+ * - Vinay Simha BN <simhavcs@gmail.com>
+ * - Sumit Semwal <sumit.semwal@linaro.org>
+ * - Guillaume La Roque <glaroque@baylibre.com>
+ *
+ */
+
+#include <linux/backlight.h>
+#include <linux/delay.h>
+#include <linux/gpio/consumer.h>
+#include <linux/module.h>
+#include <linux/of.h>
+#include <linux/regulator/consumer.h>
+
+#include <video/mipi_display.h>
+
+#include <drm/drm_crtc.h>
+#include <drm/drm_mipi_dsi.h>
+#include <drm/drm_modes.h>
+#include <drm/drm_panel.h>
+
+#define DSI_REG_MCAP	0xB0
+#define DSI_REG_IS	0xB3 /* Interface Setting */
+#define DSI_REG_IIS	0xB4 /* Interface ID Setting */
+#define DSI_REG_CTRL	0xB6
+
+struct stk_panel {
+	struct drm_panel base;
+	struct mipi_dsi_device *dsi;
+
+	struct gpio_desc *enable_gpio;
+	struct gpio_desc *reset_gpio;
+	struct gpio_desc *dcdc_en_gpio;
+	struct backlight_device *backlight;
+	struct regulator *iovcc_supply;
+	struct regulator *power_supply;
+
+	bool prepared;
+	bool enabled;
+
+	const struct drm_display_mode *mode;
+};
+
+static inline struct stk_panel *to_stk_panel(struct drm_panel *panel)
+{
+	return container_of(panel, struct stk_panel, base);
+}
+
+static int stk_panel_init(struct stk_panel *stk)
+{
+	struct mipi_dsi_device *dsi = stk->dsi;
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	ret = mipi_dsi_dcs_soft_reset(dsi);
+	if (ret < 0) {
+		dev_err(dev, "failed to mipi_dsi_dcs_soft_reset: %d\n", ret);
+		return ret;
+	}
+	mdelay(5);
+
+	ret = mipi_dsi_dcs_exit_sleep_mode(dsi);
+	if (ret < 0) {
+		dev_err(dev, "failed to set exit sleep mode: %d\n", ret);
+		return ret;
+	}
+	msleep(120);
+
+	ret = mipi_dsi_generic_write(dsi, (u8[]){DSI_REG_MCAP, 0x04}, 2);
+	if (ret < 0) {
+		dev_err(dev, "failed to set mcap: %d\n", ret);
+		return ret;
+	}
+	/* Interface setting, video mode */
+	ret = mipi_dsi_generic_write(dsi,
+			(u8[]){DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00}, 6);
+	if (ret < 0) {
+		dev_err(dev, "failed to set display interface setting: %d\n",
+			ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_generic_write(dsi, (u8[]){DSI_REG_IIS, 0x0C, 0x00}, 3);
+	if (ret < 0) {
+		dev_err(dev, "failed to set Interface ID setting: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_generic_write(dsi, (u8[]){ DSI_REG_CTRL, 0x3A, 0xD3}, 3);
+	if (ret < 0) {
+		dev_err(dev, "failed to set DSI control: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_set_display_brightness(dsi, 0x77);
+	if (ret < 0) {
+		dev_err(dev, "failed to write display brightness: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_write(dsi, MIPI_DCS_WRITE_CONTROL_DISPLAY,
+				 (u8[]){ MIPI_DCS_WRITE_MEMORY_START }, 1);
+	if (ret < 0) {
+		dev_err(dev, "failed to write control display: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_set_pixel_format(dsi, 0x77);
+	if (ret < 0) {
+		dev_err(dev, "failed to set pixel format: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_set_column_address(dsi, 0, stk->mode->hdisplay - 1);
+	if (ret < 0) {
+		dev_err(dev, "failed to set column address: %d\n", ret);
+		return ret;
+	}
+
+	ret = mipi_dsi_dcs_set_page_address(dsi, 0, stk->mode->vdisplay - 1);
+	if (ret < 0) {
+		dev_err(dev, "failed to set page address: %d\n", ret);
+		return ret;
+	}
+
+	return 0;
+}
+
+static int stk_panel_on(struct stk_panel *stk)
+{
+	struct mipi_dsi_device *dsi = stk->dsi;
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	ret = mipi_dsi_dcs_set_display_on(dsi);
+	if (ret < 0)
+		dev_err(dev, "failed to set display on: %d\n", ret);
+
+	mdelay(20);
+
+	return ret;
+}
+
+static void stk_panel_off(struct stk_panel *stk)
+{
+	struct mipi_dsi_device *dsi = stk->dsi;
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
+
+	ret = mipi_dsi_dcs_set_display_off(dsi);
+	if (ret < 0)
+		dev_err(dev, "failed to set display off: %d\n", ret);
+
+	ret = mipi_dsi_dcs_enter_sleep_mode(dsi);
+	if (ret < 0)
+		dev_err(dev, "failed to enter sleep mode: %d\n", ret);
+
+	msleep(100);
+}
+
+static int stk_panel_disable(struct drm_panel *panel)
+{
+	struct stk_panel *stk = to_stk_panel(panel);
+
+	if (!stk->enabled)
+		return 0;
+
+	backlight_disable(stk->backlight);
+
+	stk->enabled = false;
+
+	return 0;
+}
+
+static int stk_panel_unprepare(struct drm_panel *panel)
+{
+	struct stk_panel *stk = to_stk_panel(panel);
+
+	if (!stk->prepared)
+		return 0;
+
+	stk_panel_off(stk);
+	regulator_disable(stk->iovcc_supply);
+	regulator_disable(stk->power_supply);
+	gpiod_set_value(stk->reset_gpio, 0);
+	gpiod_set_value(stk->dcdc_en_gpio, 1);
+
+	stk->prepared = false;
+
+	return 0;
+}
+
+static int stk_panel_prepare(struct drm_panel *panel)
+{
+	struct stk_panel *stk = to_stk_panel(panel);
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	if (stk->prepared)
+		return 0;
+
+	gpiod_set_value(stk->reset_gpio, 0);
+	gpiod_set_value(stk->dcdc_en_gpio, 0);
+	gpiod_set_value(stk->enable_gpio, 0);
+	ret = regulator_enable(stk->iovcc_supply);
+	if (ret < 0)
+		return ret;
+	mdelay(8);
+	ret = regulator_enable(stk->power_supply);
+	if (ret < 0)
+		goto iovccoff;
+	mdelay(20);
+	gpiod_set_value(stk->dcdc_en_gpio, 1);
+	mdelay(20);
+	gpiod_set_value(stk->reset_gpio, 1);
+	mdelay(10);
+
+	ret = stk_panel_init(stk);
+	if (ret < 0) {
+		dev_err(dev, "failed to init panel: %d\n", ret);
+		goto poweroff;
+	}
+
+	ret = stk_panel_on(stk);
+	if (ret < 0) {
+		dev_err(dev, "failed to set panel on: %d\n", ret);
+		goto poweroff;
+	}
+
+	stk->prepared = true;
+
+	return 0;
+
+poweroff:
+	regulator_disable(stk->power_supply);
+iovccoff:
+	regulator_disable(stk->iovcc_supply);
+	gpiod_set_value(stk->enable_gpio, 0);
+	gpiod_set_value(stk->reset_gpio, 0);
+	gpiod_set_value(stk->dcdc_en_gpio, 0);
+
+	return ret;
+}
+
+static int stk_panel_enable(struct drm_panel *panel)
+{
+	struct stk_panel *stk = to_stk_panel(panel);
+
+	if (stk->enabled)
+		return 0;
+
+	backlight_enable(stk->backlight);
+
+	stk->enabled = true;
+
+	return 0;
+}
+
+static const struct drm_display_mode default_mode = {
+		.clock = 163204,
+		.hdisplay = 1200,
+		.hsync_start = 1200 + 144,
+		.hsync_end = 1200 + 144 + 16,
+		.htotal = 1200 + 144 + 16 + 45, // 1405
+		.vdisplay = 1920,
+		.vsync_start = 1920 + 8,
+		.vsync_end = 1920 + 8 + 4,
+		.vtotal = 1920 + 8 + 4 + 4, // 1936
+};
+
+static int stk_panel_get_modes(struct drm_panel *panel,
+				 struct drm_connector *connector)
+{
+	struct drm_display_mode *mode;
+
+	mode = drm_mode_duplicate(connector->dev, &default_mode);
+	if (!mode) {
+		dev_err(panel->dev, "failed to add mode %ux%ux@%u\n",
+			default_mode.hdisplay, default_mode.vdisplay,
+			drm_mode_vrefresh(&default_mode));
+		return -ENOMEM;
+	}
+
+	drm_mode_set_name(mode);
+
+	drm_mode_probed_add(connector, mode);
+
+	connector->display_info.width_mm = 95;
+	connector->display_info.height_mm = 151;
+
+	return 1;
+}
+
+static int dsi_dcs_bl_get_brightness(struct backlight_device *bl)
+{
+	struct mipi_dsi_device *dsi = bl_get_data(bl);
+	int ret;
+	u16 brightness = bl->props.brightness;
+
+	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
+
+	ret = mipi_dsi_dcs_get_display_brightness(dsi, &brightness);
+	if (ret < 0)
+		return ret;
+	dsi->mode_flags |= MIPI_DSI_MODE_LPM;
+
+	return brightness & 0xff;
+}
+
+static int dsi_dcs_bl_update_status(struct backlight_device *bl)
+{
+	struct mipi_dsi_device *dsi = bl_get_data(bl);
+	struct device *dev = &dsi->dev;
+	int ret;
+
+	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
+
+	ret = mipi_dsi_dcs_set_display_brightness(dsi, bl->props.brightness);
+	if (ret < 0) {
+		dev_err(dev, "failed to set DSI control: %d\n", ret);
+		return ret;
+	}
+
+	dsi->mode_flags |= MIPI_DSI_MODE_LPM;
+
+	return 0;
+}
+
+static const struct backlight_ops dsi_bl_ops = {
+	.update_status = dsi_dcs_bl_update_status,
+	.get_brightness = dsi_dcs_bl_get_brightness,
+};
+
+static struct backlight_device *
+drm_panel_create_dsi_backlight(struct mipi_dsi_device *dsi)
+{
+	struct device *dev = &dsi->dev;
+	struct backlight_properties props;
+
+	memset(&props, 0, sizeof(props));
+	props.type = BACKLIGHT_RAW;
+	props.brightness = 255;
+	props.max_brightness = 255;
+
+	return devm_backlight_device_register(dev, dev_name(dev), dev, dsi,
+					      &dsi_bl_ops, &props);
+}
+
+static const struct drm_panel_funcs stk_panel_funcs = {
+	.disable = stk_panel_disable,
+	.unprepare = stk_panel_unprepare,
+	.prepare = stk_panel_prepare,
+	.enable = stk_panel_enable,
+	.get_modes = stk_panel_get_modes,
+};
+
+static const struct of_device_id stk_of_match[] = {
+	{ .compatible = "startek,kd070fhfid015", },
+	{ }
+};
+MODULE_DEVICE_TABLE(of, stk_of_match);
+
+static int stk_panel_add(struct stk_panel *stk)
+{
+	struct device *dev = &stk->dsi->dev;
+	int ret;
+
+	stk->mode = &default_mode;
+
+	stk->iovcc_supply = devm_regulator_get(dev, "iovcc");
+	if (IS_ERR(stk->iovcc_supply))
+		return PTR_ERR(stk->iovcc_supply);
+
+	stk->power_supply = devm_regulator_get(dev, "power");
+	if (IS_ERR(stk->power_supply))
+		return PTR_ERR(stk->power_supply);
+
+	stk->reset_gpio = devm_gpiod_get(dev, "reset", GPIOD_OUT_LOW);
+	if (IS_ERR(stk->reset_gpio)) {
+		ret = PTR_ERR(stk->reset_gpio);
+		dev_err(dev, "cannot get reset-gpios %d\n", ret);
+		return ret;
+	}
+
+	stk->dcdc_en_gpio = devm_gpiod_get(dev, "dcdc", GPIOD_OUT_LOW);
+	if (IS_ERR(stk->dcdc_en_gpio)) {
+		ret = PTR_ERR(stk->dcdc_en_gpio);
+		dev_err(dev, "cannot get dcdc-en-gpio %d\n", ret);
+		return ret;
+	}
+
+	stk->backlight = drm_panel_create_dsi_backlight(stk->dsi);
+	if (IS_ERR(stk->backlight)) {
+		ret = PTR_ERR(stk->backlight);
+		dev_err(dev, "failed to register backlight %d\n", ret);
+		return ret;
+	}
+
+	drm_panel_init(&stk->base, &stk->dsi->dev, &stk_panel_funcs,
+		       DRM_MODE_CONNECTOR_DSI);
+
+	drm_panel_add(&stk->base);
+
+	return 0;
+}
+
+static void stk_panel_del(struct stk_panel *stk)
+{
+	if (stk->base.dev)
+		drm_panel_remove(&stk->base);
+}
+
+static int stk_panel_probe(struct mipi_dsi_device *dsi)
+{
+	struct stk_panel *stk;
+	int ret;
+
+	dsi->lanes = 4;
+	dsi->format = MIPI_DSI_FMT_RGB888;
+	dsi->mode_flags = (MIPI_DSI_MODE_VIDEO |
+			   MIPI_DSI_MODE_LPM);
+
+	stk = devm_kzalloc(&dsi->dev, sizeof(*stk), GFP_KERNEL);
+	if (!stk)
+		return -ENOMEM;
+
+	mipi_dsi_set_drvdata(dsi, stk);
+
+	stk->dsi = dsi;
+
+	ret = stk_panel_add(stk);
+	if (ret < 0)
+		return ret;
+
+	return mipi_dsi_attach(dsi);
+}
+
+static void stk_panel_remove(struct mipi_dsi_device *dsi)
+{
+	struct stk_panel *stk = mipi_dsi_get_drvdata(dsi);
+	int err;
+
+	err = stk_panel_disable(&stk->base);
+	if (err < 0)
+		dev_err(&dsi->dev, "failed to disable panel: %d\n", err);
+
+	err = mipi_dsi_detach(dsi);
+	if (err < 0)
+		dev_err(&dsi->dev, "failed to detach from DSI host: %d\n",
+			err);
+
+	stk_panel_del(stk);
+}
+
+static void stk_panel_shutdown(struct mipi_dsi_device *dsi)
+{
+	struct stk_panel *stk = mipi_dsi_get_drvdata(dsi);
+
+	stk_panel_disable(&stk->base);
+}
+
+static struct mipi_dsi_driver stk_panel_driver = {
+	.driver = {
+		.name = "panel-startek-kd070fhfid015",
+		.of_match_table = stk_of_match,
+	},
+	.probe = stk_panel_probe,
+	.remove = stk_panel_remove,
+	.shutdown = stk_panel_shutdown,
+};
+module_mipi_dsi_driver(stk_panel_driver);
+
+MODULE_AUTHOR("Guillaume La Roque <glaroque@baylibre.com>");
+MODULE_DESCRIPTION("STARTEK KD070FHFID015");
+MODULE_LICENSE("GPL");

-- 
b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 174+ messages in thread

* Re: [PATCH 21/21] panel: startek-kd070fhfid015: add support of this display
  2023-03-09 14:23   ` Alexandre Mergnat
  (?)
@ 2023-03-09 14:51     ` Neil Armstrong
  -1 siblings, 0 replies; 174+ messages in thread
From: Neil Armstrong @ 2023-03-09 14:51 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: linux-pwm, devicetree, linux-kernel, dri-devel, Fabien Parent,
	linux-mediatek, Guillaume La Roque, linux-arm-kernel

Hi,

On 09/03/2023 15:23, Alexandre Mergnat wrote:
> From: Guillaume La Roque <glaroque@baylibre.com>
> 
> This driver support the Startek KD070FHFID015, which is a 7-inch TFT LCD
> display using MIPI DSI interface.
> 
> Signed-off-by: Guillaume La Roque <glaroque@baylibre.com>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>   drivers/gpu/drm/panel/Kconfig                      |  12 +
>   drivers/gpu/drm/panel/Makefile                     |   1 +
>   .../gpu/drm/panel/panel-startek-kd070fhfid015.c    | 483 +++++++++++++++++++++
>   3 files changed, 496 insertions(+)
> 
> diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig
> index 737edcdf9eef..3fccf025013b 100644
> --- a/drivers/gpu/drm/panel/Kconfig
> +++ b/drivers/gpu/drm/panel/Kconfig
> @@ -666,6 +666,17 @@ config DRM_PANEL_SONY_TULIP_TRULY_NT35521
>   	  NT35521 1280x720 video mode panel as found on Sony Xperia M4
>   	  Aqua phone.
>   
> +config DRM_PANEL_STARTEK_KD070FHFID015
> +	tristate "STARTEK KD070FHFID015 panel"
> +	depends on OF
> +	depends on DRM_MIPI_DSI
> +	depends on BACKLIGHT_CLASS_DEVICE
> +	help
> +	  Say Y here if you want to enable support for STARTEK KD070FHFID015 DSI panel
> +	  based on RENESAS-R69429 controller. The pannel is a 7-inch TFT LCD display
> +	  with a resolution of 1024 x 600 pixels. It provides a MIPI DSI interface to
> +	  the host, a built-in LED backlight and touch controller.
> +
>   config DRM_PANEL_TDO_TL070WSH30
>   	tristate "TDO TL070WSH30 DSI panel"
>   	depends on OF
> @@ -736,4 +747,5 @@ config DRM_PANEL_XINPENG_XPP055C272
>   	  Say Y here if you want to enable support for the Xinpeng
>   	  XPP055C272 controller for 720x1280 LCD panels with MIPI/RGB/SPI
>   	  system interfaces.
> +

Spurious new line

>   endmenu
> diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile
> index f8f9d9f6a307..35771fc51187 100644
> --- a/drivers/gpu/drm/panel/Makefile
> +++ b/drivers/gpu/drm/panel/Makefile
> @@ -67,6 +67,7 @@ obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7703) += panel-sitronix-st7703.o
>   obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7789V) += panel-sitronix-st7789v.o
>   obj-$(CONFIG_DRM_PANEL_SONY_ACX565AKM) += panel-sony-acx565akm.o
>   obj-$(CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521) += panel-sony-tulip-truly-nt35521.o
> +obj-$(CONFIG_DRM_PANEL_STARTEK_KD070FHFID015) += panel-startek-kd070fhfid015.o
>   obj-$(CONFIG_DRM_PANEL_TDO_TL070WSH30) += panel-tdo-tl070wsh30.o
>   obj-$(CONFIG_DRM_PANEL_TPO_TD028TTEC1) += panel-tpo-td028ttec1.o
>   obj-$(CONFIG_DRM_PANEL_TPO_TD043MTEA1) += panel-tpo-td043mtea1.o
> diff --git a/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c b/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c
> new file mode 100644
> index 000000000000..88466bf6428d
> --- /dev/null
> +++ b/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c
> @@ -0,0 +1,483 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright (C) 2016 InforceComputing
> + * Copyright (C) 2016 Linaro Ltd
> + * Copyright (C) 2023 BayLibre, SAS
> + *
> + * Author:

NIT: Authors

> + * - Vinay Simha BN <simhavcs@gmail.com>
> + * - Sumit Semwal <sumit.semwal@linaro.org>
> + * - Guillaume La Roque <glaroque@baylibre.com>
> + *
> + */
> +
> +#include <linux/backlight.h>
> +#include <linux/delay.h>
> +#include <linux/gpio/consumer.h>
> +#include <linux/module.h>
> +#include <linux/of.h>
> +#include <linux/regulator/consumer.h>
> +
> +#include <video/mipi_display.h>
> +
> +#include <drm/drm_crtc.h>

Is this include needed ?

> +#include <drm/drm_mipi_dsi.h>
> +#include <drm/drm_modes.h>
> +#include <drm/drm_panel.h>
> +
> +#define DSI_REG_MCAP	0xB0
> +#define DSI_REG_IS	0xB3 /* Interface Setting */
> +#define DSI_REG_IIS	0xB4 /* Interface ID Setting */
> +#define DSI_REG_CTRL	0xB6
> +
> +struct stk_panel {
> +	struct drm_panel base;
> +	struct mipi_dsi_device *dsi;
> +
> +	struct gpio_desc *enable_gpio;
> +	struct gpio_desc *reset_gpio;
> +	struct gpio_desc *dcdc_en_gpio;

Isn't this "DCDC" a regulator ???

> +	struct backlight_device *backlight;
> +	struct regulator *iovcc_supply;
> +	struct regulator *power_supply;
> +
> +	bool prepared;
> +	bool enabled;
> +
> +	const struct drm_display_mode *mode;
> +};
> +
> +static inline struct stk_panel *to_stk_panel(struct drm_panel *panel)
> +{
> +	return container_of(panel, struct stk_panel, base);
> +}
> +
> +static int stk_panel_init(struct stk_panel *stk)
> +{
> +	struct mipi_dsi_device *dsi = stk->dsi;
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	ret = mipi_dsi_dcs_soft_reset(dsi);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to mipi_dsi_dcs_soft_reset: %d\n", ret);
> +		return ret;
> +	}
> +	mdelay(5);
> +
> +	ret = mipi_dsi_dcs_exit_sleep_mode(dsi);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set exit sleep mode: %d\n", ret);
> +		return ret;
> +	}
> +	msleep(120);
> +
> +	ret = mipi_dsi_generic_write(dsi, (u8[]){DSI_REG_MCAP, 0x04}, 2);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set mcap: %d\n", ret);
> +		return ret;
> +	}
> +	/* Interface setting, video mode */
> +	ret = mipi_dsi_generic_write(dsi,
> +			(u8[]){DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00}, 6);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set display interface setting: %d\n",
> +			ret);
> +		return ret;
> +	}

Use mipi_dsi_generic_write_seq(dsi, DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00); instead,
it's simpler and doesn't need explicit return check.

> +
> +	ret = mipi_dsi_generic_write(dsi, (u8[]){DSI_REG_IIS, 0x0C, 0x00}, 3);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set Interface ID setting: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_generic_write(dsi, (u8[]){ DSI_REG_CTRL, 0x3A, 0xD3}, 3);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set DSI control: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_set_display_brightness(dsi, 0x77);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to write display brightness: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_write(dsi, MIPI_DCS_WRITE_CONTROL_DISPLAY,
> +				 (u8[]){ MIPI_DCS_WRITE_MEMORY_START }, 1);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to write control display: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_set_pixel_format(dsi, 0x77);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set pixel format: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_set_column_address(dsi, 0, stk->mode->hdisplay - 1);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set column address: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_set_page_address(dsi, 0, stk->mode->vdisplay - 1);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set page address: %d\n", ret);
> +		return ret;
> +	}
> +
> +	return 0;
> +}
> +
> +static int stk_panel_on(struct stk_panel *stk)
> +{
> +	struct mipi_dsi_device *dsi = stk->dsi;
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	ret = mipi_dsi_dcs_set_display_on(dsi);
> +	if (ret < 0)
> +		dev_err(dev, "failed to set display on: %d\n", ret);
> +
> +	mdelay(20);
> +
> +	return ret;
> +}
> +
> +static void stk_panel_off(struct stk_panel *stk)
> +{
> +	struct mipi_dsi_device *dsi = stk->dsi;
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
> +
> +	ret = mipi_dsi_dcs_set_display_off(dsi);
> +	if (ret < 0)
> +		dev_err(dev, "failed to set display off: %d\n", ret);
> +
> +	ret = mipi_dsi_dcs_enter_sleep_mode(dsi);
> +	if (ret < 0)
> +		dev_err(dev, "failed to enter sleep mode: %d\n", ret);
> +
> +	msleep(100);
> +}
> +
> +static int stk_panel_disable(struct drm_panel *panel)
> +{
> +	struct stk_panel *stk = to_stk_panel(panel);
> +
> +	if (!stk->enabled)
> +		return 0;
> +
> +	backlight_disable(stk->backlight);
> +
> +	stk->enabled = false;
> +
> +	return 0;
> +}
> +
> +static int stk_panel_unprepare(struct drm_panel *panel)
> +{
> +	struct stk_panel *stk = to_stk_panel(panel);
> +
> +	if (!stk->prepared)
> +		return 0;
> +
> +	stk_panel_off(stk);
> +	regulator_disable(stk->iovcc_supply);
> +	regulator_disable(stk->power_supply);
> +	gpiod_set_value(stk->reset_gpio, 0);
> +	gpiod_set_value(stk->dcdc_en_gpio, 1);
> +
> +	stk->prepared = false;
> +
> +	return 0;
> +}
> +
> +static int stk_panel_prepare(struct drm_panel *panel)
> +{
> +	struct stk_panel *stk = to_stk_panel(panel);
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	if (stk->prepared)
> +		return 0;
> +
> +	gpiod_set_value(stk->reset_gpio, 0);
> +	gpiod_set_value(stk->dcdc_en_gpio, 0);
> +	gpiod_set_value(stk->enable_gpio, 0);
> +	ret = regulator_enable(stk->iovcc_supply);
> +	if (ret < 0)
> +		return ret;
> +	mdelay(8);
> +	ret = regulator_enable(stk->power_supply);
> +	if (ret < 0)
> +		goto iovccoff;

Add blank lines between code blocks for readability

> +	mdelay(20);
> +	gpiod_set_value(stk->dcdc_en_gpio, 1);
> +	mdelay(20);
> +	gpiod_set_value(stk->reset_gpio, 1);
> +	mdelay(10);
> +
> +	ret = stk_panel_init(stk);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to init panel: %d\n", ret);
> +		goto poweroff;
> +	}
> +
> +	ret = stk_panel_on(stk);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set panel on: %d\n", ret);
> +		goto poweroff;
> +	}
> +
> +	stk->prepared = true;
> +
> +	return 0;
> +
> +poweroff:
> +	regulator_disable(stk->power_supply);
> +iovccoff:
> +	regulator_disable(stk->iovcc_supply);
> +	gpiod_set_value(stk->enable_gpio, 0);
> +	gpiod_set_value(stk->reset_gpio, 0);
> +	gpiod_set_value(stk->dcdc_en_gpio, 0);
> +
> +	return ret;
> +}
> +
> +static int stk_panel_enable(struct drm_panel *panel)
> +{
> +	struct stk_panel *stk = to_stk_panel(panel);
> +
> +	if (stk->enabled)
> +		return 0;
> +
> +	backlight_enable(stk->backlight);
> +
> +	stk->enabled = true;
> +
> +	return 0;
> +}

Is this really needed ? the backlight core will enable it automatically.

> +
> +static const struct drm_display_mode default_mode = {
> +		.clock = 163204,
> +		.hdisplay = 1200,
> +		.hsync_start = 1200 + 144,
> +		.hsync_end = 1200 + 144 + 16,
> +		.htotal = 1200 + 144 + 16 + 45, // 1405

No need for the comment

> +		.vdisplay = 1920,
> +		.vsync_start = 1920 + 8,
> +		.vsync_end = 1920 + 8 + 4,
> +		.vtotal = 1920 + 8 + 4 + 4, // 1936

You can also set .width_mm & .height_mm and copy them to connector->display_info later.

> +};
> +
> +static int stk_panel_get_modes(struct drm_panel *panel,
> +				 struct drm_connector *connector)
> +{
> +	struct drm_display_mode *mode;
> +
> +	mode = drm_mode_duplicate(connector->dev, &default_mode);
> +	if (!mode) {
> +		dev_err(panel->dev, "failed to add mode %ux%ux@%u\n",
> +			default_mode.hdisplay, default_mode.vdisplay,
> +			drm_mode_vrefresh(&default_mode));
> +		return -ENOMEM;
> +	}
> +
> +	drm_mode_set_name(mode);
> +
> +	drm_mode_probed_add(connector, mode);
> +
> +	connector->display_info.width_mm = 95;
> +	connector->display_info.height_mm = 151;
> +
> +	return 1;
> +}
> +
> +static int dsi_dcs_bl_get_brightness(struct backlight_device *bl)
> +{
> +	struct mipi_dsi_device *dsi = bl_get_data(bl);
> +	int ret;
> +	u16 brightness = bl->props.brightness;
> +
> +	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
> +
> +	ret = mipi_dsi_dcs_get_display_brightness(dsi, &brightness);
> +	if (ret < 0)
> +		return ret;
> +	dsi->mode_flags |= MIPI_DSI_MODE_LPM;
> +
> +	return brightness & 0xff;
> +}
> +
> +static int dsi_dcs_bl_update_status(struct backlight_device *bl)
> +{
> +	struct mipi_dsi_device *dsi = bl_get_data(bl);
> +	struct device *dev = &dsi->dev;
> +	int ret;
> +
> +	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
> +
> +	ret = mipi_dsi_dcs_set_display_brightness(dsi, bl->props.brightness);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set DSI control: %d\n", ret);
> +		return ret;
> +	}
> +
> +	dsi->mode_flags |= MIPI_DSI_MODE_LPM;
> +
> +	return 0;
> +}
> +
> +static const struct backlight_ops dsi_bl_ops = {
> +	.update_status = dsi_dcs_bl_update_status,
> +	.get_brightness = dsi_dcs_bl_get_brightness,
> +};
> +
> +static struct backlight_device *
> +drm_panel_create_dsi_backlight(struct mipi_dsi_device *dsi)
> +{
> +	struct device *dev = &dsi->dev;
> +	struct backlight_properties props;
> +
> +	memset(&props, 0, sizeof(props));
> +	props.type = BACKLIGHT_RAW;
> +	props.brightness = 255;
> +	props.max_brightness = 255;

You could write :
struct backlight_properties props = {
	.type = BACKLIGHT_RAW,
	.brightness = 255,
	.max_brightness = 255,
};

> +
> +	return devm_backlight_device_register(dev, dev_name(dev), dev, dsi,
> +					      &dsi_bl_ops, &props);
> +}
> +
> +static const struct drm_panel_funcs stk_panel_funcs = {
> +	.disable = stk_panel_disable,
> +	.unprepare = stk_panel_unprepare,
> +	.prepare = stk_panel_prepare,
> +	.enable = stk_panel_enable,
> +	.get_modes = stk_panel_get_modes,
> +};
> +
> +static const struct of_device_id stk_of_match[] = {
> +	{ .compatible = "startek,kd070fhfid015", },
> +	{ }
> +};
> +MODULE_DEVICE_TABLE(of, stk_of_match);
> +
> +static int stk_panel_add(struct stk_panel *stk)
> +{
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	stk->mode = &default_mode;
> +
> +	stk->iovcc_supply = devm_regulator_get(dev, "iovcc");
> +	if (IS_ERR(stk->iovcc_supply))
> +		return PTR_ERR(stk->iovcc_supply);
> +
> +	stk->power_supply = devm_regulator_get(dev, "power");
> +	if (IS_ERR(stk->power_supply))
> +		return PTR_ERR(stk->power_supply);

You can switch to devm_regulator_bulk_get() to simplify code.

> +
> +	stk->reset_gpio = devm_gpiod_get(dev, "reset", GPIOD_OUT_LOW);
> +	if (IS_ERR(stk->reset_gpio)) {
> +		ret = PTR_ERR(stk->reset_gpio);
> +		dev_err(dev, "cannot get reset-gpios %d\n", ret);
> +		return ret;
> +	}
> +
> +	stk->dcdc_en_gpio = devm_gpiod_get(dev, "dcdc", GPIOD_OUT_LOW);
> +	if (IS_ERR(stk->dcdc_en_gpio)) {
> +		ret = PTR_ERR(stk->dcdc_en_gpio);
> +		dev_err(dev, "cannot get dcdc-en-gpio %d\n", ret);
> +		return ret;
> +	}
> +
> +	stk->backlight = drm_panel_create_dsi_backlight(stk->dsi);
> +	if (IS_ERR(stk->backlight)) {
> +		ret = PTR_ERR(stk->backlight);
> +		dev_err(dev, "failed to register backlight %d\n", ret);
> +		return ret;
> +	}
> +
> +	drm_panel_init(&stk->base, &stk->dsi->dev, &stk_panel_funcs,
> +		       DRM_MODE_CONNECTOR_DSI);
> +
> +	drm_panel_add(&stk->base);
> +
> +	return 0;
> +}
> +
> +static void stk_panel_del(struct stk_panel *stk)
> +{
> +	if (stk->base.dev)
> +		drm_panel_remove(&stk->base);

Is the if() necessary ? Not sure, you can remove it and directly call drm_panel_remove(&stk->base);

> +}
> +
> +static int stk_panel_probe(struct mipi_dsi_device *dsi)
> +{
> +	struct stk_panel *stk;
> +	int ret;
> +
> +	dsi->lanes = 4;
> +	dsi->format = MIPI_DSI_FMT_RGB888;
> +	dsi->mode_flags = (MIPI_DSI_MODE_VIDEO |
> +			   MIPI_DSI_MODE_LPM);

This could be on a single line

> +
> +	stk = devm_kzalloc(&dsi->dev, sizeof(*stk), GFP_KERNEL);
> +	if (!stk)
> +		return -ENOMEM;
> +
> +	mipi_dsi_set_drvdata(dsi, stk);
> +
> +	stk->dsi = dsi;
> +
> +	ret = stk_panel_add(stk);
> +	if (ret < 0)
> +		return ret;
> +
> +	return mipi_dsi_attach(dsi);

You should call drm_panel_remove() if attach fails

> +}
> +
> +static void stk_panel_remove(struct mipi_dsi_device *dsi)
> +{
> +	struct stk_panel *stk = mipi_dsi_get_drvdata(dsi);
> +	int err;
> +
> +	err = stk_panel_disable(&stk->base);
> +	if (err < 0)
> +		dev_err(&dsi->dev, "failed to disable panel: %d\n", err) > +
> +	err = mipi_dsi_detach(dsi);
> +	if (err < 0)
> +		dev_err(&dsi->dev, "failed to detach from DSI host: %d\n",
> +			err);
> +
> +	stk_panel_del(stk);

Move the content of stk_panel_del() here, no need for a separate function.


> +}
> +
> +static void stk_panel_shutdown(struct mipi_dsi_device *dsi)
> +{
> +	struct stk_panel *stk = mipi_dsi_get_drvdata(dsi);
> +
> +	stk_panel_disable(&stk->base);
> +}
> +
> +static struct mipi_dsi_driver stk_panel_driver = {
> +	.driver = {
> +		.name = "panel-startek-kd070fhfid015",
> +		.of_match_table = stk_of_match,
> +	},
> +	.probe = stk_panel_probe,
> +	.remove = stk_panel_remove,
> +	.shutdown = stk_panel_shutdown,
> +};
> +module_mipi_dsi_driver(stk_panel_driver);
> +
> +MODULE_AUTHOR("Guillaume La Roque <glaroque@baylibre.com>");
> +MODULE_DESCRIPTION("STARTEK KD070FHFID015");
> +MODULE_LICENSE("GPL");
> 

Thanks,
Neil


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 21/21] panel: startek-kd070fhfid015: add support of this display
@ 2023-03-09 14:51     ` Neil Armstrong
  0 siblings, 0 replies; 174+ messages in thread
From: Neil Armstrong @ 2023-03-09 14:51 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, linux-pwm, devicetree, linux-kernel

Hi,

On 09/03/2023 15:23, Alexandre Mergnat wrote:
> From: Guillaume La Roque <glaroque@baylibre.com>
> 
> This driver support the Startek KD070FHFID015, which is a 7-inch TFT LCD
> display using MIPI DSI interface.
> 
> Signed-off-by: Guillaume La Roque <glaroque@baylibre.com>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>   drivers/gpu/drm/panel/Kconfig                      |  12 +
>   drivers/gpu/drm/panel/Makefile                     |   1 +
>   .../gpu/drm/panel/panel-startek-kd070fhfid015.c    | 483 +++++++++++++++++++++
>   3 files changed, 496 insertions(+)
> 
> diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig
> index 737edcdf9eef..3fccf025013b 100644
> --- a/drivers/gpu/drm/panel/Kconfig
> +++ b/drivers/gpu/drm/panel/Kconfig
> @@ -666,6 +666,17 @@ config DRM_PANEL_SONY_TULIP_TRULY_NT35521
>   	  NT35521 1280x720 video mode panel as found on Sony Xperia M4
>   	  Aqua phone.
>   
> +config DRM_PANEL_STARTEK_KD070FHFID015
> +	tristate "STARTEK KD070FHFID015 panel"
> +	depends on OF
> +	depends on DRM_MIPI_DSI
> +	depends on BACKLIGHT_CLASS_DEVICE
> +	help
> +	  Say Y here if you want to enable support for STARTEK KD070FHFID015 DSI panel
> +	  based on RENESAS-R69429 controller. The pannel is a 7-inch TFT LCD display
> +	  with a resolution of 1024 x 600 pixels. It provides a MIPI DSI interface to
> +	  the host, a built-in LED backlight and touch controller.
> +
>   config DRM_PANEL_TDO_TL070WSH30
>   	tristate "TDO TL070WSH30 DSI panel"
>   	depends on OF
> @@ -736,4 +747,5 @@ config DRM_PANEL_XINPENG_XPP055C272
>   	  Say Y here if you want to enable support for the Xinpeng
>   	  XPP055C272 controller for 720x1280 LCD panels with MIPI/RGB/SPI
>   	  system interfaces.
> +

Spurious new line

>   endmenu
> diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile
> index f8f9d9f6a307..35771fc51187 100644
> --- a/drivers/gpu/drm/panel/Makefile
> +++ b/drivers/gpu/drm/panel/Makefile
> @@ -67,6 +67,7 @@ obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7703) += panel-sitronix-st7703.o
>   obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7789V) += panel-sitronix-st7789v.o
>   obj-$(CONFIG_DRM_PANEL_SONY_ACX565AKM) += panel-sony-acx565akm.o
>   obj-$(CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521) += panel-sony-tulip-truly-nt35521.o
> +obj-$(CONFIG_DRM_PANEL_STARTEK_KD070FHFID015) += panel-startek-kd070fhfid015.o
>   obj-$(CONFIG_DRM_PANEL_TDO_TL070WSH30) += panel-tdo-tl070wsh30.o
>   obj-$(CONFIG_DRM_PANEL_TPO_TD028TTEC1) += panel-tpo-td028ttec1.o
>   obj-$(CONFIG_DRM_PANEL_TPO_TD043MTEA1) += panel-tpo-td043mtea1.o
> diff --git a/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c b/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c
> new file mode 100644
> index 000000000000..88466bf6428d
> --- /dev/null
> +++ b/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c
> @@ -0,0 +1,483 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright (C) 2016 InforceComputing
> + * Copyright (C) 2016 Linaro Ltd
> + * Copyright (C) 2023 BayLibre, SAS
> + *
> + * Author:

NIT: Authors

> + * - Vinay Simha BN <simhavcs@gmail.com>
> + * - Sumit Semwal <sumit.semwal@linaro.org>
> + * - Guillaume La Roque <glaroque@baylibre.com>
> + *
> + */
> +
> +#include <linux/backlight.h>
> +#include <linux/delay.h>
> +#include <linux/gpio/consumer.h>
> +#include <linux/module.h>
> +#include <linux/of.h>
> +#include <linux/regulator/consumer.h>
> +
> +#include <video/mipi_display.h>
> +
> +#include <drm/drm_crtc.h>

Is this include needed ?

> +#include <drm/drm_mipi_dsi.h>
> +#include <drm/drm_modes.h>
> +#include <drm/drm_panel.h>
> +
> +#define DSI_REG_MCAP	0xB0
> +#define DSI_REG_IS	0xB3 /* Interface Setting */
> +#define DSI_REG_IIS	0xB4 /* Interface ID Setting */
> +#define DSI_REG_CTRL	0xB6
> +
> +struct stk_panel {
> +	struct drm_panel base;
> +	struct mipi_dsi_device *dsi;
> +
> +	struct gpio_desc *enable_gpio;
> +	struct gpio_desc *reset_gpio;
> +	struct gpio_desc *dcdc_en_gpio;

Isn't this "DCDC" a regulator ???

> +	struct backlight_device *backlight;
> +	struct regulator *iovcc_supply;
> +	struct regulator *power_supply;
> +
> +	bool prepared;
> +	bool enabled;
> +
> +	const struct drm_display_mode *mode;
> +};
> +
> +static inline struct stk_panel *to_stk_panel(struct drm_panel *panel)
> +{
> +	return container_of(panel, struct stk_panel, base);
> +}
> +
> +static int stk_panel_init(struct stk_panel *stk)
> +{
> +	struct mipi_dsi_device *dsi = stk->dsi;
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	ret = mipi_dsi_dcs_soft_reset(dsi);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to mipi_dsi_dcs_soft_reset: %d\n", ret);
> +		return ret;
> +	}
> +	mdelay(5);
> +
> +	ret = mipi_dsi_dcs_exit_sleep_mode(dsi);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set exit sleep mode: %d\n", ret);
> +		return ret;
> +	}
> +	msleep(120);
> +
> +	ret = mipi_dsi_generic_write(dsi, (u8[]){DSI_REG_MCAP, 0x04}, 2);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set mcap: %d\n", ret);
> +		return ret;
> +	}
> +	/* Interface setting, video mode */
> +	ret = mipi_dsi_generic_write(dsi,
> +			(u8[]){DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00}, 6);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set display interface setting: %d\n",
> +			ret);
> +		return ret;
> +	}

Use mipi_dsi_generic_write_seq(dsi, DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00); instead,
it's simpler and doesn't need explicit return check.

> +
> +	ret = mipi_dsi_generic_write(dsi, (u8[]){DSI_REG_IIS, 0x0C, 0x00}, 3);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set Interface ID setting: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_generic_write(dsi, (u8[]){ DSI_REG_CTRL, 0x3A, 0xD3}, 3);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set DSI control: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_set_display_brightness(dsi, 0x77);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to write display brightness: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_write(dsi, MIPI_DCS_WRITE_CONTROL_DISPLAY,
> +				 (u8[]){ MIPI_DCS_WRITE_MEMORY_START }, 1);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to write control display: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_set_pixel_format(dsi, 0x77);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set pixel format: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_set_column_address(dsi, 0, stk->mode->hdisplay - 1);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set column address: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_set_page_address(dsi, 0, stk->mode->vdisplay - 1);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set page address: %d\n", ret);
> +		return ret;
> +	}
> +
> +	return 0;
> +}
> +
> +static int stk_panel_on(struct stk_panel *stk)
> +{
> +	struct mipi_dsi_device *dsi = stk->dsi;
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	ret = mipi_dsi_dcs_set_display_on(dsi);
> +	if (ret < 0)
> +		dev_err(dev, "failed to set display on: %d\n", ret);
> +
> +	mdelay(20);
> +
> +	return ret;
> +}
> +
> +static void stk_panel_off(struct stk_panel *stk)
> +{
> +	struct mipi_dsi_device *dsi = stk->dsi;
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
> +
> +	ret = mipi_dsi_dcs_set_display_off(dsi);
> +	if (ret < 0)
> +		dev_err(dev, "failed to set display off: %d\n", ret);
> +
> +	ret = mipi_dsi_dcs_enter_sleep_mode(dsi);
> +	if (ret < 0)
> +		dev_err(dev, "failed to enter sleep mode: %d\n", ret);
> +
> +	msleep(100);
> +}
> +
> +static int stk_panel_disable(struct drm_panel *panel)
> +{
> +	struct stk_panel *stk = to_stk_panel(panel);
> +
> +	if (!stk->enabled)
> +		return 0;
> +
> +	backlight_disable(stk->backlight);
> +
> +	stk->enabled = false;
> +
> +	return 0;
> +}
> +
> +static int stk_panel_unprepare(struct drm_panel *panel)
> +{
> +	struct stk_panel *stk = to_stk_panel(panel);
> +
> +	if (!stk->prepared)
> +		return 0;
> +
> +	stk_panel_off(stk);
> +	regulator_disable(stk->iovcc_supply);
> +	regulator_disable(stk->power_supply);
> +	gpiod_set_value(stk->reset_gpio, 0);
> +	gpiod_set_value(stk->dcdc_en_gpio, 1);
> +
> +	stk->prepared = false;
> +
> +	return 0;
> +}
> +
> +static int stk_panel_prepare(struct drm_panel *panel)
> +{
> +	struct stk_panel *stk = to_stk_panel(panel);
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	if (stk->prepared)
> +		return 0;
> +
> +	gpiod_set_value(stk->reset_gpio, 0);
> +	gpiod_set_value(stk->dcdc_en_gpio, 0);
> +	gpiod_set_value(stk->enable_gpio, 0);
> +	ret = regulator_enable(stk->iovcc_supply);
> +	if (ret < 0)
> +		return ret;
> +	mdelay(8);
> +	ret = regulator_enable(stk->power_supply);
> +	if (ret < 0)
> +		goto iovccoff;

Add blank lines between code blocks for readability

> +	mdelay(20);
> +	gpiod_set_value(stk->dcdc_en_gpio, 1);
> +	mdelay(20);
> +	gpiod_set_value(stk->reset_gpio, 1);
> +	mdelay(10);
> +
> +	ret = stk_panel_init(stk);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to init panel: %d\n", ret);
> +		goto poweroff;
> +	}
> +
> +	ret = stk_panel_on(stk);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set panel on: %d\n", ret);
> +		goto poweroff;
> +	}
> +
> +	stk->prepared = true;
> +
> +	return 0;
> +
> +poweroff:
> +	regulator_disable(stk->power_supply);
> +iovccoff:
> +	regulator_disable(stk->iovcc_supply);
> +	gpiod_set_value(stk->enable_gpio, 0);
> +	gpiod_set_value(stk->reset_gpio, 0);
> +	gpiod_set_value(stk->dcdc_en_gpio, 0);
> +
> +	return ret;
> +}
> +
> +static int stk_panel_enable(struct drm_panel *panel)
> +{
> +	struct stk_panel *stk = to_stk_panel(panel);
> +
> +	if (stk->enabled)
> +		return 0;
> +
> +	backlight_enable(stk->backlight);
> +
> +	stk->enabled = true;
> +
> +	return 0;
> +}

Is this really needed ? the backlight core will enable it automatically.

> +
> +static const struct drm_display_mode default_mode = {
> +		.clock = 163204,
> +		.hdisplay = 1200,
> +		.hsync_start = 1200 + 144,
> +		.hsync_end = 1200 + 144 + 16,
> +		.htotal = 1200 + 144 + 16 + 45, // 1405

No need for the comment

> +		.vdisplay = 1920,
> +		.vsync_start = 1920 + 8,
> +		.vsync_end = 1920 + 8 + 4,
> +		.vtotal = 1920 + 8 + 4 + 4, // 1936

You can also set .width_mm & .height_mm and copy them to connector->display_info later.

> +};
> +
> +static int stk_panel_get_modes(struct drm_panel *panel,
> +				 struct drm_connector *connector)
> +{
> +	struct drm_display_mode *mode;
> +
> +	mode = drm_mode_duplicate(connector->dev, &default_mode);
> +	if (!mode) {
> +		dev_err(panel->dev, "failed to add mode %ux%ux@%u\n",
> +			default_mode.hdisplay, default_mode.vdisplay,
> +			drm_mode_vrefresh(&default_mode));
> +		return -ENOMEM;
> +	}
> +
> +	drm_mode_set_name(mode);
> +
> +	drm_mode_probed_add(connector, mode);
> +
> +	connector->display_info.width_mm = 95;
> +	connector->display_info.height_mm = 151;
> +
> +	return 1;
> +}
> +
> +static int dsi_dcs_bl_get_brightness(struct backlight_device *bl)
> +{
> +	struct mipi_dsi_device *dsi = bl_get_data(bl);
> +	int ret;
> +	u16 brightness = bl->props.brightness;
> +
> +	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
> +
> +	ret = mipi_dsi_dcs_get_display_brightness(dsi, &brightness);
> +	if (ret < 0)
> +		return ret;
> +	dsi->mode_flags |= MIPI_DSI_MODE_LPM;
> +
> +	return brightness & 0xff;
> +}
> +
> +static int dsi_dcs_bl_update_status(struct backlight_device *bl)
> +{
> +	struct mipi_dsi_device *dsi = bl_get_data(bl);
> +	struct device *dev = &dsi->dev;
> +	int ret;
> +
> +	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
> +
> +	ret = mipi_dsi_dcs_set_display_brightness(dsi, bl->props.brightness);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set DSI control: %d\n", ret);
> +		return ret;
> +	}
> +
> +	dsi->mode_flags |= MIPI_DSI_MODE_LPM;
> +
> +	return 0;
> +}
> +
> +static const struct backlight_ops dsi_bl_ops = {
> +	.update_status = dsi_dcs_bl_update_status,
> +	.get_brightness = dsi_dcs_bl_get_brightness,
> +};
> +
> +static struct backlight_device *
> +drm_panel_create_dsi_backlight(struct mipi_dsi_device *dsi)
> +{
> +	struct device *dev = &dsi->dev;
> +	struct backlight_properties props;
> +
> +	memset(&props, 0, sizeof(props));
> +	props.type = BACKLIGHT_RAW;
> +	props.brightness = 255;
> +	props.max_brightness = 255;

You could write :
struct backlight_properties props = {
	.type = BACKLIGHT_RAW,
	.brightness = 255,
	.max_brightness = 255,
};

> +
> +	return devm_backlight_device_register(dev, dev_name(dev), dev, dsi,
> +					      &dsi_bl_ops, &props);
> +}
> +
> +static const struct drm_panel_funcs stk_panel_funcs = {
> +	.disable = stk_panel_disable,
> +	.unprepare = stk_panel_unprepare,
> +	.prepare = stk_panel_prepare,
> +	.enable = stk_panel_enable,
> +	.get_modes = stk_panel_get_modes,
> +};
> +
> +static const struct of_device_id stk_of_match[] = {
> +	{ .compatible = "startek,kd070fhfid015", },
> +	{ }
> +};
> +MODULE_DEVICE_TABLE(of, stk_of_match);
> +
> +static int stk_panel_add(struct stk_panel *stk)
> +{
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	stk->mode = &default_mode;
> +
> +	stk->iovcc_supply = devm_regulator_get(dev, "iovcc");
> +	if (IS_ERR(stk->iovcc_supply))
> +		return PTR_ERR(stk->iovcc_supply);
> +
> +	stk->power_supply = devm_regulator_get(dev, "power");
> +	if (IS_ERR(stk->power_supply))
> +		return PTR_ERR(stk->power_supply);

You can switch to devm_regulator_bulk_get() to simplify code.

> +
> +	stk->reset_gpio = devm_gpiod_get(dev, "reset", GPIOD_OUT_LOW);
> +	if (IS_ERR(stk->reset_gpio)) {
> +		ret = PTR_ERR(stk->reset_gpio);
> +		dev_err(dev, "cannot get reset-gpios %d\n", ret);
> +		return ret;
> +	}
> +
> +	stk->dcdc_en_gpio = devm_gpiod_get(dev, "dcdc", GPIOD_OUT_LOW);
> +	if (IS_ERR(stk->dcdc_en_gpio)) {
> +		ret = PTR_ERR(stk->dcdc_en_gpio);
> +		dev_err(dev, "cannot get dcdc-en-gpio %d\n", ret);
> +		return ret;
> +	}
> +
> +	stk->backlight = drm_panel_create_dsi_backlight(stk->dsi);
> +	if (IS_ERR(stk->backlight)) {
> +		ret = PTR_ERR(stk->backlight);
> +		dev_err(dev, "failed to register backlight %d\n", ret);
> +		return ret;
> +	}
> +
> +	drm_panel_init(&stk->base, &stk->dsi->dev, &stk_panel_funcs,
> +		       DRM_MODE_CONNECTOR_DSI);
> +
> +	drm_panel_add(&stk->base);
> +
> +	return 0;
> +}
> +
> +static void stk_panel_del(struct stk_panel *stk)
> +{
> +	if (stk->base.dev)
> +		drm_panel_remove(&stk->base);

Is the if() necessary ? Not sure, you can remove it and directly call drm_panel_remove(&stk->base);

> +}
> +
> +static int stk_panel_probe(struct mipi_dsi_device *dsi)
> +{
> +	struct stk_panel *stk;
> +	int ret;
> +
> +	dsi->lanes = 4;
> +	dsi->format = MIPI_DSI_FMT_RGB888;
> +	dsi->mode_flags = (MIPI_DSI_MODE_VIDEO |
> +			   MIPI_DSI_MODE_LPM);

This could be on a single line

> +
> +	stk = devm_kzalloc(&dsi->dev, sizeof(*stk), GFP_KERNEL);
> +	if (!stk)
> +		return -ENOMEM;
> +
> +	mipi_dsi_set_drvdata(dsi, stk);
> +
> +	stk->dsi = dsi;
> +
> +	ret = stk_panel_add(stk);
> +	if (ret < 0)
> +		return ret;
> +
> +	return mipi_dsi_attach(dsi);

You should call drm_panel_remove() if attach fails

> +}
> +
> +static void stk_panel_remove(struct mipi_dsi_device *dsi)
> +{
> +	struct stk_panel *stk = mipi_dsi_get_drvdata(dsi);
> +	int err;
> +
> +	err = stk_panel_disable(&stk->base);
> +	if (err < 0)
> +		dev_err(&dsi->dev, "failed to disable panel: %d\n", err) > +
> +	err = mipi_dsi_detach(dsi);
> +	if (err < 0)
> +		dev_err(&dsi->dev, "failed to detach from DSI host: %d\n",
> +			err);
> +
> +	stk_panel_del(stk);

Move the content of stk_panel_del() here, no need for a separate function.


> +}
> +
> +static void stk_panel_shutdown(struct mipi_dsi_device *dsi)
> +{
> +	struct stk_panel *stk = mipi_dsi_get_drvdata(dsi);
> +
> +	stk_panel_disable(&stk->base);
> +}
> +
> +static struct mipi_dsi_driver stk_panel_driver = {
> +	.driver = {
> +		.name = "panel-startek-kd070fhfid015",
> +		.of_match_table = stk_of_match,
> +	},
> +	.probe = stk_panel_probe,
> +	.remove = stk_panel_remove,
> +	.shutdown = stk_panel_shutdown,
> +};
> +module_mipi_dsi_driver(stk_panel_driver);
> +
> +MODULE_AUTHOR("Guillaume La Roque <glaroque@baylibre.com>");
> +MODULE_DESCRIPTION("STARTEK KD070FHFID015");
> +MODULE_LICENSE("GPL");
> 

Thanks,
Neil


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 21/21] panel: startek-kd070fhfid015: add support of this display
@ 2023-03-09 14:51     ` Neil Armstrong
  0 siblings, 0 replies; 174+ messages in thread
From: Neil Armstrong @ 2023-03-09 14:51 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, linux-pwm, devicetree, linux-kernel

Hi,

On 09/03/2023 15:23, Alexandre Mergnat wrote:
> From: Guillaume La Roque <glaroque@baylibre.com>
> 
> This driver support the Startek KD070FHFID015, which is a 7-inch TFT LCD
> display using MIPI DSI interface.
> 
> Signed-off-by: Guillaume La Roque <glaroque@baylibre.com>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>   drivers/gpu/drm/panel/Kconfig                      |  12 +
>   drivers/gpu/drm/panel/Makefile                     |   1 +
>   .../gpu/drm/panel/panel-startek-kd070fhfid015.c    | 483 +++++++++++++++++++++
>   3 files changed, 496 insertions(+)
> 
> diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig
> index 737edcdf9eef..3fccf025013b 100644
> --- a/drivers/gpu/drm/panel/Kconfig
> +++ b/drivers/gpu/drm/panel/Kconfig
> @@ -666,6 +666,17 @@ config DRM_PANEL_SONY_TULIP_TRULY_NT35521
>   	  NT35521 1280x720 video mode panel as found on Sony Xperia M4
>   	  Aqua phone.
>   
> +config DRM_PANEL_STARTEK_KD070FHFID015
> +	tristate "STARTEK KD070FHFID015 panel"
> +	depends on OF
> +	depends on DRM_MIPI_DSI
> +	depends on BACKLIGHT_CLASS_DEVICE
> +	help
> +	  Say Y here if you want to enable support for STARTEK KD070FHFID015 DSI panel
> +	  based on RENESAS-R69429 controller. The pannel is a 7-inch TFT LCD display
> +	  with a resolution of 1024 x 600 pixels. It provides a MIPI DSI interface to
> +	  the host, a built-in LED backlight and touch controller.
> +
>   config DRM_PANEL_TDO_TL070WSH30
>   	tristate "TDO TL070WSH30 DSI panel"
>   	depends on OF
> @@ -736,4 +747,5 @@ config DRM_PANEL_XINPENG_XPP055C272
>   	  Say Y here if you want to enable support for the Xinpeng
>   	  XPP055C272 controller for 720x1280 LCD panels with MIPI/RGB/SPI
>   	  system interfaces.
> +

Spurious new line

>   endmenu
> diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile
> index f8f9d9f6a307..35771fc51187 100644
> --- a/drivers/gpu/drm/panel/Makefile
> +++ b/drivers/gpu/drm/panel/Makefile
> @@ -67,6 +67,7 @@ obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7703) += panel-sitronix-st7703.o
>   obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7789V) += panel-sitronix-st7789v.o
>   obj-$(CONFIG_DRM_PANEL_SONY_ACX565AKM) += panel-sony-acx565akm.o
>   obj-$(CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521) += panel-sony-tulip-truly-nt35521.o
> +obj-$(CONFIG_DRM_PANEL_STARTEK_KD070FHFID015) += panel-startek-kd070fhfid015.o
>   obj-$(CONFIG_DRM_PANEL_TDO_TL070WSH30) += panel-tdo-tl070wsh30.o
>   obj-$(CONFIG_DRM_PANEL_TPO_TD028TTEC1) += panel-tpo-td028ttec1.o
>   obj-$(CONFIG_DRM_PANEL_TPO_TD043MTEA1) += panel-tpo-td043mtea1.o
> diff --git a/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c b/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c
> new file mode 100644
> index 000000000000..88466bf6428d
> --- /dev/null
> +++ b/drivers/gpu/drm/panel/panel-startek-kd070fhfid015.c
> @@ -0,0 +1,483 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright (C) 2016 InforceComputing
> + * Copyright (C) 2016 Linaro Ltd
> + * Copyright (C) 2023 BayLibre, SAS
> + *
> + * Author:

NIT: Authors

> + * - Vinay Simha BN <simhavcs@gmail.com>
> + * - Sumit Semwal <sumit.semwal@linaro.org>
> + * - Guillaume La Roque <glaroque@baylibre.com>
> + *
> + */
> +
> +#include <linux/backlight.h>
> +#include <linux/delay.h>
> +#include <linux/gpio/consumer.h>
> +#include <linux/module.h>
> +#include <linux/of.h>
> +#include <linux/regulator/consumer.h>
> +
> +#include <video/mipi_display.h>
> +
> +#include <drm/drm_crtc.h>

Is this include needed ?

> +#include <drm/drm_mipi_dsi.h>
> +#include <drm/drm_modes.h>
> +#include <drm/drm_panel.h>
> +
> +#define DSI_REG_MCAP	0xB0
> +#define DSI_REG_IS	0xB3 /* Interface Setting */
> +#define DSI_REG_IIS	0xB4 /* Interface ID Setting */
> +#define DSI_REG_CTRL	0xB6
> +
> +struct stk_panel {
> +	struct drm_panel base;
> +	struct mipi_dsi_device *dsi;
> +
> +	struct gpio_desc *enable_gpio;
> +	struct gpio_desc *reset_gpio;
> +	struct gpio_desc *dcdc_en_gpio;

Isn't this "DCDC" a regulator ???

> +	struct backlight_device *backlight;
> +	struct regulator *iovcc_supply;
> +	struct regulator *power_supply;
> +
> +	bool prepared;
> +	bool enabled;
> +
> +	const struct drm_display_mode *mode;
> +};
> +
> +static inline struct stk_panel *to_stk_panel(struct drm_panel *panel)
> +{
> +	return container_of(panel, struct stk_panel, base);
> +}
> +
> +static int stk_panel_init(struct stk_panel *stk)
> +{
> +	struct mipi_dsi_device *dsi = stk->dsi;
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	ret = mipi_dsi_dcs_soft_reset(dsi);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to mipi_dsi_dcs_soft_reset: %d\n", ret);
> +		return ret;
> +	}
> +	mdelay(5);
> +
> +	ret = mipi_dsi_dcs_exit_sleep_mode(dsi);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set exit sleep mode: %d\n", ret);
> +		return ret;
> +	}
> +	msleep(120);
> +
> +	ret = mipi_dsi_generic_write(dsi, (u8[]){DSI_REG_MCAP, 0x04}, 2);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set mcap: %d\n", ret);
> +		return ret;
> +	}
> +	/* Interface setting, video mode */
> +	ret = mipi_dsi_generic_write(dsi,
> +			(u8[]){DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00}, 6);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set display interface setting: %d\n",
> +			ret);
> +		return ret;
> +	}

Use mipi_dsi_generic_write_seq(dsi, DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00); instead,
it's simpler and doesn't need explicit return check.

> +
> +	ret = mipi_dsi_generic_write(dsi, (u8[]){DSI_REG_IIS, 0x0C, 0x00}, 3);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set Interface ID setting: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_generic_write(dsi, (u8[]){ DSI_REG_CTRL, 0x3A, 0xD3}, 3);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set DSI control: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_set_display_brightness(dsi, 0x77);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to write display brightness: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_write(dsi, MIPI_DCS_WRITE_CONTROL_DISPLAY,
> +				 (u8[]){ MIPI_DCS_WRITE_MEMORY_START }, 1);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to write control display: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_set_pixel_format(dsi, 0x77);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set pixel format: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_set_column_address(dsi, 0, stk->mode->hdisplay - 1);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set column address: %d\n", ret);
> +		return ret;
> +	}
> +
> +	ret = mipi_dsi_dcs_set_page_address(dsi, 0, stk->mode->vdisplay - 1);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set page address: %d\n", ret);
> +		return ret;
> +	}
> +
> +	return 0;
> +}
> +
> +static int stk_panel_on(struct stk_panel *stk)
> +{
> +	struct mipi_dsi_device *dsi = stk->dsi;
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	ret = mipi_dsi_dcs_set_display_on(dsi);
> +	if (ret < 0)
> +		dev_err(dev, "failed to set display on: %d\n", ret);
> +
> +	mdelay(20);
> +
> +	return ret;
> +}
> +
> +static void stk_panel_off(struct stk_panel *stk)
> +{
> +	struct mipi_dsi_device *dsi = stk->dsi;
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
> +
> +	ret = mipi_dsi_dcs_set_display_off(dsi);
> +	if (ret < 0)
> +		dev_err(dev, "failed to set display off: %d\n", ret);
> +
> +	ret = mipi_dsi_dcs_enter_sleep_mode(dsi);
> +	if (ret < 0)
> +		dev_err(dev, "failed to enter sleep mode: %d\n", ret);
> +
> +	msleep(100);
> +}
> +
> +static int stk_panel_disable(struct drm_panel *panel)
> +{
> +	struct stk_panel *stk = to_stk_panel(panel);
> +
> +	if (!stk->enabled)
> +		return 0;
> +
> +	backlight_disable(stk->backlight);
> +
> +	stk->enabled = false;
> +
> +	return 0;
> +}
> +
> +static int stk_panel_unprepare(struct drm_panel *panel)
> +{
> +	struct stk_panel *stk = to_stk_panel(panel);
> +
> +	if (!stk->prepared)
> +		return 0;
> +
> +	stk_panel_off(stk);
> +	regulator_disable(stk->iovcc_supply);
> +	regulator_disable(stk->power_supply);
> +	gpiod_set_value(stk->reset_gpio, 0);
> +	gpiod_set_value(stk->dcdc_en_gpio, 1);
> +
> +	stk->prepared = false;
> +
> +	return 0;
> +}
> +
> +static int stk_panel_prepare(struct drm_panel *panel)
> +{
> +	struct stk_panel *stk = to_stk_panel(panel);
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	if (stk->prepared)
> +		return 0;
> +
> +	gpiod_set_value(stk->reset_gpio, 0);
> +	gpiod_set_value(stk->dcdc_en_gpio, 0);
> +	gpiod_set_value(stk->enable_gpio, 0);
> +	ret = regulator_enable(stk->iovcc_supply);
> +	if (ret < 0)
> +		return ret;
> +	mdelay(8);
> +	ret = regulator_enable(stk->power_supply);
> +	if (ret < 0)
> +		goto iovccoff;

Add blank lines between code blocks for readability

> +	mdelay(20);
> +	gpiod_set_value(stk->dcdc_en_gpio, 1);
> +	mdelay(20);
> +	gpiod_set_value(stk->reset_gpio, 1);
> +	mdelay(10);
> +
> +	ret = stk_panel_init(stk);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to init panel: %d\n", ret);
> +		goto poweroff;
> +	}
> +
> +	ret = stk_panel_on(stk);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set panel on: %d\n", ret);
> +		goto poweroff;
> +	}
> +
> +	stk->prepared = true;
> +
> +	return 0;
> +
> +poweroff:
> +	regulator_disable(stk->power_supply);
> +iovccoff:
> +	regulator_disable(stk->iovcc_supply);
> +	gpiod_set_value(stk->enable_gpio, 0);
> +	gpiod_set_value(stk->reset_gpio, 0);
> +	gpiod_set_value(stk->dcdc_en_gpio, 0);
> +
> +	return ret;
> +}
> +
> +static int stk_panel_enable(struct drm_panel *panel)
> +{
> +	struct stk_panel *stk = to_stk_panel(panel);
> +
> +	if (stk->enabled)
> +		return 0;
> +
> +	backlight_enable(stk->backlight);
> +
> +	stk->enabled = true;
> +
> +	return 0;
> +}

Is this really needed ? the backlight core will enable it automatically.

> +
> +static const struct drm_display_mode default_mode = {
> +		.clock = 163204,
> +		.hdisplay = 1200,
> +		.hsync_start = 1200 + 144,
> +		.hsync_end = 1200 + 144 + 16,
> +		.htotal = 1200 + 144 + 16 + 45, // 1405

No need for the comment

> +		.vdisplay = 1920,
> +		.vsync_start = 1920 + 8,
> +		.vsync_end = 1920 + 8 + 4,
> +		.vtotal = 1920 + 8 + 4 + 4, // 1936

You can also set .width_mm & .height_mm and copy them to connector->display_info later.

> +};
> +
> +static int stk_panel_get_modes(struct drm_panel *panel,
> +				 struct drm_connector *connector)
> +{
> +	struct drm_display_mode *mode;
> +
> +	mode = drm_mode_duplicate(connector->dev, &default_mode);
> +	if (!mode) {
> +		dev_err(panel->dev, "failed to add mode %ux%ux@%u\n",
> +			default_mode.hdisplay, default_mode.vdisplay,
> +			drm_mode_vrefresh(&default_mode));
> +		return -ENOMEM;
> +	}
> +
> +	drm_mode_set_name(mode);
> +
> +	drm_mode_probed_add(connector, mode);
> +
> +	connector->display_info.width_mm = 95;
> +	connector->display_info.height_mm = 151;
> +
> +	return 1;
> +}
> +
> +static int dsi_dcs_bl_get_brightness(struct backlight_device *bl)
> +{
> +	struct mipi_dsi_device *dsi = bl_get_data(bl);
> +	int ret;
> +	u16 brightness = bl->props.brightness;
> +
> +	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
> +
> +	ret = mipi_dsi_dcs_get_display_brightness(dsi, &brightness);
> +	if (ret < 0)
> +		return ret;
> +	dsi->mode_flags |= MIPI_DSI_MODE_LPM;
> +
> +	return brightness & 0xff;
> +}
> +
> +static int dsi_dcs_bl_update_status(struct backlight_device *bl)
> +{
> +	struct mipi_dsi_device *dsi = bl_get_data(bl);
> +	struct device *dev = &dsi->dev;
> +	int ret;
> +
> +	dsi->mode_flags &= ~MIPI_DSI_MODE_LPM;
> +
> +	ret = mipi_dsi_dcs_set_display_brightness(dsi, bl->props.brightness);
> +	if (ret < 0) {
> +		dev_err(dev, "failed to set DSI control: %d\n", ret);
> +		return ret;
> +	}
> +
> +	dsi->mode_flags |= MIPI_DSI_MODE_LPM;
> +
> +	return 0;
> +}
> +
> +static const struct backlight_ops dsi_bl_ops = {
> +	.update_status = dsi_dcs_bl_update_status,
> +	.get_brightness = dsi_dcs_bl_get_brightness,
> +};
> +
> +static struct backlight_device *
> +drm_panel_create_dsi_backlight(struct mipi_dsi_device *dsi)
> +{
> +	struct device *dev = &dsi->dev;
> +	struct backlight_properties props;
> +
> +	memset(&props, 0, sizeof(props));
> +	props.type = BACKLIGHT_RAW;
> +	props.brightness = 255;
> +	props.max_brightness = 255;

You could write :
struct backlight_properties props = {
	.type = BACKLIGHT_RAW,
	.brightness = 255,
	.max_brightness = 255,
};

> +
> +	return devm_backlight_device_register(dev, dev_name(dev), dev, dsi,
> +					      &dsi_bl_ops, &props);
> +}
> +
> +static const struct drm_panel_funcs stk_panel_funcs = {
> +	.disable = stk_panel_disable,
> +	.unprepare = stk_panel_unprepare,
> +	.prepare = stk_panel_prepare,
> +	.enable = stk_panel_enable,
> +	.get_modes = stk_panel_get_modes,
> +};
> +
> +static const struct of_device_id stk_of_match[] = {
> +	{ .compatible = "startek,kd070fhfid015", },
> +	{ }
> +};
> +MODULE_DEVICE_TABLE(of, stk_of_match);
> +
> +static int stk_panel_add(struct stk_panel *stk)
> +{
> +	struct device *dev = &stk->dsi->dev;
> +	int ret;
> +
> +	stk->mode = &default_mode;
> +
> +	stk->iovcc_supply = devm_regulator_get(dev, "iovcc");
> +	if (IS_ERR(stk->iovcc_supply))
> +		return PTR_ERR(stk->iovcc_supply);
> +
> +	stk->power_supply = devm_regulator_get(dev, "power");
> +	if (IS_ERR(stk->power_supply))
> +		return PTR_ERR(stk->power_supply);

You can switch to devm_regulator_bulk_get() to simplify code.

> +
> +	stk->reset_gpio = devm_gpiod_get(dev, "reset", GPIOD_OUT_LOW);
> +	if (IS_ERR(stk->reset_gpio)) {
> +		ret = PTR_ERR(stk->reset_gpio);
> +		dev_err(dev, "cannot get reset-gpios %d\n", ret);
> +		return ret;
> +	}
> +
> +	stk->dcdc_en_gpio = devm_gpiod_get(dev, "dcdc", GPIOD_OUT_LOW);
> +	if (IS_ERR(stk->dcdc_en_gpio)) {
> +		ret = PTR_ERR(stk->dcdc_en_gpio);
> +		dev_err(dev, "cannot get dcdc-en-gpio %d\n", ret);
> +		return ret;
> +	}
> +
> +	stk->backlight = drm_panel_create_dsi_backlight(stk->dsi);
> +	if (IS_ERR(stk->backlight)) {
> +		ret = PTR_ERR(stk->backlight);
> +		dev_err(dev, "failed to register backlight %d\n", ret);
> +		return ret;
> +	}
> +
> +	drm_panel_init(&stk->base, &stk->dsi->dev, &stk_panel_funcs,
> +		       DRM_MODE_CONNECTOR_DSI);
> +
> +	drm_panel_add(&stk->base);
> +
> +	return 0;
> +}
> +
> +static void stk_panel_del(struct stk_panel *stk)
> +{
> +	if (stk->base.dev)
> +		drm_panel_remove(&stk->base);

Is the if() necessary ? Not sure, you can remove it and directly call drm_panel_remove(&stk->base);

> +}
> +
> +static int stk_panel_probe(struct mipi_dsi_device *dsi)
> +{
> +	struct stk_panel *stk;
> +	int ret;
> +
> +	dsi->lanes = 4;
> +	dsi->format = MIPI_DSI_FMT_RGB888;
> +	dsi->mode_flags = (MIPI_DSI_MODE_VIDEO |
> +			   MIPI_DSI_MODE_LPM);

This could be on a single line

> +
> +	stk = devm_kzalloc(&dsi->dev, sizeof(*stk), GFP_KERNEL);
> +	if (!stk)
> +		return -ENOMEM;
> +
> +	mipi_dsi_set_drvdata(dsi, stk);
> +
> +	stk->dsi = dsi;
> +
> +	ret = stk_panel_add(stk);
> +	if (ret < 0)
> +		return ret;
> +
> +	return mipi_dsi_attach(dsi);

You should call drm_panel_remove() if attach fails

> +}
> +
> +static void stk_panel_remove(struct mipi_dsi_device *dsi)
> +{
> +	struct stk_panel *stk = mipi_dsi_get_drvdata(dsi);
> +	int err;
> +
> +	err = stk_panel_disable(&stk->base);
> +	if (err < 0)
> +		dev_err(&dsi->dev, "failed to disable panel: %d\n", err) > +
> +	err = mipi_dsi_detach(dsi);
> +	if (err < 0)
> +		dev_err(&dsi->dev, "failed to detach from DSI host: %d\n",
> +			err);
> +
> +	stk_panel_del(stk);

Move the content of stk_panel_del() here, no need for a separate function.


> +}
> +
> +static void stk_panel_shutdown(struct mipi_dsi_device *dsi)
> +{
> +	struct stk_panel *stk = mipi_dsi_get_drvdata(dsi);
> +
> +	stk_panel_disable(&stk->base);
> +}
> +
> +static struct mipi_dsi_driver stk_panel_driver = {
> +	.driver = {
> +		.name = "panel-startek-kd070fhfid015",
> +		.of_match_table = stk_of_match,
> +	},
> +	.probe = stk_panel_probe,
> +	.remove = stk_panel_remove,
> +	.shutdown = stk_panel_shutdown,
> +};
> +module_mipi_dsi_driver(stk_panel_driver);
> +
> +MODULE_AUTHOR("Guillaume La Roque <glaroque@baylibre.com>");
> +MODULE_DESCRIPTION("STARTEK KD070FHFID015");
> +MODULE_LICENSE("GPL");
> 

Thanks,
Neil


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 02/21] dt-bindings: display: mediatek: ccorr: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-10  8:29     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:29 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Color Correction for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 02/21] dt-bindings: display: mediatek: ccorr: add binding for MT8365 SoC
@ 2023-03-10  8:29     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:29 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, linux-pwm, linux-kernel, dri-devel,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Color Correction for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 02/21] dt-bindings: display: mediatek: ccorr: add binding for MT8365 SoC
@ 2023-03-10  8:29     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:29 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Color Correction for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 03/21] dt-bindings: display: mediatek: color: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-10  8:35     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:35 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Color for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 03/21] dt-bindings: display: mediatek: color: add binding for MT8365 SoC
@ 2023-03-10  8:35     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:35 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, linux-pwm, linux-kernel, dri-devel,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Color for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 03/21] dt-bindings: display: mediatek: color: add binding for MT8365 SoC
@ 2023-03-10  8:35     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:35 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Color for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 04/21] dt-bindings: display: mediatek: dither: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-10  8:35     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:35 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Dither for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 04/21] dt-bindings: display: mediatek: dither: add binding for MT8365 SoC
@ 2023-03-10  8:35     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:35 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, linux-pwm, linux-kernel, dri-devel,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Dither for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 04/21] dt-bindings: display: mediatek: dither: add binding for MT8365 SoC
@ 2023-03-10  8:35     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:35 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Dither for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 05/21] dt-bindings: display: mediatek: dsi: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-10  8:35     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:35 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Serial Interface for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  .../bindings/display/mediatek/mediatek,dsi.yaml       | 19 ++++++++++++-------
>  1 file changed, 12 insertions(+), 7 deletions(-)
> 

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>


Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 05/21] dt-bindings: display: mediatek: dsi: add binding for MT8365 SoC
@ 2023-03-10  8:35     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:35 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, linux-pwm, linux-kernel, dri-devel,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Serial Interface for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  .../bindings/display/mediatek/mediatek,dsi.yaml       | 19 ++++++++++++-------
>  1 file changed, 12 insertions(+), 7 deletions(-)
> 

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>


Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 05/21] dt-bindings: display: mediatek: dsi: add binding for MT8365 SoC
@ 2023-03-10  8:35     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:35 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Serial Interface for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  .../bindings/display/mediatek/mediatek,dsi.yaml       | 19 ++++++++++++-------
>  1 file changed, 12 insertions(+), 7 deletions(-)
> 

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>


Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, linux-pwm, linux-kernel, dri-devel,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> From: Fabien Parent <fparent@baylibre.com>
> 
> DPI for MT8365 is compatible with MT8192 but requires an additional
> clock. Modify the documentation to requires this clock only on MT8365 SoCs.
> 
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  .../bindings/display/mediatek/mediatek,dpi.yaml    | 48 ++++++++++++++++++----
>  1 file changed, 39 insertions(+), 9 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> index 56511c4d4b9b..3f6cca81340c 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> @@ -17,15 +17,20 @@ description: |
>  
>  properties:
>    compatible:
> -    enum:
> -      - mediatek,mt2701-dpi
> -      - mediatek,mt7623-dpi
> -      - mediatek,mt8173-dpi
> -      - mediatek,mt8183-dpi
> -      - mediatek,mt8186-dpi
> -      - mediatek,mt8188-dp-intf
> -      - mediatek,mt8192-dpi
> -      - mediatek,mt8195-dp-intf
> +    oneOf:
> +      - enum:
> +          - mediatek,mt2701-dpi
> +          - mediatek,mt7623-dpi
> +          - mediatek,mt8173-dpi
> +          - mediatek,mt8183-dpi
> +          - mediatek,mt8186-dpi
> +          - mediatek,mt8188-dp-intf
> +          - mediatek,mt8192-dpi
> +          - mediatek,mt8195-dp-intf
> +      - items:
> +          - enum:
> +              - mediatek,mt8365-dpi
> +          - const: mediatek,mt8192-dpi
>  
>    reg:
>      maxItems: 1
> @@ -34,16 +39,20 @@ properties:
>      maxItems: 1
>  
>    clocks:
> +    minItems: 3
>      items:
>        - description: Pixel Clock
>        - description: Engine Clock
>        - description: DPI PLL
> +      - description: DPI Clock
>  
>    clock-names:
> +    minItems: 3
>      items:
>        - const: pixel
>        - const: engine
>        - const: pll
> +      - const: dpi
>  
>    pinctrl-0: true
>    pinctrl-1: true
> @@ -72,6 +81,27 @@ required:
>  
>  additionalProperties: false
>  
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: mediatek,mt8365-dpi
> +
> +    then:
> +      properties:
> +        clocks:
> +          maxItems: 4

We usually set minItems, so it is clear readable that you raise the
lower bracket. Code should be equivalent, but I would say this is less
readable (maxItems: 4 was actually implied by top-level list).



Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> From: Fabien Parent <fparent@baylibre.com>
> 
> DPI for MT8365 is compatible with MT8192 but requires an additional
> clock. Modify the documentation to requires this clock only on MT8365 SoCs.
> 
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  .../bindings/display/mediatek/mediatek,dpi.yaml    | 48 ++++++++++++++++++----
>  1 file changed, 39 insertions(+), 9 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> index 56511c4d4b9b..3f6cca81340c 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> @@ -17,15 +17,20 @@ description: |
>  
>  properties:
>    compatible:
> -    enum:
> -      - mediatek,mt2701-dpi
> -      - mediatek,mt7623-dpi
> -      - mediatek,mt8173-dpi
> -      - mediatek,mt8183-dpi
> -      - mediatek,mt8186-dpi
> -      - mediatek,mt8188-dp-intf
> -      - mediatek,mt8192-dpi
> -      - mediatek,mt8195-dp-intf
> +    oneOf:
> +      - enum:
> +          - mediatek,mt2701-dpi
> +          - mediatek,mt7623-dpi
> +          - mediatek,mt8173-dpi
> +          - mediatek,mt8183-dpi
> +          - mediatek,mt8186-dpi
> +          - mediatek,mt8188-dp-intf
> +          - mediatek,mt8192-dpi
> +          - mediatek,mt8195-dp-intf
> +      - items:
> +          - enum:
> +              - mediatek,mt8365-dpi
> +          - const: mediatek,mt8192-dpi
>  
>    reg:
>      maxItems: 1
> @@ -34,16 +39,20 @@ properties:
>      maxItems: 1
>  
>    clocks:
> +    minItems: 3
>      items:
>        - description: Pixel Clock
>        - description: Engine Clock
>        - description: DPI PLL
> +      - description: DPI Clock
>  
>    clock-names:
> +    minItems: 3
>      items:
>        - const: pixel
>        - const: engine
>        - const: pll
> +      - const: dpi
>  
>    pinctrl-0: true
>    pinctrl-1: true
> @@ -72,6 +81,27 @@ required:
>  
>  additionalProperties: false
>  
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: mediatek,mt8365-dpi
> +
> +    then:
> +      properties:
> +        clocks:
> +          maxItems: 4

We usually set minItems, so it is clear readable that you raise the
lower bracket. Code should be equivalent, but I would say this is less
readable (maxItems: 4 was actually implied by top-level list).



Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> From: Fabien Parent <fparent@baylibre.com>
> 
> DPI for MT8365 is compatible with MT8192 but requires an additional
> clock. Modify the documentation to requires this clock only on MT8365 SoCs.
> 
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  .../bindings/display/mediatek/mediatek,dpi.yaml    | 48 ++++++++++++++++++----
>  1 file changed, 39 insertions(+), 9 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> index 56511c4d4b9b..3f6cca81340c 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> @@ -17,15 +17,20 @@ description: |
>  
>  properties:
>    compatible:
> -    enum:
> -      - mediatek,mt2701-dpi
> -      - mediatek,mt7623-dpi
> -      - mediatek,mt8173-dpi
> -      - mediatek,mt8183-dpi
> -      - mediatek,mt8186-dpi
> -      - mediatek,mt8188-dp-intf
> -      - mediatek,mt8192-dpi
> -      - mediatek,mt8195-dp-intf
> +    oneOf:
> +      - enum:
> +          - mediatek,mt2701-dpi
> +          - mediatek,mt7623-dpi
> +          - mediatek,mt8173-dpi
> +          - mediatek,mt8183-dpi
> +          - mediatek,mt8186-dpi
> +          - mediatek,mt8188-dp-intf
> +          - mediatek,mt8192-dpi
> +          - mediatek,mt8195-dp-intf
> +      - items:
> +          - enum:
> +              - mediatek,mt8365-dpi
> +          - const: mediatek,mt8192-dpi
>  
>    reg:
>      maxItems: 1
> @@ -34,16 +39,20 @@ properties:
>      maxItems: 1
>  
>    clocks:
> +    minItems: 3
>      items:
>        - description: Pixel Clock
>        - description: Engine Clock
>        - description: DPI PLL
> +      - description: DPI Clock
>  
>    clock-names:
> +    minItems: 3
>      items:
>        - const: pixel
>        - const: engine
>        - const: pll
> +      - const: dpi
>  
>    pinctrl-0: true
>    pinctrl-1: true
> @@ -72,6 +81,27 @@ required:
>  
>  additionalProperties: false
>  
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: mediatek,mt8365-dpi
> +
> +    then:
> +      properties:
> +        clocks:
> +          maxItems: 4

We usually set minItems, so it is clear readable that you raise the
lower bracket. Code should be equivalent, but I would say this is less
readable (maxItems: 4 was actually implied by top-level list).



Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 08/21] dt-bindings: display: mediatek: gamma: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, linux-pwm, linux-kernel, dri-devel,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display GAMMA for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 08/21] dt-bindings: display: mediatek: gamma: add binding for MT8365 SoC
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display GAMMA for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 08/21] dt-bindings: display: mediatek: gamma: add binding for MT8365 SoC
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display GAMMA for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 09/21] dt-bindings: display: mediatek: ovl: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, linux-pwm, linux-kernel, dri-devel,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Overlay for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8192 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 09/21] dt-bindings: display: mediatek: ovl: add binding for MT8365 SoC
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Overlay for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8192 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 09/21] dt-bindings: display: mediatek: ovl: add binding for MT8365 SoC
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Overlay for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8192 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 10/21] dt-bindings: display: mediatek: rdma: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, linux-pwm, linux-kernel, dri-devel,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Data Path Read DMA for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 10/21] dt-bindings: display: mediatek: rdma: add binding for MT8365 SoC
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Data Path Read DMA for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 10/21] dt-bindings: display: mediatek: rdma: add binding for MT8365 SoC
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Data Path Read DMA for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 13/21] dt-bindings: pwm: add binding for mt8365 SoC
  2023-03-09 14:23   ` Alexandre Mergnat
  (?)
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, linux-pwm, linux-kernel, dri-devel,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel

On 09/03/2023 15:23, Alexandre Mergnat wrote:
> Display PWM for MT8365 is compatible with MT8183. Then, add MT8365 binding
> along with MT8183 SoC.
> 

Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 13/21] dt-bindings: pwm: add binding for mt8365 SoC
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:23, Alexandre Mergnat wrote:
> Display PWM for MT8365 is compatible with MT8183. Then, add MT8365 binding
> along with MT8183 SoC.
> 

Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 13/21] dt-bindings: pwm: add binding for mt8365 SoC
@ 2023-03-10  8:38     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:38 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:23, Alexandre Mergnat wrote:
> Display PWM for MT8365 is compatible with MT8183. Then, add MT8365 binding
> along with MT8183 SoC.
> 

Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
  2023-03-09 14:23   ` Alexandre Mergnat
  (?)
@ 2023-03-10  8:39     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:39 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:23, Alexandre Mergnat wrote:
> Add compatible for the MT8365 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> index ca0ca549257d..931d66893dff 100644
> --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> @@ -34,6 +34,7 @@ properties:
>        - mediatek,mt8186-mdp3-mutex
>        - mediatek,mt8192-disp-mutex
>        - mediatek,mt8195-disp-mutex
> +      - mediatek,mt8365-disp-mutex

All these look compatible. Either make mt8635 compatible with something
or even rework entire list and make everything compatible.

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
@ 2023-03-10  8:39     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:39 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, linux-pwm, linux-kernel, dri-devel,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel

On 09/03/2023 15:23, Alexandre Mergnat wrote:
> Add compatible for the MT8365 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> index ca0ca549257d..931d66893dff 100644
> --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> @@ -34,6 +34,7 @@ properties:
>        - mediatek,mt8186-mdp3-mutex
>        - mediatek,mt8192-disp-mutex
>        - mediatek,mt8195-disp-mutex
> +      - mediatek,mt8365-disp-mutex

All these look compatible. Either make mt8635 compatible with something
or even rework entire list and make everything compatible.

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
@ 2023-03-10  8:39     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:39 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:23, Alexandre Mergnat wrote:
> Add compatible for the MT8365 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> index ca0ca549257d..931d66893dff 100644
> --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> @@ -34,6 +34,7 @@ properties:
>        - mediatek,mt8186-mdp3-mutex
>        - mediatek,mt8192-disp-mutex
>        - mediatek,mt8195-disp-mutex
> +      - mediatek,mt8365-disp-mutex

All these look compatible. Either make mt8635 compatible with something
or even rework entire list and make everything compatible.

Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-10  8:41     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:41 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
@ 2023-03-10  8:41     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:41 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, linux-pwm, linux-kernel, dri-devel,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
@ 2023-03-10  8:41     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-10  8:41 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:22, Alexandre Mergnat wrote:
> Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 02/21] dt-bindings: display: mediatek: ccorr: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-13 14:54     ` Chun-Kuang Hu
  -1 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 14:54 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Color Correction for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
> index 63fb02014a56..fc999e614718 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
> @@ -32,6 +32,7 @@ properties:
>        - items:
>            - enum:
>                - mediatek,mt8186-disp-ccorr
> +              - mediatek,mt8365-disp-ccorr
>            - const: mediatek,mt8183-disp-ccorr
>
>    reg:
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 02/21] dt-bindings: display: mediatek: ccorr: add binding for MT8365 SoC
@ 2023-03-13 14:54     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 14:54 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, Uwe Kleine-König, Chun-Kuang Hu, Jitao Shi,
	Rob Herring, linux-mediatek, Matthias Brugger, linux-arm-kernel,
	Neil Armstrong, linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Color Correction for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
> index 63fb02014a56..fc999e614718 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
> @@ -32,6 +32,7 @@ properties:
>        - items:
>            - enum:
>                - mediatek,mt8186-disp-ccorr
> +              - mediatek,mt8365-disp-ccorr
>            - const: mediatek,mt8183-disp-ccorr
>
>    reg:
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 02/21] dt-bindings: display: mediatek: ccorr: add binding for MT8365 SoC
@ 2023-03-13 14:54     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 14:54 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Color Correction for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
> index 63fb02014a56..fc999e614718 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,ccorr.yaml
> @@ -32,6 +32,7 @@ properties:
>        - items:
>            - enum:
>                - mediatek,mt8186-disp-ccorr
> +              - mediatek,mt8365-disp-ccorr
>            - const: mediatek,mt8183-disp-ccorr
>
>    reg:
>
> --
> b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 03/21] dt-bindings: display: mediatek: color: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-13 14:58     ` Chun-Kuang Hu
  -1 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 14:58 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, Uwe Kleine-König, Chun-Kuang Hu, Jitao Shi,
	Rob Herring, linux-mediatek, Matthias Brugger, linux-arm-kernel,
	Neil Armstrong, linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Color for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
> index d2f89ee7996f..9d081da433e8 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
> @@ -39,6 +39,7 @@ properties:
>                - mediatek,mt8186-disp-color
>                - mediatek,mt8192-disp-color
>                - mediatek,mt8195-disp-color
> +              - mediatek,mt8365-disp-color
>            - const: mediatek,mt8173-disp-color
>    reg:
>      maxItems: 1
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 03/21] dt-bindings: display: mediatek: color: add binding for MT8365 SoC
@ 2023-03-13 14:58     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 14:58 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Color for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
> index d2f89ee7996f..9d081da433e8 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
> @@ -39,6 +39,7 @@ properties:
>                - mediatek,mt8186-disp-color
>                - mediatek,mt8192-disp-color
>                - mediatek,mt8195-disp-color
> +              - mediatek,mt8365-disp-color
>            - const: mediatek,mt8173-disp-color
>    reg:
>      maxItems: 1
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 03/21] dt-bindings: display: mediatek: color: add binding for MT8365 SoC
@ 2023-03-13 14:58     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 14:58 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Color for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
> index d2f89ee7996f..9d081da433e8 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml
> @@ -39,6 +39,7 @@ properties:
>                - mediatek,mt8186-disp-color
>                - mediatek,mt8192-disp-color
>                - mediatek,mt8195-disp-color
> +              - mediatek,mt8365-disp-color
>            - const: mediatek,mt8173-disp-color
>    reg:
>      maxItems: 1
>
> --
> b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 04/21] dt-bindings: display: mediatek: dither: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-13 14:59     ` Chun-Kuang Hu
  -1 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 14:59 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Dither for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
> index 8ad8187c02d1..a7706cd65675 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
> @@ -29,6 +29,7 @@ properties:
>                - mediatek,mt8186-disp-dither
>                - mediatek,mt8192-disp-dither
>                - mediatek,mt8195-disp-dither
> +              - mediatek,mt8365-disp-dither
>            - const: mediatek,mt8183-disp-dither
>
>    reg:
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 04/21] dt-bindings: display: mediatek: dither: add binding for MT8365 SoC
@ 2023-03-13 14:59     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 14:59 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, Uwe Kleine-König, Chun-Kuang Hu, Jitao Shi,
	Rob Herring, linux-mediatek, Matthias Brugger, linux-arm-kernel,
	Neil Armstrong, linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Dither for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
> index 8ad8187c02d1..a7706cd65675 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
> @@ -29,6 +29,7 @@ properties:
>                - mediatek,mt8186-disp-dither
>                - mediatek,mt8192-disp-dither
>                - mediatek,mt8195-disp-dither
> +              - mediatek,mt8365-disp-dither
>            - const: mediatek,mt8183-disp-dither
>
>    reg:
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 04/21] dt-bindings: display: mediatek: dither: add binding for MT8365 SoC
@ 2023-03-13 14:59     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 14:59 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Dither for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
> index 8ad8187c02d1..a7706cd65675 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dither.yaml
> @@ -29,6 +29,7 @@ properties:
>                - mediatek,mt8186-disp-dither
>                - mediatek,mt8192-disp-dither
>                - mediatek,mt8195-disp-dither
> +              - mediatek,mt8365-disp-dither
>            - const: mediatek,mt8183-disp-dither
>
>    reg:
>
> --
> b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 05/21] dt-bindings: display: mediatek: dsi: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-13 15:00     ` Chun-Kuang Hu
  -1 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:00 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, Uwe Kleine-König, Chun-Kuang Hu, Jitao Shi,
	Rob Herring, linux-mediatek, Matthias Brugger, linux-arm-kernel,
	Neil Armstrong, linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Serial Interface for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  .../bindings/display/mediatek/mediatek,dsi.yaml       | 19 ++++++++++++-------
>  1 file changed, 12 insertions(+), 7 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
> index 4707b60238b0..b6579d3effc5 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
> @@ -22,13 +22,18 @@ allOf:
>
>  properties:
>    compatible:
> -    enum:
> -      - mediatek,mt2701-dsi
> -      - mediatek,mt7623-dsi
> -      - mediatek,mt8167-dsi
> -      - mediatek,mt8173-dsi
> -      - mediatek,mt8183-dsi
> -      - mediatek,mt8186-dsi
> +    oneOf:
> +      - enum:
> +          - mediatek,mt2701-dsi
> +          - mediatek,mt7623-dsi
> +          - mediatek,mt8167-dsi
> +          - mediatek,mt8173-dsi
> +          - mediatek,mt8183-dsi
> +          - mediatek,mt8186-dsi
> +      - items:
> +          - enum:
> +              - mediatek,mt8365-dsi
> +          - const: mediatek,mt8183-dsi
>
>    reg:
>      maxItems: 1
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 05/21] dt-bindings: display: mediatek: dsi: add binding for MT8365 SoC
@ 2023-03-13 15:00     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:00 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Serial Interface for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  .../bindings/display/mediatek/mediatek,dsi.yaml       | 19 ++++++++++++-------
>  1 file changed, 12 insertions(+), 7 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
> index 4707b60238b0..b6579d3effc5 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
> @@ -22,13 +22,18 @@ allOf:
>
>  properties:
>    compatible:
> -    enum:
> -      - mediatek,mt2701-dsi
> -      - mediatek,mt7623-dsi
> -      - mediatek,mt8167-dsi
> -      - mediatek,mt8173-dsi
> -      - mediatek,mt8183-dsi
> -      - mediatek,mt8186-dsi
> +    oneOf:
> +      - enum:
> +          - mediatek,mt2701-dsi
> +          - mediatek,mt7623-dsi
> +          - mediatek,mt8167-dsi
> +          - mediatek,mt8173-dsi
> +          - mediatek,mt8183-dsi
> +          - mediatek,mt8186-dsi
> +      - items:
> +          - enum:
> +              - mediatek,mt8365-dsi
> +          - const: mediatek,mt8183-dsi
>
>    reg:
>      maxItems: 1
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 05/21] dt-bindings: display: mediatek: dsi: add binding for MT8365 SoC
@ 2023-03-13 15:00     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:00 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Serial Interface for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  .../bindings/display/mediatek/mediatek,dsi.yaml       | 19 ++++++++++++-------
>  1 file changed, 12 insertions(+), 7 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
> index 4707b60238b0..b6579d3effc5 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.yaml
> @@ -22,13 +22,18 @@ allOf:
>
>  properties:
>    compatible:
> -    enum:
> -      - mediatek,mt2701-dsi
> -      - mediatek,mt7623-dsi
> -      - mediatek,mt8167-dsi
> -      - mediatek,mt8173-dsi
> -      - mediatek,mt8183-dsi
> -      - mediatek,mt8186-dsi
> +    oneOf:
> +      - enum:
> +          - mediatek,mt2701-dsi
> +          - mediatek,mt7623-dsi
> +          - mediatek,mt8167-dsi
> +          - mediatek,mt8173-dsi
> +          - mediatek,mt8183-dsi
> +          - mediatek,mt8186-dsi
> +      - items:
> +          - enum:
> +              - mediatek,mt8365-dsi
> +          - const: mediatek,mt8183-dsi
>
>    reg:
>      maxItems: 1
>
> --
> b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-13 15:02     ` Chun-Kuang Hu
  -1 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:02 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> index d4d585485e7b..d47bc72f09c0 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> @@ -33,6 +33,7 @@ properties:
>                - mediatek,mt8186-disp-aal
>                - mediatek,mt8192-disp-aal
>                - mediatek,mt8195-disp-aal
> +              - mediatek,mt8365-disp-aal
>            - const: mediatek,mt8183-disp-aal
>
>    reg:
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
@ 2023-03-13 15:02     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:02 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, Uwe Kleine-König, Chun-Kuang Hu, Jitao Shi,
	Rob Herring, linux-mediatek, Matthias Brugger, linux-arm-kernel,
	Neil Armstrong, linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> index d4d585485e7b..d47bc72f09c0 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> @@ -33,6 +33,7 @@ properties:
>                - mediatek,mt8186-disp-aal
>                - mediatek,mt8192-disp-aal
>                - mediatek,mt8195-disp-aal
> +              - mediatek,mt8365-disp-aal
>            - const: mediatek,mt8183-disp-aal
>
>    reg:
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
@ 2023-03-13 15:02     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:02 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> index d4d585485e7b..d47bc72f09c0 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> @@ -33,6 +33,7 @@ properties:
>                - mediatek,mt8186-disp-aal
>                - mediatek,mt8192-disp-aal
>                - mediatek,mt8195-disp-aal
> +              - mediatek,mt8365-disp-aal
>            - const: mediatek,mt8183-disp-aal
>
>    reg:
>
> --
> b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 08/21] dt-bindings: display: mediatek: gamma: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-13 15:07     ` Chun-Kuang Hu
  -1 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:07 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, Uwe Kleine-König, Chun-Kuang Hu, Jitao Shi,
	Rob Herring, linux-mediatek, Matthias Brugger, linux-arm-kernel,
	Neil Armstrong, linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display GAMMA for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
> index a89ea0ea7542..f54859cfc97b 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
> @@ -30,6 +30,7 @@ properties:
>                - mediatek,mt8186-disp-gamma
>                - mediatek,mt8192-disp-gamma
>                - mediatek,mt8195-disp-gamma
> +              - mediatek,mt8365-disp-gamma
>            - const: mediatek,mt8183-disp-gamma
>
>    reg:
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 08/21] dt-bindings: display: mediatek: gamma: add binding for MT8365 SoC
@ 2023-03-13 15:07     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:07 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display GAMMA for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
> index a89ea0ea7542..f54859cfc97b 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
> @@ -30,6 +30,7 @@ properties:
>                - mediatek,mt8186-disp-gamma
>                - mediatek,mt8192-disp-gamma
>                - mediatek,mt8195-disp-gamma
> +              - mediatek,mt8365-disp-gamma
>            - const: mediatek,mt8183-disp-gamma
>
>    reg:
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 08/21] dt-bindings: display: mediatek: gamma: add binding for MT8365 SoC
@ 2023-03-13 15:07     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:07 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display GAMMA for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
> index a89ea0ea7542..f54859cfc97b 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,gamma.yaml
> @@ -30,6 +30,7 @@ properties:
>                - mediatek,mt8186-disp-gamma
>                - mediatek,mt8192-disp-gamma
>                - mediatek,mt8195-disp-gamma
> +              - mediatek,mt8365-disp-gamma
>            - const: mediatek,mt8183-disp-gamma
>
>    reg:
>
> --
> b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 09/21] dt-bindings: display: mediatek: ovl: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-13 15:08     ` Chun-Kuang Hu
  -1 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:08 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Neil Armstrong, linux-kernel, dri-devel, linux-pwm,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Overlay for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8192 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
> index a2a27d0ca038..20e4ca4fc915 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
> @@ -41,6 +41,7 @@ properties:
>        - items:
>            - enum:
>                - mediatek,mt8186-disp-ovl
> +              - mediatek,mt8365-disp-ovl
>            - const: mediatek,mt8192-disp-ovl
>
>    reg:
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 09/21] dt-bindings: display: mediatek: ovl: add binding for MT8365 SoC
@ 2023-03-13 15:08     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:08 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: devicetree, dri-devel, Fabien Parent, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, linux-pwm, Uwe Kleine-König, Chun-Kuang Hu,
	Jitao Shi, Rob Herring, linux-mediatek, Matthias Brugger,
	linux-arm-kernel, Neil Armstrong, linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Overlay for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8192 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
> index a2a27d0ca038..20e4ca4fc915 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
> @@ -41,6 +41,7 @@ properties:
>        - items:
>            - enum:
>                - mediatek,mt8186-disp-ovl
> +              - mediatek,mt8365-disp-ovl
>            - const: mediatek,mt8192-disp-ovl
>
>    reg:
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 09/21] dt-bindings: display: mediatek: ovl: add binding for MT8365 SoC
@ 2023-03-13 15:08     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:08 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Neil Armstrong, linux-kernel, dri-devel, linux-pwm,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Overlay for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8192 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
> index a2a27d0ca038..20e4ca4fc915 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,ovl.yaml
> @@ -41,6 +41,7 @@ properties:
>        - items:
>            - enum:
>                - mediatek,mt8186-disp-ovl
> +              - mediatek,mt8365-disp-ovl
>            - const: mediatek,mt8192-disp-ovl
>
>    reg:
>
> --
> b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 10/21] dt-bindings: display: mediatek: rdma: add binding for MT8365 SoC
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-13 15:09     ` Chun-Kuang Hu
  -1 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:09 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Data Path Read DMA for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
> index 0882ae86e6c4..3bc914785976 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
> @@ -40,6 +40,7 @@ properties:
>            - enum:
>                - mediatek,mt8186-disp-rdma
>                - mediatek,mt8192-disp-rdma
> +              - mediatek,mt8365-disp-rdma
>            - const: mediatek,mt8183-disp-rdma
>
>    reg:
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 10/21] dt-bindings: display: mediatek: rdma: add binding for MT8365 SoC
@ 2023-03-13 15:09     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:09 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, Uwe Kleine-König, Chun-Kuang Hu, Jitao Shi,
	Rob Herring, linux-mediatek, Matthias Brugger, linux-arm-kernel,
	Neil Armstrong, linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Data Path Read DMA for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
> index 0882ae86e6c4..3bc914785976 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
> @@ -40,6 +40,7 @@ properties:
>            - enum:
>                - mediatek,mt8186-disp-rdma
>                - mediatek,mt8192-disp-rdma
> +              - mediatek,mt8365-disp-rdma
>            - const: mediatek,mt8183-disp-rdma
>
>    reg:
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 10/21] dt-bindings: display: mediatek: rdma: add binding for MT8365 SoC
@ 2023-03-13 15:09     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:09 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Display Data Path Read DMA for MT8365 is compatible with another SoC.
> Then, add MT8365 binding along with MT8183 SoC.

Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>

>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
> index 0882ae86e6c4..3bc914785976 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,rdma.yaml
> @@ -40,6 +40,7 @@ properties:
>            - enum:
>                - mediatek,mt8186-disp-rdma
>                - mediatek,mt8192-disp-rdma
> +              - mediatek,mt8365-disp-rdma
>            - const: mediatek,mt8183-disp-rdma
>
>    reg:
>
> --
> b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365
  2023-03-09 14:22   ` Alexandre Mergnat
  (?)
@ 2023-03-13 15:17     ` Chun-Kuang Hu
  -1 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:17 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> From: Fabien Parent <fparent@baylibre.com>
>
> DPI for MT8365 is compatible with MT8192 but requires an additional
> clock. Modify the documentation to requires this clock only on MT8365 SoCs.

If MT8365 DPI has additional clock, why it is compatible with MT8192 DPI?
I think some part of MT8165 DPI works under the speed control by the
DPI clock and this is different with MT8192 DPI, how could these two
are compatible?

Regards,
Chun-Kuang.

>
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  .../bindings/display/mediatek/mediatek,dpi.yaml    | 48 ++++++++++++++++++----
>  1 file changed, 39 insertions(+), 9 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> index 56511c4d4b9b..3f6cca81340c 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> @@ -17,15 +17,20 @@ description: |
>
>  properties:
>    compatible:
> -    enum:
> -      - mediatek,mt2701-dpi
> -      - mediatek,mt7623-dpi
> -      - mediatek,mt8173-dpi
> -      - mediatek,mt8183-dpi
> -      - mediatek,mt8186-dpi
> -      - mediatek,mt8188-dp-intf
> -      - mediatek,mt8192-dpi
> -      - mediatek,mt8195-dp-intf
> +    oneOf:
> +      - enum:
> +          - mediatek,mt2701-dpi
> +          - mediatek,mt7623-dpi
> +          - mediatek,mt8173-dpi
> +          - mediatek,mt8183-dpi
> +          - mediatek,mt8186-dpi
> +          - mediatek,mt8188-dp-intf
> +          - mediatek,mt8192-dpi
> +          - mediatek,mt8195-dp-intf
> +      - items:
> +          - enum:
> +              - mediatek,mt8365-dpi
> +          - const: mediatek,mt8192-dpi
>
>    reg:
>      maxItems: 1
> @@ -34,16 +39,20 @@ properties:
>      maxItems: 1
>
>    clocks:
> +    minItems: 3
>      items:
>        - description: Pixel Clock
>        - description: Engine Clock
>        - description: DPI PLL
> +      - description: DPI Clock
>
>    clock-names:
> +    minItems: 3
>      items:
>        - const: pixel
>        - const: engine
>        - const: pll
> +      - const: dpi
>
>    pinctrl-0: true
>    pinctrl-1: true
> @@ -72,6 +81,27 @@ required:
>
>  additionalProperties: false
>
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: mediatek,mt8365-dpi
> +
> +    then:
> +      properties:
> +        clocks:
> +          maxItems: 4
> +        clock-names:
> +          maxItems: 4
> +
> +    else:
> +      properties:
> +        clocks:
> +          maxItems: 3
> +        clock-names:
> +          maxItems: 3
> +
>  examples:
>    - |
>      #include <dt-bindings/interrupt-controller/arm-gic.h>
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365
@ 2023-03-13 15:17     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:17 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, Uwe Kleine-König, Chun-Kuang Hu, Jitao Shi,
	Rob Herring, linux-mediatek, Matthias Brugger, linux-arm-kernel,
	Neil Armstrong, linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> From: Fabien Parent <fparent@baylibre.com>
>
> DPI for MT8365 is compatible with MT8192 but requires an additional
> clock. Modify the documentation to requires this clock only on MT8365 SoCs.

If MT8365 DPI has additional clock, why it is compatible with MT8192 DPI?
I think some part of MT8165 DPI works under the speed control by the
DPI clock and this is different with MT8192 DPI, how could these two
are compatible?

Regards,
Chun-Kuang.

>
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  .../bindings/display/mediatek/mediatek,dpi.yaml    | 48 ++++++++++++++++++----
>  1 file changed, 39 insertions(+), 9 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> index 56511c4d4b9b..3f6cca81340c 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> @@ -17,15 +17,20 @@ description: |
>
>  properties:
>    compatible:
> -    enum:
> -      - mediatek,mt2701-dpi
> -      - mediatek,mt7623-dpi
> -      - mediatek,mt8173-dpi
> -      - mediatek,mt8183-dpi
> -      - mediatek,mt8186-dpi
> -      - mediatek,mt8188-dp-intf
> -      - mediatek,mt8192-dpi
> -      - mediatek,mt8195-dp-intf
> +    oneOf:
> +      - enum:
> +          - mediatek,mt2701-dpi
> +          - mediatek,mt7623-dpi
> +          - mediatek,mt8173-dpi
> +          - mediatek,mt8183-dpi
> +          - mediatek,mt8186-dpi
> +          - mediatek,mt8188-dp-intf
> +          - mediatek,mt8192-dpi
> +          - mediatek,mt8195-dp-intf
> +      - items:
> +          - enum:
> +              - mediatek,mt8365-dpi
> +          - const: mediatek,mt8192-dpi
>
>    reg:
>      maxItems: 1
> @@ -34,16 +39,20 @@ properties:
>      maxItems: 1
>
>    clocks:
> +    minItems: 3
>      items:
>        - description: Pixel Clock
>        - description: Engine Clock
>        - description: DPI PLL
> +      - description: DPI Clock
>
>    clock-names:
> +    minItems: 3
>      items:
>        - const: pixel
>        - const: engine
>        - const: pll
> +      - const: dpi
>
>    pinctrl-0: true
>    pinctrl-1: true
> @@ -72,6 +81,27 @@ required:
>
>  additionalProperties: false
>
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: mediatek,mt8365-dpi
> +
> +    then:
> +      properties:
> +        clocks:
> +          maxItems: 4
> +        clock-names:
> +          maxItems: 4
> +
> +    else:
> +      properties:
> +        clocks:
> +          maxItems: 3
> +        clock-names:
> +          maxItems: 3
> +
>  examples:
>    - |
>      #include <dt-bindings/interrupt-controller/arm-gic.h>
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365
@ 2023-03-13 15:17     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:17 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> From: Fabien Parent <fparent@baylibre.com>
>
> DPI for MT8365 is compatible with MT8192 but requires an additional
> clock. Modify the documentation to requires this clock only on MT8365 SoCs.

If MT8365 DPI has additional clock, why it is compatible with MT8192 DPI?
I think some part of MT8165 DPI works under the speed control by the
DPI clock and this is different with MT8192 DPI, how could these two
are compatible?

Regards,
Chun-Kuang.

>
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  .../bindings/display/mediatek/mediatek,dpi.yaml    | 48 ++++++++++++++++++----
>  1 file changed, 39 insertions(+), 9 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> index 56511c4d4b9b..3f6cca81340c 100644
> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.yaml
> @@ -17,15 +17,20 @@ description: |
>
>  properties:
>    compatible:
> -    enum:
> -      - mediatek,mt2701-dpi
> -      - mediatek,mt7623-dpi
> -      - mediatek,mt8173-dpi
> -      - mediatek,mt8183-dpi
> -      - mediatek,mt8186-dpi
> -      - mediatek,mt8188-dp-intf
> -      - mediatek,mt8192-dpi
> -      - mediatek,mt8195-dp-intf
> +    oneOf:
> +      - enum:
> +          - mediatek,mt2701-dpi
> +          - mediatek,mt7623-dpi
> +          - mediatek,mt8173-dpi
> +          - mediatek,mt8183-dpi
> +          - mediatek,mt8186-dpi
> +          - mediatek,mt8188-dp-intf
> +          - mediatek,mt8192-dpi
> +          - mediatek,mt8195-dp-intf
> +      - items:
> +          - enum:
> +              - mediatek,mt8365-dpi
> +          - const: mediatek,mt8192-dpi
>
>    reg:
>      maxItems: 1
> @@ -34,16 +39,20 @@ properties:
>      maxItems: 1
>
>    clocks:
> +    minItems: 3
>      items:
>        - description: Pixel Clock
>        - description: Engine Clock
>        - description: DPI PLL
> +      - description: DPI Clock
>
>    clock-names:
> +    minItems: 3
>      items:
>        - const: pixel
>        - const: engine
>        - const: pll
> +      - const: dpi
>
>    pinctrl-0: true
>    pinctrl-1: true
> @@ -72,6 +81,27 @@ required:
>
>  additionalProperties: false
>
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: mediatek,mt8365-dpi
> +
> +    then:
> +      properties:
> +        clocks:
> +          maxItems: 4
> +        clock-names:
> +          maxItems: 4
> +
> +    else:
> +      properties:
> +        clocks:
> +          maxItems: 3
> +        clock-names:
> +          maxItems: 3
> +
>  examples:
>    - |
>      #include <dt-bindings/interrupt-controller/arm-gic.h>
>
> --
> b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 19/21] drm/mediatek: dpi: add support for dpi clock
  2023-03-09 14:23   ` Alexandre Mergnat
  (?)
@ 2023-03-13 15:21     ` Chun-Kuang Hu
  -1 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:21 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> From: Fabien Parent <fparent@baylibre.com>
>
> MT8365 requires an additional clock for DPI. Add support for that
> additional clock.
>
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  drivers/gpu/drm/mediatek/mtk_dpi.c | 18 +++++++++++++++++-
>  1 file changed, 17 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c
> index 4317595a15d1..474c6e5bbf04 100644
> --- a/drivers/gpu/drm/mediatek/mtk_dpi.c
> +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c
> @@ -68,6 +68,7 @@ struct mtk_dpi {
>         struct device *dev;
>         struct clk *engine_clk;
>         struct clk *pixel_clk;
> +       struct clk *dpi_clk;
>         struct clk *tvd_clk;
>         int irq;
>         struct drm_display_mode mode;
> @@ -464,6 +465,7 @@ static void mtk_dpi_power_off(struct mtk_dpi *dpi)
>         mtk_dpi_disable(dpi);
>         clk_disable_unprepare(dpi->pixel_clk);
>         clk_disable_unprepare(dpi->engine_clk);
> +       clk_disable_unprepare(dpi->dpi_clk);
>  }
>
>  static int mtk_dpi_power_on(struct mtk_dpi *dpi)
> @@ -473,10 +475,16 @@ static int mtk_dpi_power_on(struct mtk_dpi *dpi)
>         if (++dpi->refcount != 1)
>                 return 0;
>
> +       ret = clk_prepare_enable(dpi->dpi_clk);
> +       if (ret) {
> +               dev_err(dpi->dev, "failed to enable dpi clock: %d\n", ret);
> +               goto err_refcount;
> +       }
> +
>         ret = clk_prepare_enable(dpi->engine_clk);
>         if (ret) {
>                 dev_err(dpi->dev, "Failed to enable engine clock: %d\n", ret);
> -               goto err_refcount;
> +               goto err_engine;
>         }
>
>         ret = clk_prepare_enable(dpi->pixel_clk);
> @@ -489,6 +497,8 @@ static int mtk_dpi_power_on(struct mtk_dpi *dpi)
>
>  err_pixel:
>         clk_disable_unprepare(dpi->engine_clk);
> +err_engine:
> +       clk_disable_unprepare(dpi->dpi_clk);
>  err_refcount:
>         dpi->refcount--;
>         return ret;
> @@ -1044,6 +1054,12 @@ static int mtk_dpi_probe(struct platform_device *pdev)
>                 return ret;
>         }
>
> +       dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");

For MT8365, DPI clock is not optional, so make sure that MT8365 DPI
should have this clock.

Regards,
Chun-Kuang.

> +       if (IS_ERR(dpi->dpi_clk)) {
> +               return dev_err_probe(dev, ret, "Failed to get dpi clock: %p\n",
> +                                    dpi->dpi_clk);
> +       }
> +
>         dpi->irq = platform_get_irq(pdev, 0);
>         if (dpi->irq <= 0)
>                 return -EINVAL;
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 19/21] drm/mediatek: dpi: add support for dpi clock
@ 2023-03-13 15:21     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:21 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, Uwe Kleine-König, Chun-Kuang Hu, Jitao Shi,
	Rob Herring, linux-mediatek, Matthias Brugger, linux-arm-kernel,
	Neil Armstrong, linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> From: Fabien Parent <fparent@baylibre.com>
>
> MT8365 requires an additional clock for DPI. Add support for that
> additional clock.
>
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  drivers/gpu/drm/mediatek/mtk_dpi.c | 18 +++++++++++++++++-
>  1 file changed, 17 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c
> index 4317595a15d1..474c6e5bbf04 100644
> --- a/drivers/gpu/drm/mediatek/mtk_dpi.c
> +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c
> @@ -68,6 +68,7 @@ struct mtk_dpi {
>         struct device *dev;
>         struct clk *engine_clk;
>         struct clk *pixel_clk;
> +       struct clk *dpi_clk;
>         struct clk *tvd_clk;
>         int irq;
>         struct drm_display_mode mode;
> @@ -464,6 +465,7 @@ static void mtk_dpi_power_off(struct mtk_dpi *dpi)
>         mtk_dpi_disable(dpi);
>         clk_disable_unprepare(dpi->pixel_clk);
>         clk_disable_unprepare(dpi->engine_clk);
> +       clk_disable_unprepare(dpi->dpi_clk);
>  }
>
>  static int mtk_dpi_power_on(struct mtk_dpi *dpi)
> @@ -473,10 +475,16 @@ static int mtk_dpi_power_on(struct mtk_dpi *dpi)
>         if (++dpi->refcount != 1)
>                 return 0;
>
> +       ret = clk_prepare_enable(dpi->dpi_clk);
> +       if (ret) {
> +               dev_err(dpi->dev, "failed to enable dpi clock: %d\n", ret);
> +               goto err_refcount;
> +       }
> +
>         ret = clk_prepare_enable(dpi->engine_clk);
>         if (ret) {
>                 dev_err(dpi->dev, "Failed to enable engine clock: %d\n", ret);
> -               goto err_refcount;
> +               goto err_engine;
>         }
>
>         ret = clk_prepare_enable(dpi->pixel_clk);
> @@ -489,6 +497,8 @@ static int mtk_dpi_power_on(struct mtk_dpi *dpi)
>
>  err_pixel:
>         clk_disable_unprepare(dpi->engine_clk);
> +err_engine:
> +       clk_disable_unprepare(dpi->dpi_clk);
>  err_refcount:
>         dpi->refcount--;
>         return ret;
> @@ -1044,6 +1054,12 @@ static int mtk_dpi_probe(struct platform_device *pdev)
>                 return ret;
>         }
>
> +       dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");

For MT8365, DPI clock is not optional, so make sure that MT8365 DPI
should have this clock.

Regards,
Chun-Kuang.

> +       if (IS_ERR(dpi->dpi_clk)) {
> +               return dev_err_probe(dev, ret, "Failed to get dpi clock: %p\n",
> +                                    dpi->dpi_clk);
> +       }
> +
>         dpi->irq = platform_get_irq(pdev, 0);
>         if (dpi->irq <= 0)
>                 return -EINVAL;
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 19/21] drm/mediatek: dpi: add support for dpi clock
@ 2023-03-13 15:21     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-13 15:21 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> From: Fabien Parent <fparent@baylibre.com>
>
> MT8365 requires an additional clock for DPI. Add support for that
> additional clock.
>
> Signed-off-by: Fabien Parent <fparent@baylibre.com>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  drivers/gpu/drm/mediatek/mtk_dpi.c | 18 +++++++++++++++++-
>  1 file changed, 17 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c
> index 4317595a15d1..474c6e5bbf04 100644
> --- a/drivers/gpu/drm/mediatek/mtk_dpi.c
> +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c
> @@ -68,6 +68,7 @@ struct mtk_dpi {
>         struct device *dev;
>         struct clk *engine_clk;
>         struct clk *pixel_clk;
> +       struct clk *dpi_clk;
>         struct clk *tvd_clk;
>         int irq;
>         struct drm_display_mode mode;
> @@ -464,6 +465,7 @@ static void mtk_dpi_power_off(struct mtk_dpi *dpi)
>         mtk_dpi_disable(dpi);
>         clk_disable_unprepare(dpi->pixel_clk);
>         clk_disable_unprepare(dpi->engine_clk);
> +       clk_disable_unprepare(dpi->dpi_clk);
>  }
>
>  static int mtk_dpi_power_on(struct mtk_dpi *dpi)
> @@ -473,10 +475,16 @@ static int mtk_dpi_power_on(struct mtk_dpi *dpi)
>         if (++dpi->refcount != 1)
>                 return 0;
>
> +       ret = clk_prepare_enable(dpi->dpi_clk);
> +       if (ret) {
> +               dev_err(dpi->dev, "failed to enable dpi clock: %d\n", ret);
> +               goto err_refcount;
> +       }
> +
>         ret = clk_prepare_enable(dpi->engine_clk);
>         if (ret) {
>                 dev_err(dpi->dev, "Failed to enable engine clock: %d\n", ret);
> -               goto err_refcount;
> +               goto err_engine;
>         }
>
>         ret = clk_prepare_enable(dpi->pixel_clk);
> @@ -489,6 +497,8 @@ static int mtk_dpi_power_on(struct mtk_dpi *dpi)
>
>  err_pixel:
>         clk_disable_unprepare(dpi->engine_clk);
> +err_engine:
> +       clk_disable_unprepare(dpi->dpi_clk);
>  err_refcount:
>         dpi->refcount--;
>         return ret;
> @@ -1044,6 +1054,12 @@ static int mtk_dpi_probe(struct platform_device *pdev)
>                 return ret;
>         }
>
> +       dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");

For MT8365, DPI clock is not optional, so make sure that MT8365 DPI
should have this clock.

Regards,
Chun-Kuang.

> +       if (IS_ERR(dpi->dpi_clk)) {
> +               return dev_err_probe(dev, ret, "Failed to get dpi clock: %p\n",
> +                                    dpi->dpi_clk);
> +       }
> +
>         dpi->irq = platform_get_irq(pdev, 0);
>         if (dpi->irq <= 0)
>                 return -EINVAL;
>
> --
> b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
  2023-03-10  8:39     ` Krzysztof Kozlowski
  (?)
@ 2023-03-15  8:01       ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15  8:01 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Le ven. 10 mars 2023 à 09:39, Krzysztof Kozlowski
<krzysztof.kozlowski@linaro.org> a écrit :
>
> On 09/03/2023 15:23, Alexandre Mergnat wrote:
> > Add compatible for the MT8365 SoC.
> >
> > Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> > ---
> >  Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
> >  1 file changed, 1 insertion(+)
> >
> > diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > index ca0ca549257d..931d66893dff 100644
> > --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > @@ -34,6 +34,7 @@ properties:
> >        - mediatek,mt8186-mdp3-mutex
> >        - mediatek,mt8192-disp-mutex
> >        - mediatek,mt8195-disp-mutex
> > +      - mediatek,mt8365-disp-mutex
>
> All these look compatible. Either make mt8635 compatible with something
> or even rework entire list and make everything compatible.

All of them use "mtk_mutec.c" but have specific data.

      .data = &mt8173_mutex_driver_data},
    { .compatible = "mediatek,mt8183-disp-mutex",
      .data = &mt8183_mutex_driver_data},
    { .compatible = "mediatek,mt8186-disp-mutex",
      .data = &mt8186_mutex_driver_data},
    { .compatible = "mediatek,mt8186-mdp3-mutex",
      .data = &mt8186_mdp_mutex_driver_data},
    { .compatible = "mediatek,mt8192-disp-mutex",
      .data = &mt8192_mutex_driver_data},
    { .compatible = "mediatek,mt8195-disp-mutex",
      .data = &mt8195_mutex_driver_data},
    { .compatible = "mediatek,mt8365-disp-mutex",
      .data = &mt8365_mutex_driver_data},

I don't see any SoC compatible with mt8635, and I have no idea which
rework you have in mind. Can you please point me an example ?

Thanks
Alex

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
@ 2023-03-15  8:01       ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15  8:01 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, Uwe Kleine-König, Chun-Kuang Hu, Jitao Shi,
	Rob Herring, linux-mediatek, Matthias Brugger, linux-arm-kernel,
	Neil Armstrong, linux-kernel

Le ven. 10 mars 2023 à 09:39, Krzysztof Kozlowski
<krzysztof.kozlowski@linaro.org> a écrit :
>
> On 09/03/2023 15:23, Alexandre Mergnat wrote:
> > Add compatible for the MT8365 SoC.
> >
> > Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> > ---
> >  Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
> >  1 file changed, 1 insertion(+)
> >
> > diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > index ca0ca549257d..931d66893dff 100644
> > --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > @@ -34,6 +34,7 @@ properties:
> >        - mediatek,mt8186-mdp3-mutex
> >        - mediatek,mt8192-disp-mutex
> >        - mediatek,mt8195-disp-mutex
> > +      - mediatek,mt8365-disp-mutex
>
> All these look compatible. Either make mt8635 compatible with something
> or even rework entire list and make everything compatible.

All of them use "mtk_mutec.c" but have specific data.

      .data = &mt8173_mutex_driver_data},
    { .compatible = "mediatek,mt8183-disp-mutex",
      .data = &mt8183_mutex_driver_data},
    { .compatible = "mediatek,mt8186-disp-mutex",
      .data = &mt8186_mutex_driver_data},
    { .compatible = "mediatek,mt8186-mdp3-mutex",
      .data = &mt8186_mdp_mutex_driver_data},
    { .compatible = "mediatek,mt8192-disp-mutex",
      .data = &mt8192_mutex_driver_data},
    { .compatible = "mediatek,mt8195-disp-mutex",
      .data = &mt8195_mutex_driver_data},
    { .compatible = "mediatek,mt8365-disp-mutex",
      .data = &mt8365_mutex_driver_data},

I don't see any SoC compatible with mt8635, and I have no idea which
rework you have in mind. Can you please point me an example ?

Thanks
Alex

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
@ 2023-03-15  8:01       ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15  8:01 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Le ven. 10 mars 2023 à 09:39, Krzysztof Kozlowski
<krzysztof.kozlowski@linaro.org> a écrit :
>
> On 09/03/2023 15:23, Alexandre Mergnat wrote:
> > Add compatible for the MT8365 SoC.
> >
> > Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> > ---
> >  Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
> >  1 file changed, 1 insertion(+)
> >
> > diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > index ca0ca549257d..931d66893dff 100644
> > --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > @@ -34,6 +34,7 @@ properties:
> >        - mediatek,mt8186-mdp3-mutex
> >        - mediatek,mt8192-disp-mutex
> >        - mediatek,mt8195-disp-mutex
> > +      - mediatek,mt8365-disp-mutex
>
> All these look compatible. Either make mt8635 compatible with something
> or even rework entire list and make everything compatible.

All of them use "mtk_mutec.c" but have specific data.

      .data = &mt8173_mutex_driver_data},
    { .compatible = "mediatek,mt8183-disp-mutex",
      .data = &mt8183_mutex_driver_data},
    { .compatible = "mediatek,mt8186-disp-mutex",
      .data = &mt8186_mutex_driver_data},
    { .compatible = "mediatek,mt8186-mdp3-mutex",
      .data = &mt8186_mdp_mutex_driver_data},
    { .compatible = "mediatek,mt8192-disp-mutex",
      .data = &mt8192_mutex_driver_data},
    { .compatible = "mediatek,mt8195-disp-mutex",
      .data = &mt8195_mutex_driver_data},
    { .compatible = "mediatek,mt8365-disp-mutex",
      .data = &mt8365_mutex_driver_data},

I don't see any SoC compatible with mt8635, and I have no idea which
rework you have in mind. Can you please point me an example ?

Thanks
Alex

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
  2023-03-15  8:01       ` Alexandre Mergnat
  (?)
@ 2023-03-15  8:17         ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15  8:17 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Maybe "oneOf" should be added at least ?

  compatible:
    oneOf:
      - enum:

Regards,
Alex

Le mer. 15 mars 2023 à 09:01, Alexandre Mergnat
<amergnat@baylibre.com> a écrit :
>
> Le ven. 10 mars 2023 à 09:39, Krzysztof Kozlowski
> <krzysztof.kozlowski@linaro.org> a écrit :
> >
> > On 09/03/2023 15:23, Alexandre Mergnat wrote:
> > > Add compatible for the MT8365 SoC.
> > >
> > > Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> > > ---
> > >  Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
> > >  1 file changed, 1 insertion(+)
> > >
> > > diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > > index ca0ca549257d..931d66893dff 100644
> > > --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > > +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > > @@ -34,6 +34,7 @@ properties:
> > >        - mediatek,mt8186-mdp3-mutex
> > >        - mediatek,mt8192-disp-mutex
> > >        - mediatek,mt8195-disp-mutex
> > > +      - mediatek,mt8365-disp-mutex
> >
> > All these look compatible. Either make mt8635 compatible with something
> > or even rework entire list and make everything compatible.
>
> All of them use "mtk_mutec.c" but have specific data.
>
>       .data = &mt8173_mutex_driver_data},
>     { .compatible = "mediatek,mt8183-disp-mutex",
>       .data = &mt8183_mutex_driver_data},
>     { .compatible = "mediatek,mt8186-disp-mutex",
>       .data = &mt8186_mutex_driver_data},
>     { .compatible = "mediatek,mt8186-mdp3-mutex",
>       .data = &mt8186_mdp_mutex_driver_data},
>     { .compatible = "mediatek,mt8192-disp-mutex",
>       .data = &mt8192_mutex_driver_data},
>     { .compatible = "mediatek,mt8195-disp-mutex",
>       .data = &mt8195_mutex_driver_data},
>     { .compatible = "mediatek,mt8365-disp-mutex",
>       .data = &mt8365_mutex_driver_data},
>
> I don't see any SoC compatible with mt8635, and I have no idea which
> rework you have in mind. Can you please point me an example ?
>
> Thanks
> Alex

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
@ 2023-03-15  8:17         ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15  8:17 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, Uwe Kleine-König, Chun-Kuang Hu, Jitao Shi,
	Rob Herring, linux-mediatek, Matthias Brugger, linux-arm-kernel,
	Neil Armstrong, linux-kernel

Maybe "oneOf" should be added at least ?

  compatible:
    oneOf:
      - enum:

Regards,
Alex

Le mer. 15 mars 2023 à 09:01, Alexandre Mergnat
<amergnat@baylibre.com> a écrit :
>
> Le ven. 10 mars 2023 à 09:39, Krzysztof Kozlowski
> <krzysztof.kozlowski@linaro.org> a écrit :
> >
> > On 09/03/2023 15:23, Alexandre Mergnat wrote:
> > > Add compatible for the MT8365 SoC.
> > >
> > > Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> > > ---
> > >  Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
> > >  1 file changed, 1 insertion(+)
> > >
> > > diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > > index ca0ca549257d..931d66893dff 100644
> > > --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > > +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > > @@ -34,6 +34,7 @@ properties:
> > >        - mediatek,mt8186-mdp3-mutex
> > >        - mediatek,mt8192-disp-mutex
> > >        - mediatek,mt8195-disp-mutex
> > > +      - mediatek,mt8365-disp-mutex
> >
> > All these look compatible. Either make mt8635 compatible with something
> > or even rework entire list and make everything compatible.
>
> All of them use "mtk_mutec.c" but have specific data.
>
>       .data = &mt8173_mutex_driver_data},
>     { .compatible = "mediatek,mt8183-disp-mutex",
>       .data = &mt8183_mutex_driver_data},
>     { .compatible = "mediatek,mt8186-disp-mutex",
>       .data = &mt8186_mutex_driver_data},
>     { .compatible = "mediatek,mt8186-mdp3-mutex",
>       .data = &mt8186_mdp_mutex_driver_data},
>     { .compatible = "mediatek,mt8192-disp-mutex",
>       .data = &mt8192_mutex_driver_data},
>     { .compatible = "mediatek,mt8195-disp-mutex",
>       .data = &mt8195_mutex_driver_data},
>     { .compatible = "mediatek,mt8365-disp-mutex",
>       .data = &mt8365_mutex_driver_data},
>
> I don't see any SoC compatible with mt8635, and I have no idea which
> rework you have in mind. Can you please point me an example ?
>
> Thanks
> Alex

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
@ 2023-03-15  8:17         ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15  8:17 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Maybe "oneOf" should be added at least ?

  compatible:
    oneOf:
      - enum:

Regards,
Alex

Le mer. 15 mars 2023 à 09:01, Alexandre Mergnat
<amergnat@baylibre.com> a écrit :
>
> Le ven. 10 mars 2023 à 09:39, Krzysztof Kozlowski
> <krzysztof.kozlowski@linaro.org> a écrit :
> >
> > On 09/03/2023 15:23, Alexandre Mergnat wrote:
> > > Add compatible for the MT8365 SoC.
> > >
> > > Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> > > ---
> > >  Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
> > >  1 file changed, 1 insertion(+)
> > >
> > > diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > > index ca0ca549257d..931d66893dff 100644
> > > --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > > +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> > > @@ -34,6 +34,7 @@ properties:
> > >        - mediatek,mt8186-mdp3-mutex
> > >        - mediatek,mt8192-disp-mutex
> > >        - mediatek,mt8195-disp-mutex
> > > +      - mediatek,mt8365-disp-mutex
> >
> > All these look compatible. Either make mt8635 compatible with something
> > or even rework entire list and make everything compatible.
>
> All of them use "mtk_mutec.c" but have specific data.
>
>       .data = &mt8173_mutex_driver_data},
>     { .compatible = "mediatek,mt8183-disp-mutex",
>       .data = &mt8183_mutex_driver_data},
>     { .compatible = "mediatek,mt8186-disp-mutex",
>       .data = &mt8186_mutex_driver_data},
>     { .compatible = "mediatek,mt8186-mdp3-mutex",
>       .data = &mt8186_mdp_mutex_driver_data},
>     { .compatible = "mediatek,mt8192-disp-mutex",
>       .data = &mt8192_mutex_driver_data},
>     { .compatible = "mediatek,mt8195-disp-mutex",
>       .data = &mt8195_mutex_driver_data},
>     { .compatible = "mediatek,mt8365-disp-mutex",
>       .data = &mt8365_mutex_driver_data},
>
> I don't see any SoC compatible with mt8635, and I have no idea which
> rework you have in mind. Can you please point me an example ?
>
> Thanks
> Alex

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365
  2023-03-13 15:17     ` Chun-Kuang Hu
  (?)
@ 2023-03-15  9:26       ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15  9:26 UTC (permalink / raw)
  To: Chun-Kuang Hu
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi Chun-Kuang,

Le lun. 13 mars 2023 à 16:17, Chun-Kuang Hu <chunkuang.hu@kernel.org> a écrit :
>
> Hi, Alexandre:
>
> Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
> >
> > From: Fabien Parent <fparent@baylibre.com>
> >
> > DPI for MT8365 is compatible with MT8192 but requires an additional
> > clock. Modify the documentation to requires this clock only on MT8365 SoCs.
>
> If MT8365 DPI has additional clock, why it is compatible with MT8192 DPI?
> I think some part of MT8165 DPI works under the speed control by the
> DPI clock and this is different with MT8192 DPI, how could these two
> are compatible?

AFAII, The mtk_dpi driver manage the 4th clock as optional
dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");
And all configuration variables for mt8192 are the same for mt8365.
These configuration clock variables (like cal_factor) aren't
correlated with the 4th clock.
The clock number doesn't impact the configuration variable because the
4th clock is simply retrieved from DTS, saved in the driver structure
and prepare/unprepare/enable/disable, like other clocks.

Regards,
Alex

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365
@ 2023-03-15  9:26       ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15  9:26 UTC (permalink / raw)
  To: Chun-Kuang Hu
  Cc: Neil Armstrong, Jitao Shi, Krzysztof Kozlowski, Fabien Parent,
	linux-kernel, Rob Herring, linux-pwm, Matthias Brugger,
	devicetree, Thierry Reding, Guillaume La Roque, dri-devel,
	Uwe Kleine-König, linux-mediatek, Sam Ravnborg,
	linux-arm-kernel, Xinlei Lee

Hi Chun-Kuang,

Le lun. 13 mars 2023 à 16:17, Chun-Kuang Hu <chunkuang.hu@kernel.org> a écrit :
>
> Hi, Alexandre:
>
> Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
> >
> > From: Fabien Parent <fparent@baylibre.com>
> >
> > DPI for MT8365 is compatible with MT8192 but requires an additional
> > clock. Modify the documentation to requires this clock only on MT8365 SoCs.
>
> If MT8365 DPI has additional clock, why it is compatible with MT8192 DPI?
> I think some part of MT8165 DPI works under the speed control by the
> DPI clock and this is different with MT8192 DPI, how could these two
> are compatible?

AFAII, The mtk_dpi driver manage the 4th clock as optional
dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");
And all configuration variables for mt8192 are the same for mt8365.
These configuration clock variables (like cal_factor) aren't
correlated with the 4th clock.
The clock number doesn't impact the configuration variable because the
4th clock is simply retrieved from DTS, saved in the driver structure
and prepare/unprepare/enable/disable, like other clocks.

Regards,
Alex

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365
@ 2023-03-15  9:26       ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15  9:26 UTC (permalink / raw)
  To: Chun-Kuang Hu
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi Chun-Kuang,

Le lun. 13 mars 2023 à 16:17, Chun-Kuang Hu <chunkuang.hu@kernel.org> a écrit :
>
> Hi, Alexandre:
>
> Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
> >
> > From: Fabien Parent <fparent@baylibre.com>
> >
> > DPI for MT8365 is compatible with MT8192 but requires an additional
> > clock. Modify the documentation to requires this clock only on MT8365 SoCs.
>
> If MT8365 DPI has additional clock, why it is compatible with MT8192 DPI?
> I think some part of MT8165 DPI works under the speed control by the
> DPI clock and this is different with MT8192 DPI, how could these two
> are compatible?

AFAII, The mtk_dpi driver manage the 4th clock as optional
dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");
And all configuration variables for mt8192 are the same for mt8365.
These configuration clock variables (like cal_factor) aren't
correlated with the 4th clock.
The clock number doesn't impact the configuration variable because the
4th clock is simply retrieved from DTS, saved in the driver structure
and prepare/unprepare/enable/disable, like other clocks.

Regards,
Alex

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 19/21] drm/mediatek: dpi: add support for dpi clock
  2023-03-13 15:21     ` Chun-Kuang Hu
  (?)
@ 2023-03-15  9:35       ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15  9:35 UTC (permalink / raw)
  To: Chun-Kuang Hu
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Le lun. 13 mars 2023 à 16:21, Chun-Kuang Hu <chunkuang.hu@kernel.org> a écrit :
>
> >
> > +       dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");
>
> For MT8365, DPI clock is not optional, so make sure that MT8365 DPI
> should have this clock.

This should be check and notified at build time thanks to the
device-tree binding. Do you prefer this?:
#IF MT8365_SOC
    dpi->dpi_clk = devm_clk_get(dev, "dpi");

Regards,
Alex

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 19/21] drm/mediatek: dpi: add support for dpi clock
@ 2023-03-15  9:35       ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15  9:35 UTC (permalink / raw)
  To: Chun-Kuang Hu
  Cc: Neil Armstrong, Jitao Shi, Krzysztof Kozlowski, Fabien Parent,
	linux-kernel, Rob Herring, linux-pwm, Matthias Brugger,
	devicetree, Thierry Reding, Guillaume La Roque, dri-devel,
	Uwe Kleine-König, linux-mediatek, Sam Ravnborg,
	linux-arm-kernel, Xinlei Lee

Le lun. 13 mars 2023 à 16:21, Chun-Kuang Hu <chunkuang.hu@kernel.org> a écrit :
>
> >
> > +       dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");
>
> For MT8365, DPI clock is not optional, so make sure that MT8365 DPI
> should have this clock.

This should be check and notified at build time thanks to the
device-tree binding. Do you prefer this?:
#IF MT8365_SOC
    dpi->dpi_clk = devm_clk_get(dev, "dpi");

Regards,
Alex

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 19/21] drm/mediatek: dpi: add support for dpi clock
@ 2023-03-15  9:35       ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15  9:35 UTC (permalink / raw)
  To: Chun-Kuang Hu
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Le lun. 13 mars 2023 à 16:21, Chun-Kuang Hu <chunkuang.hu@kernel.org> a écrit :
>
> >
> > +       dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");
>
> For MT8365, DPI clock is not optional, so make sure that MT8365 DPI
> should have this clock.

This should be check and notified at build time thanks to the
device-tree binding. Do you prefer this?:
#IF MT8365_SOC
    dpi->dpi_clk = devm_clk_get(dev, "dpi");

Regards,
Alex

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
  2023-03-15  8:01       ` Alexandre Mergnat
  (?)
@ 2023-03-15 13:17         ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-15 13:17 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 15/03/2023 09:01, Alexandre Mergnat wrote:
> Le ven. 10 mars 2023 à 09:39, Krzysztof Kozlowski
> <krzysztof.kozlowski@linaro.org> a écrit :
>>
>> On 09/03/2023 15:23, Alexandre Mergnat wrote:
>>> Add compatible for the MT8365 SoC.
>>>
>>> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
>>> ---
>>>  Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
>>>  1 file changed, 1 insertion(+)
>>>
>>> diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
>>> index ca0ca549257d..931d66893dff 100644
>>> --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
>>> +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
>>> @@ -34,6 +34,7 @@ properties:
>>>        - mediatek,mt8186-mdp3-mutex
>>>        - mediatek,mt8192-disp-mutex
>>>        - mediatek,mt8195-disp-mutex
>>> +      - mediatek,mt8365-disp-mutex
>>
>> All these look compatible. Either make mt8635 compatible with something
>> or even rework entire list and make everything compatible.
> 
> All of them use "mtk_mutec.c" but have specific data.
> 
>       .data = &mt8173_mutex_driver_data},
>     { .compatible = "mediatek,mt8183-disp-mutex",
>       .data = &mt8183_mutex_driver_data},
>     { .compatible = "mediatek,mt8186-disp-mutex",
>       .data = &mt8186_mutex_driver_data},
>     { .compatible = "mediatek,mt8186-mdp3-mutex",
>       .data = &mt8186_mdp_mutex_driver_data},
>     { .compatible = "mediatek,mt8192-disp-mutex",
>       .data = &mt8192_mutex_driver_data},
>     { .compatible = "mediatek,mt8195-disp-mutex",
>       .data = &mt8195_mutex_driver_data},
>     { .compatible = "mediatek,mt8365-disp-mutex",
>       .data = &mt8365_mutex_driver_data},
> 
> I don't see any SoC compatible with mt8635, and I have no idea which
> rework you have in mind. Can you please point me an example ?

You are right, I looked at wrong of_device_id.

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
@ 2023-03-15 13:17         ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-15 13:17 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, Uwe Kleine-König, Chun-Kuang Hu, Jitao Shi,
	Rob Herring, linux-mediatek, Matthias Brugger, linux-arm-kernel,
	Neil Armstrong, linux-kernel

On 15/03/2023 09:01, Alexandre Mergnat wrote:
> Le ven. 10 mars 2023 à 09:39, Krzysztof Kozlowski
> <krzysztof.kozlowski@linaro.org> a écrit :
>>
>> On 09/03/2023 15:23, Alexandre Mergnat wrote:
>>> Add compatible for the MT8365 SoC.
>>>
>>> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
>>> ---
>>>  Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
>>>  1 file changed, 1 insertion(+)
>>>
>>> diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
>>> index ca0ca549257d..931d66893dff 100644
>>> --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
>>> +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
>>> @@ -34,6 +34,7 @@ properties:
>>>        - mediatek,mt8186-mdp3-mutex
>>>        - mediatek,mt8192-disp-mutex
>>>        - mediatek,mt8195-disp-mutex
>>> +      - mediatek,mt8365-disp-mutex
>>
>> All these look compatible. Either make mt8635 compatible with something
>> or even rework entire list and make everything compatible.
> 
> All of them use "mtk_mutec.c" but have specific data.
> 
>       .data = &mt8173_mutex_driver_data},
>     { .compatible = "mediatek,mt8183-disp-mutex",
>       .data = &mt8183_mutex_driver_data},
>     { .compatible = "mediatek,mt8186-disp-mutex",
>       .data = &mt8186_mutex_driver_data},
>     { .compatible = "mediatek,mt8186-mdp3-mutex",
>       .data = &mt8186_mdp_mutex_driver_data},
>     { .compatible = "mediatek,mt8192-disp-mutex",
>       .data = &mt8192_mutex_driver_data},
>     { .compatible = "mediatek,mt8195-disp-mutex",
>       .data = &mt8195_mutex_driver_data},
>     { .compatible = "mediatek,mt8365-disp-mutex",
>       .data = &mt8365_mutex_driver_data},
> 
> I don't see any SoC compatible with mt8635, and I have no idea which
> rework you have in mind. Can you please point me an example ?

You are right, I looked at wrong of_device_id.

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
@ 2023-03-15 13:17         ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-15 13:17 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 15/03/2023 09:01, Alexandre Mergnat wrote:
> Le ven. 10 mars 2023 à 09:39, Krzysztof Kozlowski
> <krzysztof.kozlowski@linaro.org> a écrit :
>>
>> On 09/03/2023 15:23, Alexandre Mergnat wrote:
>>> Add compatible for the MT8365 SoC.
>>>
>>> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
>>> ---
>>>  Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
>>>  1 file changed, 1 insertion(+)
>>>
>>> diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
>>> index ca0ca549257d..931d66893dff 100644
>>> --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
>>> +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
>>> @@ -34,6 +34,7 @@ properties:
>>>        - mediatek,mt8186-mdp3-mutex
>>>        - mediatek,mt8192-disp-mutex
>>>        - mediatek,mt8195-disp-mutex
>>> +      - mediatek,mt8365-disp-mutex
>>
>> All these look compatible. Either make mt8635 compatible with something
>> or even rework entire list and make everything compatible.
> 
> All of them use "mtk_mutec.c" but have specific data.
> 
>       .data = &mt8173_mutex_driver_data},
>     { .compatible = "mediatek,mt8183-disp-mutex",
>       .data = &mt8183_mutex_driver_data},
>     { .compatible = "mediatek,mt8186-disp-mutex",
>       .data = &mt8186_mutex_driver_data},
>     { .compatible = "mediatek,mt8186-mdp3-mutex",
>       .data = &mt8186_mdp_mutex_driver_data},
>     { .compatible = "mediatek,mt8192-disp-mutex",
>       .data = &mt8192_mutex_driver_data},
>     { .compatible = "mediatek,mt8195-disp-mutex",
>       .data = &mt8195_mutex_driver_data},
>     { .compatible = "mediatek,mt8365-disp-mutex",
>       .data = &mt8365_mutex_driver_data},
> 
> I don't see any SoC compatible with mt8635, and I have no idea which
> rework you have in mind. Can you please point me an example ?

You are right, I looked at wrong of_device_id.

Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
  2023-03-09 14:23   ` Alexandre Mergnat
  (?)
@ 2023-03-15 13:22     ` Krzysztof Kozlowski
  -1 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-15 13:22 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:23, Alexandre Mergnat wrote:
> Add compatible for the MT8365 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
@ 2023-03-15 13:22     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-15 13:22 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, linux-pwm, linux-kernel, dri-devel,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel

On 09/03/2023 15:23, Alexandre Mergnat wrote:
> Add compatible for the MT8365 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
@ 2023-03-15 13:22     ` Krzysztof Kozlowski
  0 siblings, 0 replies; 174+ messages in thread
From: Krzysztof Kozlowski @ 2023-03-15 13:22 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, Matthias Brugger,
	David Airlie, Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

On 09/03/2023 15:23, Alexandre Mergnat wrote:
> Add compatible for the MT8365 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---


Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 19/21] drm/mediatek: dpi: add support for dpi clock
  2023-03-15  9:35       ` Alexandre Mergnat
  (?)
@ 2023-03-15 14:17         ` Chun-Kuang Hu
  -1 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-15 14:17 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Chun-Kuang Hu, Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding,
	Philipp Zabel, Sam Ravnborg, Rob Herring, Uwe Kleine-König,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月15日 週三 下午5:36寫道:
>
> Le lun. 13 mars 2023 à 16:21, Chun-Kuang Hu <chunkuang.hu@kernel.org> a écrit :
> >
> > >
> > > +       dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");
> >
> > For MT8365, DPI clock is not optional, so make sure that MT8365 DPI
> > should have this clock.
>
> This should be check and notified at build time thanks to the
> device-tree binding. Do you prefer this?:
> #IF MT8365_SOC
>     dpi->dpi_clk = devm_clk_get(dev, "dpi");

Add one member in struct mtk_dpi_conf for dpi_clk. In
mtk_dpi_of_ids[], add one item for mt8365

{ .compatible = "mediatek,mt8365-dpi",
 .data = &mt8365_conf,
},

Regards,
Chun-Kuang.

>
> Regards,
> Alex

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 19/21] drm/mediatek: dpi: add support for dpi clock
@ 2023-03-15 14:17         ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-15 14:17 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, Uwe Kleine-König, Chun-Kuang Hu, Jitao Shi,
	Rob Herring, linux-mediatek, Matthias Brugger, linux-arm-kernel,
	Neil Armstrong, linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月15日 週三 下午5:36寫道:
>
> Le lun. 13 mars 2023 à 16:21, Chun-Kuang Hu <chunkuang.hu@kernel.org> a écrit :
> >
> > >
> > > +       dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");
> >
> > For MT8365, DPI clock is not optional, so make sure that MT8365 DPI
> > should have this clock.
>
> This should be check and notified at build time thanks to the
> device-tree binding. Do you prefer this?:
> #IF MT8365_SOC
>     dpi->dpi_clk = devm_clk_get(dev, "dpi");

Add one member in struct mtk_dpi_conf for dpi_clk. In
mtk_dpi_of_ids[], add one item for mt8365

{ .compatible = "mediatek,mt8365-dpi",
 .data = &mt8365_conf,
},

Regards,
Chun-Kuang.

>
> Regards,
> Alex

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 19/21] drm/mediatek: dpi: add support for dpi clock
@ 2023-03-15 14:17         ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-15 14:17 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Chun-Kuang Hu, Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding,
	Philipp Zabel, Sam Ravnborg, Rob Herring, Uwe Kleine-König,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Alexandre:

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月15日 週三 下午5:36寫道:
>
> Le lun. 13 mars 2023 à 16:21, Chun-Kuang Hu <chunkuang.hu@kernel.org> a écrit :
> >
> > >
> > > +       dpi->dpi_clk = devm_clk_get_optional(dev, "dpi");
> >
> > For MT8365, DPI clock is not optional, so make sure that MT8365 DPI
> > should have this clock.
>
> This should be check and notified at build time thanks to the
> device-tree binding. Do you prefer this?:
> #IF MT8365_SOC
>     dpi->dpi_clk = devm_clk_get(dev, "dpi");

Add one member in struct mtk_dpi_conf for dpi_clk. In
mtk_dpi_of_ids[], add one item for mt8365

{ .compatible = "mediatek,mt8365-dpi",
 .data = &mt8365_conf,
},

Regards,
Chun-Kuang.

>
> Regards,
> Alex

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 21/21] panel: startek-kd070fhfid015: add support of this display
  2023-03-09 14:51     ` Neil Armstrong
  (?)
@ 2023-03-15 15:59       ` Alexandre Mergnat
  -1 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15 15:59 UTC (permalink / raw)
  To: neil.armstrong
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, linux-pwm, devicetree, linux-kernel

Hi Neil,

Le jeu. 9 mars 2023 à 15:51, Neil Armstrong
<neil.armstrong@linaro.org> a écrit :
> > +
> > +#include <drm/drm_crtc.h>
>
> Is this include needed ?

Seems not, I remove it.

> > +     struct gpio_desc *enable_gpio;
> > +     struct gpio_desc *reset_gpio;
> > +     struct gpio_desc *dcdc_en_gpio;
>
> Isn't this "DCDC" a regulator ???

According to the panel datasheet, this is an input signal needed
passing through TFT connector (PIN30):
"Power IC supply enable, High active"

> > +     /* Interface setting, video mode */
> > +     ret = mipi_dsi_generic_write(dsi,
> > +                     (u8[]){DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00}, 6);
> > +     if (ret < 0) {
> > +             dev_err(dev, "failed to set display interface setting: %d\n",
> > +                     ret);
> > +             return ret;
> > +     }
>
> Use mipi_dsi_generic_write_seq(dsi, DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00); instead,
> it's simpler and doesn't need explicit return check.

"mipi_dsi_generic_write_seq" doesn't exist but I will add it below
"mipi_dsi_dcs_write_seq" in drm_mipi_dsi.h
I must keep the return check to jump out of "stk_panel_init" if
something goes wrong, but I can drop the error print.

> > +static int stk_panel_enable(struct drm_panel *panel)
> > +{
> > +     struct stk_panel *stk = to_stk_panel(panel);
> > +
> > +     if (stk->enabled)
> > +             return 0;
> > +
> > +     backlight_enable(stk->backlight);
> > +
> > +     stk->enabled = true;
> > +
> > +     return 0;
> > +}
>
> Is this really needed ? the backlight core will enable it automatically.

Ok, it's managed by drm_panel.c driver.
Then I can also remove stuff from stk_panel_disable.


Regards,
Alex

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 21/21] panel: startek-kd070fhfid015: add support of this display
@ 2023-03-15 15:59       ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15 15:59 UTC (permalink / raw)
  To: neil.armstrong
  Cc: Chun-Kuang Hu, Jitao Shi, Krzysztof Kozlowski, Fabien Parent,
	linux-kernel, Rob Herring, linux-pwm, Matthias Brugger,
	devicetree, Thierry Reding, Guillaume La Roque, dri-devel,
	Uwe Kleine-König, linux-mediatek, Sam Ravnborg,
	linux-arm-kernel, Xinlei Lee

Hi Neil,

Le jeu. 9 mars 2023 à 15:51, Neil Armstrong
<neil.armstrong@linaro.org> a écrit :
> > +
> > +#include <drm/drm_crtc.h>
>
> Is this include needed ?

Seems not, I remove it.

> > +     struct gpio_desc *enable_gpio;
> > +     struct gpio_desc *reset_gpio;
> > +     struct gpio_desc *dcdc_en_gpio;
>
> Isn't this "DCDC" a regulator ???

According to the panel datasheet, this is an input signal needed
passing through TFT connector (PIN30):
"Power IC supply enable, High active"

> > +     /* Interface setting, video mode */
> > +     ret = mipi_dsi_generic_write(dsi,
> > +                     (u8[]){DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00}, 6);
> > +     if (ret < 0) {
> > +             dev_err(dev, "failed to set display interface setting: %d\n",
> > +                     ret);
> > +             return ret;
> > +     }
>
> Use mipi_dsi_generic_write_seq(dsi, DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00); instead,
> it's simpler and doesn't need explicit return check.

"mipi_dsi_generic_write_seq" doesn't exist but I will add it below
"mipi_dsi_dcs_write_seq" in drm_mipi_dsi.h
I must keep the return check to jump out of "stk_panel_init" if
something goes wrong, but I can drop the error print.

> > +static int stk_panel_enable(struct drm_panel *panel)
> > +{
> > +     struct stk_panel *stk = to_stk_panel(panel);
> > +
> > +     if (stk->enabled)
> > +             return 0;
> > +
> > +     backlight_enable(stk->backlight);
> > +
> > +     stk->enabled = true;
> > +
> > +     return 0;
> > +}
>
> Is this really needed ? the backlight core will enable it automatically.

Ok, it's managed by drm_panel.c driver.
Then I can also remove stuff from stk_panel_disable.


Regards,
Alex

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 21/21] panel: startek-kd070fhfid015: add support of this display
@ 2023-03-15 15:59       ` Alexandre Mergnat
  0 siblings, 0 replies; 174+ messages in thread
From: Alexandre Mergnat @ 2023-03-15 15:59 UTC (permalink / raw)
  To: neil.armstrong
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, linux-pwm, devicetree, linux-kernel

Hi Neil,

Le jeu. 9 mars 2023 à 15:51, Neil Armstrong
<neil.armstrong@linaro.org> a écrit :
> > +
> > +#include <drm/drm_crtc.h>
>
> Is this include needed ?

Seems not, I remove it.

> > +     struct gpio_desc *enable_gpio;
> > +     struct gpio_desc *reset_gpio;
> > +     struct gpio_desc *dcdc_en_gpio;
>
> Isn't this "DCDC" a regulator ???

According to the panel datasheet, this is an input signal needed
passing through TFT connector (PIN30):
"Power IC supply enable, High active"

> > +     /* Interface setting, video mode */
> > +     ret = mipi_dsi_generic_write(dsi,
> > +                     (u8[]){DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00}, 6);
> > +     if (ret < 0) {
> > +             dev_err(dev, "failed to set display interface setting: %d\n",
> > +                     ret);
> > +             return ret;
> > +     }
>
> Use mipi_dsi_generic_write_seq(dsi, DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00); instead,
> it's simpler and doesn't need explicit return check.

"mipi_dsi_generic_write_seq" doesn't exist but I will add it below
"mipi_dsi_dcs_write_seq" in drm_mipi_dsi.h
I must keep the return check to jump out of "stk_panel_init" if
something goes wrong, but I can drop the error print.

> > +static int stk_panel_enable(struct drm_panel *panel)
> > +{
> > +     struct stk_panel *stk = to_stk_panel(panel);
> > +
> > +     if (stk->enabled)
> > +             return 0;
> > +
> > +     backlight_enable(stk->backlight);
> > +
> > +     stk->enabled = true;
> > +
> > +     return 0;
> > +}
>
> Is this really needed ? the backlight core will enable it automatically.

Ok, it's managed by drm_panel.c driver.
Then I can also remove stuff from stk_panel_disable.


Regards,
Alex

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 21/21] panel: startek-kd070fhfid015: add support of this display
  2023-03-15 15:59       ` Alexandre Mergnat
  (?)
@ 2023-03-15 17:12         ` neil.armstrong
  -1 siblings, 0 replies; 174+ messages in thread
From: neil.armstrong @ 2023-03-15 17:12 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, linux-pwm, devicetree, linux-kernel

Hi,

On 15/03/2023 16:59, Alexandre Mergnat wrote:
> Hi Neil,
> 
> Le jeu. 9 mars 2023 à 15:51, Neil Armstrong
> <neil.armstrong@linaro.org> a écrit :
>>> +
>>> +#include <drm/drm_crtc.h>
>>
>> Is this include needed ?
> 
> Seems not, I remove it.
> 
>>> +     struct gpio_desc *enable_gpio;
>>> +     struct gpio_desc *reset_gpio;
>>> +     struct gpio_desc *dcdc_en_gpio;
>>
>> Isn't this "DCDC" a regulator ???
> 
> According to the panel datasheet, this is an input signal needed
> passing through TFT connector (PIN30):
> "Power IC supply enable, High active"

Ack, perhaps the name isn't the right one, or specify something like panel-dcdc.

> 
>>> +     /* Interface setting, video mode */
>>> +     ret = mipi_dsi_generic_write(dsi,
>>> +                     (u8[]){DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00}, 6);
>>> +     if (ret < 0) {
>>> +             dev_err(dev, "failed to set display interface setting: %d\n",
>>> +                     ret);
>>> +             return ret;
>>> +     }
>>
>> Use mipi_dsi_generic_write_seq(dsi, DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00); instead,
>> it's simpler and doesn't need explicit return check.
> 
> "mipi_dsi_generic_write_seq" doesn't exist but I will add it below
> "mipi_dsi_dcs_write_seq" in drm_mipi_dsi.h

It is now https://github.com/torvalds/linux/blob/master/include/drm/drm_mipi_dsi.h#L302 since a9015ce59320

> I must keep the return check to jump out of "stk_panel_init" if
> something goes wrong, but I can drop the error print.

The mipi_dsi_generic_write_seq & mipi_dsi_dcs_write_seq macros does the return check for free.

> 
>>> +static int stk_panel_enable(struct drm_panel *panel)
>>> +{
>>> +     struct stk_panel *stk = to_stk_panel(panel);
>>> +
>>> +     if (stk->enabled)
>>> +             return 0;
>>> +
>>> +     backlight_enable(stk->backlight);
>>> +
>>> +     stk->enabled = true;
>>> +
>>> +     return 0;
>>> +}
>>
>> Is this really needed ? the backlight core will enable it automatically.
> 
> Ok, it's managed by drm_panel.c driver.
> Then I can also remove stuff from stk_panel_disable.
> 
> 
> Regards,
> Alex


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 21/21] panel: startek-kd070fhfid015: add support of this display
@ 2023-03-15 17:12         ` neil.armstrong
  0 siblings, 0 replies; 174+ messages in thread
From: neil.armstrong @ 2023-03-15 17:12 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Chun-Kuang Hu, Jitao Shi, Krzysztof Kozlowski, Fabien Parent,
	linux-kernel, Rob Herring, linux-pwm, Matthias Brugger,
	devicetree, Thierry Reding, Guillaume La Roque, dri-devel,
	Uwe Kleine-König, linux-mediatek, Sam Ravnborg,
	linux-arm-kernel, Xinlei Lee

Hi,

On 15/03/2023 16:59, Alexandre Mergnat wrote:
> Hi Neil,
> 
> Le jeu. 9 mars 2023 à 15:51, Neil Armstrong
> <neil.armstrong@linaro.org> a écrit :
>>> +
>>> +#include <drm/drm_crtc.h>
>>
>> Is this include needed ?
> 
> Seems not, I remove it.
> 
>>> +     struct gpio_desc *enable_gpio;
>>> +     struct gpio_desc *reset_gpio;
>>> +     struct gpio_desc *dcdc_en_gpio;
>>
>> Isn't this "DCDC" a regulator ???
> 
> According to the panel datasheet, this is an input signal needed
> passing through TFT connector (PIN30):
> "Power IC supply enable, High active"

Ack, perhaps the name isn't the right one, or specify something like panel-dcdc.

> 
>>> +     /* Interface setting, video mode */
>>> +     ret = mipi_dsi_generic_write(dsi,
>>> +                     (u8[]){DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00}, 6);
>>> +     if (ret < 0) {
>>> +             dev_err(dev, "failed to set display interface setting: %d\n",
>>> +                     ret);
>>> +             return ret;
>>> +     }
>>
>> Use mipi_dsi_generic_write_seq(dsi, DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00); instead,
>> it's simpler and doesn't need explicit return check.
> 
> "mipi_dsi_generic_write_seq" doesn't exist but I will add it below
> "mipi_dsi_dcs_write_seq" in drm_mipi_dsi.h

It is now https://github.com/torvalds/linux/blob/master/include/drm/drm_mipi_dsi.h#L302 since a9015ce59320

> I must keep the return check to jump out of "stk_panel_init" if
> something goes wrong, but I can drop the error print.

The mipi_dsi_generic_write_seq & mipi_dsi_dcs_write_seq macros does the return check for free.

> 
>>> +static int stk_panel_enable(struct drm_panel *panel)
>>> +{
>>> +     struct stk_panel *stk = to_stk_panel(panel);
>>> +
>>> +     if (stk->enabled)
>>> +             return 0;
>>> +
>>> +     backlight_enable(stk->backlight);
>>> +
>>> +     stk->enabled = true;
>>> +
>>> +     return 0;
>>> +}
>>
>> Is this really needed ? the backlight core will enable it automatically.
> 
> Ok, it's managed by drm_panel.c driver.
> Then I can also remove stuff from stk_panel_disable.
> 
> 
> Regards,
> Alex


^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 21/21] panel: startek-kd070fhfid015: add support of this display
@ 2023-03-15 17:12         ` neil.armstrong
  0 siblings, 0 replies; 174+ messages in thread
From: neil.armstrong @ 2023-03-15 17:12 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, linux-pwm, devicetree, linux-kernel

Hi,

On 15/03/2023 16:59, Alexandre Mergnat wrote:
> Hi Neil,
> 
> Le jeu. 9 mars 2023 à 15:51, Neil Armstrong
> <neil.armstrong@linaro.org> a écrit :
>>> +
>>> +#include <drm/drm_crtc.h>
>>
>> Is this include needed ?
> 
> Seems not, I remove it.
> 
>>> +     struct gpio_desc *enable_gpio;
>>> +     struct gpio_desc *reset_gpio;
>>> +     struct gpio_desc *dcdc_en_gpio;
>>
>> Isn't this "DCDC" a regulator ???
> 
> According to the panel datasheet, this is an input signal needed
> passing through TFT connector (PIN30):
> "Power IC supply enable, High active"

Ack, perhaps the name isn't the right one, or specify something like panel-dcdc.

> 
>>> +     /* Interface setting, video mode */
>>> +     ret = mipi_dsi_generic_write(dsi,
>>> +                     (u8[]){DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00}, 6);
>>> +     if (ret < 0) {
>>> +             dev_err(dev, "failed to set display interface setting: %d\n",
>>> +                     ret);
>>> +             return ret;
>>> +     }
>>
>> Use mipi_dsi_generic_write_seq(dsi, DSI_REG_IS, 0x14, 0x08, 0x00, 0x22, 0x00); instead,
>> it's simpler and doesn't need explicit return check.
> 
> "mipi_dsi_generic_write_seq" doesn't exist but I will add it below
> "mipi_dsi_dcs_write_seq" in drm_mipi_dsi.h

It is now https://github.com/torvalds/linux/blob/master/include/drm/drm_mipi_dsi.h#L302 since a9015ce59320

> I must keep the return check to jump out of "stk_panel_init" if
> something goes wrong, but I can drop the error print.

The mipi_dsi_generic_write_seq & mipi_dsi_dcs_write_seq macros does the return check for free.

> 
>>> +static int stk_panel_enable(struct drm_panel *panel)
>>> +{
>>> +     struct stk_panel *stk = to_stk_panel(panel);
>>> +
>>> +     if (stk->enabled)
>>> +             return 0;
>>> +
>>> +     backlight_enable(stk->backlight);
>>> +
>>> +     stk->enabled = true;
>>> +
>>> +     return 0;
>>> +}
>>
>> Is this really needed ? the backlight core will enable it automatically.
> 
> Ok, it's managed by drm_panel.c driver.
> Then I can also remove stuff from stk_panel_disable.
> 
> 
> Regards,
> Alex


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 18/21] drm/mediatek: dsi: Improves the DSI lane setup robustness
  2023-03-09 14:23   ` Alexandre Mergnat
  (?)
@ 2023-03-27 15:37     ` Chun-Kuang Hu
  -1 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-27 15:37 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Xinlei:

Could you help to review this patch?

Regards,
Chun-Kuang.

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Currently, mtk_dsi_lane_ready (which setup the DSI lane) is triggered
> before mtk_dsi_poweron. lanes_ready flag toggle to true during
> mtk_dsi_lane_ready function, and the DSI module is set up during
> mtk_dsi_poweron.
>
> Later, during panel driver init, mtk_dsi_lane_ready is triggered but does
> nothing because lanes are considered ready. Unfortunately, when the panel
> driver try to communicate, the DSI returns a timeout.
>
> The solution found here is to put lanes_ready flag to false after the DSI
> module setup into mtk_dsi_poweron to init the DSI lanes after the power /
> setup of the DSI module.
>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  drivers/gpu/drm/mediatek/mtk_dsi.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c
> index 3b7d13028fb6..35c36cc05c04 100644
> --- a/drivers/gpu/drm/mediatek/mtk_dsi.c
> +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c
> @@ -667,6 +667,8 @@ static int mtk_dsi_poweron(struct mtk_dsi *dsi)
>         mtk_dsi_config_vdo_timing(dsi);
>         mtk_dsi_set_interrupt_enable(dsi);
>
> +       dsi->lanes_ready = false;
> +
>         return 0;
>  err_disable_engine_clk:
>         clk_disable_unprepare(dsi->engine_clk);
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 18/21] drm/mediatek: dsi: Improves the DSI lane setup robustness
@ 2023-03-27 15:37     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-27 15:37 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, Chun-Kuang Hu,
	Matthias Brugger, David Airlie, Krzysztof Kozlowski, Xinlei Lee,
	Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel

Hi, Xinlei:

Could you help to review this patch?

Regards,
Chun-Kuang.

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Currently, mtk_dsi_lane_ready (which setup the DSI lane) is triggered
> before mtk_dsi_poweron. lanes_ready flag toggle to true during
> mtk_dsi_lane_ready function, and the DSI module is set up during
> mtk_dsi_poweron.
>
> Later, during panel driver init, mtk_dsi_lane_ready is triggered but does
> nothing because lanes are considered ready. Unfortunately, when the panel
> driver try to communicate, the DSI returns a timeout.
>
> The solution found here is to put lanes_ready flag to false after the DSI
> module setup into mtk_dsi_poweron to init the DSI lanes after the power /
> setup of the DSI module.
>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  drivers/gpu/drm/mediatek/mtk_dsi.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c
> index 3b7d13028fb6..35c36cc05c04 100644
> --- a/drivers/gpu/drm/mediatek/mtk_dsi.c
> +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c
> @@ -667,6 +667,8 @@ static int mtk_dsi_poweron(struct mtk_dsi *dsi)
>         mtk_dsi_config_vdo_timing(dsi);
>         mtk_dsi_set_interrupt_enable(dsi);
>
> +       dsi->lanes_ready = false;
> +
>         return 0;
>  err_disable_engine_clk:
>         clk_disable_unprepare(dsi->engine_clk);
>
> --
> b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 18/21] drm/mediatek: dsi: Improves the DSI lane setup robustness
@ 2023-03-27 15:37     ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-03-27 15:37 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Sam Ravnborg, Uwe Kleine-König, Chun-Kuang Hu, Jitao Shi,
	Rob Herring, linux-mediatek, Matthias Brugger, linux-arm-kernel,
	Neil Armstrong, linux-kernel

Hi, Xinlei:

Could you help to review this patch?

Regards,
Chun-Kuang.

Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>
> Currently, mtk_dsi_lane_ready (which setup the DSI lane) is triggered
> before mtk_dsi_poweron. lanes_ready flag toggle to true during
> mtk_dsi_lane_ready function, and the DSI module is set up during
> mtk_dsi_poweron.
>
> Later, during panel driver init, mtk_dsi_lane_ready is triggered but does
> nothing because lanes are considered ready. Unfortunately, when the panel
> driver try to communicate, the DSI returns a timeout.
>
> The solution found here is to put lanes_ready flag to false after the DSI
> module setup into mtk_dsi_poweron to init the DSI lanes after the power /
> setup of the DSI module.
>
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> ---
>  drivers/gpu/drm/mediatek/mtk_dsi.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c
> index 3b7d13028fb6..35c36cc05c04 100644
> --- a/drivers/gpu/drm/mediatek/mtk_dsi.c
> +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c
> @@ -667,6 +667,8 @@ static int mtk_dsi_poweron(struct mtk_dsi *dsi)
>         mtk_dsi_config_vdo_timing(dsi);
>         mtk_dsi_set_interrupt_enable(dsi);
>
> +       dsi->lanes_ready = false;
> +
>         return 0;
>  err_disable_engine_clk:
>         clk_disable_unprepare(dsi->engine_clk);
>
> --
> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 14/21] dt-bindings: soc: mediatek: specify which compatible requires clocks property
  2023-03-09 14:23   ` Alexandre Mergnat
  (?)
@ 2023-03-31 14:42     ` Matthias Brugger
  -1 siblings, 0 replies; 174+ messages in thread
From: Matthias Brugger @ 2023-03-31 14:42 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, David Airlie,
	Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel



On 09/03/2023 15:23, Alexandre Mergnat wrote:
> According to the mtk-mutex.c driver and the SoC DTS, the clock isn't
> required to work properly for some of MTK SoC. Improve the clock
> requirement by adding a condition which is function to the compatible.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>

Applied, thanks.

Now I think we can get rid of the no_clk variable in struct mtk_mutex_data, as 
this should be mandated by the device-tree.

Regards,
Matthias

> ---
>   .../bindings/soc/mediatek/mediatek,mutex.yaml        | 20 +++++++++++++++++++-
>   1 file changed, 19 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> index 9241e5fc7cff..ca0ca549257d 100644
> --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> @@ -69,12 +69,30 @@ properties:
>         4 arguments defined in this property. Each GCE subsys id is mapping to
>         a client defined in the header include/dt-bindings/gce/<chip>-gce.h.
>   
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - mediatek,mt2701-disp-mutex
> +              - mediatek,mt2712-disp-mutex
> +              - mediatek,mt6795-disp-mutex
> +              - mediatek,mt8173-disp-mutex
> +              - mediatek,mt8186-disp-mutex
> +              - mediatek,mt8186-mdp3-mutex
> +              - mediatek,mt8192-disp-mutex
> +              - mediatek,mt8195-disp-mutex
> +    then:
> +      required:
> +        - clocks
> +
> +
>   required:
>     - compatible
>     - reg
>     - interrupts
>     - power-domains
> -  - clocks
>   
>   additionalProperties: false
>   
> 

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 14/21] dt-bindings: soc: mediatek: specify which compatible requires clocks property
@ 2023-03-31 14:42     ` Matthias Brugger
  0 siblings, 0 replies; 174+ messages in thread
From: Matthias Brugger @ 2023-03-31 14:42 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, David Airlie,
	Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, linux-pwm, linux-kernel, dri-devel,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel



On 09/03/2023 15:23, Alexandre Mergnat wrote:
> According to the mtk-mutex.c driver and the SoC DTS, the clock isn't
> required to work properly for some of MTK SoC. Improve the clock
> requirement by adding a condition which is function to the compatible.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>

Applied, thanks.

Now I think we can get rid of the no_clk variable in struct mtk_mutex_data, as 
this should be mandated by the device-tree.

Regards,
Matthias

> ---
>   .../bindings/soc/mediatek/mediatek,mutex.yaml        | 20 +++++++++++++++++++-
>   1 file changed, 19 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> index 9241e5fc7cff..ca0ca549257d 100644
> --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> @@ -69,12 +69,30 @@ properties:
>         4 arguments defined in this property. Each GCE subsys id is mapping to
>         a client defined in the header include/dt-bindings/gce/<chip>-gce.h.
>   
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - mediatek,mt2701-disp-mutex
> +              - mediatek,mt2712-disp-mutex
> +              - mediatek,mt6795-disp-mutex
> +              - mediatek,mt8173-disp-mutex
> +              - mediatek,mt8186-disp-mutex
> +              - mediatek,mt8186-mdp3-mutex
> +              - mediatek,mt8192-disp-mutex
> +              - mediatek,mt8195-disp-mutex
> +    then:
> +      required:
> +        - clocks
> +
> +
>   required:
>     - compatible
>     - reg
>     - interrupts
>     - power-domains
> -  - clocks
>   
>   additionalProperties: false
>   
> 

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 14/21] dt-bindings: soc: mediatek: specify which compatible requires clocks property
@ 2023-03-31 14:42     ` Matthias Brugger
  0 siblings, 0 replies; 174+ messages in thread
From: Matthias Brugger @ 2023-03-31 14:42 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, David Airlie,
	Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel



On 09/03/2023 15:23, Alexandre Mergnat wrote:
> According to the mtk-mutex.c driver and the SoC DTS, the clock isn't
> required to work properly for some of MTK SoC. Improve the clock
> requirement by adding a condition which is function to the compatible.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>

Applied, thanks.

Now I think we can get rid of the no_clk variable in struct mtk_mutex_data, as 
this should be mandated by the device-tree.

Regards,
Matthias

> ---
>   .../bindings/soc/mediatek/mediatek,mutex.yaml        | 20 +++++++++++++++++++-
>   1 file changed, 19 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> index 9241e5fc7cff..ca0ca549257d 100644
> --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> @@ -69,12 +69,30 @@ properties:
>         4 arguments defined in this property. Each GCE subsys id is mapping to
>         a client defined in the header include/dt-bindings/gce/<chip>-gce.h.
>   
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - mediatek,mt2701-disp-mutex
> +              - mediatek,mt2712-disp-mutex
> +              - mediatek,mt6795-disp-mutex
> +              - mediatek,mt8173-disp-mutex
> +              - mediatek,mt8186-disp-mutex
> +              - mediatek,mt8186-mdp3-mutex
> +              - mediatek,mt8192-disp-mutex
> +              - mediatek,mt8195-disp-mutex
> +    then:
> +      required:
> +        - clocks
> +
> +
>   required:
>     - compatible
>     - reg
>     - interrupts
>     - power-domains
> -  - clocks
>   
>   additionalProperties: false
>   
> 

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
  2023-03-13 15:02     ` Chun-Kuang Hu
  (?)
@ 2023-03-31 14:55       ` Matthias Brugger
  -1 siblings, 0 replies; 174+ messages in thread
From: Matthias Brugger @ 2023-03-31 14:55 UTC (permalink / raw)
  To: Chun-Kuang Hu, Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, David Airlie,
	Krzysztof Kozlowski, Xinlei Lee, Guillaume La Roque,
	linux-arm-kernel, linux-mediatek, dri-devel, Fabien Parent,
	Neil Armstrong, linux-pwm, devicetree, linux-kernel

Hi Chun-Kuang Hu,

On 13/03/2023 16:02, Chun-Kuang Hu wrote:
> Hi, Alexandre:
> 
> Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>>
>> Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
>> Then, add MT8365 binding along with MT8183 SoC.
> 
> Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
> 

I'm a bit puzzled that you give your reviewed by while I would have expected 
that you will take the display binding patches. Will you take these or do you 
want someone else to take them?

Regards,
Matthias

>>
>> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
>> ---
>>   Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml | 1 +
>>   1 file changed, 1 insertion(+)
>>
>> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
>> index d4d585485e7b..d47bc72f09c0 100644
>> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
>> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
>> @@ -33,6 +33,7 @@ properties:
>>                 - mediatek,mt8186-disp-aal
>>                 - mediatek,mt8192-disp-aal
>>                 - mediatek,mt8195-disp-aal
>> +              - mediatek,mt8365-disp-aal
>>             - const: mediatek,mt8183-disp-aal
>>
>>     reg:
>>
>> --
>> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
@ 2023-03-31 14:55       ` Matthias Brugger
  0 siblings, 0 replies; 174+ messages in thread
From: Matthias Brugger @ 2023-03-31 14:55 UTC (permalink / raw)
  To: Chun-Kuang Hu, Alexandre Mergnat
  Cc: Neil Armstrong, Jitao Shi, Krzysztof Kozlowski, linux-pwm,
	linux-kernel, Rob Herring, Fabien Parent, devicetree,
	Thierry Reding, Guillaume La Roque, dri-devel,
	Uwe Kleine-König, linux-mediatek, Sam Ravnborg,
	linux-arm-kernel, Xinlei Lee

Hi Chun-Kuang Hu,

On 13/03/2023 16:02, Chun-Kuang Hu wrote:
> Hi, Alexandre:
> 
> Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>>
>> Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
>> Then, add MT8365 binding along with MT8183 SoC.
> 
> Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
> 

I'm a bit puzzled that you give your reviewed by while I would have expected 
that you will take the display binding patches. Will you take these or do you 
want someone else to take them?

Regards,
Matthias

>>
>> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
>> ---
>>   Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml | 1 +
>>   1 file changed, 1 insertion(+)
>>
>> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
>> index d4d585485e7b..d47bc72f09c0 100644
>> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
>> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
>> @@ -33,6 +33,7 @@ properties:
>>                 - mediatek,mt8186-disp-aal
>>                 - mediatek,mt8192-disp-aal
>>                 - mediatek,mt8195-disp-aal
>> +              - mediatek,mt8365-disp-aal
>>             - const: mediatek,mt8183-disp-aal
>>
>>     reg:
>>
>> --
>> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
@ 2023-03-31 14:55       ` Matthias Brugger
  0 siblings, 0 replies; 174+ messages in thread
From: Matthias Brugger @ 2023-03-31 14:55 UTC (permalink / raw)
  To: Chun-Kuang Hu, Alexandre Mergnat
  Cc: Daniel Vetter, CK Hu, Jitao Shi, Thierry Reding, Philipp Zabel,
	Sam Ravnborg, Rob Herring, Uwe Kleine-König, David Airlie,
	Krzysztof Kozlowski, Xinlei Lee, Guillaume La Roque,
	linux-arm-kernel, linux-mediatek, dri-devel, Fabien Parent,
	Neil Armstrong, linux-pwm, devicetree, linux-kernel

Hi Chun-Kuang Hu,

On 13/03/2023 16:02, Chun-Kuang Hu wrote:
> Hi, Alexandre:
> 
> Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
>>
>> Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
>> Then, add MT8365 binding along with MT8183 SoC.
> 
> Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
> 

I'm a bit puzzled that you give your reviewed by while I would have expected 
that you will take the display binding patches. Will you take these or do you 
want someone else to take them?

Regards,
Matthias

>>
>> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
>> ---
>>   Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml | 1 +
>>   1 file changed, 1 insertion(+)
>>
>> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
>> index d4d585485e7b..d47bc72f09c0 100644
>> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
>> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
>> @@ -33,6 +33,7 @@ properties:
>>                 - mediatek,mt8186-disp-aal
>>                 - mediatek,mt8192-disp-aal
>>                 - mediatek,mt8195-disp-aal
>> +              - mediatek,mt8365-disp-aal
>>             - const: mediatek,mt8183-disp-aal
>>
>>     reg:
>>
>> --
>> b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
  2023-03-09 14:23   ` Alexandre Mergnat
  (?)
@ 2023-03-31 17:51     ` Matthias Brugger
  -1 siblings, 0 replies; 174+ messages in thread
From: Matthias Brugger @ 2023-03-31 17:51 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, David Airlie,
	Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel



On 09/03/2023 15:23, Alexandre Mergnat wrote:
> Add compatible for the MT8365 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>

Applied, thanks!

> ---
>   Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> index ca0ca549257d..931d66893dff 100644
> --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> @@ -34,6 +34,7 @@ properties:
>         - mediatek,mt8186-mdp3-mutex
>         - mediatek,mt8192-disp-mutex
>         - mediatek,mt8195-disp-mutex
> +      - mediatek,mt8365-disp-mutex
>   
>     reg:
>       maxItems: 1
> 

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
@ 2023-03-31 17:51     ` Matthias Brugger
  0 siblings, 0 replies; 174+ messages in thread
From: Matthias Brugger @ 2023-03-31 17:51 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, David Airlie,
	Krzysztof Kozlowski, Xinlei Lee
  Cc: Neil Armstrong, linux-pwm, linux-kernel, dri-devel,
	Fabien Parent, devicetree, linux-mediatek, Guillaume La Roque,
	linux-arm-kernel



On 09/03/2023 15:23, Alexandre Mergnat wrote:
> Add compatible for the MT8365 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>

Applied, thanks!

> ---
>   Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> index ca0ca549257d..931d66893dff 100644
> --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> @@ -34,6 +34,7 @@ properties:
>         - mediatek,mt8186-mdp3-mutex
>         - mediatek,mt8192-disp-mutex
>         - mediatek,mt8195-disp-mutex
> +      - mediatek,mt8365-disp-mutex
>   
>     reg:
>       maxItems: 1
> 

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC
@ 2023-03-31 17:51     ` Matthias Brugger
  0 siblings, 0 replies; 174+ messages in thread
From: Matthias Brugger @ 2023-03-31 17:51 UTC (permalink / raw)
  To: Alexandre Mergnat, Daniel Vetter, CK Hu, Jitao Shi,
	Thierry Reding, Philipp Zabel, Sam Ravnborg, Rob Herring,
	Uwe Kleine-König, Chun-Kuang Hu, David Airlie,
	Krzysztof Kozlowski, Xinlei Lee
  Cc: Guillaume La Roque, linux-arm-kernel, linux-mediatek, dri-devel,
	Fabien Parent, Neil Armstrong, linux-pwm, devicetree,
	linux-kernel



On 09/03/2023 15:23, Alexandre Mergnat wrote:
> Add compatible for the MT8365 SoC.
> 
> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>

Applied, thanks!

> ---
>   Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> index ca0ca549257d..931d66893dff 100644
> --- a/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> +++ b/Documentation/devicetree/bindings/soc/mediatek/mediatek,mutex.yaml
> @@ -34,6 +34,7 @@ properties:
>         - mediatek,mt8186-mdp3-mutex
>         - mediatek,mt8192-disp-mutex
>         - mediatek,mt8195-disp-mutex
> +      - mediatek,mt8365-disp-mutex
>   
>     reg:
>       maxItems: 1
> 

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
  2023-03-31 14:55       ` Matthias Brugger
  (?)
@ 2023-04-03  3:25         ` Chun-Kuang Hu
  -1 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-04-03  3:25 UTC (permalink / raw)
  To: Matthias Brugger
  Cc: Chun-Kuang Hu, Alexandre Mergnat, Daniel Vetter, CK Hu,
	Jitao Shi, Thierry Reding, Philipp Zabel, Sam Ravnborg,
	Rob Herring, Uwe Kleine-König, David Airlie,
	Krzysztof Kozlowski, Xinlei Lee, Guillaume La Roque,
	linux-arm-kernel, linux-mediatek, dri-devel, Fabien Parent,
	Neil Armstrong, linux-pwm, devicetree, linux-kernel

Hi, Matthias:

Matthias Brugger <matthias.bgg@gmail.com> 於 2023年3月31日 週五 下午10:55寫道:
>
> Hi Chun-Kuang Hu,
>
> On 13/03/2023 16:02, Chun-Kuang Hu wrote:
> > Hi, Alexandre:
> >
> > Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
> >>
> >> Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
> >> Then, add MT8365 binding along with MT8183 SoC.
> >
> > Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
> >
>
> I'm a bit puzzled that you give your reviewed by while I would have expected
> that you will take the display binding patches. Will you take these or do you
> want someone else to take them?

I usually apply whole series together, and I've question about
"[07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365"
in this series. This is just the first version, so maybe I would apply
partial patches in later version.

Regards,
Chun-Kuang.


>
> Regards,
> Matthias
>
> >>
> >> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> >> ---
> >>   Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml | 1 +
> >>   1 file changed, 1 insertion(+)
> >>
> >> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> >> index d4d585485e7b..d47bc72f09c0 100644
> >> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> >> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> >> @@ -33,6 +33,7 @@ properties:
> >>                 - mediatek,mt8186-disp-aal
> >>                 - mediatek,mt8192-disp-aal
> >>                 - mediatek,mt8195-disp-aal
> >> +              - mediatek,mt8365-disp-aal
> >>             - const: mediatek,mt8183-disp-aal
> >>
> >>     reg:
> >>
> >> --
> >> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
@ 2023-04-03  3:25         ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-04-03  3:25 UTC (permalink / raw)
  To: Matthias Brugger
  Cc: Chun-Kuang Hu, Alexandre Mergnat, Daniel Vetter, CK Hu,
	Jitao Shi, Thierry Reding, Philipp Zabel, Sam Ravnborg,
	Rob Herring, Uwe Kleine-König, David Airlie,
	Krzysztof Kozlowski, Xinlei Lee, Guillaume La Roque,
	linux-arm-kernel, linux-mediatek, dri-devel, Fabien Parent,
	Neil Armstrong, linux-pwm, devicetree, linux-kernel

Hi, Matthias:

Matthias Brugger <matthias.bgg@gmail.com> 於 2023年3月31日 週五 下午10:55寫道:
>
> Hi Chun-Kuang Hu,
>
> On 13/03/2023 16:02, Chun-Kuang Hu wrote:
> > Hi, Alexandre:
> >
> > Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
> >>
> >> Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
> >> Then, add MT8365 binding along with MT8183 SoC.
> >
> > Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
> >
>
> I'm a bit puzzled that you give your reviewed by while I would have expected
> that you will take the display binding patches. Will you take these or do you
> want someone else to take them?

I usually apply whole series together, and I've question about
"[07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365"
in this series. This is just the first version, so maybe I would apply
partial patches in later version.

Regards,
Chun-Kuang.


>
> Regards,
> Matthias
>
> >>
> >> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> >> ---
> >>   Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml | 1 +
> >>   1 file changed, 1 insertion(+)
> >>
> >> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> >> index d4d585485e7b..d47bc72f09c0 100644
> >> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> >> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> >> @@ -33,6 +33,7 @@ properties:
> >>                 - mediatek,mt8186-disp-aal
> >>                 - mediatek,mt8192-disp-aal
> >>                 - mediatek,mt8195-disp-aal
> >> +              - mediatek,mt8365-disp-aal
> >>             - const: mediatek,mt8183-disp-aal
> >>
> >>     reg:
> >>
> >> --
> >> b4 0.10.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 174+ messages in thread

* Re: [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC
@ 2023-04-03  3:25         ` Chun-Kuang Hu
  0 siblings, 0 replies; 174+ messages in thread
From: Chun-Kuang Hu @ 2023-04-03  3:25 UTC (permalink / raw)
  To: Matthias Brugger
  Cc: linux-pwm, dri-devel, Fabien Parent, devicetree, Thierry Reding,
	Guillaume La Roque, Krzysztof Kozlowski, Xinlei Lee,
	Alexandre Mergnat, Sam Ravnborg, Uwe Kleine-König,
	Chun-Kuang Hu, Jitao Shi, Rob Herring, linux-mediatek,
	linux-arm-kernel, Neil Armstrong, linux-kernel

Hi, Matthias:

Matthias Brugger <matthias.bgg@gmail.com> 於 2023年3月31日 週五 下午10:55寫道:
>
> Hi Chun-Kuang Hu,
>
> On 13/03/2023 16:02, Chun-Kuang Hu wrote:
> > Hi, Alexandre:
> >
> > Alexandre Mergnat <amergnat@baylibre.com> 於 2023年3月9日 週四 下午10:23寫道:
> >>
> >> Display Adaptive Ambient Light for MT8365 is compatible with another SoC.
> >> Then, add MT8365 binding along with MT8183 SoC.
> >
> > Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
> >
>
> I'm a bit puzzled that you give your reviewed by while I would have expected
> that you will take the display binding patches. Will you take these or do you
> want someone else to take them?

I usually apply whole series together, and I've question about
"[07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365"
in this series. This is just the first version, so maybe I would apply
partial patches in later version.

Regards,
Chun-Kuang.


>
> Regards,
> Matthias
>
> >>
> >> Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
> >> ---
> >>   Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml | 1 +
> >>   1 file changed, 1 insertion(+)
> >>
> >> diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> >> index d4d585485e7b..d47bc72f09c0 100644
> >> --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> >> +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,aal.yaml
> >> @@ -33,6 +33,7 @@ properties:
> >>                 - mediatek,mt8186-disp-aal
> >>                 - mediatek,mt8192-disp-aal
> >>                 - mediatek,mt8195-disp-aal
> >> +              - mediatek,mt8365-disp-aal
> >>             - const: mediatek,mt8183-disp-aal
> >>
> >>     reg:
> >>
> >> --
> >> b4 0.10.1

^ permalink raw reply	[flat|nested] 174+ messages in thread

end of thread, other threads:[~2023-04-03  3:27 UTC | newest]

Thread overview: 174+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-09 14:22 [PATCH 00/21] Add display support for the MT8365-EVK board Alexandre Mergnat
2023-03-09 14:22 ` Alexandre Mergnat
2023-03-09 14:22 ` Alexandre Mergnat
2023-03-09 14:22 ` [PATCH 01/21] dt-bindings: display: mediatek: aal: add binding for MT8365 SoC Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-10  8:41   ` Krzysztof Kozlowski
2023-03-10  8:41     ` Krzysztof Kozlowski
2023-03-10  8:41     ` Krzysztof Kozlowski
2023-03-13 15:02   ` Chun-Kuang Hu
2023-03-13 15:02     ` Chun-Kuang Hu
2023-03-13 15:02     ` Chun-Kuang Hu
2023-03-31 14:55     ` Matthias Brugger
2023-03-31 14:55       ` Matthias Brugger
2023-03-31 14:55       ` Matthias Brugger
2023-04-03  3:25       ` Chun-Kuang Hu
2023-04-03  3:25         ` Chun-Kuang Hu
2023-04-03  3:25         ` Chun-Kuang Hu
2023-03-09 14:22 ` [PATCH 02/21] dt-bindings: display: mediatek: ccorr: " Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-10  8:29   ` Krzysztof Kozlowski
2023-03-10  8:29     ` Krzysztof Kozlowski
2023-03-10  8:29     ` Krzysztof Kozlowski
2023-03-13 14:54   ` Chun-Kuang Hu
2023-03-13 14:54     ` Chun-Kuang Hu
2023-03-13 14:54     ` Chun-Kuang Hu
2023-03-09 14:22 ` [PATCH 03/21] dt-bindings: display: mediatek: color: " Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-10  8:35   ` Krzysztof Kozlowski
2023-03-10  8:35     ` Krzysztof Kozlowski
2023-03-10  8:35     ` Krzysztof Kozlowski
2023-03-13 14:58   ` Chun-Kuang Hu
2023-03-13 14:58     ` Chun-Kuang Hu
2023-03-13 14:58     ` Chun-Kuang Hu
2023-03-09 14:22 ` [PATCH 04/21] dt-bindings: display: mediatek: dither: " Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-10  8:35   ` Krzysztof Kozlowski
2023-03-10  8:35     ` Krzysztof Kozlowski
2023-03-10  8:35     ` Krzysztof Kozlowski
2023-03-13 14:59   ` Chun-Kuang Hu
2023-03-13 14:59     ` Chun-Kuang Hu
2023-03-13 14:59     ` Chun-Kuang Hu
2023-03-09 14:22 ` [PATCH 05/21] dt-bindings: display: mediatek: dsi: " Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-10  8:35   ` Krzysztof Kozlowski
2023-03-10  8:35     ` Krzysztof Kozlowski
2023-03-10  8:35     ` Krzysztof Kozlowski
2023-03-13 15:00   ` Chun-Kuang Hu
2023-03-13 15:00     ` Chun-Kuang Hu
2023-03-13 15:00     ` Chun-Kuang Hu
2023-03-09 14:22 ` [PATCH 06/21] dt-bindings: display: mediatek: dpi: add power-domains property Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-09 14:22 ` [PATCH 07/21] dt-bindings: display: mediatek: dpi: add binding for MT8365 Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-10  8:38   ` Krzysztof Kozlowski
2023-03-10  8:38     ` Krzysztof Kozlowski
2023-03-10  8:38     ` Krzysztof Kozlowski
2023-03-13 15:17   ` Chun-Kuang Hu
2023-03-13 15:17     ` Chun-Kuang Hu
2023-03-13 15:17     ` Chun-Kuang Hu
2023-03-15  9:26     ` Alexandre Mergnat
2023-03-15  9:26       ` Alexandre Mergnat
2023-03-15  9:26       ` Alexandre Mergnat
2023-03-09 14:22 ` [PATCH 08/21] dt-bindings: display: mediatek: gamma: add binding for MT8365 SoC Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-10  8:38   ` Krzysztof Kozlowski
2023-03-10  8:38     ` Krzysztof Kozlowski
2023-03-10  8:38     ` Krzysztof Kozlowski
2023-03-13 15:07   ` Chun-Kuang Hu
2023-03-13 15:07     ` Chun-Kuang Hu
2023-03-13 15:07     ` Chun-Kuang Hu
2023-03-09 14:22 ` [PATCH 09/21] dt-bindings: display: mediatek: ovl: " Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-10  8:38   ` Krzysztof Kozlowski
2023-03-10  8:38     ` Krzysztof Kozlowski
2023-03-10  8:38     ` Krzysztof Kozlowski
2023-03-13 15:08   ` Chun-Kuang Hu
2023-03-13 15:08     ` Chun-Kuang Hu
2023-03-13 15:08     ` Chun-Kuang Hu
2023-03-09 14:22 ` [PATCH 10/21] dt-bindings: display: mediatek: rdma: " Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-09 14:22   ` Alexandre Mergnat
2023-03-10  8:38   ` Krzysztof Kozlowski
2023-03-10  8:38     ` Krzysztof Kozlowski
2023-03-10  8:38     ` Krzysztof Kozlowski
2023-03-13 15:09   ` Chun-Kuang Hu
2023-03-13 15:09     ` Chun-Kuang Hu
2023-03-13 15:09     ` Chun-Kuang Hu
2023-03-09 14:23 ` [PATCH 11/21] dt-bindings: display: pannel: add startek kd070fhfid015 binding documentation Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23 ` [PATCH 12/21] dt-bindings: pwm: add power-domains property Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23 ` [PATCH 13/21] dt-bindings: pwm: add binding for mt8365 SoC Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-10  8:38   ` Krzysztof Kozlowski
2023-03-10  8:38     ` Krzysztof Kozlowski
2023-03-10  8:38     ` Krzysztof Kozlowski
2023-03-09 14:23 ` [PATCH 14/21] dt-bindings: soc: mediatek: specify which compatible requires clocks property Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-31 14:42   ` Matthias Brugger
2023-03-31 14:42     ` Matthias Brugger
2023-03-31 14:42     ` Matthias Brugger
2023-03-09 14:23 ` [PATCH 15/21] dt-bindings: soc: mediatek: add display mutex for MT8365 SoC Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-10  8:39   ` Krzysztof Kozlowski
2023-03-10  8:39     ` Krzysztof Kozlowski
2023-03-10  8:39     ` Krzysztof Kozlowski
2023-03-15  8:01     ` Alexandre Mergnat
2023-03-15  8:01       ` Alexandre Mergnat
2023-03-15  8:01       ` Alexandre Mergnat
2023-03-15  8:17       ` Alexandre Mergnat
2023-03-15  8:17         ` Alexandre Mergnat
2023-03-15  8:17         ` Alexandre Mergnat
2023-03-15 13:17       ` Krzysztof Kozlowski
2023-03-15 13:17         ` Krzysztof Kozlowski
2023-03-15 13:17         ` Krzysztof Kozlowski
2023-03-15 13:22   ` Krzysztof Kozlowski
2023-03-15 13:22     ` Krzysztof Kozlowski
2023-03-15 13:22     ` Krzysztof Kozlowski
2023-03-31 17:51   ` Matthias Brugger
2023-03-31 17:51     ` Matthias Brugger
2023-03-31 17:51     ` Matthias Brugger
2023-03-09 14:23 ` [PATCH 16/21] arm64: dts: mediatek: add display blocks support for the " Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23 ` [PATCH 17/21] arm64: dts: mediatek: add display support for mt8365-evk Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23 ` [PATCH 18/21] drm/mediatek: dsi: Improves the DSI lane setup robustness Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-27 15:37   ` Chun-Kuang Hu
2023-03-27 15:37     ` Chun-Kuang Hu
2023-03-27 15:37     ` Chun-Kuang Hu
2023-03-09 14:23 ` [PATCH 19/21] drm/mediatek: dpi: add support for dpi clock Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-13 15:21   ` Chun-Kuang Hu
2023-03-13 15:21     ` Chun-Kuang Hu
2023-03-13 15:21     ` Chun-Kuang Hu
2023-03-15  9:35     ` Alexandre Mergnat
2023-03-15  9:35       ` Alexandre Mergnat
2023-03-15  9:35       ` Alexandre Mergnat
2023-03-15 14:17       ` Chun-Kuang Hu
2023-03-15 14:17         ` Chun-Kuang Hu
2023-03-15 14:17         ` Chun-Kuang Hu
2023-03-09 14:23 ` [PATCH 20/21] drm/mediatek: add MT8365 SoC support Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23 ` [PATCH 21/21] panel: startek-kd070fhfid015: add support of this display Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:23   ` Alexandre Mergnat
2023-03-09 14:51   ` Neil Armstrong
2023-03-09 14:51     ` Neil Armstrong
2023-03-09 14:51     ` Neil Armstrong
2023-03-15 15:59     ` Alexandre Mergnat
2023-03-15 15:59       ` Alexandre Mergnat
2023-03-15 15:59       ` Alexandre Mergnat
2023-03-15 17:12       ` neil.armstrong
2023-03-15 17:12         ` neil.armstrong
2023-03-15 17:12         ` neil.armstrong

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.