[Letux-kernel] odd things in dt

H. Nikolaus Schaller hns at goldelico.com
Sun Jan 28 18:53:54 CET 2018


Hi,

> Am 28.01.2018 um 13:17 schrieb Andreas Kemnade <andreas at kemnade.info>:
> 
> Hi,
> 
> I looked into dt and did a diff with mainline and found several things,
> which do not depend on our main battleplace (uart pm) and are different
> in upstream and look as it should/need not be different.

Yes. We have a handful of good diffs which should have been upstreamed
for a long time, but nobody did recast them into simple patches for
submission.

Marek had started with some but then we didn't follow-up.


> Reason was just that I played around with mainline and there used to be
> a display with an uncalibrated touchscreen. But I have only white
> screen. So I digged around a bit.
> 
> diff --git a/arch/arm/boot/dts/omap3-gta04.dtsi b/arch/arm/boot/dts/omap3-gta04.dtsi
> index 3dc56fb156b7..6eba8a76fcd5 100644
> --- a/arch/arm/boot/dts/omap3-gta04.dtsi
> +++ b/arch/arm/boot/dts/omap3-gta04.dtsi
> 
> [...]
> @@ -71,7 +72,7 @@
>                #sound-dai-cells = <0>;
>        };
> 
> -       spi_lcd {
> +       spi_lcd: spi_lcd {
>                compatible = "spi-gpio";
>                #address-cells = <0x1>;
>                #size-cells = <0x0>;
> 
> 
> hmm, does this cause any difference?

No, except that removing it breaks the Letux 3704 and Letux 7004 DT
which is not properly upstreamed. They have &spi_lcd { } to overwrite
some parameters.

> 
> @@ -150,7 +153,7 @@
>                        };
> 
>                        port at 1 {
> -                               reg = <1>;
> +                               reg = <0>;
>                                opa_out: endpoint {
>                                        remote-endpoint = <&tv_connector_in>;
>                                };
> 
> 
> 
> So 0 or 1... 

I remember this was the result of trying to get the TVout working
again. Also not (yet) upstream.

But should be tested, because the reg = <> property of these ports
is completely non-standard and changes in the omapdss subsystem
may have broken it unnoticed.

> 
> It is caused by:
> 788f9bbce9ae5
> 
> Another one
>       /* accelerometer */
>        bma180 at 41 {
> +               /* we use the BMA150 Input (CONFIG_INPUT_BMA150) driver */

I think we now use the iio-input-bridge and no longer the bma150 driver.
So we can clean up this comment.

>                compatible = "bosch,bma180";
>                reg = <0x41>;
>                pinctrl-names = "default";
>                pintcrl-0 = <&bma180_pins>;
>                interrupt-parent = <&gpio4>;
> -               interrupts = <19 IRQ_TYPE_LEVEL_HIGH>; /* GPIO_115 */
> +               interrupts = <19 (IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_EDGE_RISING)>; /* GPIO_115 */

Someone should check what is correct now. Level or Edge...

> 
> 
> 
> 
> 
> @@ -412,10 +427,24 @@
>        tsc2007 at 48 {
>                compatible = "ti,tsc2007";
>                reg = <0x48>;
> +               pinctrl-names = "default";
> +               pinctrl-0 = <&penirq_pins>;
>                interrupt-parent = <&gpio6>;
> 
> (and several other penirq related stuff)

Well, it might have already been set up properly by u-boot without pinctrl.

Yes, the DT could need some cleanup and upstreaming but I have not done
anything here before we get the uart pm thing fixed...

And there is the old rule: no DT entry without driver so that the
really interesting things of DT can't be upstreamed either.

It the source code for creating a good .dtb file is just a little ugly.

BR,
Nikolaus



More information about the Letux-kernel mailing list