Generating VGA using the Allwinner V3s LCD controller
https://pulkomandy.tk/_/_Electronique/_Generating%20VGA%20Using%20The%20Allwinner%20V3s
Generating VGA using the Allwinner V3s LCD controller
https://pulkomandy.tk/_/_Electronique/_Generating%20VGA%20Using%20The%20Allwinner%20V3s
Ok I'm done with adjusting the timings for this display for now. The refresh rate is somewhere between 50 and 60Hz and this is as sharp as I can get it in this setup (I could bypass all the vga stuff and wire the lcd panel directly, but it doesn't use the right connector and I want to keep this usable as a vga display)
Just for fun, I also confirmed that I can output 15kHz video and get around 832x288 pixels. I tried interlaced mode but it is flickering and uncomfortable.
Also this is pushing the timings a bit, you can see the scanlines getting noticeably wider accross the screen, not sure how to improve thatbut I can tweak the timings further.
Also, uboot doesn't have a 8x8px font, that would be helpful here. And I didn't manage to enable the 4x6px one.
@pulkomandy IIRC I looked into adding FDT support to the FreeBSD compat layer and it didn't look too difficult. Let me know if that's what's needed and I can point you in the right direction at a minimum
@waddlesplash if FreeBSD has a driver for the Allwinner EMAC ethernet, then yes, that's one way to do it.
@waddlesplash NetBSD driver: https://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/arm/sunxi/sunxi_emac.c?rev=1.37;content-type=text%2Fplain
FreeBSD has https://github.com/freebsd/freebsd-src/blob/9d50245a0f1333e10cc1c4dda16878cd79a7c42b/sys/arm/allwinner/if_awg.c#L152 but not enabled for this specific chip (sun8i-v3s-emac is not in the compatible list) so I'm not sure it would work
u-boot driver (confirmed working by me): https://elixir.bootlin.com/u-boot/v2026.10/source/drivers/net/sun8i_emac.c
@waddlesplash The U-Boot one is very simplified (no DMA, etc) so I think for now I may do a quick and dirty driver based on that (U-Boot already sets up the device so I really just need the send and receive functions).
I think trying to do a full-blown driver at this point without having the OS running isn't going to go well, most likely. I want to do ethernet first (and network booting) because I can make it really simple.