资讯专栏INFORMATION COLUMN

cubietruck在uboot的dram驱动创(chao)造(xi)过程

MkkHou / 2196人阅读

摘要:话说以上的芯片,本身提供了硬件虚拟化的指令集,也就是指令。要开启硬件虚拟化,最开始要从引导程序开始设置。因为老师告诉我,没有驱动,所以从读取根目录,而又没有驱动,有驱动但又没有驱动,因此就又是一个创造的过程了哈哈哈哈

话说armv7以上的芯片,本身提供了硬件虚拟化的指令集,也就是VT指令。要开启硬件虚拟化,最开始要从引导程序开始设置。
唔,我使用的是u-boot,u-boot项目的地址是https://github.com/linux-sunxi/u-boot-sunxi/
支持硬件虚拟化技术的u-boot项目地址(应该)是:https://github.com/jwrdegoede/u-boot-sunxi
如果不确定下的项目是不是正确的,下下来之后首先看看configs/sun7i.h里面,应当有:

#define CONFIG_ARMV7_VIRT

这一句。
这个u-boot目前支持到cubieboard2,哎,老夫买的是cubietruck,这么高端大气的设备为什么不能够支持呢?
uboot在编译时,通过根目录下的boards.cfg设定了编译规则,可以看到果然支持硬件虚拟化的uboot没有提供cubietruck的规则。。。

用meld查看一下两个项目之间的差异吧~
当然差异非常多,我们的关心没有那么大
按照meld指示把boards.cfg改了,这样我们编译就可以使用

 make Cubietruck CROSS_COMPILE=arm-linux-gnueabihf- -j8

了~

事情当然不会这么简单,编译很显然报错了。
这是为什么呢?引导程序加载时,很显然一切存储都没有到位,此时是通过一个DRAM的设备读取加载信息的,话说DRAM,也经历NorFlash啊SDRAM啊的发展更迭,这个是题外话我就不说(不懂)了

编译时候根据报错(我就不贴了),发现board/sunxi/文件夹下,需要对不同的设备的dram进行编写,比如里面有dram_cubieboard2.c,就是没有dram_cubietruck.c,这个文件提供了一个sunxi_dram_init的函数,将会在同一目录下的board.c中用到。那么我们加一个就好了。
同样用meld把不支持虚拟化那边的uboot搞过来一个dram_cubietruck.c,瞅了一瞅,发现两边的差不多都是一个道理,直接加上,不需要什么修改。

board/sunxi文件夹下还有个Makefile,随手那么一搜,发现

COBJS-$(CONFIG_CUBIEBOARD2) += dram_cubieboard2.o

下面果然没有cubietruck,
所以加上一条:

COBJS-$(CONFIG_CUBIETRUCK)  += dram_cubietruck.o

好了。。这样uboot就可以正常编译以及工作了=w=

但是xen依然还不能启动。。因为老师告诉我,uboot没有mmc驱动,所以从nand读取根目录,而dom0又没有nand驱动,linux-sunxi有nand驱动但又没有xen驱动,因此就又是一个创(chao)造(xi)的过程了哈哈哈哈~

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/11498.html

相关文章

  • Linux学习

    摘要:学习树莓派的的初识学习树莓派的的初识初识初识学习书籍正点原子嵌入式驱动开发指南章节第三十章学习内容书中介绍的获取可以有三个途径第一个是的官方代码。网上的烧写树莓派教程很多,但是为了学习我选择了官方的代码。Linux学习 - 树莓派4b的U-Boot的初识初识U-Boot学习书籍:《【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.5.1》章节:第三十章学习内容:书中介绍uboot的获...

    不知名网友 评论0 收藏0
  • PHP异步编程: 基于PHP实(chao)现(xi) NODEJS web框架KOA

    摘要:异步编程基于实现框架说明偶然间在上看到有赞官方仓库的手把手教你实现与。由于此前用过,对于的洋葱模型叹为观止。文档中是基于扩展进行开发,而对并不友好,向来习惯在下开发的我一鼓作气,将改写并兼容了此项目。 PHP异步编程: 基于 PHP 实(chao)现(xi) NODEJS web框架 KOA 说明 偶然间在 GITHUB 上看到有赞官方仓库的 手把手教你实现co与Koa 。由于此前用过...

    freewolf 评论0 收藏0
  • 一个人,一个月,开发十款小程序,他是怎么做到

    摘要:几个月之内就开发了几十款小程序的开发者陈林,有着自己的解答。资深小程序开发者陈林,是小程序风口下的探索者之一,借助小程序无需安装,易于传播的特点,陈林以小游戏类目为核心,配合小程序间可相互跳转的特性。 showImg(https://segmentfault.com/img/remote/1460000020165110);你是一条产品经理,现在要出一个大型需求的方案,你会怎么做? ...

    muddyway 评论0 收藏0
  • 树莓派4B安装uboot

    摘要:要想放到树莓派上运行,需要官方提供的固件四下载直接下载我们所需的在文件夹中,将其中的复制到卡的分区中之前分区时大小为,格式为的那个,再将编译好的一同复制进去。 2021SC@SDUSC 一、uboot的介绍 1.1、计算机系统的主要部件 (1)计算机系统就是以CPU为核心来运行的系统。典型的...

    izhuhaodev 评论0 收藏0
  • Linux——Linux驱动之设备树编译环境搭建实践总结(设备树、uboot、内核编译及镜像烧写)

    摘要:系列专栏博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来开发实战开发实战嵌入式通用开发实战嵌入式通用开发实战 【系列专栏】:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来! 《QT开发实战》 《嵌入式通用开发实战》 《

    韩冰 评论0 收藏0

发表评论

0条评论

MkkHou

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<