1128847_zh-CN

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

1128847_zh-CN

1128847_zh-CN

LPC177x_8x u-boot端口<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

该项目解释了如何使用 LPC177x_8x 设备为平台构建和部署 u-boot。要构建 u-boot,您需要运行 Linux 操作系统的系统、适用于 Linux 操作系统的最新 CodeSourcery GNU 工具、u-boot 源代码以及适用于 LPC1788 的 u-boot 补丁。

已实现的功能
--------------------------------------------------------------------------------
支持带有 32 位 DRAM(32MB)的 EA1788 主板
支持EA1788板的NAND FLASH
支持LPC177x_8x内部FLASH
以太网支持
有限的 MPU 支持

u-boot 已知问题
--------------------------------------------------------------------------------
问题:“重置”命令导致电路板崩溃
解决方法:改用“cmreset”命令

问题:“boot”命令导致主板崩溃
解决方法:使用环境变量和 go 命令编写脚本

问题:bootvx 命令导致主板崩溃
解决方法:无,但没有理由使用此命令

未实现的功能
--------------------------------------------------------------------------------
FLASH“保护”命令和功能未实现(易于实现)
未实现中断/NVIC 支持(易于实现)

可能的改进
--------------------------------------------------------------------------------
Systick 可以代替 LPC1788 匹配定时器
重定位代码已被“绕过”,并且未正确实施
针对设备特定 IRQ 的宏文件,即需要包含弱链接
在启动文件中(特定于架构的设备覆盖)
有一个基本的 MPU 驱动程序,似乎可以工作,但可以改进
以太网驱动程序和 PHY 设置是“特定于板的”,但可以移动
到驱动程序区域,可以使用通用 PHY 支持

u-boot 启动操作概述
--------------------------------------------------------------------------------
以下是 u-boot 如何在 LPC1788 上启动的概述。
- LPC1788 启动 ROM 将控制权转移到内部 FLASH 中的 u-boot 代码
每个 CM3 启动过程的地址 0x0
- u-boot 代码首先设置 MPU
- 引脚复用、时钟和 DRAM 均已初始化
- 代码和数据从 FLASH 迁移到 DRAM
- DRAM 中的 BSS 段被清除
- 控制权转移到 DRAM 中的 u-boot 代码
- 调用 u-boot board_init_f() 进行初始 u-boot 设置
- board_init_r() 用于稍后的 u-boot 设置
- u-boot 在 DRAM 之外正常运行

移植文件的位置
--------------------------------------------------------------------------------
arch/arm/cpu/cortex-m3 - Cortex M3 特定文件(mpu、启动等)
arch/arm/cpu/cortex-m3/lpc1788 - LPC1788 特定文件(计时器、串行等)
arch/arm/include/asm/arch-cortex-m3 - Cortex M3 头文件
arch/arm/include/asm/arch-lpc17xx - LPC177x_8x 特定的头文件
board/nxp - 使用 NXP 设备的电路板专用区域
board/nxp/ea1788 - EA1788 板特定文件(设置、nand 等)
include/configs/ea1788.h - EA1788 板特定配置文件

タグ(1)
評価なし
バージョン履歴
最終更新日:
‎11-19-2025 05:48 AM
更新者: