/dts-v1/; /plugin/; / { compatible = "brcm,bcm2711"; fragment@0 { target=<&dsi1>; __overlay__ { status = "okay"; #address-cells = <1>; #size-cells = <0>; port { dsi1_out_port: endpoint { remote-endpoint = <&panel_dsi_in1>; }; }; display1: panel@0 { compatible = "nwe,nwe080"; reg=<0>; backlight = <&rpi_backlight>; reset-gpios = <&gpio 20 0>; port { panel_dsi_in1: endpoint { remote-endpoint = <&dsi1_out_port>; }; }; }; }; }; fragment@1 { target = <&gpio>; __overlay__ { pwm_pins: pwm_pins { brcm,pins = <12>; brcm,function = <4>; // ALT0 }; }; }; fragment@2 { target = <&pwm>; frag1: __overlay__ { pinctrl-names = "default"; pinctrl-0 = <&pwm_pins>; assigned-clock-rates = <1000000>; status = "okay"; }; }; fragment@3 { target-path = "/"; __overlay__ { rpi_backlight: rpi_backlight { compatible = "pwm-backlight"; brightness-levels = <0 6 8 12 16 24 32 40 48 64 96 128 160 192 224 255>; default-brightness-level = <6>; pwms = <&pwm 0 200000>; power-supply = <&vdd_3v3_reg>; status = "okay"; }; }; }; fragment@4 { target = <&i2c6>; frag0: __overlay__ { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&i2c6_pins>; clock-frequency = <100000>; }; }; fragment@5 { target = <&i2c6_pins>; __overlay__ { brcm,pins = <22 23>; }; }; fragment@6 { target = <&gpio>; __overlay__ { goodix_pins: goodix_pins { brcm,pins = <21 26>; // interrupt and reset brcm,function = <0 0>; // in brcm,pull = <2 2>; // pull-up }; }; }; fragment@7 { target = <&i2c6>; __overlay__ { #address-cells = <1>; #size-cells = <0>; status = "okay"; gt9xx: gt9xx@5d { compatible = "goodix,gt9271"; reg = <0x5D>; pinctrl-names = "default"; pinctrl-0 = <&goodix_pins>; interrupt-parent = <&gpio>; interrupts = <21 2>; // high-to-low edge triggered irq-gpios = <&gpio 21 0>; reset-gpios = <&gpio 26 0>; }; }; }; };