aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-09-25x86: acpi: Support external GNVS tablesSimon Glass
At present U-Boot puts a magic number in the ASL for the GNVS table and searches for it later. Add a Kconfig option to use a different approach, where the ASL files declare the table as an external symbol. U-Boot can then put it wherever it likes, without any magic numbers or searching. Signed-off-by: Simon Glass <sjg@chromium.org>
2020-09-25x86: Add a common global NVS structureSimon Glass
Add the definition of this structure common to Intel devices. It includes some optional Chrome OS pieces which are used when vboot is integrated. Drop the APL version as it is basically the same. Signed-off-by: Simon Glass <sjg@chromium.org>
2020-09-25x86: Add a config for the systemagent PCIEX regions sizeSimon Glass
Add a way to specify the required size for this region. This is used when generating ACPI tables. Signed-off-by: Simon Glass <sjg@chromium.org>
2020-09-25x86: apl: Correct PCIE_ECAM_BASESimon Glass
This value is incorrect and causes problems booting Linux. Fix it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: acpi: Add DPTF asl filesSimon Glass
Add common DPTF (Intel Dynamic Performance and Thermal Framework) files, taken from coreboot. Signed-off-by: Simon Glass <sjg@chromium.org>
2020-09-25x86: acpi: apl: Add asl files for Apollo LakeSimon Glass
Add Apollo Lake ASL files, taken from coreboot. Signed-off-by: Simon Glass <sjg@chromium.org>
2020-09-25x86: acpi: Add base asl files for common x86 devicesSimon Glass
Add common x86 ASL files, taken from coreboot. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com>
2020-09-25x86: acpi: Add cros_ec tablesSimon Glass
Add ASL files for the Chrome OS EC, taken from coreboot. Signed-off-by: Simon Glass <sjg@chromium.org>
2020-09-25cros: Add information about booting Chrome OS on x86Simon Glass
Recent versions of Chrome OS do not have a kernel in the root disk, to save space. With the improvements to the 'zboot' command it is fairly easy to load the kernel from the raw partition. Add instructions on how to do this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25cros: Update chromium documentationSimon Glass
A few things have changed since this was written about 18 months ago. Update the README. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: zboot: Allow overriding the command lineSimon Glass
When booting Chrome OS images the command line is stored separately from the kernel. Add a way to specify this address so that images boot correctly. Also add comments to the zimage.h header. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> [bmeng: adjust maxargs to 8 for 'zboot start'] Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: zboot: Add an option to dump the setup informationSimon Glass
There is a lot of information in the setup block and it is quite hard to decode manually. Add a 'zboot dump' command to decode it into a human-readable format. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: zboot: Allow setting a separate setup base addressSimon Glass
At present the setup block is always obtained from the image automatically. In some cases it can be useful to use a setup block obtained elsewhere, e.g. if the image has already been unpacked. Add an argument to support this and update the logic to use it if provided. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> [bmeng: adjust maxargs to 7 for 'zboot start'] Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: zboot: Set environment variables for image locationsSimon Glass
At present it is not possible to tell from a script where the setup block is, or where the image was loaded to. Add environment variables for this. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: zboot: Add an 'setup' subcommandSimon Glass
Add a subcommand that sets up the kernel ready for execution. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: zboot: Add an 'load' subcommandSimon Glass
Add a subcommand that loads the kernel into the right places in memory. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> [bmeng: adjust ZBOOT_STATE_INFO value to match the command order] Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: zboot: Add an 'info' subcommandSimon Glass
Add a little subcommand that prints out where the kernel was loaded and its setup pointer. Run it by default in the normal boot. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: zboot: Add a 'go' subcommandSimon Glass
Split out the code that actually boots linux into a separate sub-command. Add base_ptr to the state to support this. Show an error if the boot fails, since this should not happen. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: zboot: Set up a sub-command structureSimon Glass
Add subcommands to zboot. At present there is only one called 'start' which does the whole boot. It is the default command so is optional. Change the 's' string variable to const while we are here. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> [bmeng: reduce maxargs to 6 of 'zboot start' subcommand] Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: zimage: Disable interrupts just before bootingSimon Glass
At present if an error occurs while setting up the boot, interrupts are left disabled. Move this call later in the sequence to avoid this problem. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: zboot: Correct image typeSimon Glass
At present U-Boot sets a loader type of 8 which means LILO version 8, according to the spec. Update it to 0x80, which means U-Boot with no particular version. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: zboot: Move kernel-version code into a functionSimon Glass
To help reduce the size and complexity of load_zimage(), move the code that reads the kernel version into a separate function. Update get_boot_protocol() to allow printing the 'Magic signature' message only once, under control of its callers. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: zimage: Avoid using #ifdefSimon Glass
Use IS_ENABLED() instead of #ifdef in this file. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: zimage: Use a state struct to hold the stateSimon Glass
At present the 'zboot' command does everything in one go. It would be better if it supported sub-commands like bootm, so it is possible to examine what will be booted before actually booting it. In preparation for this, move the 'state' of the command into a struct. This will allow it to be shared among multiple functions in this file. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-25x86: Update the bootparam headerSimon Glass
This header is missing a few of the newer features from the specification. Add these as well as a link to the spec. Also use the BIT() macros where appropriate. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2020-09-24Merge branch 'mpc85xx-for-v2021.01' into nextTom Rini
- Add DM_SPI, DM_SPI_FLASH support for powerpc platforms - Add DM_ETH support on P1010RDB, P1020RDB, P2020RDB - Remove some un-maintained powerpc platforms - Add USB_STORAGE support in config
2020-09-24configs: powerpc: add usb (host) mass storage supportRan Wang
commit 0cfccb54014b ("configs: Resync with savedefconfig") removed CONFIG_USB_STORAGE from some powerpc platforms' defconfig files, whicih would block the use case of system loading rootfs from USB drives, add them back. Signed-off-by: Ran Wang <ran.wang_1@nxp.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24configs: Remove P5040DS secure boot configsPriyanka Jain
Remove NXP powerpc P5040DS secure boot configs as they are no longer maintained. Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24board/freescale: Remove P5020DS board supportPriyanka Jain
Remove NXP powerpc P5020DS board support as it is no longer maintained. Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24powerpc:Remove P4080DS secure boot configsPriyanka Jain
Remove NXP powerpc P4080DS secure boot configs as they are no longer maintained. Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24configs: Remove P3041DS secure boot configsPriyanka Jain
Remove NXP powerpc P3041DS secure boot configs as they are no longer maintained. Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24board/freescale: Remove P1024RDB board supportPriyanka Jain
Remove NXP powerpc P1024RDB board support as it is no longer maintained. Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24board/freescale: Remove P1021RDB board supportPriyanka Jain
Remove NXP powerpc P1021RDB board support as it is no longer maintained. Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24board/freescale: Remove P1020MBG board supportPriyanka Jain
Remove NXP powerpc P1020MBG board support as it is no longer maintained. Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24board/freescale: Remove P1020UTM board supportPriyanka Jain
Remove NXP powerpc P1020UTM board support as it is no longer maintained. Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24board/freescale: Remove P1025RDB board supportPriyanka Jain
Remove NXP powerpc P1025RDB board support as it is no longer maintained. Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24configs: Remove P1010RDB secure boot configsPriyanka Jain
Remove NXP powerpc P1010RDB secure boot configs as they are no longer maintained. Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24board/freescale: Remove p1023rdb board supportPriyanka Jain
Remove NXP powerpc p1023rdb board support as it is no longer maintained. Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24configs: P2020RDB: Enable DM_ETH configHou Zhiqiang
Enable the DM_ETH and DM_MDIO config. On P2020RDB, the eTSEC1 is connecting with a switch VSC7385, so also enable the fixed PHY support. Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com> Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24dts: powerpc: p2020rdb: Add eTSEC DT nodesHou Zhiqiang
P2020RDB implements 3 enhanced three-speed Ethernet controllers, and the connection is shown below: eTSEC1: Connected to RGMII switch VSC7385 eTSEC2: Connected to SGMII PHY VSC8221 eTSEC3: Connected to SGMII PHY AR8021 Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> [Rebased] Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24configs: P1010RDB: Enable DM_ETH configHou Zhiqiang
Enable the DM_ETH and DM_MDIO config. Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24p1010rdb: Don't compile board_eth_init() for DM_ETHHou Zhiqiang
The board_eth_init() is only used by legacy ethernet driver framework, so do not compile it when DM_ETH config has been selected. Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com> [Rebased] Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24dts: powerpc: p1010rdb: Add eTSEC DT nodesHou Zhiqiang
P1010RDB implements 3 enhanced three-speed Ethernet controllers, and the connection is shown below: eTSEC1: Connected to RGMII PHY AR8033 eTSEC2: Connected to SGMII PHY AR8033 eTSEC3: Connected to SGMII PHY AR8033 Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> [Rebased] Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24configs: P1020RDB: Enable DM_ETH configHou Zhiqiang
Enable the DM_ETH and DM_MDIO config. On P1020RDB, the eTSEC1 is connecting with a switch VSC7385, so also enable the fixed PHY support. Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24p1_p2_rdb: Don't compile board_eth_init() for DM_ETHHou Zhiqiang
The board_eth_init() is only used by legacy ethernet driver framework, so do not compile it when DM_ETH config has been selected. Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com> [Rebased] Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24dts: powerpc: p1020rdb: Add eTSEC DT nodesHou Zhiqiang
P1020RDB implements 3 enhanced three-speed Ethernet controllers, and the connection is shown below: eTSEC1: Connected to RGMII switch VSC7385 eTSEC2: Connected to SGMII PHY VSC8221 eTSEC3: Connected to SGMII PHY AR8021 Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com> [Rebased] Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24configs: p1_p2_rdb: Add the default address of vsc7385 firmwareHou Zhiqiang
Add the environment 'vscfw_addr' to assign a default address for vsc7385 firmware uploading. Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24fsl: p1_p2_rdb: Move vsc7835 firmware uploading to board_early_init_r()Hou Zhiqiang
Move vsc7835 firmware uploading to board_early_init_r(), so that the switch also can work in DM eTSEC driver. Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com> Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24mpc8xxx: Don't compile board_eth_init() for DM_ETHHou Zhiqiang
The cpu_eth_init() is only used by the legacy ethernet driver framework. Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com> [Rebased] Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
2020-09-24net: tsec: Add the compatible string "gianfar" supportHou Zhiqiang
Add compatible string "gianfar" support and update the device-tree-bindings doc. Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com> Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>