Kernel V4.4 _ Issues shared by all supported phones - LGE-G5-G6-V20/msm8996_lge_kernel Wiki
Issues shared by all supported phones
The bluetooth stack was updated in hopes of improving it's signal strength and reach. For some commits related to it in kernel-space, check the commits after, and including this one here.
Previously, audio failed to work and barely logged anything in the dmesg output, but after some inspection, it appears that the size of
LGE_DAI_LINK_ID_BASE, located in
sound/soc/msm/msm8996.c was set to 80 since 3.18 while qcom added many new DAI links in 4.4. We decided to log the reported sum of dai array sizes in both 3.18 and 4.4. While 3.18 returned 68 links, well below 80, 4.4 on the other hand reported 135, far above it. We then bumped that ID_BASE define to 160 and later dropped it to 135 to only use the absolute minimum amount of memory for the links. It worked, but now we get log spams with
AudioSystem::listAudioPorts error -19 and
updateAudioPortCache: listAudioPorts failed, which tells us that we are now getting all dai links, but something is causing trouble in the audio ports.
Cleaning up LGE's DAI links and refactoring the code to use newer and better routines based on lge's msm8998 source had audio working in 4.4, although some minor issues such as Audio through HDMI actually being routed to the phone's outputs and not the Monitor/TV. The commits related to those audio fixes range from this one to this one. Now it doesn't need that LINK_ID_BASE define anymore, making the code a bit more fail-proof after caf updates.
Camera currently doesn't work, and so far it isn't even picked up by the kernel at all. IR Blaster works just the same as 3.18, which is to say, it barely does, but improvements in the suspend routines were made and it responds a bit better now.