summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2018-07-26phy: Break include cycleJoe Hershberger
Because some phy wants to export some functions [1], export.h was including the whole phy subsystem which pulls in lots of stuff that causes some ordering and redefinition issues. Split out the only part that is actually needed in export.h and include it there and in phy.h. [1] commit 95279315076c ("board/ls2085rdb: Export functions for standalone AQ FW load apps") Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
2018-07-26net: Consolidate the parsing of bootfileJoe Hershberger
The same basic parsing was implemented in tftp and nfs, so add a helper function to do the work once. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
2018-07-26net: When checking prerequisites, consider boot_file_nameJoe Hershberger
For net_boot_common, we allow the serverip to be specified as part of the boot file name. For net commands that require serverip, include that source as a valid specification of serverip. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Reviewed-by: Alexander Graf <agraf@suse.de>
2018-07-26armv8: ls1046ardb: Add falcon mode for for QSPI bootYork Sun
A new defconfig is introduced to support SPL boot from QSPI NOR flash. This is to support falcon mode for faster booting into Linux. Signed-off-by: York Sun <york.sun@nxp.com>
2018-07-26powerpc: mpc85xx: Drop u-boot-with-spl.bin on selected boardsYork Sun
For SoCs with PBL, u-boot-with-spl-pbl.bin is the final image for SPL boot. Drop unused u-boot-with-spl.bin. Signed-off-by: York Sun <york.sun@nxp.com> CC: Ashish Kumar <ashish.kumar@nxp.com> CC: Ruchika Gupta <ruchika.gupta@nxp.com> CC: Priyanka Jain <priyanka.jain@nxp.com> CC: Shengzhou Liu <Shengzhou.Liu@nxp.com>
2018-07-26armv8: layerscape: Drop u-boot-with-spl.bin for selected boardsYork Sun
For SPL boot with PBL, u-boot-with-spl-pbl.bin is the final image. Drop unused u-boot-with-spl.bin. Signed-off-by: York Sun <york.sun@nxp.com> CC: Mingkai Hu <mingkai.hu@nxp.com> CC: Ruchika Gupta <ruchika.gupta@nxp.com> CC: Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com> CC: Udit Agarwal <udit.agarwal@nxp.com> CC: Sumit Garg <sumit.garg@nxp.com> CC: Priyanka Jain <priyanka.jain@nxp.com>
2018-07-26armv8: ls1046ardb: Enable IFC for SPL buildYork Sun
Commit a52ff334c5b1 ("armv8: ls1046ardb: SPL size reduction") reduced image size for SPL. IFC was disabled. If PPA is loaded in SPL, MMU is enabled as a result. Removing IFC skips IFC region in the MMU table, causing later failure in RAM version U-boot when accessing CPLD through IFC. Only disable IFC if PPA is not enabled for SPL. Signed-off-by: York Sun <york.sun@nxp.com>
2018-07-26armv8: ls1046ardb: ls1046aqds: Move SPL macros to defconfigYork Sun
Instead of defining Kconfig macros in header file, move them to defconfig files. Signed-off-by: York Sun <york.sun@nxp.com>
2018-07-26armv8: ls2088ardb: Move CONFIG_SPI_FLASH, CONFIG_SPI_FLASH_SPANSION to defconfigAshish Kumar
Move CONFIG_SPI_FLASH_SPANSION, CONFIG_SPI_FLASH, to defconfig. Also disable disable 4K erase size option. Signed-off-by: Ashish Kumar <Ashish.Kumar@nxp.com> Reviewed-by: York Sun <york.sun@nxp.com>
2018-07-26LS1088ARDB: Secure Boot:Change load address of dpl header in SDVinitha V Pillai
Change address of DPL header in SD. Signed-off-by: Vinitha V Pillai <vinitha.pillai@nxp.com> Reviewed-by: York Sun <york.sun@nxp.com>
2018-07-26armv8: ls1088a: change dpl load command from apply to lazyapplyJagdish Gediya
use "fsl_mc lazyapply dpl addr" instead of "fsl_mc apply dpl addr" change dpl load addr to 0x80001000 from 0x80200000 because dpl gets corrupted at 0x80200000 during bootm command excecution. Signed-off-by: Jagdish Gediya <jagdish.gediya@nxp.com> Reviewed-by: York Sun <york.sun@nxp.com>
2018-07-25efi_loader: remove unused efi_get_time_init()Heinrich Schuchardt
Remove unused function efi_get_time_init(). Initialization of the RTC has to be done in board bring up not in the EFI subsystem. There is no RTC device in the UEFI spec. The RTC is only accessed through the runtime services. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-07-25efi_loader: correct signature of CalculateCrc32()Heinrich Schuchardt
Use const for the buffer. We are not changing the buffer. Use efi_uintn_t where prescribed by the UEFI spec. Prefer u32 over uint32_t. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-07-25efi_loader: allocate configuration table arrayHeinrich Schuchardt
The system table contains a link to the list of configurations tables. These include the device tree, SMBIOS table, and the ACPI table. This array is currently statically linked. With the patch it is allocated as EFI_RUNTIME_SERVICES_DATA. Due to the structure of the system table we cannot work with a linked list here. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-07-25efi_loader: calculate crc32 for EFI tablesHeinrich Schuchardt
For the boot and runtime services tables and for the system table the crc32 has to be set in the header. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-07-25efi_loader: provide firmware revisionHeinrich Schuchardt
Provide a firmware revision in the system table using the Makefile variables VERSION and PATCHLEVEL, e.g. 0x20180700 for v2018.07. Correct the type of the firmware vendor. It is a u16* pointer. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-07-25efi_loader: correct EFI_RUNTIME_SERVICES_SIGNATUREHeinrich Schuchardt
The value for EFI_RUNTIME_SERVICES_SIGNATURE does not match the UEFI spec 2.7. Reported-by: Takahiro Akashi <takahiro.akashi@linaro.org> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-07-25efi_loader: specify UEFI spec revisionHeinrich Schuchardt
Both in the boot and the runtime services tables we have to specify the UEFI spec revision. The same value is already used for the system table. So let's use a common constant. In the boot services table we have to provide the header signature. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-07-25efi_loader: set revision in loaded image protocolHeinrich Schuchardt
The revision number has to be set in the loaded image protocol. The problem was detected by running the SCT in Protocol/LoadedImage/BlackBoxTest/LoadedImageBBTestMain.c:890 Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-07-25efi_loader: check map_key in ExitBootServicesHeinrich Schuchardt
The UEFI spec requires that the memory map key is checked in ExitBootServices(). Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-07-25efi_loader: Rename sections to allow for implicit dataAlexander Graf
Some times gcc may generate data that is then used within code that may be part of an efi runtime section. That data could be jump tables, constants or strings. In order to make sure we catch these, we need to ensure that gcc emits them into a section that we can relocate together with all the other efi runtime bits. This only works if the -ffunction-sections and -fdata-sections flags are passed and the efi runtime functions are in a section that starts with ".text". Up to now we had all efi runtime bits in sections that did not interfere with the normal section naming scheme, but this forces us to do so. Hence we need to move the efi_loader text/data/rodata sections before the global *(.text*) catch-all section. With this patch in place, we should hopefully have an easier time to extend the efi runtime functionality in the future. Signed-off-by: Alexander Graf <agraf@suse.de> [agraf: Fix x86_64 breakage]
2018-07-25elf: Move x86 reloc defines to common elf.hAlexander Graf
We need to know about x86 relocation definitions even in cases where we don't officially build against the x86 target, such as with sandbox. So let's move the x86 definitions into the common elf header, where all other architectures already have them. Signed-off-by: Alexander Graf <agraf@suse.de>
2018-07-25efi_loader: Introduce ms abi vararg helpersAlexander Graf
Varargs differ between sysv and ms abi. On x86_64 we have to follow the ms abi though, so we also need to make sure we use x86_64 varargs helpers. This patch introduces generic efi vararg helpers that adhere to the respective EFI ABI. That way we can deal with them properly from efi loader code and properly interpret variable arguments. This fixes the InstallMultipleProtocolInterfaces tests in the efi selftests on x86_64 for me. Signed-off-by: Alexander Graf <agraf@suse.de>
2018-07-24Merge branch 'master' of git://git.denx.de/u-boot-uniphierTom Rini
2018-07-25ARM: uniphier: enable distro bootMasahiro Yamada
Switch to the distro boot for UniPhier platform. - Remove the environment vairalbes used to load images from raw block devices. - Keep the command to download images via tftp. This will be useful to boot the kernel when no valid kernel image is ready yet in the file system. - Use root.cpio.gz instead of root.cpio.uboot because we always know the file size of the init ramdisk; it is loaded via either a file system or network. - Rename fit_addr_r to kernel_addr_r, which the distro command checks to get the load address of FIT image. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2018-07-25fdt_support: make fdt_fixup_mtdparts() prototype more specificMasahiro Yamada
The second argument of fdt_fixup_mtdparts() is an opaque pointer, 'void *node_info', hence callers can pass any pointer. Obviously, fdt_fixup_mtdparts() expects 'struct node_info *' otherwise, it crashes run-time. Change the prototype so that it is compile-time checked. Also, add 'const' qualifier to it so that callers can constify the struct node_info arrays. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2018-07-24config: remove unused CONFIG_SPL_RELOC_STACK_SIZEHeinrich Schuchardt
Symbol CONFIG_SPL_RELOC_STACK_SIZE is not used anywhere. So remove it. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2018-07-24board: STiH410-B2260: Set SYS_BOOTM_LEN to 16MPatrice Chotard
With recent kernel v4.18-rcx, uImage becomes bigger than 8MB. Set SYS_BOOTM_LEN to 16MB, this fix the following error message: "Fix Loading Kernel Image ... Image too large: increase CONFIG_SYS_BOOTM_LEN" Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
2018-07-24mtd: remove stale comment in mtd_oob_ops structureMiquel Raynal
A comment in the kernel doc of the mtd_oob_ops structure tells that it is not possible to write more than one page with OOB. This was probably true at some time in the past but today it is entirely wrong. As one can see for instance in the nand_do_write_ops() helper available in the NAND core, this implementation called by mtd->_write_oob() simply loops over the pages until everything has been written. Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
2018-07-23mtd: nand: add new enum for storing ECC algorithmRafał Miłecki
Our nand_ecc_modes_t is already a bit abused by value NAND_ECC_SOFT_BCH. This enum should store ECC mode only and putting algorithm details there is a bad idea. It would result in too many values impossible to support in a sane way. To solve this problem let's add a new enum. We'll have to modify all drivers to set it properly but once it's done it'll be possible to drop NAND_ECC_SOFT_BCH. That will result in a cleaner design and more possibilities like setting ECC algorithm for hardware ECC mode. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> [Linux commit: b0fcd8ab7b3c89b5da7fff5224d06ed73e7a33cc] [Philippe Reynes: adapt code to u-boot] Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2018-07-23Convert CONFIG_DA8XX_GPIO to KconfigAdam Ford
This converts the following to Kconfig: CONFIG_DA8XX_GPIO Signed-off-by: Adam Ford <aford173@gmail.com>
2018-07-23doc: Replace DocBook with sphinx-based docsMario Six
The Linux kernel moved to sphinx-based documentation and got rid of the DocBook based documentation quite a while ago. Hence, the DocBook documentation for U-Boot should be converted as well. To achieve this, import the necessary files from Linux v4.17, and convert the current DocBook documentation (three files altogether) to sphinx/reStructuredText. For now, all old DocBook documentation was merged into a single handbook, tentatively named "U-Boot Hacker Manual". For some source files, the documentation style was changed to comply with kernel-doc; no functional changes were applied. Signed-off-by: Mario Six <mario.six@gdsys.cc>
2018-07-23ARM: dts: Resync OMAP3 and omap36xx with Linux 4.18-RC4Adam Ford
There have been several minor changes to the OMAP3.dtsi, so this patch re-syncs it with Linux. An addition include/dt-binding was also brought with it. Signed-off-by: Adam Ford <aford173@gmail.com>
2018-07-23m68k: m5253evbe: Remove this boardTom Rini
The m5253evbe board has been marked as orphan since June of 2014 and should have been dropped a while ago. Do so now. Signed-off-by: Tom Rini <trini@konsulko.com>
2018-07-23Merge branch 'master' of git://git.denx.de/u-boot-imxTom Rini
trini: Update colibri-imx6ull to use Kconfig for mtdparts related options. Signed-off-by: Tom Rini <trini@konsulko.com>
2018-07-23configs: imx6q_logic: Cleanup ramdiskaddr and fdtaddrAdam Ford
There are already definitions for ramdisk_addr_r and fdt_addr_r, so having a duplicate copy called ramdiskaddr and fdtaddr is confusing. This patch converts any references to ramdisk_addr_r and fdt_addr_r and removes the duplicates. Signed-off-by: Adam Ford <aford173@gmail.com>
2018-07-23imx: i.mx6q: imx6q_logic: Migrate to SPL and enable SDPAdam Ford
Since the vast majority of i.MX6 boards are migrating to SPL, this patch converts im6q_logic to SPL and enables the SDP for loading SPL and u-boot.img over USB. The Falcon mode only supports NAND flash as of now due to limited space/RAM, but all i.MX6D/Q SOM's from Logic PD have internal NAND from which to boot. Signed-off-by: Adam Ford <aford173@gmail.com>
2018-07-23pico-imx7d: Allow default fdtfile to be overridden by defconfigOtavio Salvador
This allow the addition of extra default configurations for each baseboard, removing the boot menu when user boots for the first time. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-07-23pico-imx7d: Add Falcon mode supportFabio Estevam
Falcon mode boots the kernel directly from SPL, without loading the full U-Boot. As pico-imx7d does not have a GPIO for selecting Falcon versus normal mode, enter in Falcon mode when the customer selects the CONFIG_SPL_OS_BOOT option in menuconfig. Signed-off-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-07-23pico-imx7d: Add bootmenu to choose the baseboardOtavio Salvador
Currently the baseboards do not offer a way to autodetect which one is in use, so we ask the user if no value has been set. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-07-23pico-imx7d: Add support for update SPL using DFUFabio Berton
Add spl entry on dfu_alt_info to be able to update U-Boot with SPL for pico imx7d board. Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-07-23pico-imx7d: Add SPL supportFabio Estevam
Convert pico-imx7d to SPL support. There are two variants of pico-imx7d SOMs: - One with 512MB of RAM - One with 1GB of RAM The 512MB module contains two Hynix H5TC2G63GFR-PBA. The 1GB module contains two Hynix H5TC4G63GFR-PBA. The RAM size is determined in runtime by reading GPIO1_12. While at it, also add USB Serial Download mode support as it is very helpful for loading SPL and u-boot.img via imx_usb_loader. Signed-off-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-07-23pico-imx7d: Add fastboot supportFabio Estevam
fastboot tool is a convenient way to flash the eMMC, so add support for it. Examples of usages: On the pico-imx7d U-Boot prompt: => fastboot 0 On the Linux PC connected via USB: 1. Retrieving the U-Boot version $ sudo fastboot getvar bootloader-version -i 0x0525 bootloader-version: U-Boot 2018.07-rc1-03888-gde846f9 finished. total time: 0.000s 2. Resetting the board $ sudo fastboot reboot -i 0x0525 (this causes the pico-imx7d to reboot) Signed-off-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-07-23pico-imx7d: Add default DFU targetsOtavio Salvador
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-07-23pico-imx7d: Add GPT partitioning supportOtavio Salvador
This allow the use of: > run setup_emmc inside of the U-Boot prompt to do the partitioning of the disk. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-07-23pico-imx7d: Fix common distro configuration behaviorOtavio Salvador
This sets DISTRO_CONFIG and BOOTCOMMAND, as well as add a `finduuid` environment helper to allow it to properly work with Yocto Project and other distributions using extlinux autogenerated configuration files. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-07-23pico-imx7d: Convert to distro configFabio Estevam
Instead of keeping a custom environment, use a more generic approach by switching to disto config. Signed-off-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-07-23mx6cuboxi: Move the default environment for all devicesJon Nettleton
Previously we had stored the environment right after the u-boot.img on the disk. I never liked this because with dtbs being included and such the image could grow in size. Instead we move the environment to be negatively offset from the 1MB mark. Almost all our images start at 4MB's, and most standard images start at 1MB, and all our storage devices are a minimum 1MB. Therefore we can store env there for all classes of devices and have plenty of space in case u-boot.img needs to grow. Signed-off-by: Jon Nettleton <jon@solid-run.com> Signed-off-by: Baruch Siach <baruch@tkos.co.il> Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
2018-07-23mx6cuboxi: Add emmc device tree suffixJon Nettleton
Mainline and now the SolidRun 4.9 nxp based tree use the new reorganization of device-tree files that separate out the emmc into its own dtb. u-boot will now look for -emmc in the device tree name if one is detected. Signed-off-by: Jon Nettleton <jon@solid-run.com> Signed-off-by: Baruch Siach <baruch@tkos.co.il>
2018-07-23mx6cuboxi: drop CONFIG_SYS_FSL_USDHC_NUMBaruch Siach
This macro is not used. Signed-off-by: Baruch Siach <baruch@tkos.co.il>