arm64: dts: freescale: Add support for bytesatwork byteDEVKIT i.MX93
Subsystems (6)
v2 cover arm64: dts: freescale: Add support for bytesatwork byteDEVKIT i.MX93
This series introduces support for the bytesatwork byteENGINE i.MX93 System on Module (SoM) and the carrier board byteDEVKIT.
It also adds display support for the integrated Youritech et050fw01-kt MIPI-DSI panel by extending the existing ILI9806E panel driver.
Changes in v2:
- Patch 1:
- Use specific panel part number (youritech,et050fw01-kt) instead of generic controller name.
- Elaborate commit message with vendor description, panel resolution and dimensions.
- Patch 2:
- Update compatible string and function names to match youritech,et050fw01-kt.
- Fix commit subject formatting and commit message.
- Patch 3:
- No changes.
- Patch 4:
- Drop standalone SoM compatible entry from fsl.yaml (only bootable board combinations allowed).
- Fix typo in commit message ("byteDEVKIT carrier board").
- Patch 5:
- Update panel compatible string to youritech,et050fw01-kt.
- Invert GT911 GPIO polarity to GPIO_ACTIVE_HIGH to fix address strapping and reset.
- Assign pinctrl_usb2 to reg_usb2_vbus and add vbus-supply to usbotg2.
- Add disable-over-current to usbotg1 and usbotg2.
- Move panel reset GPIO into dedicated pinctrl_panel_reset group on panel@0.
- Standardize Ethernet PHY node names to ethernet-phy@... and use tx-fifo-depth.
- Replace underscores in pinctrl node names with hyphens.
- Rename tca6418e node to generic gpio@34.
- Consolidate devkit devicetrees into single imx93-bytedevkit.dts.
Frank Obergfell (5):
dt-bindings: display: panel: ilitek,ili9806e: Add Youritech et050fw01-kt drm/panel: ilitek-ili9806e: Add support for Youritech et050fw01-kt panel
arm64: dts: freescale: imx93: Add MIPI DSI controller node
dt-bindings: arm: fsl: Add byteENGINE i.MX93 platforms
arm64: dts: freescale: Add support for bytesatwork i.MX93
Documentation/devicetree/bindings/arm/fsl.yaml | 7 + .../devicetree/bindings/display/panel/ilitek,ili9806e.yaml | 1 + Documentation/devicetree/bindings/vendor-prefixes.yaml | 4 + MAINTAINERS | 7 + arch/arm64/boot/dts/freescale/Makefile | 1 + arch/arm64/boot/dts/freescale/imx93-bytedevkit.dts | 449 ++++++++++++++++++ arch/arm64/boot/dts/freescale/imx93-byteengine.dtsi | 199 ++++++++ arch/arm64/boot/dts/freescale/imx93.dtsi | 34 ++ drivers/gpu/drm/panel/panel-ilitek-ili9806e-core.c | 4 +- drivers/gpu/drm/panel/panel-ilitek-ili9806e-dsi.c | 158 ++++++ 10 files changed, 863 insertions(+), 1 deletion(-) create mode 100644 arch/arm64/boot/dts/freescale/imx93-bytedevkit.dts create mode 100644 arch/arm64/boot/dts/freescale/imx93-byteengine.dtsi
PATCH v2 1/5 dt-bindings: display: panel: ilitek,ili9806e: Add Youritech et050fw01-kt
Document the vendor prefix for Shenzhen Youritech Co., Ltd. and add the compatible string for the Youritech et050fw01-kt panel.
The Youritech et050fw01-kt is a 480x854 MIPI-DSI LCD panel with physical dimensions of 68 mm x 122 mm, driven by an Ilitek ILI9806E display controller.
--- .../devicetree/bindings/display/panel/ilitek,ili9806e.yaml | 1 + Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++ 2 files changed, 3 insertions(+)
Documentation/devicetree/bindings/display/panel/ilitek,ili9806e.yaml +1 -0
@@ -19,6 +19,7 @@ properties: - densitron,dmt028vghmcmi-1d - ortustech,com35h3p70ulc - rocktech,rk050hr345-ct106a + - youritech,et050fw01-kt - const: ilitek,ili9806e reg:
Documentation/devicetree/bindings/vendor-prefixes.yaml +2 -0
@@ -1979,6 +1979,8 @@ patternProperties: description: YSH & ATIL "^yones-toptech,.*": description: Yones Toptech Co., Ltd. + "^youritech,.*": + description: Shenzhen Youritech Co., Ltd. "^youyeetoo,.*": description: Hong Kong Cybodev Tech Limited (youyeetoo) "^ys,.*":
Signature · 1 line
2.47.3
Re: [PATCH v2 1/5] dt-bindings: display: panel: ilitek,ili9806e: Add Youritech et050fw01-kt
Quoted 8 lines · Frank Obergfell
Document the vendor prefix for Shenzhen Youritech Co., Ltd. and add the compatible string for the Youritech et050fw01-kt panel.
The Youritech et050fw01-kt is a 480x854 MIPI-DSI LCD panel with physical dimensions of 68 mm x 122 mm, driven by an Ilitek ILI9806E display controller.
Signed-off-by Frank Obergfell <[email protected]>
PATCH v2 2/5 drm/panel: ilitek-ili9806e: Add support for Youritech et050fw01-kt panel
In reply to Frank ObergfellAdd support for the Youritech et050fw01-kt 480x854 MIPI-DSI panel driven by an Ilitek ILI9806E controller.
The panel requires 2 MIPI-DSI data lanes, video burst mode, and supplies for vdd (3.3V) and vccio (1.8V).
--- .../drm/panel/panel-ilitek-ili9806e-core.c | 4 +- .../gpu/drm/panel/panel-ilitek-ili9806e-dsi.c | 158 ++++++++++++++++++ 2 files changed, 161 insertions(+), 1 deletion(-)
drivers/gpu/drm/panel/panel-ilitek-ili9806e-core.c +3 -1
@@ -91,7 +91,9 @@ int ili9806e_probe(struct device *dev, void *transport,if (of_device_is_compatible (dev->of_node,"densitron,dmt028vghmcmi-1d" ) ||of_device_is_compatible (dev->of_node, -"ortustech,com35h3p70ulc" )) { +"ortustech,com35h3p70ulc" ) || +of_device_is_compatible (dev->of_node, +"youritech,et050fw01-kt" )) { ctx->supplies[ctx->num_supplies++].supply ="vccio" ; set_prepare_prev_first = true; }
drivers/gpu/drm/panel/panel-ilitek-ili9806e-dsi.c +158 -0
167 lines not on this page · raw message
Signature · 1 line
2.47.3
PATCH v2 3/5 arm64: dts: freescale: imx93: Add MIPI DSI controller node
In reply to Frank ObergfellAdd dsi node to the i.MX93 for support with mipi dsi panels.
--- arch/arm64/boot/dts/freescale/imx93.dtsi | 34 ++++++++++++++++++++++++ 1 file changed, 34 insertions(+)
arch/arm64/boot/dts/freescale/imx93.dtsi +34 -0
@@ -58,6 +58,39 @@ npu@4a900000 { <&clk IMX93_CLK_SYS_PLL_PFD1_DIV2>; assigned-clock-rates = <800000000>, <133000000>; }; + + dsi: dsi@4ae10000 { + compatible = "fsl,imx93-mipi-dsi"; + reg = <0x4ae10000 0x10000>; + interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&clk IMX93_CLK_MIPI_DSI_GATE>, + <&clk IMX93_CLK_MEDIA_DISP_PIX>, + <&clk IMX93_CLK_MIPI_PHY_CFG>, + <&clk IMX93_CLK_24M>; + clock-names = "pclk", "pix", "phy_cfg", "phy_ref"; + fsl,media-blk-ctrl = <&media_blk_ctrl>; + power-domains = <&media_blk_ctrl 0>; + #address-cells = <1>; + #size-cells = <0>; + status = "disabled"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + dsi_to_lcdif: endpoint { + remote-endpoint = <&lcdif_to_dsi>; + }; + }; + + dsi_out_port: port@1 { + reg = <1>; + }; + }; + }; }; sram: sram@20480000 {
@@ -183,6 +216,7 @@ lcdif_to_ldb: endpoint@1 { lcdif_to_dsi: endpoint@2 { reg = <2>; + remote-endpoint = <&dsi_to_lcdif>; }; }; };
Signature · 1 line
2.47.3
PATCH v2 4/5 dt-bindings: arm: fsl: Add byteENGINE i.MX93 platforms
In reply to Frank ObergfellDocument the vendor prefix for bytesatwork AG and add the compatible strings for the byteENGINE i.MX93 System on Module (SoM) on the byteDEVKIT carrier board.
--- Documentation/devicetree/bindings/arm/fsl.yaml | 7 +++++++ Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++ 2 files changed, 9 insertions(+)
Documentation/devicetree/bindings/arm/fsl.yaml +7 -0
@@ -1555,6 +1555,13 @@ properties: - fsl,imx93-wireless-frdm # i.MX93 and IW610G WLCSP (Wi-Fi + BLE + 802.15.4) SiP FRDM Board - const: fsl,imx93 + - description: i.MX93 boards with bytesatwork byteENGINE and byteDEVKIT + items: + - enum: + - bytesatwork,bytedevkit-imx93 + - const: bytesatwork,byteengine-imx93 + - const: fsl,imx93 + - description: i.MX93 boards with Toradex Lino Modules and Verdin Adapter items: - enum:
Documentation/devicetree/bindings/vendor-prefixes.yaml +2 -0
@@ -285,6 +285,8 @@ patternProperties: description: B&R Industrial Automation GmbH "^bytedance,.*": description: ByteDance Ltd. + "^bytesatwork,.*": + description: bytesatwork AG "^calamp,.*": description: CalAmp Corp. "^calao,.*":
Signature · 1 line
2.47.3
Re: [PATCH v2 4/5] dt-bindings: arm: fsl: Add byteENGINE i.MX93 platforms
Quoted 5 lines · Frank Obergfell
Document the vendor prefix for bytesatwork AG and add the compatible strings for the byteENGINE i.MX93 System on Module (SoM) on the byteDEVKIT carrier board.
Signed-off-by Frank Obergfell <[email protected]>
PATCH v2 5/5 arm64: dts: freescale: Add support for bytesatwork i.MX93
In reply to Frank ObergfellAdd support for the bytesatwork i.MX93 byteENGINE OSM module placed on the byteDEVKIT.
--- MAINTAINERS | 7 + arch/arm64/boot/dts/freescale/Makefile | 1 + .../boot/dts/freescale/imx93-bytedevkit.dts | 449 ++++++++++++++++++ .../boot/dts/freescale/imx93-byteengine.dtsi | 199 ++++++++ 4 files changed, 656 insertions(+) create mode 100644 arch/arm64/boot/dts/freescale/imx93-bytedevkit.dts create mode 100644 arch/arm64/boot/dts/freescale/imx93-byteengine.dtsi
MAINTAINERS +7 -0
@@ -5877,6 +5877,13 @@ S: Maintained F: Documentation/devicetree/bindings/net/can/st,stm32-bxcan.yaml F: drivers/net/can/bxcan.c +BYTESATWORK MODULES AND BOARDS +M: Alexander Forsch <[email protected]> +M: Frank Obergfell <[email protected]> +S: Maintained +F: arch/arm64/boot/dts/freescale/imx93-bytedevkit.dts +F: arch/arm64/boot/dts/freescale/imx93-byteengine.dtsi + C-MEDIA CMI8788 DRIVER M: Clemens Ladisch <[email protected]> L: [email protected]
arch/arm64/boot/dts/freescale/Makefile +1 -0
@@ -898,6 +898,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx93-11x11-frdm-pixpaper.dtb dtb-$(CONFIG_ARCH_MXC) += imx93-14x14-evk.dtb imx93-14x14-evk-mqs-dtbs += imx93-14x14-evk.dtb imx9-mqs.dtbo dtb-$(CONFIG_ARCH_MXC) += imx93-14x14-evk-mqs.dtb +dtb-$(CONFIG_ARCH_MXC) += imx93-bytedevkit.dtb dtb-$(CONFIG_ARCH_MXC) += imx93-kontron-bl-osm-s.dtb dtb-$(CONFIG_ARCH_MXC) += imx93-lino-verdin-dahlia.dtb dtb-$(CONFIG_ARCH_MXC) += imx93-lino-verdin-dev.dtb
arch/arm64/boot/dts/freescale/imx93-bytedevkit.dts new file +449 -0
449 lines not on this page · raw message
arch/arm64/boot/dts/freescale/imx93-byteengine.dtsi new file +199 -0
199 lines not on this page · raw message
Signature · 1 line
2.47.3
[email protected]
AI reviewRe: [PATCH v2 5/5] arm64: dts: freescale: Add support for bytesatwork i.MX93
Thank you for your contribution! Sashiko AI review found 1 potential issue to consider: - [Low] arm64: dts: freescale: imx93-bytedevkit: unused backlight-lvds left enabled --
Thank you for your contribution! Sashiko AI review found 1 potential issue to consider:
- [Low] arm64: dts: freescale: imx93-bytedevkit: unused backlight-lvds left enabled
--
commit c60831b496cfd3af119e905c5fcb49dc6905f857
Author: Frank Obergfell <[email protected]>
arm64: dts: freescale: Add support for bytesatwork i.MX93
This commit adds device tree files for the bytesatwork i.MX93 byteENGINE OSM module and the byteDEVKIT board.
Quoted 5 lines
arch/arm64/boot/dts/freescale/imx93-bytedevkit.dts new file +0
-0
[ ... ]
arch/arm64/boot/dts/freescale/imx93-bytedevkit.dts line 76
Quoted 7 lines
arch/arm64/boot/dts/freescale/imx93-bytedevkit.dts new file +7
-0+ lcd_bl: backlight-lvds { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_lvds_backlight>; + compatible = "gpio-backlight"; + gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>; + default-on; + };
[Severity: Low]
Should backlight-lvds be disabled or removed while the LVDS display pipeline and touch controller on lpi2c1 are disabled? With default-on set and no panel referencing &lcd_bl, gpio_backlight_probe() registers an unused backlight device and drives GPIO2_IO26 high at boot even though only the MIPI DSI panel is active.
Signature · 1 line
Sashiko AI review · https://sashiko.dev/#/patchset/[email protected]?part=5
Re: [PATCH v2 5/5] arm64: dts: freescale: Add support for bytesatwork i.MX93
In reply to Frank ObergfellHi Frank,
Some comments inline.
Quoted 3 lines · Frank Obergfell
Add support for the bytesatwork i.MX93 byteENGINE OSM module placed on the byteDEVKIT.
[...]
MAINTAINERS S: Maintained · line 5885
Quoted 6 lines
MAINTAINERS +6
-0+BYTESATWORK MODULES AND BOARDS +M: Alexander Forsch <[email protected]> +M: Frank Obergfell <[email protected]> +S: Maintained +F: arch/arm64/boot/dts/freescale/imx93-bytedevkit.dts +F: arch/arm64/boot/dts/freescale/imx93-byteengine.dtsi
Care to add imx list here?
[..]
arch/arm64/boot/dts/freescale/imx93-byteengine.dtsi line 28
Quoted 5 lines
arch/arm64/boot/dts/freescale/imx93-byteengine.dtsi new file +5
-0+ +&mu1 { + status = "okay"; +}; +
Should we enable the nodes in imx93-bytedevkit.dts ? Nodes are rarely enabled in dtsi files.
Think if you add another revision of the board with just one MU unit.
Another idea would be to completely remove imx93-bytedevkit.dtsi and directly include imx93.dtsi in imx93-bytedevkit.dts
A message that is not in the archive (sent off-list or not yet received): [email protected]
Re: [PATCH v2 5/5] arm64: dts: freescale: Add support for bytesatwork i.MX93
Quoted 9 lines · Frank Obergfell
Hi Daniel,
Thanks for the review!
Quoted 2 lines
Care to add imx list here?
L: [email protected]Will add this in v3.
Quoted 7 lines
Quoted 4 lines
Should we enable the nodes in
imx93-bytedevkit.dts? Nodes are rarely enabled in dtsi files.Think if you add another revision of the board with just one MU unit.
Agreed. I will move &mu1 and &mu2 activation from
imx93-byteengine.dtsiintoimx93-bytedevkit.dts.
Keep in mind that not only mu1 and mu2 activation should be done in the .dts file. I used them just as an example. There lots of other instances in the same situation in the imx93-byteengine.dtsi file.
Also, please use reply-all when answering.
Re: [PATCH v2 5/5] arm64: dts: freescale: Add support for bytesatwork i.MX93
Hi Daniel,
Understood, thanks for pointing that out (and apologies for the missing CCs on my previous reply).
I will remove status = "okay" from all controller nodes in imx93-byteengine.dtsi (&mu1, &mu2, &wdog3, &usdhc1, &lpi2c2) and enable them explicitly in imx93-bytedevkit.dts instead.
This will be reflected in the upcoming v3 series.
Best regards,
Frank
Quoted 20 lines · Daniel Baluta
Quoted 6 lines · Frank Obergfell
Hi Daniel,
Thanks for the review!
Quoted 2 lines
Care to add imx list here?
L:[email protected]Quoted 8 lines
Will add this in v3.
Quoted 4 lines
Should we enable the nodes in
imx93-bytedevkit.dts? Nodes are rarely enabled in dtsi files.Think if you add another revision of the board with just one MU unit.
Agreed. I will move &mu1 and &mu2 activation from
imx93-byteengine.dtsiintoimx93-bytedevkit.dts.Keep in mind that not only mu1 and mu2 activation should be done in the .dts file. I used them just as an example. There lots of other instances in the same situation in the
imx93-byteengine.dtsifile.Also, please use reply-all when answering.