联系管理员

开通文章发布权限

扫码 添加微信
微信图片
电话:18888888888 QQ:-

U-Boot单独编译增加启动执行内容

让 RK3566 的 ​​GPIO0_D4(引脚号 28)​​ 在系统启动时默认输出高电平。

U-Boot 阶段强制配置

通过修改 U-Boot 源码,在系统最早阶段初始化 GPIO 状态,避免内核驱动冲突。

​修改 U-Boot 源码​
文件路径:Release/u-boot/arch/arm/mach-rockchip/board.c
rk_board_init() 函数中更新如下:

__weak int rk_board_init(void)
{
	// 添加以下代码
    gpio_request(28, "GPIO0_D4");      // 申请 GPIO 资源(28 为引脚号)
    gpio_direction_output(28, 1);      // 输出高电平
	return 0;
}

完成后,退回到路径 Release/u-boot 下,执行编译命令:

make CROSS_COMPILE=aarch64-linux-gnu- -j8

如果编译失败,请确保已安装交叉编译工具链(如 aarch64-linux-gnu-gcc):

sudo apt-get install gcc-aarch64-linux-gnu  # 安装工具链
export CROSS_COMPILE=aarch64-linux-gnu-     # 设置环境变量

编译完成后,执行固件编译:

../build.sh uboot

固件编译完成后,uboot.img 固件生成在 u-boot文件夹下,想办法拿出来将其单独烧录到开发板中。

图片#B #S #R #60% #auto

 

评论

快捷导航

把好文章收藏到微信

打开微信,扫码查看

关闭

还没有账号?立即注册