lsmod |grep bt

btusb                  57344  0
btrtl                  20480  1 btusb
btbcm                  16384  1 btusb
btintel                24576  1 btusb
bluetooth             573440  41 btrtl,btintel,btbcm,bnep,btusb,rfcomm

通过上面这个mod信息,可以猜测,基本的驱动流程如下

内核路径

net/bluetooth

drivers/bluetooth

https://linux-sunxi.org/Bluetooth

每层协议名称:

These application profiles work on a stack of protocols, similar in concept to the networking and USB stacks. For example the Object Push Profile (OPP) uses the OBject EXchange (OBEX) protocol, which uses the Radio Frequency COMMunication (RFCOMM) protocol, which uses the Logical Link Control and Adaptation Protocol (L2CAP), which uses the Host Controller Interface (HCI) protocol, which uses the radio link protocols.

This can rapidly become a complex area, but the user space tools make this all "just work" for users. It is beyond the scope of this page to configure Bluetooth profiles.

host和controler及其通讯组成了HCI

The Host Controller Interface is a lower level protocol in the Bluetooth stack. A host is usually a PC, tablet, SBC, phone, etc. A controller is the chip with the Bluetooth radio. Although some simpler Bluetooth devices, such as a headset, may have the host and controller implemented on a single processor.

The communication layer between host and controller can be over a number of interfaces, for example UART, USB and SPI.

HOST 是PC 、平板等,controller是带有蓝牙射频的芯片。host和controller可以通过uart usb spi等接口进行通讯,如下图所示

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/bluetooth  传输层的驱动

https://www.amd.e-technik.uni-rostock.de/ma/gol/lectures/wirlec/bluetooth_info/hci.html

linux 蓝牙驱动相关推荐

  1. 笔记本linux蓝牙驱动怎么安装程序,如何安装蓝牙设备的驱动程序

    操作步骤: 此处以Lenovo S41-70笔记本 Windows8.1系统为例介绍安装蓝牙驱动方法. 1.判断机器是否已安装蓝牙驱动,可以从桌面上找到"计算机"图标,右键选择&q ...

  2. 笔记本linux蓝牙驱动怎么安装程序,笔记本蓝牙驱动,教您笔记本蓝牙驱动怎么安装...

    现在很多的电脑上都有蓝牙,蓝牙可以让我们的电脑和手机通过无线的方式进行传输文件,但是笔记本上的蓝牙和手机上的又有很大的不同,传输文件也需要一定的操作规范,难么该如何使用呢?下面,小编给大家带来了安装笔 ...

  3. 笔记本linux蓝牙驱动怎么安装程序,笔记本蓝牙驱动怎么安装不上怎么办

    蓝牙是最近几年时间里面开始流行起来的,支持设备短距离无线通信技术,不论是台式电脑还是笔记本电脑,都是支持蓝牙使用的.不过有一些新手小白用户在使用笔记本蓝牙的时候,却出现了蓝牙驱动安装不上的问题,在这里 ...

  4. linux查看蓝牙驱动版本号,linux蓝牙驱动代码阅读笔记

    昨天看了一下介绍蓝牙协议文档,今天索性对照看了看kernel里的代码(bluez),这里记点笔记,还是继承了老毛病,只关注整体流程而忽略细节,先了解个大概,等真正需要时再仔细分析. net/hci_c ...

  5. kalilinux链接蓝牙音响_Kali Linux安装驱动并使用Blueman连接蓝牙耳机

    1.安装蓝牙驱动 我使用的是台式机+蓝牙控制器,首先Kali Linux需要安装蓝牙驱动,否则开机会报错(最后一行): bluetooth hci0: firmware: failed to load ...

  6. rt3290+linux驱动下载,Ralink雷凌RT3290蓝牙驱动

    Ralink雷凌RT3290蓝牙驱动11.0.760.0版For Win7-32/Win7-64/Win8-32/Win8-64/Win8.1-32/Win8.1-64(2015年3月16日发布)Ra ...

  7. linux 蓝牙打印机驱动安装失败,蓝牙驱动安装失败如何解决_蓝牙驱动安装不了怎么处理...

    我们要在电脑中使用蓝牙设备的时候,就要首先安装蓝牙驱动才可以正常使用的,但是有不少小伙伴在安装蓝牙驱动的时候,却遇到安装失败的情况,该怎么解决这样的问题呢,下面系统城小编给大家讲讲蓝牙驱动安装不了的详 ...

  8. rt3290+linux驱动下载,Ralink RT3290 蓝牙驱动 (雷凌)

    Ralink雷凌RT3290蓝牙驱动11.0.760.0版For Win7-32/Win7-64/Win8-32/Win8-64/Win8.1-32/Win8.1-64(2015年3月16日发布)Ra ...

  9. 《Linux设备驱动开发详解 A》一一2.3 接口与总线

    本节书摘来华章计算机出版社<Linux设备驱动开发详解 A>一书中的第2章,第2.3节,作者:宋宝华 更多章节内容可以访问云栖社区"华章计算机"公众号查看.1 2.3 ...

  10. linux 蓝牙脚本,arm linux串口蓝牙工具移植及使用(示例代码)

    ap6212中串口蓝牙在linux下的使用记录 一.linux蓝牙工具移植 主要使用到的工具及相关库如下: bluez-libs-3.36 libxml2-2.7.4 dbus-1.0.2 glib- ...

最新文章

  1. Flink从入门到精通100篇(十四)-Flink开发IDEA环境搭建与测试
  2. 01-How to setup SDK and compile TAs
  3. excel2010设置列宽为像素_excel图表制作技巧:条件格式制作像素图表
  4. 大型项目开发,你准备好了吗?
  5. GitHub:除非真正需要,否则我们不会删除您的任何内容
  6. java jdk设置字符集_使用JDK 11在Java字符串上的新方法
  7. LeetCode 1812. 判断国际象棋棋盘中一个格子的颜色
  8. Keras-保存和恢复模型
  9. 十大经典排序算法(动态演示+代码)
  10. 打开VS项目时出错 MSBuild。。。
  11. HTML基础教程笔记(HTML5与CSS3基础教程书)
  12. 声律启蒙--喜欢这个韵律
  13. ISCC2021-部分题目再现
  14. Flume笔记二:案例
  15. 使用Echarts将Excel数据转换成色彩地图HTML小工具
  16. Photoshop制作倒影字
  17. ArcGIS克里金插值ERROR999999解决办法汇总
  18. python多个strip_python 中strip方法
  19. floodlight添加模块实验
  20. 三叉戟核武系统扛不住网络攻击 解决之道在于投入成本

热门文章

  1. Android关于创建涂鸦板过程中出现的小问题
  2. java语言基础之关键字1(public、protested、private、static)
  3. ⻦哥的LINUX私房菜 学习
  4. 离散数学学习笔记——集合的符号表示
  5. 天神娱乐实控人朱晔宣布离职:暂时的离开是为更好相见
  6. 洛谷 P3110 [USACO14DEC]驮运Piggy Back ( spfa) 题解
  7. python requests timeout参数
  8. Java多线程学习(吐血超详细总结)转自博主林炳文Evankaka
  9. Failed to process import candidates for configuration class :Annotation-specified bean name ‘XXX‘ fo
  10. 原生 android 平板,前沿体验 原生Android 4.0系统平板推荐