btmksdio mt7668 questions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I have an amlogic s905x2 based board (a95x max v81 board) equipped
with mt7668rsn
sdio wifi/bt module.

btmtksdio kernels driver claim to support mt7668 sdio bluetooth, and
trying to start
automatically, but it fails as __hci_cmd_send()
call produces non 32bit aligned transfer, which seems to be rejected
by meson-gx-mmc
in meson_mmc_validate_dram_access().

There are modified driver from android
https://coral.googlesource.com/mt7668-bluetooth-mod (require mt7668 FW
from android)
with some trivial changes in btmtk_sdio.c (file_operations to proc_ops
replacement and removing unused timeval var)
it can be compiled with a recent kernel (tested with 6.1.13),
but it fails to start at 0x2031 command.
By modifying hci_le_set_default_phy_sync (in
linux/net/bluetooth/hci_sync.c) to only
return 0 (function do nothing now), makes it work, at least with a2dp
headphones.

Looking at drivers code, it seems to me that both intended to work
with different chips, as the wmt header format is completely
different.

So questions:
1. Are there different mt7668 bluetooth sdio chips with same id,
 or btmtksdio claims support for mt7668 by mistake?
 or, hopehely, I am wrong here and btmtksdio should work with mt7668rsn after
fixing alignment issues?

2. Is there an easy way from the bluetooth driver to tell the host to
not send the 0x2031 command? (to not breaking other drivers for
mt7668-bluetooth-mod)



[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux