NAND闪存& MDT partiton - uboot - Atmel SAMA5D3 Xplained板

时间:2015-09-28 11:48:42

标签: linux u-boot buildroot

我在下面的doc embedded-linux-labs.pdf中找到了第27页的问题 http://free-electrons.com/doc/training/embedded-linux/embedded-linux-labs.pdf

参见附图。使用的板是Atmel SAMA5D3 Xplained板。

在图中,UBI用于进入MDT分区。

以下是否也涉及单个MDT分区: -
AT91Bootstrap,U-Boot,U-Boot env& U-Boot env backup

或者这些(AT91Bootstrap,U-Boot,U-Boot env和U-Boot env备份)也会在预定位置进入NAND Flash而不是MDT分区?

rom代码如何知道从NAND闪存加载的AT91Bootstrap的大小。

ROM代码将如何发展 enter image description here

1 个答案:

答案 0 :(得分:0)

您必须按照本文档中的指示将每个部分放入NAND中。我不熟悉他们的想法,但据我了解你已经有了UBI分区,你必须使用AT91 + U-boot + env + env-backup创建额外的分区。然后将其闪存到NAND中。因此,您的问题的答案是肯定的(AT91Bootstrap,U-Boot,U-Boot env和U-Boot env备份)转到NAND。通常,嵌入式系统使用NAND来存储第一个引导加载程序,第二个引导加载程序,以及ENV,内核和dtb文件。

关于尺码: 当您创建AT91Bootstrap时,您必须(或某些脚本)添加有效的“魔术”标头。在你的情况下,它被称为“有效代码”。内部引导加载程序读取它(我的意思是它读取几个第一个字节或一个页面;它取决于您使用的内存类型),解析它并从那里获取有关引导过程的详细信息,包括AT91Bootstrap数据的大小。 您可以从此链接(页68)中找到有关此过程的详细信息 http://www.atmel.com/Images/Atmel-11121-32-bit-Cortex-A5-Microcontroller-SAMA5D3_Datasheet.pdf