Build error: HALs in device manifest are not declared in FCM <= level 6

Does anyone had this error and now how to properly fix it?

The following HALs in device manifest are not declared in FCM <= level 6:
android.hardware.bluetooth.audio.IBluetoothAudioProviderFactory/default (@3)
android.hardware.cas.IMediaCasService/default (@1)
android.hardware.drm.IDrmFactory/clearkey (@1)
android.hardware.nfc.INfc/default (@1)
android.hardware.power.IPower/default (@3)
android.hardware.wifi.IWifi/default (@1)
android.hardware.wifi.hostapd.IHostapd/default (@1)
android.hardware.wifi.supplicant.ISupplicant/default (@2)
vendor.qti.hardware.radio.ims.IImsRadio/imsradio0 (@12)
vendor.qti.hardware.radio.ims.IImsRadio/imsradio1 (@12)
INCOMPATIBLE

2024-01-29 09:06:26 - check_target_files_vintf.py - INFO : stderr: ERROR: files are incompatible: The following instances are in the device manifest but not specified in framework compatibility matrix:
vendor.qti.hardware.radio.ims.IImsRadio/imsradio0 (@12)
vendor.qti.hardware.radio.ims.IImsRadio/imsradio1 (@12)
Suggested fix:

  1. Update deprecated HALs to the latest version.
  2. Check for any typos in device manifest or framework compatibility matrices with FCM version >= 6.
  3. For new platform HALs, add them to any framework compatibility matrix with FCM version >= 6 where applicable.
  4. For device-specific HALs, add to DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE or DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE.: Success

Traceback (most recent call last):
File “internal/stdlib/runpy.py”, line 196, in _run_module_as_main
File “internal/stdlib/runpy.py”, line 86, in _run_code
File “/media/ronnz/eos/LOS21/out/host/linux-x86/bin/ota_from_target_files/main.py”, line 12, in
File “internal/stdlib/runpy.py”, line 196, in _run_module_as_main
File “internal/stdlib/runpy.py”, line 86, in _run_code
File “ota_from_target_files.py”, line 1463, in
File “ota_from_target_files.py”, line 1434, in main
File “ota_from_target_files.py”, line 985, in GenerateAbOtaPackage
File “check_target_files_vintf.py”, line 370, in CheckVintfIfTrebleEnabled
RuntimeError: VINTF compatibility check failed
09:06:27 ninja failed with: exit status 1

Regain your privacy! Adopt /e/OS the unGoogled mobile OS and online servicesphone

Never seen that :frowning:
Maybe a faulty manifest?
Is it a Lineage officially supported device?

good question. I had this his now 3 times for unsupported devices- I think I tried fixed 2 and 3 but did not work out

purely guessing -

do you declare the variable anywhere (to a filepath) in any of the Makefiles?

if you lookup the reason for introducing / reverting / making this optional - https://review.lineageos.org/c/LineageOS/android_vendor_lineage/+/314458 you might get an idea. As in: either do not declare the variable at all. If it’s declared, make sure to have all HALs in the compatibility xml?