Hi , we are developing a custom firmware for imx8mp with 6.1.36 kernl
we tried to bringup bluetooth interface in evk and met with a error
root@imx8mp-lpddr4-evk:~# dmesg | grep -i bluetooth
[ 0.112763] Bluetooth: Core ver 2.22
[ 0.112789] NET: Registered PF_BLUETOOTH protocol family
[ 0.112793] Bluetooth: HCI device and connection manager initialized
[ 0.112800] Bluetooth: HCI socket layer initialized
[ 0.112805] Bluetooth: L2CAP socket layer initialized
[ 0.112814] Bluetooth: SCO socket layer initialized
[ 1.785400] Bluetooth: HCI UART driver ver 2.3
[ 1.789870] Bluetooth: HCI UART protocol H4 registered
[ 1.795015] Bluetooth: HCI UART protocol BCSP registered
[ 1.800362] Bluetooth: HCI UART protocol LL registered
[ 1.805510] Bluetooth: HCI UART protocol ATH3K registered
[ 1.810937] Bluetooth: HCI UART protocol Three-wire (H5) registered
[ 1.817335] Bluetooth: HCI UART protocol Broadcom registered
[ 1.823024] Bluetooth: HCI UART protocol QCA registered
[ 2.085255] Bluetooth: RFCOMM TTY layer initialized
[ 2.090161] Bluetooth: RFCOMM socket layer initialized
[ 2.095429] Bluetooth: RFCOMM ver 1.11
[ 2.099294] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 2.104712] Bluetooth: BNEP filters: protocol multicast
[ 2.110049] Bluetooth: BNEP socket layer initialized
[ 2.115124] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[ 2.121155] Bluetooth: HIDP socket layer initialized
root@imx8mp-lpddr4-evk:~# bluetoothctl
Agent registered
[bluetooth]# power on
No default controller available
root@imx8mp-lpddr4-evk:~# hciattach /dev/ttymxc2 qca
qca
frame_hci_cmd_pkt: Sending EDL_PATCH_VER_REQ_CMD
HCI-CMD -1: 0x1 0x0 0xfc 0x1 0x19
read_vs_hci_event: Wait for HCI-Vendor Specfic Event from SOC
wait_for_data: Timing out on select for 3 secs.
hci_send_vs_cmd: Failed to get HCI-VS Event from SOC
Failed to attach the patch payload to the Controller!
qca_soc_init: Fail to get Rome Version (0xffffff92)
Initialization timed out.
root@imx8mp-lpddr4-evk:~# hciconfig hci0 up
Can't get device info: No such device
root@imx8mp-lpddr4-evk:~# lsmod
Module Size Used by
btusb 49152 0
btrtl 20480 1 btusb
btintel 40960 1 btusb
overlay 122880 0
fsl_jr_uio 16384 0
caam_jr 176128 0
caamkeyblob_desc 16384 1 caam_jr
caamhash_desc 16384 1 caam_jr
caamalg_desc 36864 1 caam_jr
crypto_engine 20480 1 caam_jr
authenc 16384 1 caam_jr
libdes 24576 1 caam_jr
crct10dif_ce 16384 1
polyval_ce 16384 0
snd_soc_imx_hdmi 16384 0
snd_soc_imx_card 20480 0
snd_soc_fsl_asoc_card 28672 0
polyval_generic 16384 1 polyval_ce
snd_soc_imx_audmux 16384 1 snd_soc_fsl_asoc_card
imx8_media_dev 20480 0
dw_hdmi_cec 16384 0
snd_soc_fsl_micfil 24576 2
snd_soc_fsl_sai 36864 2
at24 20480 0
snd_soc_fsl_aud2htx 16384 2
snd_soc_fsl_easrc 45056 0
snd_soc_fsl_asrc 36864 1 snd_soc_fsl_easrc
snd_soc_fsl_xcvr 36864 2
snd_soc_fsl_utils 16384 2 snd_soc_fsl_micfil,snd_soc_fsl_sai
snd_soc_wm8962 98304 0
flexcan 28672 0
can_dev 40960 1 flexcan
secvio 20480 0
caam 28672 1 caam_jr
error 24576 7 caamalg_desc,secvio,caamkeyblob_desc,caamhash_desc,caam,caam_jr,fsl_jr_uio
imx_dsp_rproc 20480 0
fuse 135168 1
Hi @A_M01
you need to load the WIFI firmware first, use this command "modprobe moal mod_para=nxp/wifi_mod_para.conf"
Then Load BT firmware and enable BT:
root@imx8mp-lpddr4-evk:~# modprobe btnxpuart
root@imx8mp-lpddr4-evk:~# hciconfig
B.r
hciattach ttymxc2 any 115200 flow
root@imx8mp-lpddr4-evk:~# hciconfig hci0 up
[ 120.385606] Bluetooth: hci0: command 0x1003 tx timeout
[ 120.385619] Bluetooth: hci0: Opcode 0x1003 failed: -110
Can't init device hci0: Connection timed out (110)
root@imx8mp-lpddr4-evk:~#
root@imx8mp-lpddr4-evk:~#
root@imx8mp-lpddr4-evk:~# hciconfig
hci0: Type: Primary Bus: UART
BD Address: 00:00:00:00:00:00 ACL MTU: 0:0 SCO MTU: 0:0
DOWN
RX bytes:0 acl:0 sco:0 events:0 errors:0
TX bytes:8 acl:0 sco:0 commands:2 errors:0