Tool/software:
Hello,
I am trying to use a single lane LVDS display on the 6.6 linux kernel. I am using a display overlay that worked on the 6.1 kernel but after updating to 6.6 it no longer works. I am not aware of any working examples of single lane lvds display on the 6.6 kernel. Are there any examples or documentation on changes in the new kernel that could help with updating the device tree overlay?
This is the error that I get while booting:
tidss 30200000.dss: failed to init OLDI: -517
Here is the overlay:
/dts-v1/; /plugin/; #include <dt-bindings/pwm/pwm.h> #include <dt-bindings/gpio/gpio.h> #include <dt-bindings/interrupt-controller/irq.h> #include "k3-pinctrl.h" &{/} { display { compatible = "edt,etml1010g3dra"; backlight = <&backlight>; ports{ #address-cells = <1>; #size-cells = <0>; port@0 { lcd_in0: endpoint { remote-endpoint = <&oldi_0_out>; }; }; }; }; backlight: backlight { pinctrl-names = "default"; pinctrl-0 = <&bl_pwm_pins_default>; compatible = "pwm-backlight"; brightness-levels = <0 4 8 16 32 64 128 255>; default-brightness-level = <6>; enable-gpios = <&gpio_exp 5 GPIO_ACTIVE_HIGH>; pwms = <&epwm0 1 50000 0>; }; }; &main_pmx0 { bl_pwm_pins_default: bl-pwm-pins-default { pinctrl-single,pins = < AM62X_IOPAD(0x01b8, PIN_INPUT, 2) /* (C13) SPI0_CS1.EHRPWM0_B */ >; }; main_oldi0_pins_default: main-oldi0-pins-default { pinctrl-single,pins = < AM62X_IOPAD(0x0260, PIN_OUTPUT, 0) /* (AA5) OLDI0_A0N */ AM62X_IOPAD(0x025c, PIN_OUTPUT, 0) /* (Y6) OLDI0_A0P */ AM62X_IOPAD(0x0268, PIN_OUTPUT, 0) /* (AD3) OLDI0_A1N */ AM62X_IOPAD(0x0264, PIN_OUTPUT, 0) /* (AB4) OLDI0_A1P */ AM62X_IOPAD(0x0270, PIN_OUTPUT, 0) /* (Y8) OLDI0_A2N */ AM62X_IOPAD(0x026c, PIN_OUTPUT, 0) /* (AA8) OLDI0_A2P */ AM62X_IOPAD(0x0278, PIN_OUTPUT, 0) /* (AB6) OLDI0_A3N */ AM62X_IOPAD(0x0274, PIN_OUTPUT, 0) /* (AA7) OLDI0_A3P */ AM62X_IOPAD(0x02a0, PIN_OUTPUT, 0) /* (AD4) OLDI0_CLK0N */ AM62X_IOPAD(0x029c, PIN_OUTPUT, 0) /* (AE3) OLDI0_CLK0P */ >; }; }; &epwm0 { status = "okay"; }; &dss { pinctrl-names = "default"; pinctrl-0 = <&main_oldi0_pins_default &main_dss0_pins_default>; }; &dss_ports { #address-cells = <1>; #size-cells = <0>; /* VP1: LVDS Output */ port@0 { reg = <0>; dpi0_out0: endpoint { remote-endpoint = <&oldi_0_in>; }; }; }; &oldi0 { status = "okay"; }; &oldi0_ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; oldi_0_in: endpoint { remote-endpoint = <&dpi0_out0>; }; }; port@1 { reg = <1>; oldi_0_out: endpoint { remote-endpoint = <&lcd_in0>; }; }; };
Thank you for the help,
Nathan