Quantcast
Viewing all articles
Browse latest Browse all 4814

Advanced users • Re: Can't get PWM backlight to work on P4

Thanks to various posts on this forum, especially from aBUGSworstnightmare, I have something that works.

Code:

/dts-v1/;/plugin/;/ {        compatible = "brcm,bcm2385";        fragment@0 {                target = <&gpio>;                __overlay__ {                        pwm_pins: pwm_pins {                                brcm,pins = <18 19>;                                brcm,function = <2>;                                brcm,pull = <0>;                        };                };        };        fragment@1 {                target = <&pwm>;                __overlay__ {                        pinctrl-names = "default";                        pinctrl-0 = <&pwm_pins>;                        status = "okay";                };        };        fragment@2 {                target-path = "/";                __overlay__  {                        backlight: backlight {                                compatible = "pwm-backlight";                                pwms = <&pwm 0 500000 0>;                                brightness-levels = <0 255>;                                num-interpolated-steps = <255>;                                default-brightness-level = <255>;                                enable-gpios = <&gpio 27 0>;                                power-supply = <&vdd_3v3_reg>;                        };                };        };        fragment@3 {                target = <&dsi1>;                __overlay__{                        status = "okay";                        #address-cells = <1>;                        #size-cells = <0>;                        port {                                dsi_out_port:endpoint {                                        remote-endpoint = <&panel_dsi_port>;                                };                        };                        panel_disp1: panel_disp1@0 {                                reg = <0>;                                compatible = "boe,tv080wum-nl0", "panel-simple-dsi";                                backlight = <&backlight>;                                rotation = <0>;                                port {                                        panel_dsi_port: endpoint {                                                remote-endpoint = <&dsi_out_port>;                                        };                                };                        };                };        };};
I then had to go into desktop preferences and check "Show identical desktop on second monitor".

To test, I added this to .config.wayfire.ini ...

Code:

[idle]dpms_timeout = 10
And verified with pinctrl that the backlight does indeed turn off, not just blanking the screen.

I also notice that there's an awkward approximately 1 second blink when the system first loads the backlight driver, when booting.

Is this a better solution than just adding a systemd service to sync with the DPMS signal? That's debatable.

I might see if I can figure out how to use the hdmi-connector in a device tree overlay. But I've already sunk enough time into this.

Statistics: Posted by JinShil — Thu Jan 18, 2024 10:51 am



Viewing all articles
Browse latest Browse all 4814

Trending Articles