Increase compatibility on Samsung GKI devices #2689
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR aims to fix the two main issues Samsung GKI devices encounter when using GKI 2.0 images. This is for Samsung devices which really support GKI images as some devices, despite being on 5.10+, don't support GKI images as the OEM and the SoC Manufacturer include essential drivers in the kernel image instead of shipping them as modules.
1) SDFAT support: Samsung devices with kernel <6.6 use a custom driver for exFAT and FAT file systems. Not having this driver makes sdcard not work correctly. Import the sdfat driver to affected kernel versions to correctly address this issue.
2) min_KDP support: Samsung devices with 6.6 kernel ship a Bluetooth driver (bluetooth.ko) which depends on these three KDP functions. Import a minimal KDP driver which behaves like the normal KDP driver when KDP is disabled by calling the required kernel functions.
Despite Samsung always adding a lot of obstacles this might really improve the situation as building kernels from Samsung sources usually takes time due to Samsung OSRC taking a lot of time to release them publicly.
Alternatively to this, a GKI variant specifically for Samsung KMIs (android12-5.10, android13-5.15, android14-6.1 and android15-6.6) can be made like is being done with ARCVM/WSA.