I embedded bluetooth sdio controller to Android IMX board . I want to up the bluetooth sdio controller from GUI but i couldnt made. can u please suggest how bluetooth device will up ?
Bluetooth HCI (Host controller interface) on SDIO driver should be handled by btsdio.ko. I know it is there (usually /lib/modules/<kernel-version>/kernel/drivers/bluetooth) but I never actually used it, so I don't have much information how to use it.
However, not all the Bluetooth function on SDIO wireless card uses HCI over SDIO. It if you are using WiFi/Bluetooth combo card it is unlikely to have HCI over SDIO, because the SDIO interface is occupied by WiFi function. In this case, it may uses HCI over UART. There could be UART over SDIO, or separate UART connector is provided.
If Bluetooth function on the module is UART connected, first you somehow make the UART port able to shown on /dev as a tty device. Then you use "hciattach" command (which should be included in Linux distribution) to create a Bluetooth node (hciX) on that tty port.
Once hci node is created (you can see it from hciconfig -a command), the GUI (GNome Bluetooth-Manager) will automatically detect it so you can configure / add device through the control panel.
What board / CPU do you use really?
Thanks for our information . I modified bluetooth.c file in bluedroid , which will be used for SDIO interface .
Hi Janadhana Bokka,
Can you please let us know what change you added in bluetooth.c (or bluedroid) such that it works with SDIO? I am using Atheros AR6233G on IMX6 Sabresd platform with Android 4.2.2.
By default Android 4.2 Jerry Bean does not support ATH3K HCI driver.
It only supports generic HCI over UART protocol, called "H4".
AR3001/3002 requires special initialization process, uploading firmware
(RamPatch.txt) and calibration data (PS_ASIC.pst) . After the initialization
completed, it works as generic H4 Bluetooth device.
You can refer to hciattach_ath3k.c included in BlueZ source package how to
initialize AR3001/3002, if you don't mind GPL issue.
Looking at the Atheros AR622X chipset and the Silex Module, it seems to me that BT uses only the UART, and SDIO pins are reserved for WLAN. In this case, you have no possibility to do UART over SDIO to use the BT. I do not think the combo chipset form Atheros enables that. This is why you have separate connector for BT on the Silex module.
Overwise, it would have been more convenient and cheaper to do everything over SDIO as you suggest.
Retrieving data ...