| /* SPDX-License-Identifier: GPL-2.0+ */ |
| /* |
| * Common header file for bootdev, bootflow, bootmeth tests |
| * |
| * Copyright 2021 Google LLC |
| * Written by Simon Glass <sjg@chromium.org> |
| */ |
| |
| #ifndef __bootstd_common_h |
| #define __bootstd_common_h |
| |
| #include <version_string.h> |
| |
| /* Declare a new bootdev test */ |
| #define BOOTSTD_TEST(_name, _flags) \ |
| UNIT_TEST(_name, _flags, bootstd_test) |
| |
| #define NVDATA_START_BLK ((0x400 + 0x400) / MMC_MAX_BLOCK_LEN) |
| #define VERSION_START_BLK ((0x400 + 0x800) / MMC_MAX_BLOCK_LEN) |
| #define TEST_VERSION "U-Boot v2022.04-local2" |
| #define TEST_VERNUM 0x00010002 |
| |
| enum { |
| MAX_HUNTER = 9, |
| MMC_HUNTER = 3, /* ID of MMC hunter */ |
| }; |
| |
| struct unit_test_state; |
| |
| /** |
| * bootstd_test_drop_bootdev_order() - Remove the existing boot order |
| * |
| * Drop the boot order so that all bootdevs are used in their alias order |
| * |
| * @uts: Unit test state to use for ut_assert...() functions |
| */ |
| int bootstd_test_drop_bootdev_order(struct unit_test_state *uts); |
| |
| /** |
| * bootstd_setup_for_tests() - Set up MMC data for VBE tests |
| * |
| * Some data is needed for VBE tests to work. This function sets that up. |
| * |
| * @return 0 if OK, -ve on error |
| */ |
| int bootstd_setup_for_tests(void); |
| |
| /** |
| * bootstd_test_check_mmc_hunter() - Check that the mmc bootdev hunter was used |
| * |
| * @uts: Unit test state to use for ut_assert...() functions |
| * Returns: 0 if OK (used), other value on error (not used) |
| */ |
| int bootstd_test_check_mmc_hunter(struct unit_test_state *uts); |
| |
| /** |
| * bootstd_reset_usb() - Reset the USB subsystem |
| * |
| * Resets USB so that it can be started (and scanning) again. This is useful in |
| * tests which need to use USB. |
| */ |
| void bootstd_reset_usb(void); |
| |
| #endif |