اضافه شدن قابلیت تشخیص حافظه

This commit is contained in:
2026-11-09 21:05:20 +03:30
والد b452fceb82
کامیت 793504fc78
4فایلهای تغییر یافته به همراه64 افزوده شده و 29 حذف شده
+28 -5
مشاهده پرونده
@@ -1,6 +1,29 @@
Place firmware files here and serve this directory as the existing TFTP
server root. Checkout alone does not publish files over TFTP.
The separate `Erase Entire 32 MiB SPI Flash` workflow erases offsets
0x0 through 0x1ffffff, including all firmware and any saved environment.
It requires a successful 32 MiB flash probe, checks the erase/read command
results, and verifies that the first 256 bytes are FF. This sample does
not verify every byte of the flash. No automatic retries are performed.
Every transfer starts with sf probe 0:0. The reported total capacity must
be exactly 16 or 32 MiB; an unknown or ambiguous result stops execution.
The selected offsets and maximum sizes (hex bytes) are:
| File | 16 MiB offset / maximum | 32 MiB offset / maximum |
| --- | --- | --- |
| u-boot-sunxi-with-spl.bin | 0 / 0x100000 | 0 / 0x200000 |
| sun8i-v3s-licheepi-zero-dock.dtb | 0x100000 / 0x10000 | 0x200000 / 0x110000 |
| zImage | 0x110000 / 0x500000 | 0x310000 / 0x500000 |
| rootfs.squashfs | 0x610000 / 0x900000 | 0x810000 / 0x17f0000 |
The 32 MiB layout allocates the remainder of flash to RootFS. These are
selected project layouts, not partition tables read from the chip. DTB
partitions and bootcmd must match the selected layout. A smaller actual
RootFS region can be specified with --rootfs-size; larger overrides fail.
Transfers reset and verify filesize=0 before TFTP, require successful
transfer output and status, and compare the hexadecimal filesize with the
local file and transfer count. First 32 bytes (U-Boot/DTB) or 64 bytes
(Kernel/RootFS) are compared with the local file. Writes are read back at
0x42800000 and compared in full. No automatic erase or retry is performed
in transfer workflows. Flash must be erased before programming as needed.
The separate erase workflow detects capacity and erases the entire chip,
including firmware and saved environment. It verifies only the first 256
bytes as FF, not every byte. No workflow automatically reboots the board.