一、概述

本文讲述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}/productc​ompany/{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] (三)蓝牙芯片适配相关推荐

  1. [OpenHarmony RK3568](四)WIFI芯片适配

    文章目录 一.概述 1.1 WLAN固件 1.2 nvram.txt 二.内核部分 2.1 修改设备树 2.2 内核配置部分 三.系统适配部分 一.概述   本文讲述RK3568上移植OpenHarm ...

  2. HyperBDR云容灾深度解析三:适配上云下云跨云多场景

    2022年信通院首次发布云容灾白皮书,这意味着随着企业上云加速,混合云场景增多,容灾上云方案逐步成为一些行业伙伴在考虑的新选择.本文从一些传统容灾应用出发,帮助大家普及云容灾的类型并拓展云容灾解决方案 ...

  3. RK3568三屏异显异触控技术案例

    RK3568系列主板支持三屏异显异触控,即一块主板可同时接入三个显示屏,每个显示屏可同时播放不同的内容:并支持多点触控,每个屏幕可分别触摸控制,操作互不影响.支持MIPI.HDMI.LVDS显示屏使用 ...

  4. OpenHarmony RK3568开发板烧写过程总结梳理

    参考了南先森的博客,原文地址 1.下载驱动和工具 点击此处,下载驱动和工具 2.安装驱动 双击windows\DriverAssitant\DriverInstall.exe安装usb驱动 3.切换到 ...

  5. 重拾Android之路(三)手机适配

    随着android智能手机的发展和普及,各种各样的大小和尺寸的android智能机不断的退出,通过各种各样的设备机型,我们能够让自己的APP接触到广大的用户.为了能在各种android平台上使用,我们 ...

  6. 全网最便宜的OpenHarmony开发板和模组Neptune问世(基于联盛德W800的SoC),9.9元带蓝牙和wifi功能还包邮

    这是我见过的全网最便宜的开发板.功能一点儿也不弱,带蓝牙和wifi功能,竟只要9.9元还包邮,果断的买了块儿研究研究.它还支持HarmonyOS和freeRTOS嵌入式操作系统,也可以接入鸿蒙生态. ...

  7. RK系列开发板音频驱动适配指南(一)

    背景: 多媒体系统目前在Linux操作系统,windows操作系统已经非常成熟,并且应用场景广泛,但是,基于OpenAtom OpenHarmony(以下简称"OpenHarmony&quo ...

  8. OpenHarmony开发资料归档

    目录 环境搭建操作篇 ​编辑 测试篇 子系统篇 芯片移植适配篇 简单操作体验篇 源码解析篇 应用开发样例篇 版本特性解析篇 视频课程分享篇 开发者体验分享篇 书籍篇 正儿八经官方篇 好用链接 交流渠道 ...

  9. iOS多设备分辨率适配

    iPhone 6 / 6 Plus 出现后,如何改进工作流以实现一份设计稿支持多个尺寸? 移动app开发中多种设备尺寸适配问题,过去只属于Android阵营的头疼事儿,只是很多设计师选择性地忽视and ...

  10. Android 屏幕适配

    一.适配方式之dp 名词解释 分辨率:480*800,1280*720.表示物理屏幕区域内像素点的总和.(切记:跟屏幕适配没有任何关系) 因为我们既可以把1280*720 的分辨率做到4.0 的手机上 ...

最新文章

  1. centos安装配置nginx,ssl生产和配置教程
  2. 【SeeMusic】创建 SeeMusic 工程并编辑相关内容 ( 创建工程 | 导入 MIDI 文件 | 导入音频 | 导入视频 )
  3. Linux centos 集群下ssh无密码
  4. 数字三角形:顺推法(二维数组)
  5. Winform将网页生成图片
  6. js性能优化--学习笔记
  7. static和extern对函数的作用
  8. vc++ cfile 文件操作
  9. linux解压缩6层
  10. 关于文献汇报与撰写论文模板,我有话要讲!
  11. iOS IPV6审核被拒 - 芒果iOS开发
  12. php树递归算法,PHP二叉树递归算法
  13. 《machine learning in action》机器学习 算法学习笔记 决策树模型
  14. [问题]mpu9250+bmp280数据读取
  15. CTF之crpto练习三
  16. IC学习笔记20——VCS的使用(一)仿真事件队列
  17. Arduino ESP32 SD卡读写实例
  18. python爬虫成长之路(一):抓取证券之星的股票数据
  19. 【总结】解决Linux机器重装后-免密登录报错问题
  20. 创业赢利模式之三包装生产模式

热门文章

  1. 95%的人都会答错的类加载的问题
  2. 星岚技术 Win10 x64 纯净版 V2021.5【带驱动包】
  3. Qt简述如何实现不规则按钮
  4. NLPIR+Hadoop
  5. 算法、逻辑、数学的关系
  6. 解决AndroidStudio中使用.9图片不生效的问题
  7. Java开发工具-IDEA(更新中...)
  8. WINDOWS10 win+L 锁屏快捷键失效
  9. 开环传递函数判断系统类型_已知系统的开环传递函数,试用Nyquist稳定判据判断系统的稳定性。_学小易找答案...
  10. MAL-PEG-Cholesterol,MAL-PEG-CLS