【RK3588开发】Debian系统的驱动开发配置

RK3588的Debian系统的驱动开发配置

(1)打包Linux内核源码

①在sdk里面打包linux内核源码

shell 复制代码
tar -czvf kernel_pack.tar.gz kernel

②用adb传到开发板

shell 复制代码
adb push kernel_pack.tar.gz /userdata/

③在板子上解压

shell 复制代码
tar -xzvf kernel_pack.tar.gz

(2)清理并重新编译内核源码

①安装构建工具

shell 复制代码
apt update
apt install bison flex libssl-dev bc

②清理残留

shell 复制代码
cd /userdata/kernel
make clean

③重新生成配置和工具

shell 复制代码
make modules_prepare

(3)VsCode配置

①C/C++配置

在所以项目的总文件下配置C/C++

在包含路径栏添加:

json 复制代码
${workspaceFolder}/**
/userdata/kernel/include
/userdata/kernel/arch/arm64/include
/userdata/kernel/include/uapi
/userdata/kernel/arch/arm64/include/uapi
/userdata/kernel/include/generated
/userdata/kernel/arch/arm64/include/generated

在定义栏添加:

json 复制代码
__KERNEL__
MODULE
KBUILD_MODNAME="parameter"

②Makefile编写

makefile 复制代码
# 1. 模块名称 (对应xxxx.c,必须一致!)
obj-m := xxxx.o
# 2. 内核路径
KDIR := /userdata/kernel

# 3. 获取当前目录
PWD := $(shell pwd)

# 4. 指定架构 
ARCH := arm64

# --- 编译规则 ---

all:
	make -C $(KDIR) M=$(PWD) ARCH=$(ARCH) modules

clean:
	make -C $(KDIR) M=$(PWD) ARCH=$(ARCH) clean
相关推荐
芯芯点灯18 小时前
LIS2DW12驱动,功耗,数据可视化
驱动开发·单片机
帐篷Li1 天前
AI 编程时代的规范驱动开发:OpenSpec 实践指南
人工智能·驱动开发
jianqiang.xue1 天前
嵌入式软件架构设计:从分层思想到状态机实现,打造高可维护、高可移植的工程级代码
c语言·驱动开发·stm32·单片机·mcu·物联网·iot
Saniffer_SH1 天前
【高清视频】实验室搭建PCIe 6.0测试环境需要的retimer卡介绍
服务器·驱动开发·测试工具·fpga开发·计算机外设·硬件架构·压力测试
老师用之于民1 天前
【DAY29】DS18B20 传感器特性、时序协议及 51 单片机驱动开发
c语言·驱动开发·单片机·嵌入式硬件
智者知已应修善业2 天前
【proteus中lm339电压滞回比较器达到三角波转换成方波】2023-4-13
驱动开发·经验分享·笔记·硬件架构·proteus·硬件工程
路溪非溪2 天前
BLE的广播、扫描和连接等工作机制总结
linux·arm开发·驱动开发
17(无规则自律)3 天前
【Linux驱动实战】:字符设备之ioctl与mutex全解析
linux·c语言·驱动开发·嵌入式硬件
weiyvyy4 天前
从开发视角看硬件接口:接口开发的本质与全景图
驱动开发·单片机·嵌入式硬件·硬件工程
Dylan~~~4 天前
AI编程新范式:规范驱动开发SpecKit框架完全指南
驱动开发·ai编程