The series adds drivers for the displays used by bsh-smm-s2/pro boards.
This required applying some patches to the samsung-dsim driver and the
drm_bridge.c module.
Changes in v5:
- Replace a 'return ret' with a 'goto fail' in the r63353_panel_activate()
- Add 'Reviewed-by' tag of Krzysztof Kozlowski
Changes in v4:
- Set the reset gpio to low in a single operation
- Remove duplicated code for prepare/unprepare callbacks
- Remove duplicated code for prepare/unprepare callbacks
- Add Reviewed-by tag of Neil Armstrong
Changes in v3:
- Add 'Reviewed-by' tag of Krzysztof Kozlowski.
- Replace "synaptics,r63353" compatible with "syna,r63353", as
required by vendor-prefixes.yaml.
- Drop power-supply
- Replace "synaptics,r63353" compatible with "syna,r63353", as
required by vendor-prefixes.yaml.
- Squash patch [09/11] dt-bindings: ili9805: add compatible string for Tianma TM041XDHG01
into [07/11] dt-bindings: display: panel: Add Ilitek ili9805 panel controller.
Changes in v2:
- Add $ref to panel-common.yaml
- Drop port, reset-gpios, and backlight
- Set port and backlight ad required
- Replace additionalProperties with unevaluatedProperties
- Adjust the timings of the panel reset
- Add $ref to panel-common.yaml
- Drop port, reset-gpios, and backlight
- Set port and backlight ad required
- Replace additionalProperties with unevaluatedProperties
- Adjust the mipi_dsi node based on the latest patches merged into
the mainline in the dtsi files it includes.
- Added to the series the following patches:
- 0001 drm/bridge: Fix bridge disable logic
- 0002 drm/bridge: Fix a use case in the bridge disable logic
- 0003 samsung-dsim: enter display mode in the enable() callback
- 0004 drm: bridge: samsung-dsim: complete the CLKLANE_STOP setting
Dario Binacchi (4):
drm/bridge: Fix bridge disable logic
drm/bridge: Fix a use case in the bridge disable logic
drm: bridge: samsung-dsim: enter display mode in the enable() callback
drm: bridge: samsung-dsim: complete the CLKLANE_STOP setting
Michael Trimarchi (6):
dt-bindings: display: panel: Add synaptics r63353 panel controller
drm/panel: Add Synaptics R63353 panel driver
dt-bindings: display: panel: Add Ilitek ili9805 panel controller
drm/panel: Add Ilitek ILI9805 panel driver
drm/panel: ilitek-ili9805: add support for Tianma TM041XDHG01 panel
arm64: dts: imx8mn-bsh-smm-s2/pro: add display setup
.../display/panel/ilitek,ili9805.yaml | 62 +++
.../display/panel/synaptics,r63353.yaml | 61 +++
MAINTAINERS | 12 +
.../freescale/imx8mn-bsh-smm-s2-common.dtsi | 1 +
.../freescale/imx8mn-bsh-smm-s2-display.dtsi | 121 ++++++
drivers/gpu/drm/bridge/samsung-dsim.c | 14 +-
drivers/gpu/drm/drm_bridge.c | 9 +-
drivers/gpu/drm/panel/Kconfig | 18 +
drivers/gpu/drm/panel/Makefile | 2 +
drivers/gpu/drm/panel/panel-ilitek-ili9805.c | 406 ++++++++++++++++++
.../gpu/drm/panel/panel-synaptics-r63353.c | 363 ++++++++++++++++
11 files changed, 1062 insertions(+), 7 deletions(-)
create mode 100644 Documentation/devicetree/bindings/display/panel/ilitek,ili9805.yaml
create mode 100644 Documentation/devicetree/bindings/display/panel/synaptics,r63353.yaml
create mode 100644 arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2-display.dtsi
create mode 100644 drivers/gpu/drm/panel/panel-ilitek-ili9805.c
create mode 100644 drivers/gpu/drm/panel/panel-synaptics-r63353.c
--
2.43.0
From: Michael Trimarchi <michael@amarulasolutions.com>
Add documentation for "synaptics,r63353" panel.
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Reviewed-by: Krzysztof Kozlowski <redacted>
---
(no changes since v3)
Changes in v3:
- Add 'Reviewed-by' tag of Krzysztof Kozlowski.
- Replace "synaptics,r63353" compatible with "syna,r63353", as
required by vendor-prefixes.yaml.
Changes in v2:
- Add $ref to panel-common.yaml
- Drop port, reset-gpios, and backlight
- Set port and backlight ad required
- Replace additionalProperties with unevaluatedProperties
.../display/panel/synaptics,r63353.yaml | 61 +++++++++++++++++++
1 file changed, 61 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/panel/synaptics,r63353.yaml
From: Michael Trimarchi <michael@amarulasolutions.com>
Add the display and nodes required for its operation.
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
---
(no changes since v3)
Changes in v3:
- Replace "synaptics,r63353" compatible with "syna,r63353", as
required by vendor-prefixes.yaml.
- Squash patch [09/11] dt-bindings: ili9805: add compatible string for Tianma TM041XDHG01
into [07/11] dt-bindings: display: panel: Add Ilitek ili9805 panel controller.
Changes in v2:
- Adjust the mipi_dsi node based on the latest patches merged into
the mainline in the dtsi files it includes.
- Added to the series the following patches:
- 0001 drm/bridge: Fix bridge disable logic
- 0002 drm/bridge: Fix a use case in the bridge disable logic
- 0003 samsung-dsim: enter display mode in the enable() callback
- 0004 drm: bridge: samsung-dsim: complete the CLKLANE_STOP setting
.../freescale/imx8mn-bsh-smm-s2-common.dtsi | 1 +
.../freescale/imx8mn-bsh-smm-s2-display.dtsi | 121 ++++++++++++++++++
2 files changed, 122 insertions(+)
create mode 100644 arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2-display.dtsi
@@ -0,0 +1,121 @@+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)+/*+*Copyright2021BSH+*/++/{+backlight:backlight{+compatible="pwm-backlight";+pwms=<&pwm107000000>;/* 700000 ns = 1337Hz */+brightness-levels=<0100>;+num-interpolated-steps=<100>;+default-brightness-level=<50>;+status="okay";+};++reg_3v3_dvdd:regulator-3v3-O3{+compatible="regulator-fixed";+pinctrl-names="default";+pinctrl-0=<&pinctrl_dvdd>;+regulator-name="3v3-dvdd-supply";+regulator-min-microvolt=<3300000>;+regulator-max-microvolt=<3300000>;+gpio=<&gpio17GPIO_ACTIVE_LOW>;+};++reg_v3v3_avdd:regulator-3v3-O2{+compatible="regulator-fixed";+pinctrl-names="default";+pinctrl-0=<&pinctrl_avdd>;+regulator-name="3v3-avdd-supply";+regulator-min-microvolt=<3300000>;+regulator-max-microvolt=<3300000>;+gpio=<&gpio15GPIO_ACTIVE_LOW>;+};+};++&pwm1{+status="okay";+pinctrl-names="default";+pinctrl-0=<&pinctrl_bl>;+};++&lcdif{+status="okay";+assigned-clocks=<&clkIMX8MN_VIDEO_PLL1>;+assigned-clock-rates=<594000000>;+};++&pgc_dispmix{+assigned-clocks=<&clkIMX8MN_CLK_DISP_AXI>,<&clkIMX8MN_CLK_DISP_APB>;+assigned-clock-parents=<&clkIMX8MN_SYS_PLL2_1000M>,<&clkIMX8MN_SYS_PLL1_800M>;+assigned-clock-rates=<500000000>,<200000000>;+};++&mipi_dsi{+#address-cells=<1>;+#size-cells=<0>;+status="okay";+samsung,esc-clock-frequency=<20000000>;+samsung,pll-clock-frequency=<12000000>;++panel@0{+compatible="sharp,ls068b3sx02","syna,r63353";+pinctrl-names="default";+pinctrl-0=<&pinctrl_panel>;+reg=<0>;++backlight=<&backlight>;+dvdd-supply=<®_3v3_dvdd>;+avdd-supply=<®_v3v3_avdd>;+reset-gpios=<&gpio429GPIO_ACTIVE_HIGH>;++port{+panel_in:endpoint{+remote-endpoint=<&mipi_dsi_out>;+};+};++};++ports{+port@1{+reg=<1>;+mipi_dsi_out:endpoint{+remote-endpoint=<&panel_in>;+};+};+};+};++&gpu{+status="okay";+};++&iomuxc{++/* This is for both PWM and voltage regulators for display */+pinctrl_bl:pwm1grp{+fsl,pins=<+MX8MN_IOMUXC_GPIO1_IO01_PWM1_OUT0x16+>;+};++pinctrl_panel:panelgrp{+fsl,pins=<+MX8MN_IOMUXC_SAI3_RXC_GPIO4_IO290x16/* panel reset */+>;+};++pinctrl_dvdd:dvddgrp{+fsl,pins=<+MX8MN_IOMUXC_GPIO1_IO07_GPIO1_IO70x16/* VDD 3V3_VO3 */+>;+};++pinctrl_avdd:avddgrp{+fsl,pins=<+MX8MN_IOMUXC_GPIO1_IO05_GPIO1_IO50x16/* VDD 3V3_VO2 */+>;+};+};
From: Michael Trimarchi <michael@amarulasolutions.com>
Add documentation for "ilitek,ili9805" panel.
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Reviewed-by: Krzysztof Kozlowski <redacted>
---
Changes in v5:
- Add 'Reviewed-by' tag of Krzysztof Kozlowski
Changes in v3:
- Drop power-supply
Changes in v2:
- Add $ref to panel-common.yaml
- Drop port, reset-gpios, and backlight
- Set port and backlight ad required
- Replace additionalProperties with unevaluatedProperties
.../display/panel/ilitek,ili9805.yaml | 62 +++++++++++++++++++
1 file changed, 62 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/panel/ilitek,ili9805.yaml
From: Neil Armstrong <neil.armstrong@linaro.org> Date: 2023-12-11 09:16:25
Hi,
On Thu, 07 Dec 2023 15:16:29 +0100, Dario Binacchi wrote:
The series adds drivers for the displays used by bsh-smm-s2/pro boards.
This required applying some patches to the samsung-dsim driver and the
drm_bridge.c module.
Changes in v5:
- Replace a 'return ret' with a 'goto fail' in the r63353_panel_activate()
- Add 'Reviewed-by' tag of Krzysztof Kozlowski
[...]
Hi Neil,
On Mon, Dec 11, 2023 at 10:16 AM Neil Armstrong
[off-list ref] wrote:
Hi,
On Thu, 07 Dec 2023 15:16:29 +0100, Dario Binacchi wrote:
quoted
The series adds drivers for the displays used by bsh-smm-s2/pro boards.
This required applying some patches to the samsung-dsim driver and the
drm_bridge.c module.
Changes in v5:
- Replace a 'return ret' with a 'goto fail' in the r63353_panel_activate()
- Add 'Reviewed-by' tag of Krzysztof Kozlowski
[...]
I think you forgot the patch:
[05/10] dt-bindings: display: panel: Add synaptics r63353 panel controller
I received an email complaining about the lack of documentation for
the Synaptics panel.
Thanks and regards,
Dario
--
Dario Binacchi
Senior Embedded Linux Developer
dario.binacchi@amarulasolutions.com
__________________________________
Amarula Solutions SRL
Via Le Canevare 30, 31100 Treviso, Veneto, IT
T. +39 042 243 5310
info@amarulasolutions.com
www.amarulasolutions.com
On Thu, Dec 07, 2023 at 03:16:39PM +0100, Dario Binacchi wrote:
quoted hunk
From: Michael Trimarchi <michael@amarulasolutions.com>
Add the display and nodes required for its operation.
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
---
(no changes since v3)
Changes in v3:
- Replace "synaptics,r63353" compatible with "syna,r63353", as
required by vendor-prefixes.yaml.
- Squash patch [09/11] dt-bindings: ili9805: add compatible string for Tianma TM041XDHG01
into [07/11] dt-bindings: display: panel: Add Ilitek ili9805 panel controller.
Changes in v2:
- Adjust the mipi_dsi node based on the latest patches merged into
the mainline in the dtsi files it includes.
- Added to the series the following patches:
- 0001 drm/bridge: Fix bridge disable logic
- 0002 drm/bridge: Fix a use case in the bridge disable logic
- 0003 samsung-dsim: enter display mode in the enable() callback
- 0004 drm: bridge: samsung-dsim: complete the CLKLANE_STOP setting
.../freescale/imx8mn-bsh-smm-s2-common.dtsi | 1 +
.../freescale/imx8mn-bsh-smm-s2-display.dtsi | 121 ++++++++++++++++++
2 files changed, 122 insertions(+)
create mode 100644 arch/arm64/boot/dts/freescale/imx8mn-bsh-smm-s2-display.dtsi