玩转树莓派4B之Uboot移植

2023-11-12

此文参考了以下文章:

https://blog.csdn.net/weixin_42233878/article/details/84980951

个人使用的编译环境为ubuntu1904 64位

 

我的目的是修改树莓派的uboot代码并且看下深入阅读,最后研究实现U盘启动,我会一一记录下来。(现在还没有人弄出来,我研究研究说不定能弄出来)

1、下载最新的uboot代码:https://ftp.denx.de/pub/u-boot/u-boot-2019.10-rc4.tar.bz2

2、解压并进入uboot目录:tar -xf u-boot-2019.10-rc4.tar.bz2

3、查看uboot对于树莓派4b的支持情况:

cd u-boot-2019.10-rc4/

ls config/|grep rpi

结果如下:

rpi_0_w_defconfig
rpi_2_defconfig
rpi_3_32b_defconfig
rpi_3_b_plus_defconfig
rpi_3_defconfig
rpi_4_32b_defconfig   32位启动配置
rpi_4_defconfig            64位启动配置
rpi_defconfig

说明uboot已经完成了对于树莓派的支持(支持得好还是不好未知,后面阅读uboot代码的时候我们才知道)
4、安装32位和64位编译工具链(我比较懒,源码编译安装不适合我这种懒人,直接在线安装)

sudo apt-get install gcc-arm-linux-gnueabi  gcc-aarch64-linux-gnu

5、配置uboot工具链生成64位的 (32位就是个弟弟,有时候多玩玩64位的吧)

export ARCH=arm64
export CROSS_COMPILE=aarch64-linux-gnu-

(32位就改成:export CROSS_COMPILE=arm-linux-gnueabi-)

6、编译生成配置文件 .config:make rpi_4_defconfig

如果编译出错,那么自己百度吧,一般错误是xxx:not found,直接先试下:sudo apt-get install xxx 不行就百度。

7、编译生成新uboot:make -j4

8、测试新uboot可不可用:

(1)确保你当前装的是64位系统,并且可以正常启动的。

(2)64位系统可以使用这个:https://github.com/openfans-community-offical/Debian-Pi-Aarch64

(3)把sd插入电脑,把uboot.bin放到sd卡的/boot目录,并在config.txt中添加一行:kernel=u-boot.bin

(4)插回树莓派看看能不能启动,能启动的话,再free -m看看内存大小,这个uboot版本内存只支持1G,也就是说你是2G或者4G版本的话,内存会被限制。

或者呢,自己编译个32位的看看能不能启动,如果不能启动,说明我们生成的uboot没有问题。

接下来就是阅读uboot代码,并且加打印,GPIO_8和10脚来查看树莓派打印内容。

9、树莓派3的启动过程:https://github.com/Yradex/RaspberryPi3_OS/wiki/树莓派-3-启动过程概述

下一篇详解4的启动过程,等我睡醒来更新!!!!!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

玩转树莓派4B之Uboot移植 的相关文章

  • Raspberry Pi Zero 单板配置手记(四)调整 TF 卡分区大小的不同方式

    RPi Zero 调整 TF 卡分区大小的不同方式 本文章为系列文章 Raspberry Pi Zero 单板配置手记 的第四篇 上一篇为 Raspberry Pi Zero 单板配置手记 三 使用 NetworkManager 管理网络连
  • 树莓派4B安装64位系统 以及基础配置

    最近在使用一个SDK时发现只提供了linux64版本的 而我用的树莓派系统是32位的 查了一下发现官方有提供64位版本的 开始了重装系统 总结了一下基础配置包括换源 远程连接 中文输入法 摄像头等配置 大纲 准备工具 1 SD卡格式化 2
  • 单片机串口控制树莓派3B播放HDMI视频,omxplayer,

    使用树莓派3B通过HDMI播放视频 并且使用串口去控制播放哪个视频 1 问题解耦 单片机串口控制树莓派3B播放视频 树莓派播放视频 单片机串口传参控制树莓派 树莓派播放视频 树莓派播放视频 并且能用串口这种简单的通信方式去控制 应该是需要安
  • 【自我提高】树莓派GPIO的几种语言控制方法 python 篇

    使用 python 语言控制 GPIO 18 首先知道树莓派外置IO的关系对照表 我这里的树莓派是 PI 3B V1 2 关系对照表如下 首先安装 python 和 GPIO 库 具体安装过程参考 https blog csdn net w
  • s5p4418的uboot网络无法使用问题解决

    一 前言 s5p4418 是一个三星的基于ARM的 cortex A9的四核处理器 这个 处理器目前常用的两个系统层固件分别是 uboot2014 linux3 4 39 和 uboot2016 linux4 4 172 两个版本 本次针对
  • 树莓派 Raspberry 4B 刷机、上网、录音外设、文件传输、电脑投屏问题汇总

    硬件 重要 一定要用正版品牌方的的sd卡 比如闪迪 读写速率至少要class10 否则开启启动很慢 界面很卡 上网连接 开机连接wifi后 wifi名字和密码会被写入配置文件中 开机密码 默认开机密码 raspberry 可修改 也可去掉开
  • xubuntu+树莓派4:绕过登录界面,自动登录,直接进入系统

    二郎为什么要做这个呢 因为二郎想让树莓派直接运行起来 不要再去点击登录了 做这个的时候二郎找了很多网上的教程 发现普遍存在的问题是 不注明系统 一顿乱说 跟本解决不了问题 而且容易把系统搞崩 这里二郎再声明一遍 该方法适用于树莓派4系统安装
  • uboot联网以及uboot重启问题

    一 配置uboot联网 虚拟机联网 配置uboot联网 1 配置uboot环境变量 setenv ipaddr 192 168 10 50 开发板ip地址 setenv ethaddr 00 04 9f 04 d2 35 mcu期间地址 多
  • 【自我提高】树莓派UART的几种语言控制方法 C 篇

    自我提高 树莓派UART的几种语言控制方法 C语言 篇 首先要安装wiringPi 具体安装过程见一下链接 https blog csdn net shileiwu0505 article details 106365588 对照树莓派 3
  • 制作树莓派img镜像文件

    想做个树莓派的img镜像 然而对SD卡进行全盘复制很浪费空间 且不能恢复到比现有SD卡容量小的卡上 因此探索制作小img的方法 网上看了大神制作的脚本 比如https github com conanwhf RaspberryPi scri
  • 树莓派 mqtt

    Mosquitto是一款实现了消息推送协议 MQTT v3 1 的开源消息代理软件 sudo yum y install epel release sudo yum y install mosquitto 运行 sudo systemctl
  • linux创建链接命令

    1 软链接 符号链接 1 软链接文件有类似于Windows的快捷方式 2 在符号连接中 文件实际上是一个文本文件 其中包含的有另一文件的位置信息 3 它只会在你选定的位置上生成一个文件的镜像 不会占用磁盘空间 linux创建链接软命令 具体
  • VTK配置步骤(WIN7 64位 + VS2012 + VTK-5.10.1)

    前面的废话可以不看 我很啰嗦 由于项目中需要用到VTK 上周三就开始编译VTK源码 中间出现了一系列问题 首先是下载的高版本代码顺利编译后 自己新建的工程总是提示链接错误 尽管所有的库文件都加入了 还是不正确 之后下载了vtk较低版本5 8
  • OpenCV Error: Assertion failed (type == B.type() && (type == CV_32FC1

    最近切换到64位系统上 运行以前的程序真是各种bug不停啊 主要还是系统位数导致的 先看下面这个错误 OpenCV Error Assertion failed type B type type CV 32FC1 type CV 64FC1
  • 树莓派4b 开启热点,设置自身ip与手机vnc连接

    此方法开启的热点 无法访问网络 1 下载现成的工具 git clone https github com oblique create ap git 如果无法访问github 这里下载 2 编译 cd create ap sudo make
  • 怎么把树莓派连接到电脑上(基于window10)

    我相信对于刚玩树莓派的新手来说 尤其是没有带显示屏的同学来说 四处碰壁 可能出现的原因有很多种 ssh登录不上 wifi连接不上 内存不足 很多问题 而对于更多新手来说 如何给树莓派连接网络更是关键 今天我给大家讲一下如何用树莓派连接电脑
  • 如何修改文件权限

    改变文件权限的两种方法 第一种 符号 sudo chmod 文件身份 操作符 权限符号 文件档案或目录 文件的四种身份 u user文件所有者 g group 文件所属群组 o other 其他拥有者 a all 全部身份 操作符的三种类
  • U-Boot顶层Makefile详解

    文章目录 一 U Boot工程目录分析 1 打包编译好的uboot 2 目录介绍 1 arch 2 board 3 configs 4 Makefile 5 config 6 README 二 VSCode工程创建 1 新建工程 2 屏蔽不
  • lv12 uboot源码配置编译 8

    目录 1 uboot源码获取 2 uboot特定 3 uboot源码结构 3 1 平台相关代码 3 1 1 arch 3 1 2 board 3 2 平台无关代码 3 2 1 common下放的都是uboot的命令 3 3 配置文件 帮助文
  • Beaglebone Black 的 U-boot 无法构建 - 目标 CPU 不支持 THUMB 指令

    我正在尝试按照 Chris Simmonds 的 掌握嵌入式 Linux 编程 中的说明为 Beagle Bone Black 构建 u boot 我已经构建了交叉工具链 现在正在尝试使用该工具链构建 Das U boot 但由于不支持 T

随机推荐