summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-12-14x86: bayleybay: Adjust CONFIG_TEXT_BASEBin Meng
At present U-Boot no longer builds as a complete rom for bayleybay. BINMAN .binman_stamp Wrote map file './rom.map' to show errors binman: Section '/binman/rom': contents size 0x814706 (8472326) exceeds section size 0x800000 (8388608) Checking rom.map we see 'fdtmap' section is overlapped with 'intel-vga' and 'intel-fsp' sections: <none> fffa2150 0002a000 u-boot-ucode <none> fffb0000 00010000 intel-vga <none> fffc0000 00038000 intel-fsp <none> fffcc150 00000539 fdtmap Let's adjust CONFIG_TEXT_BASE to allow more space for U-Boot codes. Signed-off-by: Bin Meng <[email protected]>
2022-12-14x86: Fix i8259 ifdef include guardAlistair Delva
When building U-Boot with clang, it notices that the i8259.h include guard does not work correctly due to a typo. Fix it. Signed-off-by: Alistair Delva <[email protected]> Cc: Simon Glass <[email protected]> Cc: Bin Meng <[email protected]> Cc: Nick Desaulniers <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2022-12-14sunxi: Fix serial console for A10s-OLinuXino-MICROMark Kettenis
On this board CONFIG_CONS_INDEX needs to be 1 unlike other sun5i boards. Since this is the default, remove to bogus setting. Fixes: 7095f8641863 ("sunxi: Convert CONS_INDEX to Kconfig") Signed-off-by: Mark Kettenis <[email protected]> Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2022-12-13pinctrl: sunxi: Add P2WI and RSB pinmuxesSamuel Holland
P2WI and RSB are used to communicate with a PMIC. Most SoCs have only one possible pinmux. F1C100s has two possibilities, with different mux values, so omit it until some board needs one of them. Signed-off-by: Samuel Holland <[email protected]> Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2022-12-13sunxi: define SYS_MONITOR_LEN in Kconfig, not _defconfigAndre Przywara
Commit 08574ed339fb ("Convert CONFIG_SYS_MONITOR_LEN to Kconfig") moved the definition of said config variable from the common sunxi header to *every board's* defconfig. This is a platform choice, not board specific, so remove the variable from there, instead set the one value for all Allwinner boards in Kconfig. Signed-off-by: Andre Przywara <[email protected]> Acked-by: Jernej Skrabec <[email protected]>
2022-12-13Merge branch '2022-12-12-build-related-updates' into nextTom Rini
- Updates to the keymile platforms for DM_I2C and text based environment migration - Finish migration of MTDPART/MTDIDS_DEFAULT to defconfig - Disable warning about RWX segments with gcc-12.2
2022-12-13Revert "cmd: pxe_utils: Check fdtcontroladdr in label_boot"Tom Rini
With the change here, all extlinux.conf files with only "KERNEL /fitImage" don't work anymore. One common example of this would be those files generated by thee Poky/OE WIC bootimg-partition bootloader partition generator. This reverts commit d5ba6188dfbf6bb68354bec86e483623f1f6dae2. Reported-by: Neil Armstrong <[email protected]> Reported-by: Quentin Schulz <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2022-12-12km/mpc8360: remove unused CONFIG_SYS_PAXE definesHolger Brunck
These are unused defines and can be dropped. Signed-off-by: Holger Brunck <[email protected]>
2022-12-12km/ppc: migrate all mpc83xx to DM_I2CHolger Brunck
Enable DM_I2C and I2C mux to get rid of the usage of the legacy i2c driver. Signed-off-by: Holger Brunck <[email protected]>
2022-12-12board/km: remove obsolete ARCH_KIRKWOODHolger Brunck
We already removed the support for these boards. Signed-off-by: Holger Brunck <[email protected]>
2022-12-12board/km/secu: migrate to use environment text filesHolger Brunck
Instead of having these defines in a header file, move them to a simple text file. Signed-off-by: Holger Brunck <[email protected]>
2022-12-12board/km/cent2: migrate to environment text fileHolger Brunck
Use like the other boards a text file for the environment. As this is the last user of keymile-common.h we can now remove this file completely. Signed-off-by: Holger Brunck <[email protected]>
2022-12-12km/powerpc: migrate to env.txt fileHolger Brunck
Use already present common.env file and add a powerpc specific env so that we can move all the environment defines to text files. Signed-off-by: Holger Brunck <[email protected]>
2022-12-12board/km: move ls102xa boards to environment text filesHolger Brunck
Create a common.env which we can use later on also for other boards. Signed-off-by: Holger Brunck <[email protected]>
2022-12-12configs: remove support of MTDIDS_DEFAULT/MTDPARTS_DEFAULTPatrick Delaunay
Complete the migration of MTDPARTS_DEFAULT / MTDIDS_DEFAULT in Kconfig; this patch removes the support of MTDIDS_DEFAULT / MTDPARTS_DEFAULT in the configuration files (include/configs/*.h). Signed-off-by: Patrick Delaunay <[email protected]>
2022-12-12configs: SBx81LIFKW: move MTDPART_DEFAULT in defconfigPatrick Delaunay
Replace MTDPARTS_DEFAULT in the config include file by CONFIG_MTDPARTS_DEFAULT in defconfig to complete the Kconfig migration. Signed-off-by: Patrick Delaunay <[email protected]>
2022-12-12configs: SBx81LIFXCAT: move MTDPART_DEFAULT in defconfigPatrick Delaunay
Replace MTDPARTS_DEFAULT in the config include file by CONFIG_MTDPARTS_DEFAULT in defconfig to complete the Kconfig migration. Signed-off-by: Patrick Delaunay <[email protected]>
2022-12-12configs: x530: move MTDPART/MTDIDS_DEFAULT in defconfigPatrick Delaunay
Replace MTDIDS_DEFAULT and MTDPARTS_DEFAULT in the config include file by CONFIG_MTDIDS_DEFAULT and CONFIG_MTDPARTS_DEFAULT in defconfig to complete the Kconfig migration. Signed-off-by: Patrick Delaunay <[email protected]>
2022-12-12configs: am333x_guardian: move MTDIDS_DEFAULT in defconfifPatrick Delaunay
Replace MTDIDS_DEFAULT in config include file by CONFIG_MTDIDS_DEFAULT in defonfig to complete the Kconfig migration Signed-off-by: Patrick Delaunay <[email protected]>
2022-12-12Makefile: link with --no-warn-rwx-segmentsTom Rini
We borrow from the Linux Kernel 0d362be5b142 ("Makefile: link with -z noexecstack --no-warn-rwx-segments") here to disable the RWX segment linking warnings. We do not also bring in -z noexecstack as that requires auditing and using ".note.GNU-stack" on assembly functions which do need this feature. Further, we now introduce KBUILD_EFILDFLAGS so that we can also pass --no-warn-rwx-segments when linking EFI applications, and those do explicitly pass -z execstack. Cc: Heinrich Schuchardt <[email protected]> Cc: Ilias Apalodimas <[email protected]> Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Nick Desaulniers <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2022-12-12Merge branch '2022-12-12-assorted-improvements' into nextTom Rini
- A number of PXE / sysboot related improvements - Nuvoton updates - Small updates to omap4, ARCH_OMAP2PLUS itself, mediatek pcie_designware.
2022-12-12configs: set CONFIG_LMB_MAX_REGIONS=64 for all mt798[16] boardsDaniel Golle
With recently added wireless offloading features in Linux [1] the number of reserved memory regions with MediaTek SoCs supporting offloading wireless-to-Ethernet traffic grew beyond the default (8) which breaks booting Linux: ERROR: Failed to allocate 0xa6ac bytes below 0xc0000000. device tree - allocation error FDT creation failed! resetting ... Raise CONFIG_LMB_MAX_REGIONS to 64 like it is already done for other SoCs which require a larger number of reserved memory regions, eg. exynos78x0 based a3y17lte, a5y17lte and a7y17lte or dragonboard845c. [1]: https://lore.kernel.org/netdev/e3489a697b404bd47447190cd2e5adf090ae61c2.1667687249.git.lorenzo@kernel.org/ https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=eed4f1ddad8c5ad7596b229caec8bd7b477b81ee Signed-off-by: Daniel Golle <[email protected]>
2022-12-12ARM: dts: npcm7xx: add npcm750 gpio node compatible nameJim Liu
Add npcm750 gpio node compatible name Signed-off-by: Jim Liu <[email protected]>
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 <[email protected]>
2022-12-12ARM: config: enable function for nuvoton npcm845 bmcJim Liu
Signed-off-by: Jim Liu <[email protected]>
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 <[email protected]>
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 <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Simon Glass <[email protected]>
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 <[email protected]> Reviewed-by: Neil Armstrong <[email protected]>
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 <[email protected]> Reviewed-by: Neil Armstrong <[email protected]>
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 <[email protected]> Reviewed-by: Neil Armstrong <[email protected]>
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 <[email protected]>
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 <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2022-12-12Merge https://source.denx.de/u-boot/custodians/u-boot-marvellTom Rini
- mvebu: Espressobin: Fix default env variables (Derek)
2022-12-12Merge tag 'u-boot-stm32-20221212' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-stm phy: usbphyc: use regulator_set_enable_if_allowed for disabling vbus supply dm: pmic: ignore disabled node in pmic_bind_children
2022-12-12dm: pmic: ignore disabled node in pmic_bind_childrenPatrick Delaunay
Ignore the disabled children node in pmic_bind_children() so the disabled regulators in device tree are not registered. This patch is based on the dm_scan_fdt_node() code - only the activated nodes are bound - and it solves possible issue when a deactivated regulator is bound, error for duplicated regulator name for example. Signed-off-by: Patrick Delaunay <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-12-12phy: usbphyc: use regulator_set_enable_if_allowed for disabling vbus supplyPatrick Delaunay
Use regulator_set_enable_if_allowed() api instead of regulator_set_enable() while disabling vbus supply. This way the driver doesn't see an error when it disable an always-on regulator for VBUS. This patch is needed for STM32MP157C-DK2 board when the regulator v3v3: buck4 used as the phy vbus supply in kernel device tree is always on with the next hack for low power use-case: &usbphyc_port0 { ... /* * Hack to keep hub active until all connected devices are suspended * otherwise the hub will be powered off as soon as the v3v3 is disabled * and it can disturb connected devices. */ connector { compatible = "usb-a-connector"; vbus-supply = <&v3v3>; }; }; Without this patch and the previous update in DT the command "usb stop" failed and the next command "usb start" cause a crash. Signed-off-by: Patrick Delaunay <[email protected]> Reviewed-by: Patrice Chotard <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2022-12-12arm: mvebu: Espressobin: Fix default env variablesDerek LaHousse
Default env variables on Espressobin boards are broken since commit c4df0f6f315c ("arm: mvebu: Espressobin: Set default value for $fdtfile env variable") as well as the 'env default -a' command. The algorithm to find free space in the default_environment[] array returns after the first env variable instead of the correct position of the last variable, where there is allocated free space. This causes that U-Boot board_late_init() function to overwrite a portion of the default environment with $ethXaddr and $fdtfile variables immediately after the first env variable and so it is overwriting other variables. This patch also adds an additional null byte to terminate the environment array. But U-Boot board_late_init() function do not fill this nul byte explicitly. And because of that, U-Boot is later trying to interpret remaining buffer as a continuation of variable list. Normally buffer should be empty but due to the above issue, it contains garbage from remaining env variables. For example 'env default -a' command results in damaging variable names. It was observed that scritaddr variable name was changed to criptaddr (without leading 's'). This bug was reported and discussed on the Armbian forum: https://forum.armbian.com/topic/19564-making-espressobin-v7-work-in-2022/?do=findComment&comment=138136 Fix these issues in two steps: 1) Change code which finds free space for dynamic env variables in default_environment[] array by jumping to the end of the variable list instead of jumping after the first defined variable. [By Derek] 2) Add code which appends terminating nul byte as indication of the end of the env list, after the last nul term env string. [By Pali] Fixes: c4df0f6f315c ("arm: mvebu: Espressobin: Set default value for $fdtfile env variable") Signed-off-by: Derek LaHousse <[email protected]> Signed-off-by: Pali Rohár <[email protected]> Signed-off-by: Stefan Roese <[email protected]>
2022-12-11Merge tag 'u-boot-nand-20221211' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-nand-flash Merge tag 'u-boot-nand-20221211' of https://source.denx.de/u-boot/custodians/u-boot-nand-flash - cmd: nand: Extend nand info to print ecc information - rawnand: omap_gpmc: driver model support (the first patches of the series) - mtd: nand: make Samsung SLC NAND usable again - cmd: mtd: check if a block has to be skipped or erased - spl: spl_legacy: fix invalid offset in SPL_COPY_PAYLOAD_ONLY
2022-12-10spl: spl_legacy: fix invalid offset in SPL_COPY_PAYLOAD_ONLYDai Okamura
This fixes the header offset calculation. This issue was found on uniphier v7 SoCs with SPL. Fixes: 06377c5a1f ("spl: spl_legacy: Fix NAND boot on OMAP3 BeagleBoard") Signed-off-by: Dai Okamura <[email protected]> Reviewed-By: Michael Trimarchi <[email protected]> Acked-by: Michael Trimarchi <[email protected]> Link: https://lore.kernel.org/all/[email protected] Signed-off-by: Dario Binacchi <[email protected]>
2022-12-10mtd: nand: mxs_nand_spl: don't read useless pagesDario Binacchi
The patch prevents pages beyond the last from being unnecessarily read. This occurs when the last page to be read is not the last page of the last block. Before this change we would have read all the pages up to the end of the last block. Suggested-by: Michael Trimarchi <[email protected]> Co-developed-by: Michael Trimarchi <[email protected]> Signed-off-by: Michael Trimarchi <[email protected]> Signed-off-by: Dario Binacchi <[email protected]> Acked-by: Michael Trimarchi <[email protected]> Link: https://lore.kernel.org/all/[email protected]
2022-12-10mtd: nand: drop EXPORT_SYMBOL_GPL for nanddev_erase()Dario Binacchi
This function is only used within this module, so it is no longer necessary to use EXPORT_SYMBOL_GPL(). This patch parallels the work done in the following patch: https://lore.kernel.org/linux-mtd/[email protected] Signed-off-by: Dario Binacchi <[email protected]> Reviewed-By: Michael Trimarchi <[email protected]> Link: https://lore.kernel.org/all/[email protected]
2022-12-10cmd: mtd: check if a block has to be skipped or erasedDario Binacchi
As reported by patch [1], the `mtd erase' command should not erase bad blocks. To force bad block erasing you have to use the `mtd erase.dontskipbad' command. This patch tries to fix the same issue without modifying code taken from the linux kernel, in order to make further upgrades easier. [1] https://lore.kernel.org/all/[email protected]/ Suggested-by: Michael Trimarchi <[email protected]> Co-developed-by: Michael Trimarchi <[email protected]> Signed-off-by: Michael Trimarchi <[email protected]> Co-developed-by: Mikhail Kshevetskiy <[email protected]> Signed-off-by: Mikhail Kshevetskiy <[email protected]> Tested-by: Mikhail Kshevetskiy <[email protected]> Signed-off-by: Dario Binacchi <[email protected]>
2022-12-10mtd: nand: make Samsung SLC NAND usable againMichael Trimarchi
Upstream linux commit 69fc01296c9281 commit a1286a1fc416 ("mtd: nand: Move Samsung specific init/detection logic in nand_samsung.c") introduced a regression for Samsung SLC NAND chips. Prior to this commit chip->bits_per_cell was initialized by calling nand_get_bits_per_cell() before using nand_is_slc(). With the offending commit this call is skipped, leaving chip->bits_per_cell cleared to zero when the manufacturer specific '.detect' function calls nand_is_slc() which in turn interprets bits_per_cell != 1 as indication for an MLC chip. The effect is that e.g. a K9F1G08U0F NAND chip is falsely detected as MLC NAND with 4KiB page size rather than SLC with 2KiB page size. Add a call to nand_get_bits_per_cell() before calling the .detect hook function in nand_manufacturer_detect(), so that the nand_is_slc() calls in the manufacturer specific code will return correct results. Reported-by: Marcin Gołaś <[email protected]> Signed-off-by: Michael Trimarchi <[email protected]> Reviewed-by: Dario Binacchi <[email protected]> Link: https://lore.kernel.org/all/[email protected] Signed-off-by: Dario Binacchi <[email protected]>
2022-12-10mtd: rawnand: omap_gpmc: Reduce .bss usageRoger Quadros
Allocate omap_ecclayout on the heap as we have limited .bss space on AM64 R5 SPL configuration. Reduces .bss usage by 2984 bytes. Signed-off-by: Roger Quadros <[email protected]> Reviewed-By: Michael Trimarchi <[email protected]> Link: https://lore.kernel.org/all/[email protected] Signed-off-by: Dario Binacchi <[email protected]>
2022-12-10mtd: rawnand: nand_spl_loaders: Fix cast type build warningRoger Quadros
Fixes the below build warning on 64-bit platforms. drivers/mtd/nand/raw/nand_spl_loaders.c:26:21: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] dst = (void *)((int)dst - page_offset); Signed-off-by: Roger Quadros <[email protected]> Reviewed-by: Michael Trimarchi <[email protected]> Link: https://lore.kernel.org/all/[email protected] Signed-off-by: Dario Binacchi <[email protected]>
2022-12-10mtd: rawnand: omap_gpmc: Optimize NAND readsRoger Quadros
Rename omap_nand_read() to omap_nand_read_buf() to reflect actual behaviour. Use FIFO read address instead of raw read address for reads. The GPMC automatically converts 32-bit/16-bit reads to NAND device specific reads (8/16 bit). Use the largest possible read granularity size for more efficient reads. Signed-off-by: Roger Quadros <[email protected]> Reviewed-by: Michael Trimarchi <[email protected]> Link: https://lore.kernel.org/all/[email protected] Signed-off-by: Dario Binacchi <[email protected]>
2022-12-10mtd: rawnand: omap_gpmc: Fix build warning on 64-bit platformsRoger Quadros
Pointer size cannot be assumed to be 32-bit, so use use uintptr_t instead of uint32_t. Fixes the below build warning on 64-bit builds. drivers/mtd/nand/raw/omap_gpmc.c:439:10: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] head = ((uint32_t) buf) % 4; Signed-off-by: Roger Quadros <[email protected]> Reviewed-by: Michael Trimarchi <[email protected]> Link: https://lore.kernel.org/all/[email protected] Signed-off-by: Dario Binacchi <[email protected]>
2022-12-10mtd: rawnand: omap_gpmc: Enable build for K2/K3 platformsRoger Quadros
The GPMC module is present on some K2 and K3 SoCs. Enable building GPMC NAND driver for K2/K3 platforms. Signed-off-by: Roger Quadros <[email protected]> Reviewed-By: Michael Trimarchi <[email protected]> Link: https://lore.kernel.org/all/[email protected] Signed-off-by: Dario Binacchi <[email protected]>
2022-12-10mtd: rawnand: omap_gpmc: Deprecate asm/arch/mem.hRoger Quadros
We want to get rid of <asm/arch/mem.h> so don't enforce it for new platforms. This also means GPMC_MAX CS doesn't have to be defined by platform code. Define it locally here for now. Signed-off-by: Roger Quadros <[email protected]> Reviewed-by: Michael Trimarchi <[email protected]> Link: https://lore.kernel.org/all/[email protected] Signed-off-by: Dario Binacchi <[email protected]>
2022-12-10cmd: nand: Extend nand info to print ecc informationMichael Trimarchi
Extract the information about ecc strength and ecc step size from mtd controller. This information is usefull to check if what we think as ecc is what we really configured. Signed-off-by: Michael Trimarchi <[email protected]> Reviewed-by: Dario Binacchi <[email protected]> Link: https://lore.kernel.org/all/[email protected] Signed-off-by: Dario Binacchi <[email protected]>