[PATCH v3 7/8] arm64: dts: freescale: Add the BOE av101hdt-a10 variant of the Moduline Displayy

Frank Li Frank.li at nxp.com
Fri Mar 28 08:34:25 PDT 2025


On Fri, Mar 28, 2025 at 07:37:34AM +0000, Maud Spierings | GOcontroll wrote:
> Sent: Thursday, March 27, 2025 5:31 PM
> To: Maud Spierings | GOcontroll <maudspierings at gocontroll.com>
>  
> > On Thu, Mar 27, 2025 at 04:52:42PM +0100, Maud Spierings via B4 Relay wrote:
> >> From: Maud Spierings <maudspierings at gocontroll.com>
> >>
> >> Add the BOE av101hdt-a10 variant of the Moduline Display, this variant
> >> comes with a 10.1 1280x720 display with a touchscreen (not working in
> >> mainline).
> >>
> >> Signed-off-by: Maud Spierings <maudspierings at gocontroll.com>
> >>
> >> ---
> >> Currently the backlight driver is not available, this will be upstreamed
> >> in a future patch series. It is a Maxim max25014atg.
> >>
> >> The touchscreen has a Cypress CYAT81658-64AS48 controller which as far as
> >> I know is not supported upstream, the driver we currently use for this is
> >> a mess and I doubt we will be able to get it in an upstreamable state.
> >> ---
> >>  ...tx8p-ml81-moduline-display-106-av101hdt-a10.dts | 100 +++++++++++++++++++++
> >>  1 file changed, 100 insertions(+)
> >>
> >> diff --git a/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81-moduline-display-106-av101hdt-a10.dts b/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81-moduline-display-106-av101hdt-a10.dts
> >> new file mode 100644
> >> index 0000000000000000000000000000000000000000..1917e22001a1815a6540f00cf039ff352801cda8
> >> --- /dev/null
> >> +++ b/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81-moduline-display-106-av101hdt-a10.dts
> >
> > why not use dt overlay to handle difference dsplay module.
> >
> > Frank
>
> This may just be me not being very familiar with overlays, how they work
> and when to use them. I guess the advantage is saving some spaces in not
> having the base board dtsi copied in two dtbs on the target right?
>
> I am still quite new to all of this, so any info on when to use what is
> greatly appreciated.

Overlay help change NxM problem to N + M.

for example, if you have one "compatible = "boe,av101hdt-a10";" overlay file
BOE.dtso

there are N' type boards, such as iMX8MP-tx8p, iMX8MP-tx9p, ...

You only apply overlay BOE.dtso to iMX8MP-tx8p.dtb.
		       BOE.dtso to iMX8MP-tx9p
		       ....

So needn't create NxM dtb files.

There are many dtso file under freescale, which you can ref

Frank

>
> >> @@ -0,0 +1,100 @@
> >> +// SPDX-License-Identifier: (GPL-2.0 OR MIT)
> >> +/*
> >> + * Copyright 2025 GOcontroll B.V.
> >> + * Author: Maud Spierings <maudspierings at gocontroll.com>
> >> + */
> >> +
> >> +/dts-v1/;
> >> +
> >> +#include "imx8mp-tx8p-ml81-moduline-display-106.dtsi"
> >> +
> >> +/ {
> >> +     model = "GOcontroll Moduline Display with BOE av101hdt-a10 display";
> >> +
> >> +     panel {
> >> +             compatible = "boe,av101hdt-a10";
> >> +             pinctrl-names = "default";
> >> +             pinctrl-0 = <&pinctrl_panel>;
> >> +             enable-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
> >> +             reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
> >> +             power-supply = <&reg_3v3_per>;
> >> +
> >> +             port {
> >> +                     panel_lvds_in: endpoint {
> >> +                             remote-endpoint = <&ldb_lvds_ch0>;
> >> +                     };
> >> +             };
> >> +     };
> >> +
> >> +     reg_vbus: regulator-vbus {
> >> +             compatible = "regulator-fixed";
> >> +             regulator-name = "usb-c-vbus";
> >> +             regulator-min-microvolt = <5000000>;
> >> +             regulator-max-microvolt = <5000000>;
> >> +             power-supply = <&reg_6v4>;
> >> +             regulator-always-on;
> >> +     };
> >> +};
> >> +
> >> +&lcdif2 {
> >> +     status = "okay";
> >> +};
> >> +
> >> +&usb3_1 {
> >> +     status = "okay";
> >> +};
> >> +
> >> +&usb3_phy1 {
> >> +     status = "okay";
> >> +};
> >> +
> >> +&usb_dwc3_1 {
> >> +     dr_mode = "host";
> >> +
> >> +     port {
> >> +             usb1_hs_ep: endpoint {
> >> +                     remote-endpoint = <&high_speed_ep>;
> >> +             };
> >> +     };
> >> +
> >> +     connector {
> >> +             compatible = "usb-c-connector";
> >> +             pd-disable;
> >> +             data-role = "host";
> >> +             vbus-supply = <&reg_vbus>;
> >> +
> >> +             port {
> >> +                     high_speed_ep: endpoint {
> >> +                             remote-endpoint = <&usb1_hs_ep>;
> >> +                     };
> >> +             };
> >> +     };
> >> +};
> >> +
> >> +&lvds_bridge {
> >> +     assigned-clocks = <&clk IMX8MP_CLK_MEDIA_LDB>,
> >> +     <&clk IMX8MP_VIDEO_PLL1>;
> >
> > fix indentation.
>
> Just put it on one line as it fits within the 80 columns
>
> >> +     assigned-clock-parents = <&clk IMX8MP_VIDEO_PLL1_OUT>;
> >> +     /* IMX8MP_VIDEO_PLL1 = IMX8MP_CLK_MEDIA_DISP2_PIX * 2 * 7 */
> >> +     assigned-clock-rates = <0>, <1054620000>;
> >> +     status = "okay";
> >> +
> >> +     ports {
> >> +             port at 1 {
> >> +                     ldb_lvds_ch0: endpoint {
> >> +                             remote-endpoint = <&panel_lvds_in>;
> >> +                     };
> >> +             };
> >> +     };
> >> +};
> >> +
> >> +&iomuxc {
> >> +     pinctrl_panel: panelgrp {
> >> +             fsl,pins = <
> >> +                     MX8MP_IOMUXC_GPIO1_IO07__GPIO1_IO07 /* COM pin 157 */
> >> +                     MX8MP_DSE_X1
> >> +                     MX8MP_IOMUXC_GPIO1_IO09__GPIO1_IO09 /* COM pin 159 */
> >> +                     MX8MP_DSE_X1
> >> +             >;
> >> +     };
> >> +};
> >>
> >> --
> >> 2.49.0
> >>
> >>
>
> Kind Regards,
> Maud



More information about the linux-arm-kernel mailing list