[OpenHarmony RK3568] (三)蓝牙芯片适配
一、概述
本文讲述RK3568上移植OpenHarmony 3.2适配蓝牙以及相关内容。
先讲述适配的方式,后续适配系列讲完后,会出一系列详细解析相关子系统。
硬件芯片:AW-NM372S
芯片模组:43438A1
注:芯片模组对于适配来说非常重要,所有的固件版本都要根据它来适配
二、修改部分
2.1 修改对应串口
板子上硬件连接为UART3
device/board/hihope/rk3568/cfg/init.rk3568.cfg
首先修改对应的串口拥有者为blue_host
"chown blue_host blue_host /dev/ttyS3",
vendor/hihope/rk3568/bluetooth/include/bt_vendor_brcm.h
修改蓝牙框架中蓝牙对应串口
/* Device port name where Bluetooth controller attached */
#ifndef BLUETOOTH_UART_DEVICE_PORT
#define BLUETOOTH_UART_DEVICE_PORT "/dev/ttyS3" /* maguro */
#endif
2.2 修改固件相关
vendor/hihope/rk3568/bluetooth/src/hardware.c
同样修改蓝牙框架中,对应的蓝牙固件名(注:hcd文件是蓝牙固件,可以理解为host controll driver,需要找供应商提供)该文件包含Android设备用于初始化组件(如蓝牙适配器或WiFi功能)的二进制数据。
void hw_config_cback(void *p_mem)
{
...
// /vendor/etc/firmware//p_name = FW_PATCHFILE_LOCATION "BCM4362A2.hcd";p_name = FW_PATCHFILE_LOCATION "BCM43438A1.hcd";...
}
2.3 将固件移植到开发板上
vendor/hihope/rk3568/bluetooth/BUILD.gn
这一步建立一个ohos_build_part,意思是把主机上vendor/productcompany/{product_company}/productcompany/{product_name}/bluetooth/BCM43438A1.hcd这个文件,安装到开发板上的vendor/etc/firmware文件夹下,由于我们这里product_company是hihope,product_name是rk3568,所以我们应该把我们的固件放到SDK的vendor/hihope/rk3568/bluetooth
下,它就会自动安装到开发板上。
ohos_prebuilt_etc("BCM43438A1.hcd") {source = "//vendor/${product_company}/${product_name}/bluetooth/BCM43438A1.hcd"install_images = [ vendor_base_dir ]relative_install_dir = "firmware"part_name = "rockchip_products"install_enable = true
}
device/board/hihope/rk3568/ohos.build
这里是在构建中,加入对上面ohos_build_part的调用
{"subsystem": "rockchip_products","parts": {"rockchip_products": {"module_list": ["//device/board/hihope/${device_name}:rk3568_group","//vendor/hihope/${product_name}/bluetooth:libbt_vendor","//vendor/hihope/${product_name}/bluetooth:BCM4362A2.hcd","//vendor/hihope/${product_name}/bluetooth:BCM43438A1.hcd"],"test_list": ["//kernel/linux/build/test:linuxkerneltest"]}}
}
下一篇:[OpenHarmony RK3568](四)WIFI芯片适配
[OpenHarmony RK3568] (三)蓝牙芯片适配相关推荐
- [OpenHarmony RK3568](四)WIFI芯片适配
文章目录 一.概述 1.1 WLAN固件 1.2 nvram.txt 二.内核部分 2.1 修改设备树 2.2 内核配置部分 三.系统适配部分 一.概述 本文讲述RK3568上移植OpenHarm ...
- HyperBDR云容灾深度解析三:适配上云下云跨云多场景
2022年信通院首次发布云容灾白皮书,这意味着随着企业上云加速,混合云场景增多,容灾上云方案逐步成为一些行业伙伴在考虑的新选择.本文从一些传统容灾应用出发,帮助大家普及云容灾的类型并拓展云容灾解决方案 ...
- RK3568三屏异显异触控技术案例
RK3568系列主板支持三屏异显异触控,即一块主板可同时接入三个显示屏,每个显示屏可同时播放不同的内容:并支持多点触控,每个屏幕可分别触摸控制,操作互不影响.支持MIPI.HDMI.LVDS显示屏使用 ...
- OpenHarmony RK3568开发板烧写过程总结梳理
参考了南先森的博客,原文地址 1.下载驱动和工具 点击此处,下载驱动和工具 2.安装驱动 双击windows\DriverAssitant\DriverInstall.exe安装usb驱动 3.切换到 ...
- 重拾Android之路(三)手机适配
随着android智能手机的发展和普及,各种各样的大小和尺寸的android智能机不断的退出,通过各种各样的设备机型,我们能够让自己的APP接触到广大的用户.为了能在各种android平台上使用,我们 ...
- 全网最便宜的OpenHarmony开发板和模组Neptune问世(基于联盛德W800的SoC),9.9元带蓝牙和wifi功能还包邮
这是我见过的全网最便宜的开发板.功能一点儿也不弱,带蓝牙和wifi功能,竟只要9.9元还包邮,果断的买了块儿研究研究.它还支持HarmonyOS和freeRTOS嵌入式操作系统,也可以接入鸿蒙生态. ...
- RK系列开发板音频驱动适配指南(一)
背景: 多媒体系统目前在Linux操作系统,windows操作系统已经非常成熟,并且应用场景广泛,但是,基于OpenAtom OpenHarmony(以下简称"OpenHarmony&quo ...
- OpenHarmony开发资料归档
目录 环境搭建操作篇 编辑 测试篇 子系统篇 芯片移植适配篇 简单操作体验篇 源码解析篇 应用开发样例篇 版本特性解析篇 视频课程分享篇 开发者体验分享篇 书籍篇 正儿八经官方篇 好用链接 交流渠道 ...
- iOS多设备分辨率适配
iPhone 6 / 6 Plus 出现后,如何改进工作流以实现一份设计稿支持多个尺寸? 移动app开发中多种设备尺寸适配问题,过去只属于Android阵营的头疼事儿,只是很多设计师选择性地忽视and ...
- Android 屏幕适配
一.适配方式之dp 名词解释 分辨率:480*800,1280*720.表示物理屏幕区域内像素点的总和.(切记:跟屏幕适配没有任何关系) 因为我们既可以把1280*720 的分辨率做到4.0 的手机上 ...
最新文章
- centos安装配置nginx,ssl生产和配置教程
- 【SeeMusic】创建 SeeMusic 工程并编辑相关内容 ( 创建工程 | 导入 MIDI 文件 | 导入音频 | 导入视频 )
- Linux centos 集群下ssh无密码
- 数字三角形:顺推法(二维数组)
- Winform将网页生成图片
- js性能优化--学习笔记
- static和extern对函数的作用
- vc++ cfile 文件操作
- linux解压缩6层
- 关于文献汇报与撰写论文模板,我有话要讲!
- iOS IPV6审核被拒 - 芒果iOS开发
- php树递归算法,PHP二叉树递归算法
- 《machine learning in action》机器学习 算法学习笔记 决策树模型
- [问题]mpu9250+bmp280数据读取
- CTF之crpto练习三
- IC学习笔记20——VCS的使用(一)仿真事件队列
- Arduino ESP32 SD卡读写实例
- python爬虫成长之路(一):抓取证券之星的股票数据
- 【总结】解决Linux机器重装后-免密登录报错问题
- 创业赢利模式之三包装生产模式
热门文章
- 95%的人都会答错的类加载的问题
- 星岚技术 Win10 x64 纯净版 V2021.5【带驱动包】
- Qt简述如何实现不规则按钮
- NLPIR+Hadoop
- 算法、逻辑、数学的关系
- 解决AndroidStudio中使用.9图片不生效的问题
- Java开发工具-IDEA(更新中...)
- WINDOWS10 win+L 锁屏快捷键失效
- 开环传递函数判断系统类型_已知系统的开环传递函数,试用Nyquist稳定判据判断系统的稳定性。_学小易找答案...
- MAL-PEG-Cholesterol,MAL-PEG-CLS