This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我正在尝试通过 USB 引导 AM335x (BeagleBone Black)。 我按照 BeagleBone Black wiki 上的 Sitara Linux 编程 eMMC 中的说明进行操作。 我不像 wiki 所描述的那样在电路板上使用 U-Boot、而是尝试从网络中最初加载引导 ROM。
第一次尝试时、我只看到端子上反复打印"C"。 我把所有东西都关了,把它们都装回了,然后又试了一次。 然后、我看到 U-Boot SPL 输出:
这些信息非常有用。 我会得到这种结果的几天。 然后、我偶尔会再次获得'CCCC'。 现在我只得到 C 语言!
我在论坛和文档中可以找到的有关'CCCC'的所有信息似乎都涉及 UART 加载。 是这样吗?
这些 cs 在 BOOTP 的上下文中意味着什么? 当我看到良好的串行输出和看到'CCCCC'时、我可以在 Wireshark 上看到相同的流量(我可以告诉我的)。
不过、CS 可能是引导 ROM 通过 USB0并移至 UART0进行引导(SYSBOOT 引脚配置中的第4个配置和最后一个配置)的结果。
这些重复的 Cs 在这里意味着什么? 无需上传图片。 看起来像这样:CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
我不确定这是否与阻止我一直刷写操作系统映像的任何问题有关。 现在、我可以看到 SPL 已经 tftp 了、但之后一切都是分开的。。。
谢谢!
[引用 user="Jared Marmens"]我找不到任何关于终端上 C 的含义的说明。 [/引用]我认为当 UART0处于引导序列时、每次尝试从 UART 进行引导时、引导 ROM 都会向 UART 输出"C"。 终端上的'C'流意味着引导 ROM 在引导序列周围循环、因此无法从任何源引导-请参阅 器件处于活动状态
如果您有可用的 JTAG、则有一个 AM335x-boot.dss 脚本用于 分析 CCS 和 JTAG 的引导问题 、这有助于找到引导不起作用的原因。
谢谢切斯特! 我(以某种方式)找不到您链接的 wiki 页面。 从该页面:
"如果您将 UART 电缆连接到调试端口(该端口应连接到 UART0)、则应在终端窗口(如 Teraterm)上看到稳定的"C"字符输出流。 这意味着 ROM 正在执行并正在尝试引导。 如果您看到这一点、您可以继续下一部分。 请注意、只有在引导序列中的 UART0时、您才会看到此输出。"
使用 BeagleBone Black、我有两个可用序列:
按下 S2按钮后、USB0位于 UART 之前。
我仍然不明白为什么有时在我的初始帖子中看到屏幕截图、而其他时间看到'C'。
也许当我看到 C 语言时、USB 无法加载 SPL 并转移到 UART?
这可能是有道理的。 到目前为止、我认为上面看到的终端输出来自 Sitara 上的公共引导 ROM。 现在我再看一下它、它显然是从"U-boot SPL"行开始的。 终端输出可能来自 SPL 工作状态。 我最初看到的 C 是因为我在路上的某个地方遇到了问题、并且 SPL 从未通过 USB 加载过、因此接下来出现 UART、我看到 C。 然后、我将 SPL 传输并加载一段时间、因此我将看到 U-Boot SPL 控制台输出。 为了解决我认为必须是网络设置问题的问题、阻止 SPL 获取和加载 U-Boot 映像、我在 Linux 服务器上进行了一些更改、 这可能会破坏 SPL tftp 并加载、从而使序列进入 UART 并再次显示'C'。
这并不能完全解释我认为我通过 Wireshark 在 USB 网络上看到的内容、但这肯定是我拥有的最好的理论。 我将返回到我的初始配置、看看我是否可以再次获得 U-Boot SPL 终端输出。
感谢您的帮助!