Heyyo, heh well I'm not exactly bringing up a device from scratch, but I'm attempting to add max_plus to the LeEco Le Max 2 builds since they share a lot of the same msm8996 specific vendor files and kernel source code... It boots into TWRP and installs LineageOS 16.0 but the video lag is crazy and needs to be resolved.
Device bring up from scratch? Eh that's more difficult. I'd recommend for device trees though to find another device tree that has msm8994 and cloning those and then changing it to be compatible to your device
The kernel source code will be the tricky part... You'll need to find out the base kernel CAF tag it is based on and then copy and paste the LeEco kernel source code on top of it and make a new commit for that and push it to GitHub or GitLab so you can compare the changes and then from there you can try and import the important parts (arch/arm/boot/dts/qcom/ and drivers/ and firmware/ and sound/ and include/ ).
Here's a guide on how to try and find the kernel CAF tag that
http://www.abhishekan.me/android/kernel/2019/01/02/Finding-caf-tag-of-kernel.html
Good luck!
Device bring up from scratch? Eh that's more difficult. I'd recommend for device trees though to find another device tree that has msm8994 and cloning those and then changing it to be compatible to your device
The kernel source code will be the tricky part... You'll need to find out the base kernel CAF tag it is based on and then copy and paste the LeEco kernel source code on top of it and make a new commit for that and push it to GitHub or GitLab so you can compare the changes and then from there you can try and import the important parts (arch/arm/boot/dts/qcom/ and drivers/ and firmware/ and sound/ and include/ ).
Here's a guide on how to try and find the kernel CAF tag that
http://www.abhishekan.me/android/kernel/2019/01/02/Finding-caf-tag-of-kernel.html
Good luck!