RK3566_R WiFi启动流程分析


本文详细解析了Android系统中WiFi服务的启动流程,包括系统启动阶段WiFi服务的初始化、服务注册机制、WiFi服务与其实际业务逻辑执行者的职责划分、WiFi开关事件流转等。文章首先介绍了WiFi服务的启动过程,包括WiFi服务的初始化、服务注册以及与WiFi服务实现类的协作。接着,详细解释了WiFi开关事件从UI到服务层的流转过程,以及ActiveModeWarden与WiFi状态机的联动机制。最后,文章深入分析了ClientModeManager和ClientModeStateMachine的状态机与模式管理,以及切换到连接模式的完整流程。

RK3566_R适配EC800E-CN 4G网络


本文详细介绍了如何在RK3566_R的SDK中集成EC800E-CN 4G模块,包括网络制式、封装尺寸、接口支持、操作系统兼容性、远程升级等功能。文章详细介绍了USB驱动中添加VID和PID、添加Reset-resume机制、添加URB_ZERO_PACKET机制、让网卡被正确的驱动加载等步骤。同时,文章还介绍了如何使能USB网卡驱动、PPP配置、集成RIL驱动、配置ril-daemon服务、添加SELinux配置、使能4G相关配置等。最后,文章通过实际操作验证了整个集成过程。

RK3566_R AIDL for HALs入门


本文详细介绍了Android HAL的演变过程,从Legacy HAL到AIDL HAL,并提供了AIDL HAL的具体实现步骤,包括定义aidl接口、配置Android.bp、编译模块、实现HAL接口、实现服务、编写服务开机启动脚本、声明VINTF AIDL接口、编写服务构建脚本、将模块加入系统、配置Selinux权限、测试等。文章还提供了相关代码示例和参考文章,对于想要了解和学习AIDL HAL的开发者具有很高的参考价值。

什么是安卓驱动开发?


本文介绍了安卓系统驱动程序的分类方式,包括按驱动功能、系统层级和硬件接口类型进行分类。详细阐述了不同类型驱动程序的特点和常见应用,以及安卓系统架构的层次结构。文章提供了丰富的示例,便于读者理解。

RK3566_R misc驱动入门


本文介绍了如何创建一个名为“hello”的Linux misc设备,包括添加驱动代码、修改Kconfig和Makefile、编译模块、测试等步骤。首先,通过编写C代码实现设备的读写功能,并在内核模块中进行注册。然后,通过NDK和APP两种方式对设备进行测试,验证其功能。最后,附上相关代码和参考文章链接。

RK3566_R适配RTL8821CU无线网驱动


本文介绍了如何在Rockchip平台移植RTL8821CU驱动,包括创建源码、修改Makefile、修改Kconfig、新增驱动定义、添加设备ID、打开内核配置参数等步骤。同时,还提供了无线网络排查步骤,包括查看网络接口、检查固件、关闭SELinux检测等,以帮助用户调试和解决Wi-Fi问题。

RK3566_R适配RTL8211F以太网驱动


本文介绍了如何为Rockchip RK3566芯片组配置RTL8211F千兆网卡。首先,需要修改设备树来适配RTL8211F的供电要求,然后调整内核配置以启用RTL8211支持。最后,通过编译内核和设备树来使配置生效。整个过程中,需要对硬件连接、设备树修改、内核配置等方面有详细的了解。

low_level_input()

lwIP 

以太网DMA接收缓冲区数据拷贝至lwIP pbuf链,释放DMA描述符供硬件继续接收数据。通过获取接收帧信息,分配pbuf链,遍历拷贝数据,释放描述符,处理缓冲区不可用情况,最终返回填充好的pbuf。

Tmux

工具 

tmux是一款终端复用工具,支持会话持久化、多窗口/面板管理及会话共享。在Ubuntu上安装简单,通过命令`sudo apt-get install tmux`即可。tmux会话、窗口和面板管理功能丰富,支持常用命令和快捷键操作。此外,tmux插件如tmux-resurrect可保存会话状态,方便恢复。

Keil

工具 

更改工程名步骤:打开工程目录,重命名Src为Dst对应文件(如Src.uvopt/uvprojx改为Dst),修改配置属性将Project Target改为Dst,更改可执行文件名为Dst,最后清理工程并重新编译。