Need an understanding on Bluetooth driver

Pavan Savoy pavan_savoy at sify.com
Thu Mar 10 08:36:09 EST 2011


On Wed, Mar 9, 2011 at 5:31 PM, Tirtha Ghosh <gtirtha at gmail.com> wrote:
> Hi All,
>
> I am really new to bluetooth s/w development. And need some idea how it
> works in linux system.
>
> As far as I know, Bluez protocol stack is available on Linux. Bluez drivers
> are already mainlined in Kernel and utilities are available for user-space.
>
> When we say bluez driver, what does it mean? Is it the bluetooth protocol
> stack? If so, then what user-space utilities contain?

generally the terminology bluez is not used in kernel.
bluetooth in kernel is in 2 places,

a. net/bluetooth/ - which implements the HCI, L2CAP, SCO, RFCOMM,
HIDP, BNEP and few others and also implements the HCI-Core layer
b. drivers/bluetooth/ - Transport specific drivers like USB, UART, SPI
which interface with HCI-Core layer.

> The BT chip can be connected via UART, USB or SDIO interfaces. Who
> communicate with these interfaces, is it bluez kernel drivers or user-space
> utilities (via sys or proc)?

No, Bluetooth in Linux exposes a interface "hci0" to user-space.
Like Ethernet or any other n/w interface.

So, applications or other utilities in user-space do
socket/bind/sendmsg/recv BSD calls on hciX interface

For more questions: register to linux-bluetooth mailing lists.

> Finally, I saw this BT chips can support Toshiba stack or BlueSoleil or any
> other stack. Does bluez support any form of BT, regardless what protocol
> stack they are using??
> Say, there is BT chip in form of USB dongle which can be connected via
> regular USB port to the system. Does this dongle may need specific driver in
> Linux or bluez driver can handle this dongle using normal USB drivers
> available in system??
>
> I am not sure if I sound clear about my doubts. A small description about
> bluez architecture might clear my doubt.
> I am aware of linux kernel and device driver model, so you can be specific
> while describing this.
>
> TIA
>
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
>



More information about the Kernelnewbies mailing list