[titan] Cannot load wifi firmware
Branch: titan-wifi
In titan you need to run wcnss-service in order to initialize the wireless interface. I've successfully compiled it getting rid of the Android stuff but I'm still stuck.
After booting and running manually wcnss-service
I get the following in dmesg
:
[ 119.853751,1] pil_pronto fb21b000.qcom,pronto: wcnss: Failed to locate wcnss.mdt
[ 119.853771,1] wcnss_notifier_cb: sysmon_send_event error -19
[ 119.853786,1] wcnss_pronto_log_debug_regs: PRONTO_PMU_SPARE 02000000
[ 119.853799,1] wcnss_pronto_log_debug_regs: PRONTO_PMU_COM_CPU_CBCR 80000ff0
[ 119.853813,1] wcnss_pronto_log_debug_regs: PRONTO_PMU_COM_AHB_CBCR 80000ff0
[ 119.853827,1] wcnss_pronto_log_debug_regs: PRONTO_PMU_CFG 00000010
[ 119.853840,1] wcnss_pronto_log_debug_regs: PRONTO_PMU_COM_CSR 00000000
[ 119.853853,1] wcnss_pronto_log_debug_regs: PRONTO_PMU_SOFT_RESET 00000400
[ 119.853866,1] wcnss_pronto_log_debug_regs: PRONTO_SAW2_SPM_STS 00003000
[ 119.853879,1] PRONTO_PLL_STATUS 00000000
[ 119.853888,1] PMU_CPU_CMD_RCGR 00000002
[ 119.853899,1] wcnss_pronto_log_debug_regs: PRONTO_PMU_COM_GDSCR 00222001
[ 119.853910,1] wcnss_pronto_log_debug_regs: Cannot log, Pronto common SS is power collapsed
[ 119.853924,1] wcnss_wlan fb000000.qcom,wcnss-wlan: Peripheral Loader failed on WCNSS.
The first line says it cannot find the wcnss.mdt which is some metadata file for the firmware. This file is available in /lib/firmware
. I've also copied the file to other directories like /lib/firmware/postmarketos
, /etc/firmware/
and /lib/firmware/postmarketos/wifi
but still no luck.
According to Documentation/arm/msm/pil.txt
:
User space APIs:
All firmware must be located in the path that is expected by the hotplug (or
compatible) daemon. A hotplug (or compatible) daemon should be running and be
able to handle events from the kernel requesting for a firmware file.
The basename of the firmware files will depend on the peripheral. For a given
peripheral, the metadata filename should end with a ".mdt" and the firmware
segment files should end with ".bXX" where XX denotes the index of the
firmware segment starting from 0.
Android hotplug compatible daemon expects the firmware files to be under
/etc/firmware.