u-boot/test/dm
Tom Rini 8cfac237b9 Merge branch '2022-04-25-initial-implementation-of-stdboot'
To quote the author:
The bootflow feature provide a built-in way for U-Boot to automatically
boot an Operating System without custom scripting and other customisation.
This is called 'standard boot' since it provides a standard way for
U-Boot to boot a distro, without scripting.

It introduces the following concepts:

   - bootdev - a device which can hold a distro
   - bootmeth - a method to scan a bootdev to find bootflows (owned by
                U-Boot)
   - bootflow - a description of how to boot (owned by the distro)

This series provides an implementation of these, enabled to scan for
bootflows from MMC, USB and Ethernet. It supports the existing distro
boot as well as the EFI loader flow (bootefi/bootmgr). It works
similiarly to the existing script-based approach, but is native to
U-Boot.

With this we can boot on a Raspberry Pi 3 with just one command:

   bootflow scan -lb

which means to scan, listing (-l) each bootflow and trying to boot each
one (-b). The final patch shows this.

With a standard way to identify boot devices, booting become easier. It
also should be possible to support U-Boot scripts, for backwards
compatibility only.

...

The design is described in these two documents:

https://drive.google.com/file/d/1ggW0KJpUOR__vBkj3l61L2dav4ZkNC12/view?usp=sharing

https://drive.google.com/file/d/1kTrflO9vvGlKp-ZH_jlgb9TY3WYG6FF9/view?usp=sharing
2022-04-25 16:02:27 -04:00
..
acpi.c acpi: Tidy up the table list 2022-01-25 11:44:36 -07:00
acpi.h doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
acpi_dp.c dm: acpi: Use correct GPIO polarity type in acpi_dp_add_gpio() 2020-09-25 11:27:14 +08:00
acpigen.c acpi: Add more support for generating processor tables 2020-09-25 11:27:18 +08:00
adc.c dm: treewide: Rename 'platdata' variables to just 'plat' 2020-12-13 16:51:08 -07:00
audio.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
axi.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
blk.c test: dm: Restart USB before assuming it is stopped 2022-04-25 10:00:03 -04:00
bootcount.c bootcount: add a new driver with syscon as backend 2021-08-22 11:04:52 +02:00
bus.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
button.c test: add a simple test for the adc-keys button driver 2021-02-18 11:37:26 +01:00
cache.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
clk.c clk: add clk_round_rate() 2021-01-12 10:58:04 +05:30
clk_ccf.c clk: do not disable clock if it is critical 2020-09-22 11:27:18 +03:00
core.c dm: core: Allow finding a uclass device by partial name 2022-04-25 10:00:03 -04:00
cpu.c sandbox: correct cpu nodes 2021-09-25 09:46:15 -06:00
cros_ec.c cros_ec: Add vstore support 2021-01-30 14:25:41 -07:00
cros_ec_pwm.c sandbox: cros-ec: Add tests for the Chromium OS EC PWM driver 2021-07-06 10:38:03 -06:00
devres.c dm: treewide: Rename ofdata_to_platdata() to of_to_plat() 2020-12-13 16:51:09 -07:00
dma.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
dsa.c net: update NXP copyright text 2021-09-28 18:50:56 +03:00
dsi_host.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
ecdsa.c test: dm: Add test for ECDSA UCLASS support 2021-08-16 10:49:35 +02:00
efi_media.c efi: Add uclass for devices provided by UEFI firmware 2021-12-09 11:43:25 -08:00
eth.c sandbox: Add a DSA sandbox driver and unit test 2021-04-15 14:22:17 +05:30
fastboot.c test: fastboot: Avoid using mmc1 2022-04-25 10:00:03 -04:00
fdtdec.c fdtdec: Support reserved-memory flags 2021-10-13 14:18:30 -07:00
firmware.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
gpio.c gpio: Add a way to read 3-way strapping pins 2021-03-03 15:40:47 -05:00
hwspinlock.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
i2c.c i2c: add dm_i2c_reg_clrset 2021-08-22 10:52:53 +02:00
i2s.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
iommu.c test: Add tests for IOMMU uclass 2021-10-31 08:46:44 -04:00
irq.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
k210_pll.c k210: use the board vendor name rather than the marketing name 2022-03-15 17:43:11 +08:00
Kconfig test: Move the unit tests to their own menu 2015-05-21 09:16:17 -04:00
led.c test: dm: Test for default led naming 2020-10-08 11:42:36 -04:00
mailbox.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
Makefile test: dm: add tests for tag support 2022-04-23 22:05:34 +02:00
mdio.c treewide: use dm_mdio_read/write/reset() wrappers 2022-04-10 08:44:12 +03:00
mdio_mux.c treewide: use dm_mdio_read/write/reset() wrappers 2022-04-10 08:44:12 +03:00
misc.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
mmc.c mmc: sandbox: Add support for writing 2021-02-26 15:30:55 +01:00
mux-cmd.c test: mux-cmd: Add tests for the 'mux' command 2020-10-28 11:49:31 -04:00
mux-emul.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
mux-mmio.c test: Add tests for the multiplexer framework 2020-10-28 11:49:31 -04:00
nop.c cmd: bind: Fix driver binding on a device 2021-10-12 14:19:52 +02:00
of_extra.c test: dm: Add a case to test ofnode_phy_is_fixed_link() 2021-04-15 14:22:17 +05:30
of_platdata.c doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
ofnode.c net: introduce helpers to get PHY interface mode from a device/ofnode 2022-04-10 08:44:12 +03:00
ofread.c dm: treewide: Rename 'platdata' variables to just 'plat' 2020-12-13 16:51:08 -07:00
osd.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
p2sb.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
panel.c sandbox: cros-ec: Add tests for the Chromium OS EC PWM driver 2021-07-06 10:38:03 -06:00
part.c part: Add check for NULL dev_part_str 2021-05-26 17:26:07 -04:00
pch.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
pci.c dm: Fix OF_BAD_ADDR definition 2022-01-25 12:36:10 -07:00
pci_ep.c WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
phy.c phy: Track power-on and init counts in uclass 2022-01-14 14:36:57 -05:00
phys2bus.c dm: test: Add test case for dev_phys_to_bus()/dev_bus_to_phys() 2021-02-18 11:56:25 +01:00
pinmux.c test: pinmux: add test for 'pinctrl-single' driver 2021-04-12 11:17:15 +05:30
pmc.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
pmic.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
power-domain.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
pwm.c sandbox: cros-ec: Add tests for the Chromium OS EC PWM driver 2021-07-06 10:38:03 -06:00
qfw.c test: qemu: add qfw sandbox driver, dm tests, qemu tests 2021-04-12 17:45:39 -04:00
ram.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
read.c dm: test: Add test case for dev_get_dma_ranges() 2021-02-18 11:56:25 +01:00
reboot-mode.c reboot-mode: read the boot mode from RTC memory 2021-07-23 10:16:39 -04:00
regmap.c test: Avoid random numbers in dm_test_devm_regmap() 2021-05-24 14:21:30 -04:00
regulator.c dm: treewide: Rename 'platdata' variables to just 'plat' 2020-12-13 16:51:08 -07:00
remoteproc.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
reset.c test: reset: Extend base reset test to catch error 2021-04-27 08:07:05 -04:00
rng.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
rtc.c display_options: Drop two spaces before the ASCII column 2021-06-08 11:39:09 -04:00
scmi.c firmware: scmi: fix sandbox and related tests for clock discovery 2022-03-02 17:42:06 -05:00
serial.c test: serial: Add test for putc/puts 2022-04-14 15:39:15 -04:00
sf.c sf: Support querying write-protect 2021-03-27 15:04:31 +13:00
simple-bus.c test: dm: Add a test case for simple-bus <ranges> 2021-04-15 14:22:17 +05:30
simple-pm-bus.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
smem.c WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
soc.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
sound.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
spi.c test: dm: spi: Add testcase for spi_claim_bus() 2020-12-22 20:39:26 -07:00
spmi.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
syscon-reset.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
syscon.c dm: Rename DM test flags to make them more generic 2020-08-07 22:31:32 -04:00
sysinfo-gpio.c test: Add gpio-sysinfo test 2021-05-04 07:57:18 -04:00
sysinfo.c sysinfo: Require that sysinfo_detect be called before other methods 2021-05-04 07:57:18 -04:00
sysreset.c test: adjust sysreset tests 2020-11-05 09:11:30 -07:00
tag.c test: dm: add tests for tag support 2022-04-23 22:05:34 +02:00
tee.c test: dm: tee: extend with RPC test 2021-02-16 11:48:20 -05:00
test-dm.c doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
test-driver.c test: Use a local variable for test state 2021-03-12 09:57:30 -05:00
test-fdt.c dm: Fix OF_BAD_ADDR definition 2022-01-25 12:36:10 -07:00
test-uclass.c test: Use a local variable for test state 2021-03-12 09:57:30 -05:00
timer.c sandbox: correct cpu nodes 2021-09-25 09:46:15 -06:00
usb.c common: rename getc() to getchar() 2020-10-22 09:54:53 -04:00
video.c doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
virtio.c dm: core: Avoid partially removing devices 2021-02-03 03:38:41 -07:00
wdt.c sandbox: add test of wdt-uclass' watchdog_reset() 2021-08-31 12:04:03 +02:00