【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
相关推荐
2401_862880827 小时前
iMX6ULL 驱动工程搭建 + LED 灯驱动
c语言·驱动开发·嵌入式硬件
硅基手札12 小时前
【串口技术系列文档 07】UART控制器寄存器详解
驱动开发·stm32·单片机·嵌入式硬件·mcu·计算机外设
硅基手札13 小时前
【串口技术系列文档 09】FIFO管理与流控
驱动开发·stm32·单片机·嵌入式硬件·mcu·计算机外设
硅基手札13 小时前
【串口技术系列文档 08】中断驱动vs轮询vs DMA
驱动开发·stm32·单片机·嵌入式硬件·mcu·计算机外设
qetfw14 小时前
Debian SSH 安全配置:端口、来源限制与免密登录
linux·安全·debian·ssh
傲世仙尊15 小时前
inline与nullptr-从宏的坑到符号表的真相
驱动开发
gwf2161 天前
RDMA事件与异步通知机制:CMA事件与设备事件深度解析
驱动开发·linux内核·rdma·rdma_cm·异构计算·异步事件·cve分析
万物智能信息科技1 天前
温湿度传感器驱动开发—【万物智能之开源鸿蒙OpenHarmony系统实战开发系列教程】
人工智能·驱动开发·华为·开源·harmonyos·鸿蒙
硅基手札2 天前
【串口技术系列文档 04】UART协议深度解析
驱动开发·stm32·单片机·嵌入式硬件·mcu·计算机外设
kakakahahahaha2 天前
Windows 10禁用自动更新:gpedit、services.msc、计划任务与风险边界
windows·驱动开发·电脑·笔记本电脑·软件需求·windows系统更新