It's taken many years but Sophgo has got a lot of their drivers into the mainline kernel and i do commend them for that.
However, there is also still a proprietary bootloader blob that has to be included, but still: I like the device and it's hardware... it could have better docs though.
I wrote some best practise, but a lot of thing are still missing: https://github.com/scpcom/LicheeSG-Nano-Build/blob/develop/b...
A newer project might be more successful on that: https://github.com/lone0/buildroot-external-licheervnano
But it isn't generalized.
It also doesn't support the weird sophgo "media engine" which is the big roadblock, but the code might help you.
There's been updates since i published that, though.
There is someone out there with an open source bootloader blob, i think i saw it on the milk-v forums can't remember the link