summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-11-01mmc: sdhci: Rework SDHCI_QUIRK_BROKEN_R1BSean Anderson
As noted in commit 3a6383207be ("mmc: sdhci: add the quirk for broken r1b response"), some MMC controllers don't always set the transfer complete bit with R1b responses. According to the SD Host Controller Simplified Specification v4.20, > In the case of a command pairing with response-with-busy[, Transfer > Complete] is set when busy is de-asserted. Refer to DAT Line Active > and Command Inhibit (DAT) in the Present State register. By polling the DAT Line Active bit in the present state register, we can detect when we are no longer busy, without waiting for a long timeout. This results in much faster reads/writes on buggy controllers. Signed-off-by: Sean Anderson <[email protected]> Tested-by: Henrik Grimler <[email protected]>
2023-11-01mmc: pci: Drop the superfluous castBin Meng
dm_pci_map_bar() return a value of (void *) already, hence no need to cast it again before assigning to host->ioaddr. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2023-11-01mmc: spl: select SPL_BLK for SPL_DM_MMCOleksandr Suvorov
mmc_bind() in mmc-uclass.c calls blk_create_devicef() which is defined in blk-uclass.c, so SPL_BLK is required by SPL_DM_MMC. Implicitly select SPL_BLK for SPL_DM_MMC. Signed-off-by: Oleksandr Suvorov <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2023-10-31Merge branch '2023-10-31-platform-updates'Tom Rini
- Updates for npcm8xx, developerbox, corstone1000 and one clock fix for TI K3 platforms.
2023-10-31corstone1000: enable PSCI resetEmekcan Aras
enable PSCI reset used for the system reset Even though Corstone-1000 does not implement the entire PSCI APIs, it relies on PSCI reset interface for the system reset. Signed-off-by: Emekcan Aras <[email protected]> Signed-off-by: Abdellatif El Khlifi <[email protected]>
2023-10-31corstone1000: enable distro booting commandAbdellatif El Khlifi
enable distro_bootcmd Signed-off-by: Abdellatif El Khlifi <[email protected]> Signed-off-by: Rui Miguel Silva <[email protected]>
2023-10-31corstone1000: add compressed kernel supportAbdellatif El Khlifi
unzip the kernel before executing it The Corstone-1000 kernel has become too large to fit in the available storage. Switching to a compressed kernel avoids the problem, but requires uncompressing it. Changes made are generated using savedefconfig. Signed-off-by: Abdellatif El Khlifi <[email protected]> Signed-off-by: Jon Mason <[email protected]> Signed-off-by: Rui Miguel Silva <[email protected]>
2023-10-31board: developerbox: update flash rawwrite binary sizeMasahisa Kojima
Current documentation limits the firmware size to 1.5MB. When the fTPM and StandaloneMM-based RPMB secure storage is enabled, firmware size is bigger than that size. Let's specify the A/B update bank size(4MB) for flash rawwrite parameter. Signed-off-by: Masahisa Kojima <[email protected]> Acked-by: Jassi Brar <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2023-10-31board: developerbox: update old NOR flash layout build instructionMasahisa Kojima
v2023.07 is the last version supporting old NOR flash layout by default. The later versions of U-Boot, Developerbox is configured to enable A/B update and new NOR Flash layout by default. This commit updates the documentation to pin the U-Boot version for the old NOR flash layout. It is still useful for the user wants to replace the factory default EDK II firmware to U-Boot. Signed-off-by: Masahisa Kojima <[email protected]> Acked-by: Jassi Brar <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2023-10-31board: developerbox: remove obsolete NOR flash layout definitionMasahisa Kojima
There are two kinds of NOR flash layout for the Developerbox. Capsule update for the old layout is no longer available since it has small capacity for secure world images and can not house the TA such as fTPM. This commit removes the definition related to the obsolete NOR flash layout for the UEFI capsule update. Signed-off-by: Masahisa Kojima <[email protected]> Acked-by: Jassi Brar <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2023-10-31clk: ti: k3-pll: Add calibration support for non fractional modeVishal Mahaveer
PLL calibration needs to be enabled when operating in non fractional mode. Add the sequence to do a fast calibration when using PLL in this mode. Signed-off-by: Vishal Mahaveer <[email protected]>
2023-10-31configs: nuvoton: npcm8xx: Disable CONFIG_SPI_FLASH_USE_4K_SECTORSJim Liu
disable this config to improve flash program time Signed-off-by: Jim Liu <[email protected]>
2023-10-31board: nuvuton: arbel: Fix incorrect ram sizeJim Liu
1. Fix incorrect ram size of 4GB dram with ECC enabled 2. Fix wrong place to set dram bank size - The dram bank size should be set in dram_init_banksize - Dram_init should not access gd->bd because the board info struct is not reserved yet. Signed-off-by: Jim Liu <[email protected]> [trini: Rework slightly] Signed-off-by: Tom Rini <[email protected]>
2023-10-31configs: npcm: Support more uart baud rateJim Liu
Add uart baud rate table to arbel(npcm8xx) and poleg(npcm7xx) Signed-off-by: Jim Liu <[email protected]> [trini: Rework slightly] Signed-off-by: Tom Rini <[email protected]>
2023-10-31pinctrl: npcm8xx: Add name for gpio functionJim Liu
GPIO function name is needed in the debug log Signed-off-by: Jim Liu <[email protected]>
2023-10-31dfu: mmc: Add support for exposing whole mmc deviceMarek Vasut
Add support for exposing the whole mmc device by setting the 'size' parameter to 0. This can be useful in case it is not clear what the total device size is up front. Update the documentation accordingly. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Reviewed-by: Lukasz Majewski <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2023-10-31fastboot: fix CRC32 chunk size checkingWojciech Nizinski
genimage create android-sparse file with CRC32 chunk at end. When U-Boot's fastboot receives this chunk it returns error message: `Fail Bogus chunk size for chunk type Dont Care` According to reference implementation of Android's sparse file format: <https://android.googlesource.com/platform/system/core/+/refs/heads/main/ libsparse/output_file.cpp#513> the chunk_header.total_sz is CHUNK_HEADER_LEN + 4 (CRC32 size). Signed-off-by: Wojciech Nizinski <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Tested-by: Mattijs Korpershoek <[email protected]> # on vim3 Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2023-10-31bootcount: Add driver model I2C driverPhilip Richard Oberfichtner
This adds a generic I2C bootcounter adhering to driver model to replace the previously removed legacy implementation. There is no change in functionality, it can be used on any I2C device. The device tree configuration may look like this for example: bootcount { compatible = "u-boot,bootcount-i2c"; i2cbcdev = <&i2c_rtc>; offset = <0x11>; }; Signed-off-by: Philip Richard Oberfichtner <[email protected]> Reviewed-by: Heiko Schocher <[email protected]>
2023-10-31i2c: Implement i2c_get_chip_by_phandle()Philip Richard Oberfichtner
This new function enhances the i2c_get_chip*() toolbox by implementing a variant that does not require a chip_addr. Instead, the desired device is pointed to by a phandle. Signed-off-by: Philip Richard Oberfichtner <[email protected]> Reviewed-by: Heiko Schocher <[email protected]>
2023-10-31bootcount: Remove legacy I2C driverPhilip Richard Oberfichtner
The legacy I2C bootcounter will hereby be removed and eventually be replaced by a driver model implementation in the follow-up commit. The legacy driver has the following drawbacks: - It's not adhering to the driver model - Settings are grabbed from Kconfig rather than device tree - i2c_{read,write} are being used instead of dm_i2c_{read,write} Signed-off-by: Philip Richard Oberfichtner <[email protected]> Reviewed-by: Heiko Schocher <[email protected]>
2023-10-30Merge branch '2023-10-30-assorted-general-updates'Tom Rini
- Two Kconfig content fixes, fix some issues reported by Coverity, resync get_maintainer.pl (two small fixees), update i2c_eeprom, and fix an off by one in addrmap_set_entry
2023-10-30misc: i2c_eeprom: consider pagesize when writing to eepromMichel Alex
Calculate the maximum length of the buffer when writing across the page boundary. If the buffer length (len) exceeds the page boundary (pagesize), split it. Use this length instead of comparing the length with the pagesize, because if the write start address (offset) is not at the beginning of a page and the page_offset + len is greater than the page boundary (pagesize), the write operation would overflow the current page and the behaviour can be undefined (e.g. at24). Signed-off-by: Alex Michel <[email protected]>
2023-10-30get_maintainer.pl: update from Linux kernel v6.5Tom Rini
Update U-Boot's version of scripts/get_maintainer.pl to sync it up with the latest changes to the Linux kernel's version of the same script. The last sync was with Linux kernel version v5.13-rc6. The commits to the kernel's get_maintainer.pl since then (starting with the most recent) are: 11fb48961e52 get_maintainer: Honor mailmap for in file emails 26d98e9f78da get_maintainer: don't remind about no git repo when --nogit is used Signed-off-by: Tom Rini <[email protected]>
2023-10-30Kconfig: Remove all default n/no optionsMichal Simek
Similar change was done by commit b4c2c151b14b ("Kconfig: Remove all default n/no options") and again sync is required. default n/no doesn't need to be specified. It is default option anyway. Signed-off-by: Michal Simek <[email protected]> Reviewed-by: Svyatoslav Ryhel <[email protected]> # tegra Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Angelo Dureghello <[email protected]>
2023-10-30tools: mkimage: fix sfspl_image_extract_subimage()Heinrich Schuchardt
Do not leak file descriptor if writing fails. Correct the error text if opening a file fails. Addresses-Coverity-ID: 467054 Resource leaks Fixes: 64fd30d367a1 ("tools: mkimage: Add StarFive SPL image support") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-10-30arm_ffa: fix: remove deadcode in ffa_print_error_log()Abdellatif El Khlifi
address the CID 464361 Control flow issues [1] [1]: https://lore.kernel.org/all/20230821210927.GL3953269@bill-the-cat/ Signed-off-by: Abdellatif El Khlifi <[email protected]> Cc: Tom Rini <[email protected]>
2023-10-30common: Reword CONSOLE_RECORD_.*SIZE help textsTom Rini
Make it clear that in the options for setting the console record buffer sizes that we are talking about buffers for that feature specifically and not the general console buffers. Signed-off-by: Tom Rini <[email protected]>
2023-10-30addrmap: Fix off by one in addrmap_set_entry()Dan Carpenter
The > comparison needs to be changed to >= to prevent an out of bounds write on th next line. Signed-off-by: Dan Carpenter <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-10-30i2c: designware_i2c: adjust timing calculationHeinrich Schuchardt
In SPL probing of the designware_i2c device on the StarFive VisionFive 2 board fails with dw_i2c: mode 0, ic_clk 1000000, speed 100000, period 10 rise 1 fall 1 tlow 5 thigh 4 spk 0 dw_i2c: bad counts. hcnt = -4 lcnt = 4 device_probe: i2c@12050000 failed to probe -22 When changing the offset for the high phase from 7 to 3 the device is probed correctly. This now matches the value from the Linux driver. Without this fix the memory size of the StarFive VisionFive 2 board cannot be read from EEPROM. Fixes: e71b6f6622d6 ("i2c: designware_i2c: Rewrite timing calculation") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Heiko Schocher <[email protected]>
2023-10-30i2c: nuvoton: remove standard mode onlyJim Liu
first version is only support standard mode. remove this judgment to support standard/fast/fast plus mode. Signed-off-by: Jim Liu <[email protected]> Changes for v2: - add commit message Reviewed-by: Heiko Schocher <[email protected]>
2023-10-28Merge branch 'master_tmio_fixes' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-sh - MMC fixes for Renesas platforms
2023-10-28Merge branch '2023-10-28-assorted-platform-updates'Tom Rini
- Fix some mpc85xx platforms, fixes for a few TI K3 platforms, enable usb device and fastboot on verdin-imx8mp, make all QEMU platforms use the default console buffer sizes, vexpress platform fixes, and update synquacer flash layout
2023-10-28iot2050: Allow for more than 1 USB storage deviceJan Kiszka
This was lost in refactoring while some users of the IOT2050 expect it to work: Make sure that up to 3 USB storage devices are probed. Fixes: 53873974a4b0 ("include: armv7: Enable distroboot across all configs") Signed-off-by: Jan Kiszka <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2023-10-28mpc85xx: relocate code in non-SPL buildMartin Fäcknitz
When building a non-SPL image, relocation is needed. This patch restores the old behaviour before commit b35316fb67cb ("Convert CONFIG_SPL_INIT_MINIMAL et al to Kconfig") was only defined if CONFIG_SPL_BUILD was defined. Fixes: b35316fb67cb ("Convert CONFIG_SPL_INIT_MINIMAL et al to Kconfig") Signed-off-by: Martin Fäcknitz <[email protected]>
2023-10-27board: synquacer: Update the flash image layoutIlias Apalodimas
The SynQuacer Developerbox, in EFI mode, supports A/B capsule updates and single image ones. The flash layout in the latter case is outdated, update it with the new offsets and images Signed-off-by: Ilias Apalodimas <[email protected]> Tested-By: Masahisa Kojima <[email protected]>
2023-10-27driver: misc: k3_avs: Add support for thermal shutdownUdit Kumar
To avoid thermal burn out, program thermal shutdown value in VTM (Voltage and Thermal Manager) IP. Part of Linux kernel driver (drivers/thermal/k3_j72xx_bandgap.c) is ported from kernel 6.6-rc1, which sets thermal shutdown values. Signed-off-by: Udit Kumar <[email protected]> Signed-off-by: Neha Francis <[email protected]>
2023-10-27vexpress64: Add MMC card to the BOOT_TARGET_DEVICES of FVPWei Chen
Add MMC disk to FVP's BOOT_TARGET_DEVICES. This allows the user to boot from MMC devices. Signed-off-by: Wei Chen <[email protected]> Signed-off-by: Qi Feng <[email protected]> Reviewed-by: Linus Walleij <[email protected]>
2023-10-27misc: vexpress_config: Use member .priv_auto to set the private dataWei Chen
In current vexpress_config_probe code, it sets the uclass private data directly. This will cause one compilation error: drivers/misc/vexpress_config.c:114:27: error: lvalue required as left operand of assignment 114 | dev_get_uclass_priv(dev) = priv; | ^ In this patch we set the uclass private data through struct member .priv_auto, and this compilation error disappears. Signed-off-by: Wei Chen <[email protected]> Signed-off-by: Qi Feng <[email protected]> Reviewed-by: Linus Walleij <[email protected]>
2023-10-27config: qemu: relax print and console buffer sizeHeinrich Schuchardt
QEMU print and console buffer sizes have been restricted on QEMU below their default values. One of the side effects of the print buffer size restriction is output truncation of the 'efidebug dh' command. As QEMU does not have special memory size restrictions remove the settings from the defconfig files and go with the generic defaults. Fixes: d0ee7f295d74 ("Convert CONFIG_SYS_PBSIZE to Kconfig") Fixes: d31466b382dd ("Convert CONFIG_SYS_CBSIZE to Kconfig") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-10-27board: siemens: iot2050: Fix M.2 detectionJan Kiszka
The "simpler" the logic, the higher the probability to not test and get things wrong, again: The absence of a "-PG2" suffix is not sufficient to derive that we are on PG1. There is also "IOT2050-ADVANCED-M2". Finally fix that by exactly matching against the two PG1 device names. While changing this, we can also drop the not really needed check for !board_is_sr1 in board_is_m2 and call the boards by their names ("board_is_pg1"). Reported-and-tested-by: Bao Cheng Su <[email protected]> Signed-off-by: Jan Kiszka <[email protected]>
2023-10-27board: toradex: verdin-imx8mp: enable usb device and fastboot supportMarcel Ziswiler
Enable USB device and fastboot support which may be used to load the Toradex Easy Installer FIT image. While at it also enable USB mass storage aka UMS support. Note that the i.MX 8M Plus recovery mode support is based on the USB boot stage of the BOOTROM and does NOT require USB SDP SPL aka serial downloader support. Signed-off-by: Marcel Ziswiler <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-10-27Merge tag 'tpm-next-27102023' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-tpm bootX measurements and measurement API moved to u-boot core: Up to now, U-Boot could perform measurements and EventLog creation as described by the TCG spec when booting via EFI. The EFI code was residing in lib/efi_loader/efi_tcg2.c and contained both EFI specific code + the API needed to access the TPM, extend PCRs and create an EventLog. The non-EFI part proved modular enough and moving it around to the TPM subsystem was straightforward. With that in place we can have a common API for measuring binaries regardless of the boot command, EFI or boot(m|i|z), and contructing an EventLog. I've tested all of the EFI cases -- booting with an empty EventLog and booting with a previous stage loader providing one and found no regressions. Eddie tested the bootX part. Eddie also fixed the sandbox TPM which couldn't be used for the EFI code and it now supports all the required capabilities. This had a slight sideeffect in our testing since the EFI subsystem initializes the TPM early and 'tpm2 init' failed during some python tests. That code only opens the device though, so we can replace it with 'tpm2 autostart' which doesn't error out and still allows you to perfom the rest of the tests but doesn't report an error if the device is already opened. There's a few minor issues with this PR as well but since testing and verifying the changes takes a considerable amount of time, I prefer merging it now. Heinrich has already sent a PR for -master containing "efi_loader: fix EFI_ENTRY point on get_active_pcr_banks" and I am not sure if that will cause any conflicts, but in any case they should be trivial to resolve. Both the EFI and non-EFI code have a Kconfig for measuring the loaded Device Tree. The reason this is optional is that we can't reason when/if devices add random info like kaslr-seed, mac addresses etc in the DT. In that case measurements are random, board specific and eventually useless. The reason it was difficult to fix it prior to this patchset is because the EFI subsystem and thus measurements was brought up late and DT fixups might have already been applied. With this patchset we can measure the DT really early in the future. Heinrich also pointed out that the two Kconfigs for the DTB measurements can be squashed in a single one and that the documentation only explains the non-EFI case. I agree on both but as I said this is a sane working version, so let's pull this first it's aleady big enough and painful to test.
2023-10-27Merge tag 'efi-2024-01-rc2-2' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request efi-2024-01-rc2-2 Documentation: * Bump urllib3 version * Replace references to dm_dump_all() with dm_dump_tree() * Update description of build dependencies for Alpine Linux * Fix typo in gpt example * Fix ordering of shell commands UEFI: * Move misplace EFI_ENTRY macro
2023-10-27efi_loader: fix EFI_ENTRY point on get_active_pcr_banksIlias Apalodimas
efi_tcg2_get_active_pcr_banks doesn't immediately call the EFI_ENTRY() wrapper once it enters the function. Move the call a few lines above to cover the error cases properly as well. Signed-off-by: Ilias Apalodimas <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2023-10-27doc: usage: fix ordering of shell commandsTom Fitzhenry
I initially didn't find the bootz docs when I went looking for them. :) Signed-off-by: Tom Fitzhenry <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2023-10-27doc: gpt: fix example of echoing variableTom Fitzhenry
Fixes: 44c5d7764bf4 ("doc: Add gpt command documentation") Signed-off-by: Tom Fitzhenry <[email protected]> Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2023-10-27doc: Replace dm_dump_all() with dm_dump_tree()Dylan Corrales
Replace dm_dump_all() with dm_dump_tree() in driver model documentation, to reflect changes introduced in commit 145287040480 ("dm: core: Rename dm_dump_all()"). Fixes: 145287040480 ("dm: core: Rename dm_dump_all()") Signed-off-by: Dylan Corrales <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Reivewed-by: Heinrich Schuchardt <[email protected]>
2023-10-27sphinx: Bump urllib3 versionTom Rini
While unlikely to be a direct issue for us, urllib3 before 2.0.7 is vulnerable to CVE-2023-45803, so bump our version up. Reported-by: GitHub dependabot Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2023-10-27Merge tag 'u-boot-amlogic-20231027' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-amlogic - Fix environment saving for new Android boot features on vim3*_android - Add SPIFC support for Amlogic A1 - Add DFU RAM boot step when booting over USB
2023-10-27ARM: amlogic: ad401: enable SPIFCIgor Prusov
Enable Amlogic A1 SPI FLash Controller support. Signed-off-by: Igor Prusov <[email protected]> Reviewed-by: Neil Armstrong <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Neil Armstrong <[email protected]>