/* * vc4-kms-dpi.dtsi */ #include #include / { fragment@100 { target-path = "/"; __overlay__ { panel: panel { rotation = <0>; port { panel_in: endpoint { remote-endpoint = <&dpi_out>; }; }; }; }; }; fragment@101 { target = <&dpi>; dpi_node: __overlay__ { status = "okay"; pinctrl-names = "default"; port { dpi_out: endpoint { remote-endpoint = <&panel_in>; }; }; }; }; fragment@102 { target = <&panel>; __dormant__ { backlight = <&backlight>; }; }; fragment@103 { target-path = "/"; __dormant__ { backlight: backlight { compatible = "gpio-backlight"; gpios = <&gpio 255 GPIO_ACTIVE_HIGH>; }; }; }; fragment@104 { target = <&panel>; __dormant__ { backlight = <&backlight_pwm>; }; }; fragment@105 { target-path = "/"; __dormant__ { backlight_pwm: backlight_pwm { compatible = "pwm-backlight"; brightness-levels = <0 6 8 12 16 24 32 40 48 64 96 128 160 192 224 255>; default-brightness-level = <16>; pwms = <&pwm 0 200000>; }; }; }; fragment@106 { target = <&pwm>; __dormant__ { pinctrl-names = "default"; pinctrl-0 = <&pwm_pins>; assigned-clock-rates = <1000000>; status = "okay"; }; }; fragment@107 { target = <&gpio>; __dormant__ { pwm_pins: pwm_pins { brcm,pins = <18>; brcm,function = <2>; /* Alt5 */ }; }; }; fragment@108 { target = <&audio>; __dormant__ { brcm,disable-headphones; }; }; __overrides__ { backlight-gpio = <0>, "+102+103", <&backlight>, "gpios:4"; backlight-pwm = <0>, "+104+105+106+107+108"; backlight-pwm-chan = <&backlight_pwm>, "pwms:4"; backlight-pwm-gpio = <&pwm_pins>, "brcm,pins:0"; backlight-pwm-func = <&pwm_pins>, "brcm,function:0"; backlight-def-brightness = <&backlight_pwm>, "default-brightness-level:0"; rotate = <&panel>, "rotation:0"; }; };