summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-10-10mtd: spi-nor-ids: Add support for S28HS256TTakahiro Kuwano
Infineon S28HS256T is 256Mb Octal SPI device which has same functionalities with 512Mb and 1Gb parts. Link:https://www.infineon.com/dgdl/Infineon-S28HS256T_S28HL256T_256Mb_SEMPER_Flash_Octal_interface_1_8V_3-DataSheet-v02_00-EN.pdf?fileId=8ac78c8c8fc2dd9c018fc66787aa0657 Signed-off-by: Takahiro Kuwano <[email protected]> Reviewed-by: Pratyush Yadav <[email protected]> Reviewed-by: Tudor Ambarus <[email protected]>
2024-10-10Merge patch series "mtd: spi-nor-ids: Add NO_CHIP_ERASE flag to Infineon 2Gb ↵Tom Rini
parts" Takahiro Kuwano <[email protected]> says: S25HS02GT, S25HL02GT, and S28HS02GT are dual-die package parts and do not support chip erase. In v2, split the patch and add fixes tag. Takahiro Kuwano (2): mtd: spi-nor-ids: Add NO_CHIP_ERASE flag to Infineon s25hl02Gt and s25hs02gt mtd: spi-nor-ids: Add NO_CHIP_ERASE flag to Infineon s28hs02gt
2024-10-10mtd: spi-nor-ids: Add NO_CHIP_ERASE flag to Infineon s28hs02gtTakahiro Kuwano
S28HS02GT is dual-die package parts and do not support chip erase. Fixes: 16dd1095101 ("mtd: spi-nor-ids: Add Infineon(Cypress) s28hs02gt ID") Reviewed-by: Tudor Ambarus <[email protected]> Signed-off-by: Takahiro Kuwano <[email protected]>
2024-10-10mtd: spi-nor-ids: Add NO_CHIP_ERASE flag to Infineon s25hl02Gt and s25hs02gtTakahiro Kuwano
S25HL02GT and S25HS02GT are dual-die package parts and do not support chip erase. Fixes: c95a914aed7 ("mtd: spi-nor-ids: Add Cypress s25hl-t/s25hs-t") Reviewed-by: Tudor Ambarus <[email protected]> Signed-off-by: Takahiro Kuwano <[email protected]>
2024-10-10Merge patch series "mtd: spi-nor: Add support for S25FS-S family"Tom Rini
[email protected] <[email protected]> says: From: Takahiro Kuwano <[email protected]> The S25FS064S, S25FS128S, and S25FS256S are the same family of SPI NOR Flash devices with S25FS512S. Datasheets: https://www.infineon.com/dgdl/Infineon-S25FS064S_64_Mb_8_MB_FS-S_Flash_SPI_Multi-I_O_1-DataSheet-v10_00-EN.pdf?fileId=8ac78c8c7d0d8da4017d0ed526b25412 https://www.infineon.com/dgdl/Infineon-S25FS128S_S25FS256S_1.8_V_Serial_Peripheral_Interface_with_Multi-I_O_MirrorBit(R)_Non-Volatile_Flash-DataSheet-v15_00-EN.pdf?fileId=8ac78c8c7d0d8da4017d0ed6b5ab5758
2024-10-10mtd: spi-nor-id: Add S25FS064S, S25FS128S, S25FS256S IDsTakahiro Kuwano
The S25FS064S, S25FS128S, and S25FS256S are the same family of SPI NOR Flash devices with S25FS512S. Some difference depending on the device densities are taken care in post SFDP fixup. Signed-off-by: Takahiro Kuwano <[email protected]> Reviewed-by: Pratyush Yadav <[email protected]>
2024-10-10mtd: spi-nor-id: Use INFO6 macro for S25FL-STakahiro Kuwano
The 6th ID byte is needed to distiguish S25FL-S and S25FS-S families. Signed-off-by: Takahiro Kuwano <[email protected]> Reviewed-by: Pratyush Yadav <[email protected]> Reviewed-by: Dhruva Gole <[email protected]>
2024-10-10mtd: spi-nore-core: Fix 4KB erase opcode for s25fs-sTakahiro Kuwano
The correct 4KB erase opcode should be selected based on the address width currently used. Fixes: 562d166a13 ("mtd: spi-nor-core: Add fixups for s25fs512s") Signed-off-by: Takahiro Kuwano <[email protected]> Reviewed-by: Pratyush Yadav <[email protected]> Reviewed-by: Dhruva Gole <[email protected]>
2024-10-10mtd: spi-nor-ids: Extend w25q16cl entry with locking supportMarek Vasut
The w25q16cl does support locking the same way w25q16dw does, fill in the missing flags. Signed-off-by: Marek Vasut <[email protected]>
2024-10-10mtd: spi-nor-ids: Deduplicate mx25u25635f entryMarek Vasut
The mx25u25635f entry exists twice in spi_nor_ids, remove the less complete variant of the entry and keep only one copy of it. Fixes: f0084f1dfdbc ("drivers/mtd/spi/spi-nor-ids.c: add mx25u25635f support") Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Michal Simek <[email protected]> Reviewed-by: Tudor Ambarus <[email protected]>
2024-10-10mtd: spi-nor-ids: Deduplicate w25q16dw entryMarek Vasut
The w25q16dw entry exists twice in spi_nor_ids, remove the less complete variant of the entry and keep only one copy of it. Fixes: baef13ec9d59 ("mtd: spi-nor-ids: Add support for flashes tested by xilinx") Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Michal Simek <[email protected]> Reviewed-by: Tudor Ambarus <[email protected]>
2024-10-10mtd: spi-nor: Clear Winbond SR3 WPS bit on bootMarek Vasut
Some Winbond SPI NORs have special SR3 register which is used among other things to control whether non-standard "Individual Block/Sector Write Protection" (WPS bit) locking scheme is activated. This non-standard locking scheme is not supported by either U-Boot or Linux SPI NOR stack so make sure it is disabled, otherwise the SPI NOR may appear locked for no obvious reason. This SR3 WPS appears e.g. on W25Q16FW which has the same ID as W25Q16DW, but the W25Q16DW does not implement the SR3 WPS bit. Signed-off-by: Marek Vasut <[email protected]>
2024-10-09Merge tag 'efi-2025-01-rc1' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request efi-2025-01-rc1 Documentation: * Move the generic memory-documentation to doc/ * Fix typo boormethod UEFI: * Delete rng-seed if having EFI RNG protocol * Don't call restart_uboot in EFI watchdog test * Simplify building EFI binaries in Makefile * Show FirmwareVendor and FirmwareRevision in helloworld * Add debug output for efi bootmeth Other: * CONFIG_CMD_CLK should depend on CONFIG_CLK * simplify clk command * enable clk command on the sandbox
2024-10-09sandbox: enable clk command on the sandboxHeinrich Schuchardt
Enabling the clk command on the sandbox will allow us to write tests for it. Signed-off-by: Heinrich Schuchardt <[email protected]>
2024-10-09cmd: clk: simplify clk commandHeinrich Schuchardt
CONFIG_DM is always true. The clk command is only built if CONFIG_CLK=y. Signed-off-by: Heinrich Schuchardt <[email protected]>
2024-10-09cmd/Kconfig: CONFIG_CMD_CLK should depend on CONFIG_CLKHeinrich Schuchardt
The clk command cannot provide useful output without a clock driver. So let it depend on CONFIG_CLK. Since commit 258c1002383e ("cmd: clk: Use dump function from clk_ops") the remark about deprecation is obsolete. Remove it. Since commit 7ab418fbe612 ("clk: add support for setting clk rate from cmdline") the clk command can be used to set clock frequencies. Mention it. Signed-off-by: Heinrich Schuchardt <[email protected]>
2024-10-09boot: typo boormethodHeinrich Schuchardt
%s/boormethod/bootmethod/ Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Peter Robinson <[email protected]>
2024-10-09test: don't call restart_uboot in EFI watchdog testHeinrich Schuchardt
Calling u_boot_console.restart_uboot() in test_efi_selftest_watchdog_reboot() may lead to incorrect results. While the watchdog triggered reboot is running thee test environment may need some time before triggering a reboot itself. This may lead to duplicate output of the U-Boot greeter which is recorded as an error. Reported-by: Tom Rini <[email protected]> Fixes: df172e117d1d ("test/py: test reboot by EFI watchdog") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-10-09bootstd: Add debugging for efi bootmethSimon Glass
Add a little debugging so we can see what is happening. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-10-09efi_loader: Show FirmwareVendor and FirmwareRevision in helloworldSimon Glass
Show the firmware vendor and revision to make it clear which firmware is used, e.g. whether U-Boot is providing the boot services. The output will look like Firmware vendor: Das U-Boot Firmware revision: 20241000 Signed-off-by: Simon Glass <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2024-10-09efi_loader: Shorten the app rules furtherSimon Glass
Add a way to factor out the CFLAGS changes for each app, since they are all the same. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-10-09efi_loader: Shorten the app rulesSimon Glass
We have quite a few apps now, so create a way to specify them as a list rather than repeating the same rules again and again. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-10-09efi: arm: x86: riscv: Drop crt0/relocal extra- rulesSimon Glass
The link rule (for $(obj)/%_efi.so) in scripts/Makefile.lib handles pulling in efi_crt0.o and efi_reloc.o so drop the 'extra' rules. Signed-off-by: Simon Glass <[email protected]> Suggested-by: Heinrich Schuchardt <[email protected]>
2024-10-09efi_loader: Rename and move CMD_BOOTEFI_HELLO_COMPILESimon Glass
This is not actually a command so the name is confusing. Use BOOTEFI_HELLO_COMPILE instead. Put it in the efi_loader directory with the other such config options. The link rule (for $(obj)/%_efi.so) in scripts/Makefile.lib handles pulling in efi_crt0.o and efi_reloc.o so drop the 'extra' rules. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-10-09doc: Move the generic memory-documentation to doc/Simon Glass
Move this section of the README into doc/ with some minor updates to mention SPL and user lower-case hex. Signed-off-by: Simon Glass <[email protected]> Acked-by: Heinrich Schuchardt <[email protected]>
2024-10-09efi_leader: delete rng-seed if having EFI RNG protocolHeinrich Schuchardt
For measured be boot we must avoid any volatile values in the device-tree. We already delete /chosen/kaslr-seed if we provide and EFI RNG protocol. Additionally remove /chosen/rng-seed provided by QEMU or U-Boot. Reviewed-by: Ilias Apalodimas <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2024-10-10sunxi: Add support for Anbernic RG35XX-2024Chris Morgan
The Anbernic RG35XX series of devices are based around an Allwinner H700 SoC with 1GB of RAM, 2 SD cards, and multiple input buttons. This bootloader has been tested on the Anbernic RG35XX-2024 and RG35XX-H, but should be suitable for the entire lineup of H700 based devices. A future series of updates will add board selection logic to identify and load the correct device tree automatically. Signed-off-by: Chris Morgan <[email protected]>
2024-10-10arm64: dts: allwinner: h616: Add r_i2c pinctrl nodesChris Morgan
Add pinctrl nodes for the r_i2c node. Without the pinmux defined the r_i2c bus may fail to work, possibly if the bootloader uses rsb mode for the PMIC. Fixes: 0d17c8651188 ("arm64: dts: allwinner: Add Allwinner H616 .dtsi file") Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Chris Morgan <[email protected]> Fixes: 0d17c8651188 ("arm64: dts: allwinner: Add Allwinner H616 .dtsi file") Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Chen-Yu Tsai <[email protected]> [ upstream commit: 7c9ea4ab76176f65f4f55aa144f9145a4bccaacb ] (cherry-picked from commit 1665557aa57c2140d014d68dfe1a1f92f9baac82) Reviewed-by: Andre Przywara <[email protected]>
2024-10-10arm64: dts: allwinner: h616: Change RG35XX Series from r_rsb to r_i2cChris Morgan
Change the Anbernic RG35XX series to use the r_i2c bus for the PMIC instead of the r_rsb bus. This is to keep the device tree consistent as there are at least 3 devices (the RG35XX-SP, RG28XX, and RG40XX-H) that have an external RTC on the r_i2c bus. Signed-off-by: Chris Morgan <[email protected]> Reviewed-by: Andre Przywara <[email protected]> Tested-by: Ryan Walklin <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Chen-Yu Tsai <[email protected]> [ upstream commit: c712e5d0985628b1df13930489b49b740e610a2b ] (cherry picked from commit 43c3a035746af3c8cad5b65055d88f1de8406823) Reviewed-by-by: Andre Przywara <[email protected]>
2024-10-10sunxi: H616: dram: Update mbus prioritiesJernej Skrabec
CSI1 channel (22) is missing and IOMMU (25) has priority flag set in vendor bootloader. Fix that. While at it, replace bandwidth flag with priority since original flag has always value "true". Signed-off-by: Jernej Skrabec <[email protected]> Tested-by: Chris Morgan <[email protected]> Reviewed-by: Andre Przywara <[email protected]>
2024-10-10sunxi: H616: DRAM: Adjust size scan procedureJernej Skrabec
It's safer to start scanning for columns first and then rows. Columns reside on LSB address pins, which means that second configuration will already have all needed row pins active. This is also preparation for introducing DDR4 support, which need scan for banks and bank groups too. Signed-off-by: Jernej Skrabec <[email protected]> Tested-by: Chris Morgan <[email protected]>
2024-10-10sunxi: H616: DRAM: Adjust configuration procedureJernej Skrabec
When comparing configuration procedure to vendor driver, I noticed that one command was out of order and that some delays were missing. Fix that. Signed-off-by: Jernej Skrabec <[email protected]> Tested-by: Chris Morgan <[email protected]>
2024-10-10sunxi: H616: DRAM: Add alternative pin mappingChris Morgan
It seems that different dies need different PHY pin mapping. Select alternatives at compile time. Signed-off-by: Jernej Skrabec <[email protected]> [adapted to switch from runtime to compile time config] Signed-off-by: Chris Morgan <[email protected]>
2024-10-10sunxi: H616: dram: LPDDR4: adjust settingsJernej Skrabec
Adjust H616 LPDDR4 DRAM settings to be in line with vendor driver. Signed-off-by: Jernej Skrabec <[email protected]> Tested-by: Chris Morgan <[email protected]>
2024-10-10sunxi: power: axp809: Fix DCDC4 programmingAndre Przywara
When trying to set the DCDC4 regulator, the code was accidentally setting the voltage register for DCDC5 (VCC-DRAM). The higher voltage doesn't harm the DRAM chips, but upsets the Linux regulator driver: when it tried to correct that, it tripped over a separate DT bug. The DCDC5 DT limits are 1.425 and 1.575V, which cannot bet set with the rail's resolution of 50mV. The kernel driver gave up, and made in turn the system hang, as the PMIC powers essential devices. Fix the copy&paste bug by using the correct PMIC voltage register. Signed-off-by: Andre Przywara <[email protected]>
2024-10-10clk: sunxi: a80: Fix reset descriptionAndre Przywara
Clock gates and reset lines share a common structure in the sunxi clock driver descriptions, but use different flags to tell them apart. The description of the Allwinner A80 MMC clock reset lines was erroneously using the "GATE" macro, which made the reset driver ignore that entry, complaining with: sunxi_set_reset: (RST-reset:#0) unhandled Change that to the correct "RESET" macro, to make the reset driver happy. Fixes e0c7ce7e52b7 ("sunxi: clk: A80: add MMC clock support") Signed-off-by: Andre Przywara <[email protected]>
2024-10-10sunxi: H616: switch to OF_UPSTREAMAndre Przywara
With the recent "old-style sunxi" sync and the penultimate OF_UPSTREAM DT update, both directories were based on the same v6.10 kernel tree. And while there is one subtle difference in many Allwinner SoC's DT files, the H616 ones turn out to be identical. Remove the old copies of the H616 related .dts and .dtsi files, and switch the whole H616 SoC over to use OF_UPSTREAM. This immediately benefits from the recent upstream DT update, to kernel v6.11. Signed-off-by: Andre Przywara <[email protected]>
2024-10-09mtd: simplify CONFIG_DM_SPI_FLASH dependenciesHeinrich Schuchardt
CONFIG_DM_SPI depends on CONFIG_DM. There is no need to list CONFIG_DM explicitly as dependency for CONFIG_DM_SPI_FLASH Signed-off-by: Heinrich Schuchardt <[email protected]> Link: https://lore.kernel.org/r/[email protected]
2024-10-09Merge patch series "spi: Various Kconfig fixes"Tom Rini
John Watts <[email protected]> says: I'm doing some SPI work so I tried to compile all the drivers on my sunxi board to try and avoid some regressions. This failed, so here are some fixes for this. Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Tom Rini <[email protected]>
2024-10-09spi: rockchip_sfc: Select BOUNCE_BUFFERJohn Watts
This is required for compiling. Signed-off-by: John Watts <[email protected]>
2024-10-09spi: ca_sflash: Add missing dm includeJohn Watts
This code uses dev_err which is defined in dm/device_compat.h Signed-off-by: John Watts <[email protected]>
2024-10-09spi: mtk_spim: Remove completion.h includeJohn Watts
This created a conflict when linking. Signed-off-by: John Watts <[email protected]>
2024-10-09spi: Kconfig: Add some required arch depends for driversJohn Watts
These dependencies are required for building the drivers and create compile errors if not enabled. Signed-off-by: John Watts <[email protected]> [trini: Add ARCH_MVEBU to KIRKWOOD_SPI] Signed-off-by: Tom Rini <[email protected]>
2024-10-09Merge patch series "spi-nor: Add parallel and stacked memories support"Tom Rini
Venkatesh Yadav Abbarapu <[email protected]> says: This series adds support for Xilinx qspi parallel and stacked memeories. In parallel mode, the current implementation assumes that a maximum of two flashes are connected. The QSPI controller splits the data evenly between both the flashes so, both the flashes that are connected in parallel mode should be identical. During each operation SPI-NOR sets 0th bit for CS0 & 1st bit for CS1 in nor->flags. In stacked mode the current implementation assumes that a maximum of two flashes are connected and both the flashes are of same make but can differ in sizes. So, except the sizes all other flash parameters of both the flashes are identical. Spi-nor will pass on the appropriate flash select flag to low level driver, and it will select pass all the data to that particular flash. Write operation in parallel mode are performed in page size * 2 chunks as each write operation results in writing both the flashes. For doubling the address space each operation is performed at addr/2 flash offset, where addr is the address specified by the user. Similarly for read and erase operations it will read from both flashes, so size and offset are divided by 2 and send to flash.
2024-10-09config: xilinx: Enable the SPI_ADVANCE config optionVenkatesh Yadav Abbarapu
Enable the SPI_ADVANCE config option for all xilinx platforms, as this is required for parallel-memories. Signed-off-by: Venkatesh Yadav Abbarapu <[email protected]>
2024-10-09spi: zynq_qspi: Add parallel memories support in QSPI driverVenkatesh Yadav Abbarapu
Add support for parallel memories in zynq_qspi.c driver. In case of parallel memories STRIPE bit is set and sent to the qspi ip, which will send data bits to both the flashes in parallel. However for few commands we should not use stripe, instead send same data to both the flashes. Those commands are exclueded by using zynqmp_qspi_update_stripe(). Also update copyright info for this file. Signed-off-by: Ashok Reddy Soma <[email protected]> Signed-off-by: Venkatesh Yadav Abbarapu <[email protected]>
2024-10-09spi: zynqmp_gqspi: Add parallel memories support in GQSPI driverVenkatesh Yadav Abbarapu
Add support for parallel memories in zynqmp_gqspi.c driver. In case of parallel memories STRIPE bit is set and sent to the qspi ip, which will send data bits to both the flashes in parallel. However for few commands we should not use stripe, instead send same data to both the flashes. Those commands are exclueded by using zynqmp_qspi_update_stripe(). Also update copyright info for this file. Signed-off-by: Ashok Reddy Soma <[email protected]> Signed-off-by: Venkatesh Yadav Abbarapu <[email protected]>
2024-10-09spi: spi-uclass: Read chipselect and restrict capabilitiesVenkatesh Yadav Abbarapu
Read chipselect properties from DT which are populated using 'reg' property and save it in plat->cs[] array for later use. Also read multi chipselect capability which is used for parallel-memories and return errors if they are passed on using DT but driver is not capable of handling it. Signed-off-by: Ashok Reddy Soma <[email protected]> Signed-off-by: Venkatesh Yadav Abbarapu <[email protected]>
2024-10-09mtd: spi-nor: Add parallel and stacked memories support in read_bar and ↵Ashok Reddy Soma
write_bar Add support for parallel memories and stacked memories configuration in read_bar and write_bar functions. Signed-off-by: Ashok Reddy Soma <[email protected]> Signed-off-by: Venkatesh Yadav Abbarapu <[email protected]>
2024-10-09mtd: spi-nor: Add parallel memories support for read_sr and read_fsrAshok Reddy Soma
Add support for parallel memories flash configuration in read status register and read flag status register functions. Signed-off-by: Ashok Reddy Soma <[email protected]> Signed-off-by: Venkatesh Yadav Abbarapu <[email protected]>