Hi Simon,

On 3/12/22 03:24, Simon Glass wrote:
> Hi Johan,
> 
> On Thu, 3 Mar 2022 at 16:53, Johan Jonker <jbx6...@gmail.com> wrote:
>>
>> The DT node name pattern in mmc-controller.yaml for mmc
>> is "^mmc(@.*)?$". The Rockchip mmc nodes have been synced
>> with Linux, so update the boot_devices constants as well.
>>
>> Signed-off-by: Johan Jonker <jbx6...@gmail.com>
>> Reviewed-by: Simon Glass <s...@chromium.org>
>> ---
>>  arch/arm/mach-rockchip/rk3188/rk3188.c | 4 ++--
>>  arch/arm/mach-rockchip/rk322x/rk322x.c | 4 ++--
>>  arch/arm/mach-rockchip/rk3288/rk3288.c | 4 ++--
>>  arch/arm/mach-rockchip/rk3328/rk3328.c | 4 ++--
>>  arch/arm/mach-rockchip/rk3368/rk3368.c | 4 ++--
>>  5 files changed, 10 insertions(+), 10 deletions(-)
> 
> This series seems to work OK on snow. But on jerry I get:
> 
> U-Boot 2022.04-rc3-00077-g088bbcb3fad (Mar 11 2022 - 15:59:54 -0700)
> 
> Model: Google Jerry
> DRAM:  2 GiB
> PMIC:  RK808
> Core:  256 devices, 25 uclasses, devicetree: separate
> MMC:   mmc@ff0c0000: 1, mmc@ff0d0000: 2, mmc@ff0f0000: 0
> Loading Environment from nowhere... OK

> cros_ec_spi_command: Returned status 6
> cros_ec_check_version: ERROR: old EC interface not supported
> Failed to probe keyboard 'keyboard-controller'

When I compare the ec node in the dtb before and after it looks like
"ec-interrupt" is missing.

Could you test/confirm by adding it to rk3288-veyron-jerry-u-boot.dtsi?

It originates from rk3288-veyron-chromebook.dtsi, but what should be the
u-boot specific correct location now for the other rk3288  veyron boards?

&cros_ec {
        ec-interrupt = <&gpio7 7 GPIO_ACTIVE_LOW>;
};

===

This property is not in the binding:
Documentation/devicetree/bindings/mfd/google,cros-ec.yaml

What to do with it? (no u-boot prefix)

===

dtc -s -I dtb -O dts rk3288-veyron-jerry-before.dtb >
rk3288-veyron-jerry-before-sort.dts

dtc -s -I dtb -O dts rk3288-veyron-jerry-after.dtb >
rk3288-veyron-jerry-after-sort.dts

                ec@0 {
                        compatible = "google,cros-ec-spi";
===
                        ec-interrupt = < 0x07 0x07 0x01 >;
===
                        google,cros-ec-spi-pre-delay = < 0x1e >;
                        interrupt-parent = < 0x07 >;
                        interrupts = < 0x07 0x08 >;
                        pinctrl-0 = < 0x20 >;
                        pinctrl-names = "default";
                        reg = < 0x00 >;
                        spi-max-frequency = < 0x2dc6c0 >;

                        i2c-tunnel {

                        };

                        keyboard-controller {

                        };
                };


> rockchip_rk3288_vop vop@ff930000: failed to get ahb reset (ret=-524)
> rockchip_rk3288_vop vop@ff930000: failed to get ahb reset (ret=-524)

Could you test before and after Linux sync and with reg size?


        vopb: vop@ff930000 {
                compatible = "rockchip,rk3288-vop";

                reg = <0xff930000 0x19c>, <0xff931000 0x1000>;

vs.
                reg = <0xff930000 0x19c>;

        }

===

>From rk_vop.c:

        priv->regs = (struct rk3288_vop *)dev_read_addr(dev);

===

>From rockchip-vop.yaml:

  reg:
    minItems: 1
    items:
      - description:
          Must contain one entry corresponding to the base address and
length
          of the register space.
      - description:
          Can optionally contain a second entry corresponding to
          the CRTC gamma LUT address.

===

Does vop driver need a fix to comply with binding?


> In:    serial
> 
> So it seems the EC and video devicetree are broken in some way, or
> drivers need updating for new bindings?

Could the veyron board maintainer fix this?
What to do with the things below to move forward with this serie?

Before sync:

        panel: panel {
                compatible ="cnm,n116bgeea2","simple-panel";
                status = "okay";
                power-supply = <&vcc33_lcd>;
                backlight = <&backlight>;
        };

&edp {
        status = "okay";
        rockchip,panel = <&panel>;
};

===

After sync:

        panel: panel {
                compatible = "innolux,n116bge";
                status = "okay";
                power-supply = <&panel_regulator>;
                backlight = <&backlight>;

                panel-timing {
                        clock-frequency = <74250000>;
                        hactive = <1366>;
                        hfront-porch = <136>;
                        hback-porch = <60>;
                        hsync-len = <30>;
                        hsync-active = <0>;
                        vactive = <768>;
                        vfront-porch = <8>;
                        vback-porch = <12>;
                        vsync-len = <12>;
                        vsync-active = <0>;
                };

                ports {
                        panel_in: port {
                                panel_in_edp: endpoint {
                                        remote-endpoint = <&edp_out_panel>;
                                };
                        };
                };
        };


&edp {
        status = "okay";

        pinctrl-names = "default";
        pinctrl-0 = <&edp_hpd>;

        ports {
                edp_out: port@1 {
                        reg = <1>;
                        #address-cells = <1>;
                        #size-cells = <0>;
                        edp_out_panel: endpoint@0 {
                                reg = <0>;
                                remote-endpoint = <&panel_in_edp>;
                        };
                };
        };
};

&edp_phy {
        status = "okay";
};

===

The edp node has different compatible strings and phys reset-names??
Please advise ??



        edp: edp@ff970000 {

                compatible = "rockchip,rk3288-edp";

                reg = <0xff970000 0x4000>;
                interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
                clocks = <&cru SCLK_EDP>, <&cru SCLK_EDP_24M>, <&cru 
PCLK_EDP_CTRL>;
                rockchip,grf = <&grf>;
                clock-names = "clk_edp", "clk_edp_24m", "pclk_edp";
                resets = <&cru 111>;

                reset-names = "edp";

                power-domains = <&power RK3288_PD_VIO>;
                status = "disabled";


        edp: dp@ff970000 {

                compatible = "rockchip,rk3288-dp";

                reg = <0xff970000 0x4000>;
                interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
                clocks = <&cru SCLK_EDP>, <&cru PCLK_EDP_CTRL>;
                clock-names = "dp", "pclk";

                phys = <&edp_phy>;
                phy-names = "dp";

                resets = <&cru SRST_EDP>;

                reset-names = "dp";

                rockchip,grf = <&grf>;
                status = "disabled";

>>> It also seemed fine on bob although my display is not coming up, for
>>> different reasons.
>>
>> In SPL or full U-boot?
> 
> There is no display in SPL.
===

Before and after only vopb and vopl node available in jerry.
No other hdmi mipi edp.
There's no "u-boot,dm-pre-reloc" for them.
What do you expect to work in this stage?

> 
> [..]
> 
> Regards,
> Simon

Johan

Reply via email to