summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-07-04Merge tag 'fsl-qoriq-2022-7-3' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-fsl-qoriq into next Several patches from Pali - fsl_elbc detection fix - sort p2020 dts node, drop duplicated node - p1_p2_rdb_pc board cleanup - simplify mpc85xx _start_cont jumping code
2022-07-04Prepare v2022.07-rc6v2022.07-rc6Tom Rini
Signed-off-by: Tom Rini <[email protected]>
2022-07-04configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <[email protected]>
2022-07-04usb: host: ehci-generic: Fix error checkAndre Przywara
Commit 81755b8c20fe ("usb: host: ehci-generic: Make resets and clocks optional") improved the error check to cover the reset property being optional. However this was using the wrong error variable for the check, so would now never fail. Use the correct error variable for checking the result of reset_get_bulk(), to actually report genuine errors. Fixes: 81755b8c20fe ("usb: host: ehci-generic: Make resets and clocks optional") Signed-off-by: Andre Przywara <[email protected]>
2022-07-03powerpc: mpc85xx: Simplify jump to _start_cont in flash codePali Rohár
After more patches code for jumping to _start_cont symbol in flash memory involved to code with useless mathematical operations. Currently it does: r3 := CONFIG_SYS_MONITOR_BASE + ABS(_start_cont) - CONFIG_SYS_MONITOR_BASE jump to r3 Which is equivalent of just: r3 := ABS(_start_cont) jump to r3 The purpose of that code is just to jump to _start_code symbol, independently of program counter. So branch must be done to absolute address. Trying to write: ba _start_cont just cause linker error: LD u-boot powerpc-linux-gnuspe-ld.bfd: arch/powerpc/cpu/mpc85xx/start.o: in function `switch_as': (.bootpg+0x4b8): relocation truncated to fit: R_PPC_ADDR24 against symbol `_start_cont' defined in .text section in arch/powerpc/cpu/mpc85xx/start.o make: *** [Makefile:1801: u-boot] Error 1 Probably by the fact that absolute address cannot be expressed by 24-bits. So write the code via mtlr+blr pattern as it was before and load general purpose register with absolute address of the symbol: lis r3,_start_cont@h ori r3,r3,_start_cont@l mtlr r3 blr Seems that gcc and gnu ld linker support symbol@h and symbol@l syntax like number@h and number@l without any problem. And disassembling of compiler u-boot binary proved that lis+ori instructions are called with numbers which represent halves of absolute address of _start_cont symbol. Signed-off-by: Pali Rohár <[email protected]>
2022-07-03board: freescale: p1_p2_rdb_pc: Remove mapping for TDM-PMC cardPali Rohár
From whole P1/P2 family of RDB boards is TDM-PMC card (PCI Mezzanine Card, Freescale PQ-MDS-T1) available only on P1021RDB and P1025RDB boards. So address mapping for TDM-PMC card on LBC should not be enabled on any other P1/P2 RDB board as there is no device at that TDM-PMC address. Support for P1021RDB and P1025RDB boards was already removed from mainline U-Boot in commits 6d1dd76afe85 ("board/freescale: Remove P1021RDB board support") and d521cece5adb ("board/freescale: Remove P1025RDB board support"). So do not enable TDM-PMC address mapping on remaining P1/P2 RDB boards and remove all macros related to TDM-PMC address mappings. Signed-off-by: Pali Rohár <[email protected]>
2022-07-03board: freescale: p1_p2_rdb_pc: Allow to compile without __SW_BOOT_SD macroPali Rohár
Add #ifdef guard for __SW_BOOT_SD macro like there are guards for all other __SW_BOOT_* macros. Signed-off-by: Pali Rohár <[email protected]>
2022-07-03board: freescale: p1_p2_rdb_pc: Allow to compile without BOARD_NAMEPali Rohár
Signed-off-by: Pali Rohár <[email protected]>
2022-07-03powerpc: dts: p2020: Remove duplicate pic@40000 nodePali Rohár
DT node pic@40000 is defined explicitly in p2020-post.dtsi file and also transitionally via include file pq3-mpic.dtsi. Remove duplicate definition from p2020-post.dtsi. No change in final DTB file. Signed-off-by: Pali Rohár <[email protected]>
2022-07-03powerpc: dts: p2020: Sort DT nodes by their addressesPali Rohár
No functional change. Signed-off-by: Pali Rohár <[email protected]>
2022-07-03mtd: rawnand: fsl_elbc: Fix detection when nand_scan_ident() has not ↵Pali Rohár
selected ecc.mode ecc.mode is set to 0 (aliased to NAND_ECC_NONE) either when function nand_scan_ident() has not selected ecc.mode or when it selected it to none ecc mode. Distinguish between these two states by checking of node property "nand-ecc-mode" which function nand_scan_ident() uses for filling ecc.mode. This change fixes usage of none ecc mode if it is specified in DTS file. Fixes: c9ea9019c5aa ("mtd: rawnand: fsl_elbc: Use ECC configuration from device tree") Signed-off-by: Pali Rohár <[email protected]>
2022-07-02Merge tag 'efi-2022-07-rc6' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request for efi-2022-07-rc6 UEFI: * Fix EFI_IO_BLOCK_PROTOCOL: read correct blocks on partitions Other: * Honor CONFIG_SYS_64BIT_LBA in the disk uclass
2022-07-02Merge branch '2022-07-01-additional-critical-fixes-and-updates'Tom Rini
- Update some MAINTAINERS entries, fix a regression on FIT images
2022-07-02EFI: Fix ReadBlocks API reading incorrect sector for UCLASS_PARTITION devicesPaul Barbieri
The requsted partition disk sector incorrectly has the parition start sector added in twice for UCLASS_PARTITION devices. The efi_disk_rw_blocks() routine adds the diskobj->offset to the requested lba. When the device is a UCLASS_PARTITION, the dev_read() or dev_write() routine is called which adds part-gpt_part_info.start. This causes I/O to the wrong sector. Takahiro Akashi suggested removing the offset field from the efi_disk_obj structure since disk-uclass.c handles the partition start biasing. Device types other than UCLASS_PARTITION set the diskobj->offset field to zero which makes the field unnecessary. This change removes the offset field from the structure and removes all references from the code which is isolated to the lib/efi_loader/efi_disk.c module. This change also adds a test for the EFI ReadBlocks() API in the EFI selftest code. There is already a test for reading a FAT file. The new test uses ReadBlocks() to read the same "disk" block and compare it to the data read from the file system API. Signed-Off-by: Paul Barbieri <[email protected]> Cc: Heinrich Schuchardt <[email protected]> Cc: AKASHI Takahiro <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2022-07-02disk: honor CONFIG_SYS_64BIT_LBAHeinrich Schuchardt
Without the patch for qemu-x86_defconfig: * sizeof(lbaint_t) = 4 in dev_read() * sizeof(lbaint_t) = 8 in blkcache_read() CONFIG_SYS_64BIT_LBA is defined in common.h via include/configs/x86-common.h:22. We have to include common.h before including blk.h. Signed-off-by: Heinrich Schuchardt <[email protected]>
2022-07-01image: fit: Use stack allocation macroJoel Stanley
The documentation above the DEFINE_ALIGN_BUFFER says it's for use outside functions, but we're inside one. Instead use ALLOC_CACHE_ALIGN_BUFFER, the stack based macro, which also includes the cache alignment. Fixes: b583348ca8c8 ("image: fit: Align hash output buffers") Signed-off-by: Joel Stanley <[email protected]> Tested-by: Chia-Wei Wang <[email protected]> Reviewed-by: Sean Anderson <[email protected]>
2022-07-01MAINTAINERS: Add Dario and Michael as NAND maintainersMichael Trimarchi
Both of us are working on NAND subsystem on several architectures and we have boards and projects to improve the subsystem in uboot. The idea is to guarantee quick feedback on patches sent on mailing list and most of the time the possibilities to test them. Cc: Dario Binacchi <[email protected]> Signed-off-by: Michael Trimarchi <[email protected]> Acked-by: Tom Rini <[email protected]>
2022-07-01board/BuR/*: replace maintainer of BuR boardsHannes Schmelzer
Since I'm leaving the company with end of June, the maintainership will be transferred to Wolfgang Wallner. Signed-off-by: Hannes Schmelzer <[email protected]> Signed-off-by: Wolfgang Wallner <[email protected]>
2022-07-01chameleonv3: Add MAINTAINERS fileTom Rini
This file was missing, add. Signed-off-by: Tom Rini <[email protected]>
2022-07-01Merge commit 'ef5ba2cef4a08b68caaa9215fcac142d3025bbf7' of ↵Tom Rini
https://github.com/tienfong/uboot_mainline
2022-07-01Merge tag 'u-boot-amlogic-20220701' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-amlogic - search dtb for meson-axg-usb-ctrl on board axg
2022-07-01drivers: clk: Update license for Intel N5X deviceTeik Heng Chong
All the source code of clk-mem-n5x.c and clk-n5x.c are from Intel, update the license to use both GPL2.0 and BSD-3 Clause because this copy of code may used for open source and internal project. Signed-off-by: Teik Heng Chong <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2022-07-01socfpga: arria10: Allow dcache_enable before relocationPaweł Anikiel
Before relocating to SDRAM, the ECC is initialized by clearing the whole SDRAM. In order to speed this up, dcache_enable is used (see sdram_init_ecc_bits). Since commit 503eea451903 ("arm: cp15: update DACR value to activate access control"), this no longer works, because running code in OCRAM with the XN bit set causes a page fault. Override dram_bank_mmu_setup to disable XN in the OCRAM and setup DRAM dcache before relocation. Signed-off-by: Paweł Anikiel <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-07-01socfpga: arria10: Wait for fifo empty after writing bitstreamPaweł Anikiel
For some reason, on the Mercury+ AA1 module, calling fpgamgr_wait_early_user_mode immediately after writing the peripheral bitstream leaves the fpga in a broken state (ddr calibration hangs). Adding a delay before the first sync word is written seems to fix this. Inspecting the fpgamgr registers before and after the delay, imgcfg_FifoEmpty is the only bit that changes. Waiting for this bit (instead of a hardcoded delay) also fixes the issue. Signed-off-by: Paweł Anikiel <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-07-01socfpga: arria10: Improve bitstream loading speedPaweł Anikiel
Apply some optimizations to speed up bitstream loading (both for full and split periph/core bitstreams): * Change the size of the first fs read, so that all the subsequent reads are aligned to a specific value (called MAX_FIRST_LOAD_SIZE). This value was chosen so that in subsequent reads the fat fs driver doesn't have to allocate a temporary buffer in get_contents (assuming 8KiB clusters). * Change the buffer size to a larger value when reading to ddr (but not too large, because large transfers cause a stack overflow in the dwmmc driver). Signed-off-by: Paweł Anikiel <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-07-01socfpga: arria10: Replace delays with busy waiting in cm_full_cfgPaweł Anikiel
Using udelay while the clocks aren't fully configured causes the timer system to save the wrong clock rate. Use sdelay and wait_on_value instead (the values used in these functions were found experimentally). Signed-off-by: Paweł Anikiel <[email protected]> Reviewed-by: Tien Fong Chee <[email protected]>
2022-07-01sysreset: socfpga: Use parent device for reading base addressPaweł Anikiel
This driver is a child of the rstmgr driver, both of which share the same devicetree node. As a result, passing the child's udevice pointer to dev_read_addr_ptr results in a failure of reading the #address-cells property. Use the parent udevice pointer instead. Signed-off-by: Paweł Anikiel <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-07-01misc: atsha204a: Increase wake delay by tWHIPaweł Anikiel
From the ATSHA204A datasheet (document DS40002025A): Wake: If SDA is held low for a period greater than tWLO, the device exits low-power mode and, after a delay of tWHI, is ready to receive I2C commands. tWHI value can be found in table 7-2. Signed-off-by: Paweł Anikiel <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-07-01config: Add Chameleonv3 configPaweł Anikiel
Add defconfig and Kconfig files for Google Chameleon V3 board Signed-off-by: Paweł Anikiel <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-07-01board: Add Chameleonv3 board dirPaweł Anikiel
Add board directory for Google Chameleon V3 board Signed-off-by: Paweł Anikiel <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-07-01arm: dts: Add Chameleonv3 devicetreesPaweł Anikiel
Add devicetrees for Google Chameleon V3 board Signed-off-by: Paweł Anikiel <[email protected]> Signed-off-by: Alexandru M Stan <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-07-01arm: dts: Add Chameleonv3 handoff headersPaweł Anikiel
Add handoff headers for the Google Chameleonv3 variants: 480-2 and 270-3. Both files were generated using qts-filter-a10.sh. Signed-off-by: Paweł Anikiel <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-07-01arm: dts: Add Mercury+ AA1 devicetreesPaweł Anikiel
Devicetree headers for Mercury+ AA1 module Signed-off-by: Paweł Anikiel <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-06-30Merge tag 'u-boot-rockchip-20220630' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-rockchip - Fix for rk3328 nonopi-r2s boot env; - Fix for rk8xx pmic boot on power plug-in; - Fix for tee.bin support in fit image; - rk3288 board dts update or fix; - Some rk3399 board fix;
2022-06-30Merge tag 'u-boot-at91-2022.10-a' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-at91 into next First set of u-boot-at91 features for the 2022.10 cycle: This feature set includes mostly fixes and alignments: DT alignment with Linux for sama7g5, removal of invalid eeprom compatibles, removal of extra debug_uart_init calls for all at91 boards, support for pio4 driver pioE bank, and other minor fixes and enhancements for sam9x60 and sama5d2_icp boards.
2022-06-30Merge tag 'versal-qspi-for-v2022.10' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-microblaze into next Versal QSPI/OSPI changes for v2022.10 - Add new flash types - Add cadence ospi driver for Xilinx Versal
2022-06-30gpio: atmel_pio4: add support for PIO_PORTEMihai Sain
Add support for gpio PORT E, which is available on e.g. sama7g5 SoC. Signed-off-by: Mihai Sain <[email protected]>
2022-06-29Merge branch '2022-06-28-Kconfig-migrations' into nextTom Rini
- Convert a large number of CONFIG symbols to Kconfig. Of note is a large chunk of USB symbols (and dead code removal), ensuring all SPL/TPL/VPL symbols have an appropriate dependency, largely (but not entirely) removing the testing of CONFIG_SPL_BUILD in board headers, and allowing CONFIG_EXTRA_ENV_TEXT and CONFIG_EXTRA_ENV_SETTINGS to co-exist as this facilities migration of many platforms.
2022-06-29spi: cadence-qspi: Fix programming ospi flash speedT Karthik Reddy
When the requested flash speed is 0, the baudrate division for the requested speed causing drop in the performance. So set the ospi flash to operate at max frequency when requested speed is zero. Signed-off-by: T Karthik Reddy <[email protected]> Signed-off-by: Ashok Reddy Soma <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-06-29spi: cadence_qspi: Enable apb linear mode for apb read & write operationsT Karthik Reddy
On versal platform, enable apb linear mode for apb read and write execute operations amd disable it when using dma reads. This is done by xilinx_pm_request() secure calls when CONFIG_ZYNQMP_FIRMWARE is enabled, else we use direct raw reads and writes in case of mini U-Boot. Signed-off-by: T Karthik Reddy <[email protected]> Signed-off-by: Ashok Reddy Soma <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-06-29spi: cadence-qspi: reset qspi flash for versal platformT Karthik Reddy
When flash operated at non default mode like DDR, flash need to be reset to operate in SDR mode to read flash ids by spi-nor framework. Reset the flash to the default state before using the flash. This reset is handled by a gpio driver, in case of mini U-Boot as gpio driver is disabled, we do raw read and write access by the registers. Versal platform utilizes spi calibration for read delay programming, so incase by default read delay property is set in DT. We make sure not to use read delay from DT by overwriting read_delay with -1. Signed-off-by: T Karthik Reddy <[email protected]> Signed-off-by: Ashok Reddy Soma <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-06-29arm64: versal: Add versal specific cadence ospi driverT Karthik Reddy
Add support for cadence ospi driver for Versal platform. This driver provides support for DMA read operation which utilizes cadence qspi driver. If "cdns,is-dma" DT property is specified use dma for read operation from cadence_qspi driver. As cadence_qspi_apb_dma_read() is defined in cadence_ospi_versal driver add a weak function defination in cadence_qspi driver. Signed-off-by: T Karthik Reddy <[email protected]> Signed-off-by: Ashok Reddy Soma <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-06-29spi: cadence-qspi: move cadence qspi macros to header fileT Karthik Reddy
Move all the cadence macros from cadence_qspi_apb.c to cadence_qspi.h file. Signed-off-by: T Karthik Reddy <[email protected]> Signed-off-by: Ashok Reddy Soma <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-06-29mtd: spi-nor-ids: Add support for flashes tested by xilinxAshok Reddy Soma
Add support for various flashes from below manufacturers which are tested by xilinx for years. EON: en25q128b GIGA: gd25lx256e ISSI: is25lp008 is25lp016 is25lp01g is25wp008 is25wp016 is25wp01g is25wx256 MACRONIX: mx25u51245f mx66u1g45g mx66l2g45g MICRON: mt35xl512aba mt35xu01g SPANSION: s70fs01gs_256k SST: sst26wf016b WINBOND: w25q16dw w25q16jv w25q512jv w25q32bv w25h02jv Signed-off-by: Ashok Reddy Soma <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2022-06-29mtd: mxs_nand_spl: fix nand_command protocol violationAndrea Scian
mxs_nand_command() implementation assume that it's working with a LP NAND, which is a common case nowadays and thus uses two bytes for column address. However this is wrong for NAND_CMD_READID and NAND_CMD_PARAM, which expects only one byte of column address, even for LP NANDs. This leads to ONFI detection problem with some NAND manufacturer (like Winbond) but not with others (like Samsung and Spansion) We fix this with a simple workaround to avoid the 2nd byte column address for those two commands. Also align the code with nand_base to support 16 bit devices. Tested on an iMX6SX device with: * Winbond W29N04GVSIAA * Spansion S34ML04G100TF100 * Samsung K9F4G08U00 Tested on imx8mn device with: * Windbond W29N04GV Signed-off-by: Andrea Scian <[email protected]> CC: Stefano Babic <[email protected]> Signed-off-by: Michael Trimarchi <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2022-06-29rockchip: pinebook-pro: sync PBP dtb to 5.18Peter Robinson
Sync the pinebook pro to upstream 5.18, in particular this brings brings in a fix so the DP is disabled so Linux will actually boot. Signed-off-by: Peter Robinson <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2022-06-29rockchip: rockpro64: enable ledsPeter Robinson
The Rockpro64 has some GPIO leds so let's enable them so the user gets some output in early boot. Signed-off-by: Peter Robinson <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2022-06-29rockchip: pinebook-pro: minor SPI flash fixesPeter Robinson
Set a default offset for environment so it doesn't write it to unexpected locations, drop unneeded mtd config option. Signed-off-by: Peter Robinson <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2022-06-29rockchip: Add option to prevent booting on power plug-inChris Morgan
For Rockchip boards with the all rk8xx series PMICs (excluding the rk808), it is sometimes desirable to not boot whenever the device is plugged in. An example would be for the Odroid Go Advance. This provides a configurable option to check the PMIC says it was powered because of a plug-in event. If the value is 1 and this option is selected, the device shuts down shortly after printing a message to console stating the reason why it's shutting down. Powering up the board with the power button is not affected. This patch parallels the work done in the following patch series: https://lore.kernel.org/u-boot/[email protected]/ Signed-off-by: Chris Morgan <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2022-06-29power: pmic: rk8xx: Support sysreset shutdown methodChris Morgan
Add support for sysreset shutdown for this PMIC. The values were pulled from the various datasheets, but for now it has only been tested on the rk817 (for an Odroid Go Advance). Signed-off-by: Chris Morgan <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]> Reviewed-by: Kever Yang <[email protected]>