drivers/bluetooth 源码目录与驱动索引

drivers/bluetooth 源码目录与驱动索引

1. USB

  • btusb.c:主流USB HCI;
  • ath3k.c:Atheros firmware loader;
  • bcm203x.cbfusb.c:旧设备;
  • bpa10x.c:sniffer。

2. UART

  • hci_ldisc.c:TTY line discipline;
  • hci_serdev.c:serial device bus;
  • hci_uart.h:共同对象/API;
  • hci_h4.chci_h5.chci_bcsp.c:framing;
  • hci_bcm.chci_qca.chci_intel.c
  • hci_ll.chci_ath.chci_mrvl.chci_nokia.chci_ag6xx.c

本 Makefile没有 hci_rtl.c;Realtek UART逻辑由H5/serdev和 btrtl helper组合。

3. 厂商helpers

  • btintel.[ch]
  • btbcm.[ch]
  • btrtl.[ch]
  • btqca.[ch]
  • btmtk.[ch]

它们由多个 transport复用,不单独代表物理bus。

4. SDIO

  • btsdio.c:通用HCI SDIO;
  • btmrvl_main.cbtmrvl_sdio.c
  • btmtksdio.c

5. 其它

  • btmtkuart.c
  • btqcomsmd.c
  • btrsi.c
  • virtio_bt.c
  • hci_vhci.c
    -PCMCIA legacy drivers。

6. Defconfig

明确为 y

1
2
3
4
5
6
7
8
9
10
BT
BT_HCIBTUSB
BT_HCIUART
BT_HCIUART_ATH3K
BT_HCIBFUSB
BT_HCIVHCI
BT_MRVL
BT_MRVL_SDIO
RFKILL
RFKILL_RK

未显式启用H4/H5/BCM/QCA等选项时不能只因源码存在就宣称已编译。BT_HCIUART_ATH3K会 select H4。

7. 目录边界

  • HCI Core:net/bluetooth/
  • UAPI:include/uapi/linux/bluetooth.h及hci/mgmt headers;
  • Rockchip平台 rfkill:net/rfkill/rfkill-bt.crfkill-wlan.c
    -用户态:BlueZ,不在内核树本目录。

文章互动

阅读 --

留言

0 条留言

正在加载留言…