Files
skills-win/petalinux-emmc/references/ipots.md
T
2026-10-28 14:52:42 +08:00

35 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ipots:QSPI 启动 + 核心板 eMMC(SD1)正式系统 profile(intake 版)
状态:**仅资料汇总(revision ipots-intake-20261027),正式系统从未构建/部署,E0–E4 全部未做。** 依据 ipots_recX10 工程
`Notes/Task-PR00.md` §8.4/§8.5、HDF `ipots_recX10_xc7z020_v0.1_d20261027_b0002.hdf` 的 design_1.hwh,以及
`Notes/auto/20261027-1705-rx-pl-ps-build/R02-T5-*`(QSPI 过渡系统首个构建)。标 **UNKNOWN** 的项目必须先在对应门禁实测,
不能拿来做擦写;不得借用 HJX9009 的 MIO、分区、CD 旁路或桥接方案。指纹输入用 [ipots-profile.json](ipots-profile.json)。
## 硬件与启动
- XC7Z020CLG400-2;ipots_tunerX10 载板 + 启明星 ZYNQ7020 核心板 2V5。DDR3 1 GiB,HDF 用替代型号 MT41K256M16,板上实为
NT5CC256M16,稳定性 **UNKNOWN**(首次启动和内存测试时验证)。
- BootROM 介质:单片 W25Q256FV(32 MiB,MIO1..6)。SW1 拨码 → MIO4/MIO5,文档写 QSPI=ON/OFF;拨码与 BOOT_MODE 的对应关系
**UNKNOWN**(读 `0xF800025C` 确认)。BootROM 能否直接从 eMMC 启动 **UNKNOWN**,本方案不依赖这一点。
- QSPI 过渡布局(petalinux-qspi `ipots-profile.json` rev 1):boot 0x0/0x400000、bootenv 0x400000/0x40000、
kernel(救援 FIT)0x440000/0x1800000、update 0x1C40000/0x3C0000。E3 不得清空 bootenv,也不得覆盖救援 FIT。
0x01000000 以上地址的访问能力 **UNKNOWN**(QSPI G5 做全长回读后才算确认)。
- 正式存储:核心板焊接 eMMC KLM8G1GETF 8 GB,接 PS SD1(`sdhci1`,0xE0101000),MIO46=CLK、47=CMD、48..51=DAT0..3,
4 bit,**无 CD、无 WP、无电源使能**。SD0(MIO40..45)没有卡座,已在 HDF 中禁用。
DT 意图:`&sdhci1 { status="okay"; non-removable; disable-wp; bus-width=<4>; max-frequency=<25000000>; no-1-8-v; }`
——与 HJX9009 相反,这里**应当**声明 non-removable。25 MHz 是保守取值,不是实测上限;VCCQ 电压 **UNKNOWN**。
- U-Boot 在 Linux 之前能否读 SD1 **UNKNOWN**,属 E0 必测项(R02-T5 构建的 DT 设 `aliases { mmc0 = &sdhci1; }`,U-Boot 编号以 `mmc list` 实测为准,不预设 dev 0/1)。
Linux 块设备名不预设,一律按 CID/容量识别。eMMC 当前内容 **UNKNOWN**,格式化须用户单独授权。
- 串口:PS UART0 MIO14/15 → J601,115200。JTAG:J600(IDC14 2.0 mm)。上位机适配器和电源控制 **UNKNOWN**。
- 网络:GEM0 + YT8521SC-CA,MDIO 地址 3,RGMII。4.14 内核没有 Motorcomm 驱动,暂用 generic PHY 加 `rgmii-id`,
实际延时行为 **UNKNOWN**。
## 驱动门禁(recx10_server)
- PL AXI MMIO:`axil_regs_0` 位于 M_AXI_GP0 的 0x43C00000,大小 64 KiB。DT 中的 PL 节点 compatible 改成 `generic-uio`,
应用经 `/dev/mem` 访问(`CONFIG_STRICT_DEVMEM` 关闭)。本设计没有 DDR 邮箱,不需要 `reserved-memory`。
- PL 由 Linux FPGA manager 在运行时加载(`CONFIG_FPGA_MGR_ZYNQ_FPGA`)。**PL 加载前访问 GP0 会挂死总线**,所以启动脚本必须先加载
PL,再读 `ID_VER`。
- EMIO GPIO 8 位:只镜像 GPIO_DBG,PS 写 GPIO 对 PL 没有作用。
- 正式系统的 BOOT.BIN = FSBL + U-Boot(与 QSPI 过渡系统来自同一 HDF),PL bit 和 FIT 都不放进 BOOT.BIN。