Most features are working already, at least to some good extent. These are the main ones that remain:
- CPU Scaling: drivers for msm8996 CPU scaling already exist but are not enabled in the device tree in mainline. Enabling it causes lockups when CPU Idle is enabled. I'm testing it in this branch and it massively boosts performance, but even with the little cores stuck at their bootloader-set 614.4 MHz and the big cores at 19.2 MHz (I've actually disabled them by default in the cmdline since they have a negative impact on performance in this state), the CPU performance is comparable to msm8916 devices according to Unixbench. I might actually enable CPU scaling and disable idle in the next kernel update. I don't think that idle is working properly anyway.
- Modem: Sending SMS works with QRTR-patched ofono, while calls could possibly work but will be useless without sound since the earpiece and microphones aren't working yet. Mobile data will need IPAv2 support (IPA driver currently only supports v3 on sdm845+).
- Audio: Headphones output works. Earpiece output and microphones will need some extra UCM configuration to work. Speaker will need a driver for its codec.
- Sensors: A driver for SSC is needed since all sensors are connected to it.
- Cameras: CAMSS is already supported and what remains is sensor drivers. I've started writing a driver for the rear sensor (IMX318) but haven't been able to properly test it yet.
- Fingerprint reader: Needs a driver.
- Charging: At least a driver for smbcharger is needed, and (not sure if needed even for slow charging) a driver for SMB1351 too for quick charging.
I still have some issues with touch input in OSK-SDL that need to be fixed, so FDE is a no for now. I think it's ready to move to community since its quite usable and stable now.