summaryrefslogtreecommitdiff
path: root/boot
AgeCommit message (Collapse)Author
2023-10-02Merge branch 'next'Tom Rini
Signed-off-by: Tom Rini <[email protected]>
2023-09-22bootstd: Keep track of use of usb stopSimon Glass
When 'usb stop' is run, doing 'bootflow scan' does not run the USB hunter again so does not see any devices. Fix this by telling bootstd about the state of USB. Signed-off-by: Simon Glass <[email protected]>
2023-09-22x86: pxeboot: bugfix: Set variable for size of initrdThomas Mittelstaedt
The problem was, that zboot() didn't work because of missing ramdisc size. Signed-off-by: Thomas Mittelstaedt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-09-20tools: mkimage: Add StarFive SPL image supportHeinrich Schuchardt
The StarFive JH7110 base boards require a header to be prefixed to the SPL binary image. This has previously done with a vendor tool 'spl_tool' published under a GPL-2-or-later license. Integrate this capability into mkimage. Signed-off-by: Heinrich Schuchardt <[email protected]> Tested-by: Chanho Park <[email protected]> Tested-by: Milan P. Stanić <[email protected]>
2023-09-19boot: Join ARCH_FIXUP_FDT_MEMORY with related optionsSimon Glass
Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-09-19boot: Drop CMD_MTDPARTS condition for FDT_FIXUP_PARTITIONSSimon Glass
This is not needed, so drop it. Also use a capital 'O' for the option, while we are here. Signed-off-by: Simon Glass <[email protected]> Suggested-by: Tom Rini <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-09-19boot: Join FDT_FIXUP_PARTITIONS with related optionsSimon Glass
Move this to be with the other devicetree-fixup options. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-09-19Make ARCH_FIXUP_FDT_MEMORY depend on OF_LIBFDTSimon Glass
We need CONFIG_OF_LIBFDT to be able to do fdt fixups, so add that condition. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-09-19Mark DISTRO_DEFAULTS as deprecatedSimon Glass
Standard boot has been in place for a while now. Quite a few problems have been found and fixed. It seems like a good time to mark the script-based approach as deprecated and encourage people to use standard boot. Update the DISTRO_DEFAULTS Kconfig to encourage people to move to standard boot, which is able to boot Linux distributions automatically. Add a short migration guide to make this easier. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-09-19Kconfig: Move TEXT_BASE et al under general setupSimon Glass
These don't relate to booting. Move them out of there and into the same place as the other related settings. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-09-19boot: Make standard boot a menuSimon Glass
Collect these options into a menu for easier viewing. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-09-19Kconfig: Move SPL_FIT under FITSimon Glass
This option already depends on FIT, so put it under the same umbrella, so that it appears in the FIT menu. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-09-19spl: Drop SPL/TPL_RAM_SUPPORT option for SPL_LOAD_FIT_ADDRESSSimon Glass
All boards which actually define this address enable SPL_LOAD_FIT, or at least just rely on the default value of 0. So drop the dependency. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-09-19Kconfig: Create a menu for FITSimon Glass
This is a major feature with a lot of options. Give it its own menu to tidy up the 'make menuconfig' display. Drop the 'depends on FIT' pieces which are now unnecessary, since they are now bracketed by an 'if FIT'. Leave CONFIG_TIMESTAMP out since it affects legacy images too. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-09-19boot: Rename Android-boot textSimon Glass
Phrases like 'Enable support for' are pointless since this is an option which enables things. Drop that part so it is easier to follow. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-09-19boot: Move some other fdt-fixup options to the same menuSimon Glass
Move more options relating to fixing up a device tree into the new devicetree-fixup menu. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-09-19Move fdt_simplefb to boot/Simon Glass
This relates to booting, so move it there. Create a new Kconfig menu for things related to devicetree fixup. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-09-19boot: Move fdt_support to boot/Simon Glass
This relates to booting since it fixes up the devicetree for the OS. Move it into the boot/ directory. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-09-16expo: Fix documentation referenceMassimo Pegorer
Fix typo: doc/develop/expo.rst instead of doc/developer/expo.rst Signed-off-by: Massimo Pegorer <[email protected]> Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2023-09-14image: Remove unused NEEDS_MANUAL_RELOC code bitsMarek Vasut
The last user of the NEEDS_MANUAL_RELOC has been removed in commit 26af162ac8f8 ("arch: m68k: Implement relocation") Remove now unused NEEDS_MANUAL_RELOC code. Signed-off-by: Marek Vasut <[email protected]>
2023-09-14boot: Remove unused NEEDS_MANUAL_RELOC code bitsMarek Vasut
The last user of the NEEDS_MANUAL_RELOC has been removed in commit 26af162ac8f8 ("arch: m68k: Implement relocation") Remove now unused NEEDS_MANUAL_RELOC code. Signed-off-by: Marek Vasut <[email protected]>
2023-09-04Merge tag 'v2023.10-rc4' into nextTom Rini
Prepare v2023.10-rc4
2023-08-31event: Rename EVENT_SPY to EVENT_SPY_FULLSimon Glass
The new name makes it clearer that this is for a full spy, with access to the context and the event data. Signed-off-by: Simon Glass <[email protected]>
2023-08-28bootstd: Adjust the default bootmeth orderSimon Glass
The existing distro scripts check extlinux and scripts before EFI. Adjust the default ordering to do the same, to avoid breaking existing flows. Add some documentation, mentioning that this order will likely change in future. Signed-off-by: Simon Glass <[email protected]> Reported-by: Da Xue <[email protected]>
2023-08-28boot: Fix reference to bootmenu docPeter Robinson
The Kconfig references a readme file that's moved and converted to rst so update the reference. Signed-off-by: Peter Robinson <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-08-26bootstd: cros: Allow detection of any kernel partitionSimon Glass
The existing ChromiumOS bootmeth only supports reading a single kernel partition, either 2 or 4. In fact there are normally two options available. Use the GUID to detect kernel partitions, with the BOOTMETHF_ANY_PART flag, so that bootstd does not require a valid filesystem before calling the bootmeth. Tidy up and improve the logging while we are here. Signed-off-by: Simon Glass <[email protected]> Suggested-by: Alper Nebi Yasak <[email protected]> [trini: Add missing select of PARTITION_TYPE_GUID] Signed-off-by: Tom Rini <[email protected]>
2023-08-25bootstd: Support bootmeths which can scan any partitionSimon Glass
Some bootmeths support scanning a partition without a filesystem on it. Add a flag to support this. This will allow the ChromiumOS bootmeth to find kernel partition, which are stored in a special format, without a filesystem. Signed-off-by: Simon Glass <[email protected]>
2023-08-25part: Add an accessor for struct disk_partition sys_indSimon Glass
This field is only present when a CONFIG is set. To avoid annoying #ifdefs in the source code, add an accessor. Update the only usage. Note that the accessor is optional. It can be omitted if it is known that the option is enabled. Signed-off-by: Simon Glass <[email protected]>
2023-08-25expo: cedit: Support reading settings from CMOS RAMSimon Glass
Add a command to read edit settings from CMOS RAM, using the cedit definition to indicate which registers and bits are used. Signed-off-by: Simon Glass <[email protected]>
2023-08-25expo: cedit: Support writing settings to CMOS RAMSimon Glass
Add a command to write cedit settings to CMOS RAM so that it can be preserved across a reboot. This uses a simple bit-encoding, where each field has a 'bit position' and a 'bit length' in the schema. Signed-off-by: Simon Glass <[email protected]>
2023-08-25expo: cedit: Support reading settings from environment varsSimon Glass
Add a command to read cedit settings from environment variables so that they can be restored as part of the environment. Signed-off-by: Simon Glass <[email protected]>
2023-08-25expo: cedit: Support writing settings to environment varsSimon Glass
Add a command to write cedit settings to environment variables so that they can be stored with 'saveenv'. Signed-off-by: Simon Glass <[email protected]>
2023-08-25expo: cedit: Support reading settings from a fileSimon Glass
Add a command to read cedit settings from a devicetree file. Signed-off-by: Simon Glass <[email protected]>
2023-08-25expo: cedit: Support writing settings to a fileSimon Glass
Support writing settings from an expo into a file in FDT format. It consists of a single node with a two properties for each sceneitem, one with tag ID chosen by the user and another for its text value. Signed-off-by: Simon Glass <[email protected]>
2023-08-25expo: Export scene_menuitem_find() for use in internal codeSimon Glass
Make this function available to other expo code so we can use it to look up a menu item. Signed-off-by: Simon Glass <[email protected]>
2023-08-25expo: Add a function to prepare a ceditSimon Glass
Split out the code which prepares the cedit for use, so we can call it from a test. Add a log category while we are here. Signed-off-by: Simon Glass <[email protected]>
2023-08-25expo: Split out cedit into its own headerSimon Glass
Before adding more functions to this interface, create a new header for the configuration editor. Fix up the expo header guard while we are here. Signed-off-by: Simon Glass <[email protected]>
2023-08-25expo: Refactor menu_build() to return the object createdSimon Glass
The caller reads the ID but menu_build() does this again. Add the ID as a parameter to avoid this. Return the object created so that the caller can adjust it. Signed-off-by: Simon Glass <[email protected]>
2023-08-25expo: Provide a way to iterate through all scene objectsSimon Glass
For some operations it is necessary to process all objects in an expo. Provide an iterator to handle this. Signed-off-by: Simon Glass <[email protected]>
2023-08-25expo: Make scene_obj_find() take a const sceneSimon Glass
This does not change the scene, so mark the pointer const. Signed-off-by: Simon Glass <[email protected]>
2023-08-21Merge tag 'v2023.10-rc3' into nextTom Rini
Prepare v2023.10-rc3 Signed-off-by: Tom Rini <[email protected]>
2023-08-15bootmeth: efi: Make distro_efi_boot() staticBin Meng
As it is only called in bootmeth_efi.c Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2023-08-11bootstd: cros: Add ARM supportSimon Glass
Support booting ChromiumOS on ARM devices using FIT. Add an entry into the boot implementation which does not require a command line. This can be expanded over time as the bootm code is refactored. Signed-off-by: Simon Glass <[email protected]>
2023-08-11bootstd: Add a command to read all files for a bootflowSimon Glass
Some bootflows (such as EFI and ChromiumOS) delay reading the kernel until it is needed to boot. This saves time when scanning and avoids needing to allocate memory for something that may never be used. To permit reading of these files, add a new 'bootflow read' command. Signed-off-by: Simon Glass <[email protected]>
2023-08-10bootstd: cros: Split up reading info and kernelSimon Glass
Use the two new functions to separate reading of the ChromiumOS info from the partition from actually reading the kernel and booting it. Signed-off-by: Simon Glass <[email protected]>
2023-08-10bootstd: cros: Add a function to read a kernelSimon Glass
The code to read the ChromiumOS information from the partition is currently all in one function. Create a new function which reads the kernel, assuming that the metadata has been parsed. For now this function is not used. Future work will plumb it in. Signed-off-by: Simon Glass <[email protected]>
2023-08-10bootstd: cros: Add a function to read info from partitionSimon Glass
The code to read the ChromiumOS information from the partition is currently all in one function. It reads the entire kernel, which is unnecessary unless it is to be booted. Create a new function which reads just the minimum required data from the disk, then obtains what it needs from there. For now this function is not used. Future work will plumb it in. Signed-off-by: Simon Glass <[email protected]>
2023-08-10bootstd: Add private bootmeth data to the bootflowSimon Glass
Some bootmeths need to store their own information related to the bootflow, in addition to the generic information in struct bootflow. Add a pointer for this. Signed-off-by: Simon Glass <[email protected]>
2023-08-10bootstd: cros: Add private info for ChromiumOSSimon Glass
Create a new private structure to hold information gleaned from the disk. This will allow separation between reading of the bootflow information and (later) reading the whole kernel. Signed-off-by: Simon Glass <[email protected]>
2023-08-10bootstd: cros: Add docs for the kernel layoutSimon Glass
Provide brief documentation about the ChromiumOS kernel layout. Signed-off-by: Simon Glass <[email protected]>