美文网首页LinuxBB-black开发板[Linux arm-v8]
BB-Black开发板更新内核—Apple的学习笔记

BB-Black开发板更新内核—Apple的学习笔记

作者: applecai | 来源:发表于2018-05-06 11:36 被阅读63次

    首先TI-SDK提供了SD卡启动制作的工具及说明,通过如下地址可以下载
    http://software-dl.ti.com/processor-sdk-linux/esd/AM335X/latest/index_FDS.html

    Windows SD Card Creation Guide为Help文件
    下载镜像am335x-evm-linux-04.03.00.05.img.zip来使用。
    

    其中需要下载2个工具

    1)  7z1805-x64.exe—用来解压img.zip文件的
    2)  win32diskimager-1.0.0-install.exe—用来写入解压后的文件到分区后的SD中
    

    接着问题来了,我自己制作的是0.3.03版本。MLO和uboot.img已经zImage还有模块文件都如何更新到SD卡?

    1.更新uboot

    首先想到的就是替换到刚刚制作好的SD卡中。可是第一个分区为FAT32 名称为boot
    在window能打开,看到里面是MLO和uboot.img文件。能满足我的需求。替换后,我制作的MLO和uboot.img是可以成功引导Kernel的。

    2.更新Kernel

    另外一个分区读取不了?
    为什么linux通过SD卡启动需要制作了个分区呢?目前还不清楚。可能是uboot里面设置的。
    但是我查到另外一个分区是ext4的,那么就是linux用的文件系统。找到方法了。把sd卡连接到ubuntu系统中,能打开第二个分区rootfs,进行文件更新了,能看到里面boot文件夹下有zImage。

    3.更新DTB

    Dtb的路径我也看到了和kernel一样。

    4.更新modules

    modules的路径是放哪里呀?
    网上搜索了下是在/lib/modules。开发板的lib/modules里面是一个版本号文件夹。把自己编译的lib下的带版本号文件夹都copy到开发板的lib/modules即可。

    SD卡启动后可以正常挂在更新后的linux系统。
    可以通过'uname -a'来查看版本,文件系统未更新。
    通过'lsmod'命令查看加载的模块。能显示则表示成功。加载的模块一定是和kernel版本一致的。
    

    最后成功!

    操作过程有些折腾。
    1)忘记有文件系统了,把SD卡中lib下面的文件都删除了,只copy自己编译的modules,导致文件系统挂载不了。
    2)模块需要带版本号copy还是不需要,做了交叉实验才确认的,比较费时间

    关于文件系统如何制作可以参考官网如下网址,不是我目前阶段研究的内容
    http://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Overview.html#processor-sdk-linux-building-the-sdk

    参考网址:
    https://blog.csdn.net/baicaiaichibaicai/article/details/68945836

    相关文章

      网友评论

      本文标题:BB-Black开发板更新内核—Apple的学习笔记

      本文链接:https://www.haomeiwen.com/subject/mjgerftx.html