UM-B-012:创建辅助引导程序

3个帖子/ 0新
最后一篇
vikramtheone.
离线
最后一次露面:4年11个月前
加入:2015-06-12 08:42
UM-B-012:创建辅助引导程序

我正在阅读UM-B-012文档,该文件地址为辅助引导加载程序的创建。

我的问题是关于两件事:
1. UART_SUPPORTED定义和
2. DMA长度。

我的系统有一个外部SPI闪光灯,在那里可以保存我的实际应用。我用SmartSnippet的'SPI Flash Programmer'工具用我的应用程序编程外部从属SPI闪光灯,非常容易。我能够读回闪光灯并查看(0x70,0x50 .....(应用程序代码))。我希望当它启动时,我的sysram将加载此程序。

我正在阅读UM-B-012,了解如何为OTP创建辅助引导加载程序。

大多数很清楚,我想了解什么是:

我已经启用了spi_flash_supported.support_an_b_001定义,但在我的系统中,我也应该启用uart_supported.在bootloader.h中定义。我倾向于不是启用它。但是,如果我这样做,我对我的应用程序更改时如何重新编程SPI闪存,并不支持。

1.因此,通过在禁用UART_SUPPORTED标志中在OTP中拥有自定义引导程序,我仍然能够在将来需要使用SmartSnippets工具重新编程外部SPI Flash?

接下来,DMA长度。
2.在文件的第21页,它表示您必须修复DMA长度。我不知道这个值应该是什么。

任何人都可以在这两个问题上解释更多吗?

谢谢你。

关键词:
设备:
mt_dialog.
离线
最后一次露面:1个月5天前
职员
加入:2015-06-08 11:34
嗨Vikramtheone,

嗨Vikramtheone,

1.将辅助引导加载程序刻录到OTP将通过绕过DA的端口扫描并直接转到SPI闪存,增强您的系统以增强您的系统。如果定义SPI和UART,则会失去该权力化,因为UART将首先扫描(因此您将能够从UART启动并使用SMART绑带刻录SPI),因为SB首先检查UART接口,然后检查spi。

2. DMA字段的值应为1FC0,这意味着32512个字节是OTP区域的总大小。在DA从深度睡眠中唤醒后,OTP中的自定义代码区域将全部复制到系统RAM。

谢谢mt_dialog.

Joacimwe.
离线
最后一次露面:1年4个月前
格鲁鲁
加入:2014-01-14 06:45
你想要的目的是什么?

刻录二次引导加载程序后,您希望能够在闪光启动器后使用SmartSnippet重新编程代码的目的是什么?辅助引导加载程序仅用于用于生产。如果您在OTP标头中禁用它,您仍然可以使用JTAG附加到您的设备。更新固件的另一种方法是使用Suota。如果您真的希望能够启动UART,您应该启用UART_SUPOSTED。

DMA字段包含OTP的有多少单词将被复制到SYSRAM。1FC0表示整个应用区域。为了优化将OTP复制到Sysram所需的时间,应将其设置为存储在OTP中的固件的大小,在这种情况下,辅助引导程序(字节数除以四个圆形的字节数)。复制的时间非常快,因此如果您不打扰设置正确的大小,您可以始终设置1FC0。