Apol for the delay - work finishes early on a friday, so when I got home early worked on the revised sd card slot patch, and got that submitted.
The looked into Vasily patch for Bluetooth and compared with Stefan. Stefan has the basis of Vasily, but is far simpler than Vasily. Vasily loads firmware that is device dependent. That this may be needed for bluetooth is a hassle, so need to do some checking on what firmware is available. This did leave me wondering the best direction for bluetooth patches, which to test, which to push for inclusion in the kernel.
I still kind like Stefans patch:
https://archlinuxarm.org/forum/viewtopic.php?f=44&t=13064&start=140#p60592 and that was what I was applying - all be it I added it by hand to my 4.20 series, as that had already been hacked. So still think it would be good to check Stefans, yes it may well not work without the firmware - but if it does work its far easier.
So what does it take, well download the latest kernel - think thats a 4.20 series, but 5.0 can only be a few days out. Apply stefans patch, either automatically or by hand, depending on whats needed. Take /proc/config.gz, copy into the kenrel, uncompress - then move to .config.
Then make menuconfig - and probably set the machine type to as close to yours as possible, certainly rockchip, but maybe rk3288.
Then build the kernel, first time for me on a beagle, take over 24 hours. Once it done, subsequent compiles are quicker. Then taking the hci_uart.ko and using, or just booting the whole kernel.
To be honest, its a slow process. I know I can just leave it going on my pocket beagle, which is up 24/7 hanging off my nas. Some thinks are quick "make dtbs" will do the device tree, which for just a single architecture is quick. So its a tad painful, but actually good to learn - give more exposure to the kernel, and how it fits in a working OS.
Eventually though leads to bitter old men like Stefan and I, we know a fair bit more, but a whole lot less than the people who designed the whole set up, but also give great respect to those that actually do get code into the kernel.
Oh yes - for the hci_uart.ko.gz that you download, may be worth trying:
$this->bbcode_second_pass_code('', 'md5sum hci_uart.ko.gz
f2ab8e30c14812ae4f3ef4e49514ec14 hci_uart.ko.gz')
So just to check if that was preserved.
Anyway I need to read more of Vasily patch, and try and understand it ...