u-boot/doc
Simon Glass 0e4b697f88 test: Make a copy of the device tree before running a test
When the flat device tree changes it can mess up the live tree since that
uses the flat tree for its strings. This affects only a few sandbox tests
which modify the device tree, but the number will grow as ofnode support
for writing improves.

While the control FDT is not intended to change while U-Boot is running,
some tests do so. For example, the ofnode interface only supports
modifying properties in the control FDT, so tests must use that.

To solve this problem, keep a copy of the FDT and restore it as needed
when the test is finished. The copy only happens on sandbox (except SPL
builds), to reduce memory usage and because these tests are not useful on
other boards. For other boards, a checksum is taken to ensure that nothing
changes.

It would be possible to always checksum the FDT on sandbox and only
restore it if needed, but this is slightly slower than restoring it every
time, at least with crc8.

Move the code which checks for success to the very end, for clarity.

Signed-off-by: Simon Glass <sjg@chromium.org>
2022-09-29 16:09:56 -04:00
..
SPI
SPL net: Rename SPL_NET_SUPPORT to SPL_NET 2021-09-04 12:48:53 -04:00
android Create a new boot/ directory 2021-11-11 19:01:56 -05:00
api linker_lists: Rename sections to remove . prefix 2022-06-23 12:58:18 -04:00
arch configs: Remove a number of unreferenced CONFIG options. 2022-08-04 16:18:47 -04:00
board Merge branch 'master' into next 2022-09-19 16:07:12 -04:00
build Makefile: Allow LTO to be disabled for a build 2022-09-02 16:20:11 -04:00
chromium doc: Update documentation for cros-2021.04 release 2021-07-15 19:50:28 +08:00
develop test: Make a copy of the device tree before running a test 2022-09-29 16:09:56 -04:00
device-tree-bindings Merge branch 'master' into next 2022-09-19 16:07:12 -04:00
imx mx8m: csf.sh: Fix the calculation of fit_block_size 2022-09-21 16:19:45 +02:00
media
mvebu WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
sphinx doc: update doc/sphinx/requirements.txt 2022-03-25 08:59:49 -04:00
sphinx-static
uImage.FIT treewide: Drop image_header_t typedef 2022-09-29 16:07:57 -04:00
usage blk: Rename if_type to uclass_id 2022-09-25 08:30:05 -06:00
.gitignore
I2C_Edge_Conditions
Makefile doc: Build documentation in parallel 2022-08-26 16:32:59 -06:00
README.Heterogeneous-SoCs
README.JFFS2
README.JFFS2_NAND
README.LED
README.OFT
README.POST
README.SNTP
README.TPL
README.VLAN
README.VSC3316-3308
README.arm-caches
README.arm-relocation
README.armada-secureboot
README.asn1
README.atmel_mci
README.atmel_pmecc
README.autoboot
README.bcm7xxx
README.bcmns3
README.bitbangMII
README.bootcount bootcount: clarify documentation 2022-03-23 07:27:38 +01:00
README.boston
README.bus_vcxk
README.cfi
README.commands.itest
README.commands.spl WS cleanup: remove SPACE(s) followed by TAB 2021-09-30 09:08:16 -04:00
README.console
README.davinci
README.davinci.nand_spl
README.dfutftp WS cleanup: remove excessive empty lines 2021-09-30 08:08:56 -04:00
README.displaying-bmps
README.dns
README.enetaddr
README.esbc_validate
README.ext4
README.falcon WS cleanup: remove SPACE(s) followed by TAB 2021-09-30 09:08:16 -04:00
README.fec_mxc net: fec_mxc: Drop CONFIG_FEC_XCV_TYPE 2022-03-18 12:48:17 -04:00
README.fsl-ddr
README.fsl-dpaa
README.fsl-esdhc
README.fsl-hwconfig
README.fsl-trustzone-components
README.fsl_iim
README.fuse
README.generic-board
README.generic_usb_ohci usb: ohci-hcd: Remove some unused legacy code 2022-07-07 09:29:08 -04:00
README.gpio
README.gpt cmd: gpt: Add option to write GPT partitions to environment variable 2021-05-04 12:52:46 -04:00
README.hwconfig
README.i2c
README.iomux
README.kconfig Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support"" 2022-08-05 11:47:56 -04:00
README.kwbimage
README.link-local
README.malta
README.marvell
README.mediatek
README.memory-test
README.mpc83xx.ddrecc
README.mpc83xxads
README.mpc85xx powerpc: mpc85xx: Rename _start_e500 symbol to _start 2022-04-26 17:18:39 +05:30
README.mpc85xx-sd-spi-boot Fix URLs to old freescale git repos 2022-03-28 08:22:17 -04:00
README.mpc85xx-spin-table
README.mpc85xxcds
README.multi-dtb-fit
README.mxc_ocotp
README.nand Convert CONFIG_NAND_OMAP_ECCSCHEME to Kconfig 2021-10-06 09:16:24 -04:00
README.odroid WS cleanup: remove SPACE(s) followed by TAB 2021-09-30 09:08:16 -04:00
README.omap-ulpi-viewport
README.omap3
README.pblimage ppc: Remove corenet_ds boards 2022-08-20 21:18:15 -04:00
README.pcap WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
README.power-framework
README.pxe cmd: pxe_utils: sysboot: add kaslr-seed generation support 2022-02-11 09:00:47 -05:00
README.ramboot-ppc85xx
README.rmobile
README.rockchip doc: rockchip: puma: update build and flash instructions 2021-12-24 14:53:31 +08:00
README.rockusb
README.s5p4418
README.s5pc1xx
README.sata
README.sched
README.scrapyard
README.serial_multi
README.sha1
README.silent
README.socfpga
README.splashprepare
README.srio-pcie-boot-corenet
README.standalone nds32: Remove the architecture 2022-04-25 16:04:05 -04:00
README.t1040-l2switch
README.tee
README.ti-secure
README.ubi
README.ubispl
README.ublimage
README.udp
README.unaligned-memory-access.txt
README.uniphier
README.update
README.usb usb: doc: Fix spelling issues in README.usb 2021-11-15 14:33:33 -05:00
README.vf610
README.video
README.watchdog nds32: Remove the architecture 2022-04-25 16:04:05 -04:00
README.zfs
bounces
conf.py doc: fix Latex margins 2021-08-14 20:54:41 +02:00
dumpimage.1 doc: Add man page for dumpimage 2022-07-13 20:05:49 +02:00
feature-removal-schedule.txt
git-mailrc git-mailrc: remove invalid entry 'efi' 2022-08-13 11:09:48 +02:00
index.rst doc: move i.MX7D/i.MX8MM A/B booting to board specific 2021-08-17 17:24:07 +02:00
kwboot.1 treewide: Fix Marek's name and change my e-mail address 2022-07-21 10:14:04 +02:00
mkeficapsule.1 mkeficapsule: Remove raw and FIT GUID types 2022-04-15 10:43:18 +02:00
mkimage.1 doc: mkimage: Further document -o and -R 2022-07-13 20:05:49 +02:00

README.zfs

This patch series adds support for ZFS listing and load to u-boot.

To Enable zfs ls and load commands, modify the board specific config file with
#define CONFIG_CMD_ZFS

Steps to test:

1. After applying the patch, zfs specific commands can be seen
   in the boot loader prompt using
	UBOOT #help

	zfsload- load binary file from a ZFS file system
	zfsls  - list files in a directory (default /)

2. To list the files in zfs pool, device or partition, execute
	zfsls <interface> <dev[:part]> [POOL/@/dir/file]
	For example:
	UBOOT #zfsls mmc 0:5 /rpool/@/usr/bin/

3. To read and load a file from an ZFS formatted partition to RAM, execute
	zfsload <interface> <dev[:part]> [addr] [filename] [bytes]
	For example:
	UBOOT #zfsload mmc 2:2 0x30007fc0 /rpool/@/boot/uImage

References :
	-- ZFS GRUB sources from Solaris GRUB-0.97
	-- GRUB Bazaar repository

Jorgen Lundman <lundman at lundman.net> 2012.