| /dts-v1/; | |
| /plugin/; | |
| /* Based on https://github.com/wens/linux/commits/sun4i-drm-tve-vga-wip */ | |
| /* Tested with Cubetruck */ | |
| /* save it somewhere and run sudo armbian-add-overlay vga.dts */ | |
| / { | |
| compatible = "allwinner,sun4i-a10", "allwinner,sun7i-a20", "allwinner,sun8i-h3", "allwinner,sun50i-a64", "allwinner,sun50i-h5"; | |
| fragment@0 { | |
| target-path = "/soc"; | |
| __overlay__ { | |
| tve0: tv-encoder@1c0a000 { | |
| compatible = "allwinner,sun4i-a10-tv-encoder"; | |
| reg = <0x01c0a000 0x1000>; | |
| clocks = <&ccu 54>; /* #define CLK_AHB_TVE0 54 */ | |
| ports { | |
| #address-cells = <1>; | |
| #size-cells = <0>; | |
| port@0 { | |
| reg = <0>; | |
| tve0_in_tcon0: endpoint { | |
| remote-endpoint = <&tcon0_out_tve0>; | |
| }; | |
| }; | |
| tve0_out: port@1 { | |
| reg = <1>; | |
| #address-cells = <1>; | |
| #size-cells = <0>; | |
| /* endpoint number denotes the TVOUT on the SoC used */ | |
| tve0_out_g: endpoint@0 { | |
| reg = <0>; /* TVOUT 0 */ | |
| allwinner,tve-source = <4>; /* Y/G */ | |
| remote-endpoint = <&vga_connector_in_g>; | |
| }; | |
| tve0_out_b: endpoint@1 { | |
| reg = <1>; /* TVOUT 1 */ | |
| allwinner,tve-source = <5>; /* U/Pb/B */ | |
| remote-endpoint = <&vga_connector_in_b>; | |
| }; | |
| tve0_out_r: endpoint@2 { | |
| reg = <2>; /* TVOUT 2 */ | |
| allwinner,tve-source = <6>; /* V/Pr/R */ | |
| remote-endpoint = <&vga_connector_in_r>; | |
| }; | |
| }; | |
| }; | |
| }; | |
| }; | |
| }; | |
| fragment@1 { | |
| target-path = "/soc/lcd-controller@1c0c000/ports/port@1"; | |
| __overlay__ { | |
| tcon0_out_tve0: endpoint@2 { | |
| reg = <2>; | |
| remote-endpoint = <&tve0_in_tcon0>; | |
| allwinner,tcon-channel = <1>; | |
| }; | |
| }; | |
| }; | |
| fragment@2 { | |
| target-path = "/"; | |
| __overlay__ { | |
| vga-connector { | |
| compatible = "vga-connector"; | |
| label = "vga"; | |
| ddc-i2c-bus = <&i2c2>; | |
| port { | |
| #address-cells = <1>; | |
| #size-cells = <0>; | |
| vga_connector_in_r: endpoint@0 { | |
| reg = <0>; | |
| remote-endpoint = <&tve0_out_r>; | |
| }; | |
| vga_connector_in_g: endpoint@1 { | |
| reg = <1>; | |
| remote-endpoint = <&tve0_out_g>; | |
| }; | |
| vga_connector_in_b: endpoint@2 { | |
| reg = <2>; | |
| remote-endpoint = <&tve0_out_r>; | |
| }; | |
| /* usage of tve0 implies h/v sync from tcon0 */ | |
| }; | |
| }; | |
| }; | |
| }; | |
| }; |
This comment has been minimized.
This comment has been minimized.
|
Its quite possible that device tree has changed and this overlay no longer works. I dont have access to the hardware to test it out. To recover your Armbian install you have to mount your SD card and remove the vga overlay from the /boot folder. Or use uart serial console. |
This comment has been minimized.
This comment has been minimized.
|
I've restored settings through SSH. No problem with that. |
This comment has been minimized.
This comment has been minimized.
|
It was probably Armbian 20.05 buster with 5.4 kernel, tho im not sure. The devicetree overlay itself is based on 5.2 kernel. There has been quite some activity around Display Engine driver in linux-sunxi mailinglist, probably thats why it no longer works. |
This comment has been minimized.
This comment has been minimized.
|
Thank you, it would be great! |
This comment has been minimized.
Hi, can you help me with this script? I've installed Armbian_21.02.3_Cubietruck_buster_current_5.10.21 on sdcard. HDMI works great, after running sudo armbian-add-overlay vga.dts HDMI stops to work. So both HDMI and VGA displays shows nothing after u-boot loaded.
Any help will be appreciated!
Thanks in advance!