以下为《RTL8723DS蓝牙问题分析》的无排版文字预览,完整内容请下载

Realtek Bluetooth serdev support (H5 protocol)

From:

?

Martin Blumenstingl

To:

?

robh+dt-DgEjT+Ai2ygdnm+yROfE0A-AT-public.gmane.org, devicetree-u79uwXL29TY76Z2rM5mHXA-AT-public.gmane.org, linux-bluetooth-u79uwXL29TY76Z2rM5mHXA-AT-public.gmane.org, linux-serial-u79uwXL29TY76Z2rM5mHXA-AT-public.gmane.org

Subject:

?

[RFC v2 0/9] Realtek Bluetooth serdev support (H5 protocol)

Date:

?

Mon, 1 Jan 2018 21:42:08 +0100

Message-ID:

?

<20***7.26165-1-martin.blumenstingl@googlemail.com>

Cc:

?

mark.rutland-5wv7dgnIgG8-AT-public.gmane.org, marcel-kz+m5ild9QBg9hUCZPvPmw-AT-public.gmane.org, gustavo-THi1TnShQwVAfugRpC6u6w-AT-public.gmane.org, johan.hedberg-Re5JQEeQqe8AvxtiuMwx3w-AT-public.gmane.org, gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r-AT-public.gmane.org, jslaby-IBi9RG/b67k-AT-public.gmane.org, johan-DgEjT+Ai2ygdnm+yROfE0A-AT-public.gmane.org, linux-amlogic-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r-AT-public.gmane.org, Larry.Finger-tQ5ms3gMjBLk1uMJSBkQmQ-AT-public.gmane.org, carlo-6IF/jdPJHihWk0Htik3J/w-AT-public.gmane.org, drake-6IF/jdPJHihWk0Htik3J/w-AT-public.gmane.org, Martin Blumenstingl

Archive-link:

?

Article

Hello,

I am sending this series because I want to get feedback.

please don't expect it to be perfect (yet). especially since it's

touching parts of the kernel I've not worked with before.

my goal was NOT to use the user-space initialization tool for the

Bluetooth part of one of my devices (which uses a Realtek RTL8723BS).

my hope was that I only had to hook up serdev support to hci_h5 and

re-use the setup function provided by btrtl. unfortunately it wasn't

that easy.

there are no datasheets for the RTL8723BS or RTL8723DS out there.

however, there are some userspace tools which go through the whole

initialization process - this is what I used as reference:

- RTL8723BS Bluetooth sources from [0]

- RTL8723DS Bluetooth sources from [1]

These modules require a firmware and a config file (both don't seem

to be compatible with what we have in linux-firmware at the moment).

since it's an RFC I also have some questions:

- who can help testing that I didn't break any USB based Realtek

Bluetooth chips? I only have UART (embedded into the SDIO RTL8723BS

and RTL8723DS) ones

- what about the Bluetooth firmware and config blobs? how to get them

into the linux-firmware tree? maybe Larry Finger can help here :)

- what are comments about this series?

Changes since RFC v1 at [2]:

- fixed compile error in PATCH #1 if CONFIG_SERIAL_DEV_BUS is disabled

(spotted by Intel's kbuild test robot - many thanks!)

- renamed "disable-gpios" to "enable-gpios" in the dt-bindings and

hci_h5 patches

- added a "realtek,config-data" property to devicetree which can be used

to provide the "config"-blob. I did not find a way to auto-generate

that blob. a similar property is described by "marvell-bt-8xxx.txt".

This affects the dt-bindings (Documentation) patch and introduces a

new patch for btrtl.c.

- guard against the vendor_setup callback being NULL (thanks Marcel

Holtmann for suggesting this in the review of RFC 1) in the hci_h5

patch

- added comments where the msleep() times are coming from in the hci_h5

patch

- dropped an unnecessary msleep() after sending the "change baudrate"

command (thanks Marcel Holtmann for spotting this)

- entirely drop HCI_UART_INIT_PENDING instead of just ignoring it in

hci_serdev

[0] https://github.com/lwfinger/rtl8723bs_bt

[1] https://github.com/NextThingCo/rtl8723ds_bt

[2] https://doc.bjdcfy.com/lists/linux-bluetooth/msg72862.html

Martin Blumenstingl (9):

serdev: implement parity configuration

dt-bindings: net: bluetooth: add support for Realtek Bluetooth chips

Bluetooth: btrtl: add MODULE_FIRMWARE declarations

Bluetooth: btrtl: split the device initialization into smaller parts

Bluetooth: btrtl: add support for retrieving the UART settings

Bluetooth: btrtl: add support for the RTL8723BS and RTL8723DS chips

bluetooth: btrtl: load the config blob from devicetree when available

Bluetooth: drop HCI_UART_INIT_PENDING support

Bluetooth: hci_h5: add support for Realtek UART Bluetooth modules

.../devicetree/bindings/net/realtek-bluetooth.txt | 41 ++

drivers/bluetooth/Kconfig | 1 +

drivers/bluetooth/btrtl.c | 461 ++++++++++++++++-----

drivers/bluetooth/btrtl.h | 46 ++

drivers/bluetooth/hci_h5.c | 206 ++++++++-

drivers/bluetooth/hci_ldisc.c | 38 --

drivers/bluetooth/hci_serdev.c | 3 -

drivers/bluetooth/hci_uart.h | 4 +-

drivers/tty/serdev/core.c | 12 +

drivers/tty/serdev/serdev-ttyport.c | 21 +

include/linux/serdev.h | 5 +

11 files changed, 678 insertions(+), 160 deletions(-)

create mode 100644 Documentation/devicetree/bindings/net/realtek-bluetooth.txt

--

2.15.1

--

To unsubscribe from this list: send the line "unsubscribe devicetree" in

the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org

More majordomo info at http://vger.kernel.org/majordomo-info.html

以上为《RTL8723DS蓝牙问题分析》的无排版文字预览,完整内容请下载

linux rtl8723bu 蓝牙,RTL8723DS蓝牙问题分析相关推荐

  1. 【转】Android bluetooth介绍(三): 蓝牙扫描(scan)设备分析

    原文网址:http://blog.csdn.net/xubin341719/article/details/38584469 关键词:蓝牙blueZ  A2DP.SINK.sink_connect.s ...

  2. linux蓝牙设备无法打开,linux 下 无线 wifi 蓝牙 无法启用

    linux 下 无线 wifi 蓝牙 无法启用 装了Debian squeeze 后发现无线不能打开 首先想到的是装驱动 于是在wiki.debian.org上查了下以重新装了下驱动 #aptitud ...

  3. linux 关掉蓝牙自动,如何在Ubuntu 14.04中默认关闭蓝牙,蓝牙

    如何在Ubuntu 14.04中默认关闭蓝牙,蓝牙 如何在Ubuntu 14.04中默认关闭蓝牙 我最近新买了一台Dell Inspiron 7437,我第一时间做的一些事情之一就是让预装的Windo ...

  4. 怎么利用linux来操作手机,Linux_在Linux操作系统下操作蓝牙手机的方法,所谓操作,到现在只是通过蓝 - phpStudy...

    在Linux操作系统下操作蓝牙手机的方法 所谓操作,到现在只是通过蓝牙做了二件事: 一.通过虚拟串口连接上手机,执行AT命令操作手机(发短信而已) 二.手机和电脑互传文件 如果使用redhat 9.0 ...

  5. 蓝牙单独运行linux,Linux架建个人蓝牙局域网的方法

    在linux系统中架建个人蓝牙局域网不仅方便还非常实用,那么你知道linux平台下如何架建个人蓝牙局域网吗?下面我们就一起去看看Linux架建个人蓝牙局域网的方法. 用bluetooth 在 Linu ...

  6. Android 蓝牙抓包和分析 (1) 启用蓝牙HCI信息收集日志

    蓝牙通信其实和http通信有点类似,http通过接口交互抓取数据包也很方便,但是到了蓝牙就没那么方便了,本文就是介绍如何实现蓝牙数据包的抓取. 怎么抓包 另一种更为简便的抓包方式请阅读Android ...

  7. 【低功耗蓝牙】① 蓝牙广播数据格式分析

    摘要 本文章主要讲解了蓝牙的发展史,蓝牙信号,蓝牙广播数据的格式.最后使用ESP32芯片MicroPython固件给出了蓝牙广播的具体代码,是蓝牙初学者很好的参考资料. 也可以参考下我在B站的蓝牙视频 ...

  8. 蓝牙nrf51822程序的分析(一)

    蓝牙nrf51822程序的分析(一) 最近继续用NRF51822开发一个东西.无奈之前没接触过蓝牙.连蓝牙串口模块也没有.所以对蓝牙的基础知识不够,后面看了之后接着补充 花了2天时间把提供的NRF51 ...

  9. linux wifi 蓝牙冲突,linux 下 无线 wifi 蓝牙 无法启用

    linux 下 无线 wifi 蓝牙 无法启用 装了Debian squeeze 后发现无线不能打开 首先想到的是装驱动 于是在wiki.debian.org上查了下以重新装了下驱动 #aptitud ...

  10. Android Bluetooth蓝牙开发\蓝牙协议\蓝牙通信例子_Android支持蓝牙4.0版本_BLE开发

    一.Android Bluetooth现状 在android官网可以了解到android4.2新增了部分新功能,但是对于BT熟悉的人或许开始头疼了,那就是Android4.2引入了一个新的蓝牙协议栈针 ...

最新文章

  1. 游戏开发需要具备哪些技术_生鲜小程序需要具备哪些功能板块?生鲜小程序开发...
  2. python中的 set 中的元素
  3. 用python排教室_开学季,教你用Python画大学教室座位神分区图!网友直呼“中枪”...
  4. 使用Helm优化Kubernetes下的研发体验:基础设施即代码
  5. Java EE与NoSQL的未来
  6. 201521123032 《Java程序设计》第7周学习总结
  7. 《JavaScript核心技术》
  8. 安卓异常总结---GestureBuilder] Re-installation failed due to different application signatures
  9. Sharepoint 站点模板和站点定义、定制站点定义
  10. 读书笔记《程序员修炼之道》
  11. iOS 学习 - 18.TextField 自定义菜单事件,复制和微信分享
  12. 【项目经验】EasyUI Tree
  13. POI导出之我的实践篇
  14. 微软2022年10月补丁周二修复了84个漏洞
  15. 华为USG6000 防火墙默认设置
  16. 八股总结(二)计算机网络与网络编程
  17. python win32com Dispatch, DispatchEx 无法打开(启动)excel pywintypes.com_error: (-2146959355, ‘服务器运行失败‘
  18. 迅为iTOP-3399平台车牌识别解决方案
  19. Linux中的管道和过滤器
  20. 神经网络参数量和计算量,神经网络是参数模型吗

热门文章

  1. 腾讯云超级播放器实现无直播占位图,有直播播放视频
  2. WordPress影视主题模板电影下载网站源码
  3. 《Netlogo多主体建模入门》学习笔记(2)
  4. Git代码提交,固定日志模板
  5. 【Web前端】儿童摄影网——网页制作代码
  6. 深度linux 安装qq游戏,在Deepin系统下用Playonlinux完全可以运行QQ游戏大厅
  7. 方舟建服务器局域网显示,方舟生存进化怎么新建局域网
  8. xp系统整个计算机非常慢,xp系统物理内存不足导致电脑运行速度非常缓慢的图文方法...
  9. 淘宝旺旺代码生成页面
  10. 怎么使用7zip进行分批压缩_7zip怎么使用 7zip使用方法教程