artizirk

  • Posts

    3
  • Joined

  • Last visited

Everything posted by artizirk

  1. I still haven't had time to push proper patches to the kernel or Armbian build repo, but here is a working user devicetree overlay that works for me. https://gist.github.com/artizirk/636e3fe9320bb0f6af9c419a79157346 /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 */ }; }; }; }; };
  2. Those commits don't apply cleanly but i got it working on my Cubietruck!
  3. Cubietrucks A20 chip needs some Device Tree patches from here to make VGA work on 4.15+ mainline kernel https://github.com/wens/linux/commits/sun4i-drm-tve-vga-wip