aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-12-12ARM: dts: npcm7xx: add npcm750 gpio node compatible nameJim Liu
Add npcm750 gpio node compatible name Signed-off-by: Jim Liu <JJLIU0@nuvoton.com>
2022-12-12ARM: dts: npcm8xx: add npcm845 function nodeJim Liu
1. add usb phy 2. add ehci ohci sdhci 3. add pinctrl node 4. add fiu node Signed-off-by: Jim Liu <JJLIU0@nuvoton.com>
2022-12-12ARM: config: enable function for nuvoton npcm845 bmcJim Liu
Signed-off-by: Jim Liu <JJLIU0@nuvoton.com>
2022-12-12omap4: make musb probeable by simple busAndreas Kemnade
Like other peripherals important for booting, do not rely on ti-sysc compatibility alone Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
2022-12-12distro/pxeboot: Handle prompt variableManuel Traut
Regarding the documentation found here: https://github.com/u-boot/u-boot/blob/master/common/menu.c#L347 If both timeout and prompt is set to 0 the default entry shall be booted immediately. However the current behaviour is that the prompt is shown (tested with distroboot) until the user selects an entry (no timeout). This change implements a behaviour as documented. It was tested with distroboot. Signed-off-by: Manuel Traut <manuel.traut@mt.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-12-12cmd: pxe: use strdup to copy configPatrick Delaunay
Replace malloc and strcpy by strdup in function parse_label_kernel. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
2022-12-12cmd: pxe: support INITRD and FDT selection with FITPatrick Delaunay
Since the commit d5ba6188dfbf ("cmd: pxe_utils: Check fdtcontroladdr in label_boot") the FDT or the FDTDIR label is required in extlinux.conf and the fallback done by bootm command when only the device tree present in this command parameters is no more performed when FIT is used for kernel. When the label FDT or FDTDIR are absent or if the device tree file is absent, the PXE command in U-Boot uses the default U-Boot device tree selected by fdtcontroladdr = gd->fdt_blob, it is the "Scenario 3". With this scenario the bootm FIP fallback is no more possible with the extlinux.conf when only "kernel" label is present and is a FIP: kernel <path>#<conf>[#<extra-conf[#...]] As the U-Boot FDT is always provided in the third bootm argument, the device tree found in FIP is not used as fallback, it was done previously in boot_get_fdt(). This patch adds a new field kernel_label to save the full kernel label. The FDT bootm parameters use the kernel address (to avoid to load a second time the same FIP) and the config when this full label is reused for "fdt" or "initrd" label. This FIP support in extlinux.conf is restored when the "FDT" label can be found and select the same FIP (identical file and configuration): kernel <path>#<conf>[#<extra-conf[#...]] fdt <path>#<conf>[#<extra-conf[#...]] The patch add also this possibility for initrd. initrd <path>#<conf>[#<extra-conf[#...]] Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
2022-12-12cmd: pxe: reorder kernel treatment in label_bootPatrick Delaunay
Reorder kernel treatment in label_boot at the beginning of the function. This patch doesn't change the pxe command behavior, it is only a preliminary step for next patch, build kernel_addr before parsing the label initrd and fdt to build the next bootm arguments. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
2022-12-12drivers: pci: pcie_dw_common: add upper-limit to iATUBen Dooks
The 4.6 spec added an upper 32bits to the ATU limit, and since this driver is already assuming the unrolled feature added in the 4.8 specification this really should be set. This is causing a bug with testing against the QEMU model as it defaults the viewports to fully open and not setting this causes the config viewport to become most of memory (obviously stopping the emulated system working correctly) Signed-off-by: Ben Dooks <ben.dooks@sifive.com>
2022-12-12arm: mach-omap2: Move common image process functions out of board filesAndrew Davis
The functions board_fit_image_post_process() and board_tee_image_process() are not actually board specific (despite their names). Any board using the OMAP2 family can use these functions. Move them to boot-common.c. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2022-12-09Merge branch '2022-12-09-platform-updates' into nextTom Rini
- Assorted TI platform updates - Add DM_RTC callback functions, and a related x86 clean-up.
2022-12-09configs: enable OSPI related configs in AM62xDhruva Gole
Add am62x_evm_r5_defconfig for OSPI Flash support in R5 SPL and am62x_evm_a53_defconfig for A53 SPL and U-Boot support. These configs enable OSPI Flash boot functionality in the board as well as the usage of OSPI Flash from U-Boot. Signed-off-by: Dhruva Gole <d-gole@ti.com>
2022-12-09arm: dts: Add OSPI support for AM62-SKDhruva Gole
Add OSPI Support such that this device can boot up using OSPI Flash. Also can use the flash for other purposes if required from uboot. Signed-off-by: Dhruva Gole <d-gole@ti.com>
2022-12-09arm: dts: k3-am62x: sync dt with linux kernelDhruva Gole
Sync the DT Files with linux kernel (tag v6.0.3) Signed-off-by: Dhruva Gole <d-gole@ti.com>
2022-12-09configs: introduce configs for the am62aBryan Brattlof
Introduce the minimum configs, only SD-MMC and UART boot related settings, to serve as a good starting point for the am62a as we add more functionality. Signed-off-by: Bryan Brattlof <bb@ti.com> [trini: Disable CONFIG_NET as it's not used, in both platforms] Signed-off-by: Tom Rini <trini@konsulko.com>
2022-12-09board: ti: introduce the basic files needed to support the am62aBryan Brattlof
Introduce the bare minimum SD and UART support for the am62a sk. Signed-off-by: Bryan Brattlof <bb@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2022-12-09arm: mach-k3: am62a: introduce auto-generated SoC dataBryan Brattlof
Introduce the auto-generated clock tree and power domain data needed to attach the am62a into the power-domain and clock frameworks of uboot Signed-off-by: Bryan Brattlof <bb@ti.com>
2022-12-09arm: mach-k3: introduce basic files to support the am62aBryan Brattlof
Introduce the mach-k3 files needed to properly boot TI's am62a SoC family of devices Signed-off-by: Bryan Brattlof <bb@ti.com>
2022-12-09soc: ti: k3-socinfo: add am62a SoC entryBryan Brattlof
Add identification support for TI's am62ax family of SoCs Signed-off-by: Bryan Brattlof <bb@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2022-12-09ram: k3-ddrss: add am62a controller supportBryan Brattlof
TI's am62a family of SoCs uses a new 32bit DDR controller that shares much of the same functionality with the existing am64 and j721e controllers. Select this controller by default when u-boot is build for the am62a Signed-off-by: Bryan Brattlof <bb@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2022-12-09arm: dts: introduce am62a7 u-boot dtbsBryan Brattlof
Introduce the base dts files needed for u-boot or to augment the linux dtbs for use in the u-boot-spl and u-boot binaries Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Signed-off-by: Bryan Brattlof <bb@ti.com>
2022-12-09arm: dts: introduce am62a7 dtbs from linux kernelBryan Brattlof
Introduce the basic am62a7 SoC dtbs from the v6.1-rc3 tag of the linux kernel along with the new am62a specific pinmux definition that we will use to generate the dtbs for the u-boot-spl and u-boot binaries Co-developed-by: Vignesh Raghavendra <vigneshr@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Signed-off-by: Bryan Brattlof <bb@ti.com>
2022-12-09ram: k3-ddrss: add auto-generated macros for am62a supportBryan Brattlof
The new 32bit DDR controller for TI's am62a family of SoCs shares much of the same functionality with the existing 16bit (am64) and 32bit (j721e) controllers, so this patch reorganizes the existing auto-generated macros for the 16bit and 32bit controllers to make room for the macros for the am62a's controller This patch consists mostly of header/macro renames and additions with a new Kconfig option (K3_AM62A_DDRSS) allowing us to select these new macros during compilation. Signed-off-by: Bryan Brattlof <bb@ti.com>
2022-12-09rtc: Add fallbacks for dm functionsSean Anderson
This adds fallbacks for the various dm_rtc_* functions. This allows common code to use these functions without ifdefs. Fixes: c8ce7ba87d1 ("misc: Add support for nvmem cells") Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Sean Anderson <sean.anderson@seco.com>
2022-12-09x86: fsp: Only compile fsp_save_s3_stack if (SPL_)DM_RTC is enabledSean Anderson
This function calls rtc_write32, which has a different signature depending on if (SPL_)DM_RTC is enabled or not. This could result in a mismatch in SPL if DM_RTC was enabled but SPL_DM_RTC, as the non-DM declaration would still be used in SPL even though the implementation would be for non-DM_RTC. We are switching to the correct definitions in the next commit, so this will become a compilation error. Since fsp_save_s3_stack is not called from SPL, avoid compiling it if (SPL_)DM_RTC is disabled. Signed-off-by: Sean Anderson <sean.anderson@seco.com>
2022-12-09Nokia RX-51: Use ENTRY/ENDPROC for save_boot_paramsPali Rohár
ENTRY/ENDPROC macros from linux/linkage.h will make code more readable and also will properly mark assembly symbol in ELF binary as function symbol. Signed-off-by: Pali Rohár <pali@kernel.org>
2022-12-08Merge branch '2022-12-08-assorted-tooling-and-fs-fixes' into nextTom Rini
- Assorted fixes for squashfs, ext4, a number of host tools (including reworking u-boot-initial-env) and then a few unrelated code cleanups / fixes.
2022-12-08ata: ahci-pci: Replace magic constant by macroPali Rohár
Replace 0x1b21 by macro PCI_VENDOR_ID_ASMEDIA with the same value. Signed-off-by: Pali Rohár <pali@kernel.org> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-12-08fs/squashfs: use lldiv function for mathKasper Revsbech
When compling for x86: u-boot/fs/squashfs/sqfs.c:90: undefined reference to `__udivmoddi4' Signed-off-by: Kasper Revsbech <kasper.revsbech.ext@siemensgamesa.com> Tested-by: Sean Nyekjaer <sean@geanix.com>
2022-12-08u-boot-initial-env: rework make targetMax Krummenacher
With LTO enabled the U-Boot initial environment is no longer stored in an easy accessible section in env/common.o. I.e. the section name changes from build to build, its content maybe compressed and it is annotated with additional data. Drop trying to read the initial env with elf tools from the compiler specific object file in favour of adding and using a host tool with the only functionality of printing the initial env to stdout. See also: https://lore.kernel.org/all/927b122e-1f62-e790-f5ca-30bae4332c77@foss.st.com/ Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> Acked-by: Pali Rohár <pali@kernel.org> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-12-08firmware: scmi: use protocol node name to bind the scmi regulator driverPatrick Delaunay
In scmi firmware driver, it is better to bind the scmi protocol driver "scmi_voltage_domain" with the node name of the protocol 17 and not the sub-node named "regulator", because is a fixed string which doesn't provide information and because it is not aligned with the other scmi protocol nodes. For example on stm32mp135f-dk board with device tree in stm32mp131.dtsi scmi: scmi { compatible = "linaro,scmi-optee"; #address-cells = <1>; #size-cells = <0>; linaro,optee-channel-id = <0>; shmem = <&scmi_shm>; scmi_clk: protocol@14 { reg = <0x14>; #clock-cells = <1>; }; scmi_reset: protocol@16 { reg = <0x16>; #reset-cells = <1>; }; scmi_voltd: protocol@17 { reg = <0x17>; scmi_regu: regulators { #address-cells = <1>; #size-cells = <0>; scmi_reg11: voltd-reg11 { reg = <VOLTD_SCMI_REG11>; regulator-name = "reg11"; }; scmi_reg18: voltd-reg18 { reg = <VOLTD_SCMI_REG18>; regulator-name = "reg18"; }; scmi_usb33: voltd-usb33 { reg = <VOLTD_SCMI_USB33>; regulator-name = "usb33"; }; }; }; }; Before the patch: > dm tree scmi_agent 0 [ + ] scmi-over-optee |-- scmi clk 1 [ + ] scmi_clk | |-- protocol@14 ... reset 1 [ ] scmi_reset_domain | |-- protocol@16 nop 2 [ + ] scmi_voltage_domain | `-- regulators regulator 0 [ + ] scmi_regulator | |-- voltd-reg11 regulator 1 [ + ] scmi_regulator | |-- voltd-reg18 regulator 2 [ + ] scmi_regulator | |-- voltd-usb33 ... after the patch: > dm tree scmi_agent 0 [ + ] scmi-over-optee |-- scmi clk 1 [ + ] scmi_clk | |-- protocol@14 ... reset 1 [ ] scmi_reset_domain | |-- protocol@16 nop 2 [ + ] scmi_voltage_domain | `-- protocol@17 regulator 0 [ + ] scmi_regulator | |-- voltd-reg11 regulator 1 [ + ] scmi_regulator | |-- voltd-reg18 regulator 2 [ + ] scmi_regulator | |-- voltd-usb33 ... Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
2022-12-08tools: mkimage: add new image type "fdt_legacy"Marc Kleine-Budde
If the user select the image type "flat_dt" a FIT image will be build. This breaks the legacy use case of putting a Flat Device Tree into a legacy u-boot image. Add a new image type "fdt_legacy" to build a legacy u-boot image with a "flat_dt" type. Link: https://lore.kernel.org/all/20221028155205.ojw6tcso2fofgnhm@pengutronix.de Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de> Reviewed-by: Sean Anderson <seanga2@gmail.com>
2022-12-08tools: mkimage: don't print error message "Success" in case of failureMarc Kleine-Budde
In case there's no struct image_type_params::set_header callback, no "errno" will be set. Don't fail with an error message, followed by "Success". Remove the printing of the human readable "errno" value. Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-12-08tools: fdtgrep: Fix handle leakMikhail Ilin
The handle "fd" was created in fdtgrep.c:708 by calling the "open" function and is lost in fdtgrep.c:716 and fdtgrep.c:723. Close file descriptor 'fd' before exiting with an error from function utilfdt_read_err_len(const char *filename, char **buffp, off_t *len). Fixes: 1043d0a0296a ("fdt: Add fdtgrep tool") Signed-off-by: Mikhail Ilin <ilin.mikhail.ol@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-12-08tools: mkimage: Fix nullptr at strchr()Mikhail Ilin
The copy_datafile(ifd, params.datafile) function has been implemented to copy data by reducing the number of lines in the main function. Signed-off-by: Mikhail Ilin <ilin.mikhail.ol@gmail.com>
2022-12-08fs: ext4: Fix free(NULL)Mikhail Ilin
The 'depth_dirname', 'ptr', 'parent_inode' and 'first_inode' pointers may be null. Thus, it is necessary to check them before using free() to avoid free(NULL) cases. Fixes: 934b14f2bb30 ("ext4: free allocations by parse_path()") Signed-off-by: Mikhail Ilin <ilin.mikhail.ol@gmail.com>
2022-12-08tool: ifwitool: Fix buffer overflowMikhail Ilin
An incorrect 1st parameter is passed to the fix_member() function. Should use a pointer to the beginning of the parent structure (bpdt or subpart_dir, because are boxed), not to their fields. Otherwise, this leads to an overrun of the structure boundary, since in the fix_member() function, an 'offset' is made, relative to the 1st argument, which itself is an 'offset' from the beginning of the structure. Signed-off-by: Mikhail Ilin <ilin.mikhail.ol@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-12-08tool: ifwitool: The function localtime() can return NULL.Mikhail Ilin
This will cause the local_time pointer is passed as the 4th argument to function strftime() to also point to NULL. This result in a segmentation fault. Thus, it's necessary to add a check of the local_time pointer to NULL. Found by Linux Verification Center (linuxtesting.org) with SVACE. Signed-off-by: Mikhail Ilin <ilin.mikhail.ol@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-12-08tools: env: fw_env: Fix unused-result warningJaehoon Chung
Fix unused-result warning about fread. tools/env/fw_env.c: In function ‘find_nvmem_device’: tools/env/fw_env.c:1751:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] 1751 | fread(buf, sizeof(buf), 1, fp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
2022-12-07Merge branch '2022-12-07-Kconfig-migrations' into nextTom Rini
- Import another batch of Kconfig migrations and in this case, also legacy code removal.
2022-12-07net: Remove eth_legacy.cTom Rini
As there are no more non-DM_ETH cases for networking, remove this legacy file and update the Makefile to match current usage. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-12-07qe: Remove non-DM_ETH codeTom Rini
As DM_ETH is required for all network drivers, it's now safe to remove the non-DM_ETH support code. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-12-07usb: gadget: Remove non-DM_ETH codeTom Rini
As DM_ETH is required for all network drivers, it's now safe to remove the non-DM_ETH support code. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-12-07usb: eth: Remove non-DM_ETH codeTom Rini
As DM_ETH is required for all network drivers, it's now safe to remove the non-DM_ETH support code fro usb_ether itself. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-12-07usb: eth: smsc95xx: Remove non-DM_ETH codeTom Rini
As DM_ETH is required for all network drivers, it's now safe to remove the non-DM_ETH support code. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-12-07usb: eth: r8152: Remove non-DM_ETH codeTom Rini
As DM_ETH is required for all network drivers, it's now safe to remove the non-DM_ETH support code. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-12-07usb: eth: msc7830: Remove non-DM_ETH codeTom Rini
As DM_ETH is required for all network drivers, it's now safe to remove the non-DM_ETH support code. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-12-07usb: eth: asix88179: Remove non-DM_ETH codeTom Rini
As DM_ETH is required for all network drivers, it's now safe to remove the non-DM_ETH support code. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-12-07usb: eth: asix: Remove non-DM_ETH codeTom Rini
As DM_ETH is required for all network drivers, it's now safe to remove the non-DM_ETH support code. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-12-07net: keystone_net: Remove non-DM_ETH codeTom Rini
As DM_ETH is required for all network drivers, it's now safe to remove the non-DM_ETH support code. Signed-off-by: Tom Rini <trini@konsulko.com>