summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-12-15board: st: common: Fix board_get_alt_info_mtd()Patrice Chotard
Since MTD devices are partioned, we got the following error when command "dfu 0" is executed: DFU alt info setting: done ERROR: Too many arguments for nor0 ERROR: DFU entities configuration failed! ERROR: (partition table does not match dfu_alt_info?) Fixes: 31325e1b8b9c ("stm32mp1: dynamically build DFU_ALT_INFO") Signed-off-by: Patrice Chotard <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2023-12-15board: stm32f469-disco: add splash screen with stmicroelectronics logoDario Binacchi
Display the STMicroelectronics logo with features VIDEO_LOGO and SPLASH_SCREEN on stm32f469-disco board. Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2023-12-15board: stm32f469-disco: add support to displayDario Binacchi
Add support to Orise Tech OTM8009A display on stm32f469-disco board. It was necessary to retrieve the framebuffer address from the device tree because the address returned by the video-uclass driver pointed to a memory area that was not usable. Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2023-12-15ARM: dts: stm32: support MIPI DSI on stm32f469-disco boardDario Binacchi
Unlike Linux, the DSI driver requires the LTDC clock to be properly probed. Hence, the changes made to the DSI node. Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2023-12-15ARM: dts: stm32: make the DSI clock usable by the clock driverDario Binacchi
As described in [1], the "clocks" property contains "a phandle to the clock device node, an index selecting between gated clocks (0) and other clocks (1), and an index specifying the clock to use." The current version of the clock driver, unlike the kernel, is currently able to properly handle nodes with "clocks" properties with an index set to 0. This patch is preparatory for future developments that require the use of the DSI clock. [1] Documentation/devicetree/bindings/clock/st,stm32-rcc.txt Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2023-12-15ARM: dts: stm32: make the LTDC clock usable by the clock driverDario Binacchi
As described in [1], the "clocks" property contains "a phandle to the clock device node, an index selecting between gated clocks (0) and other clocks (1), and an index specifying the clock to use." The current version of the clock driver, unlike the kernel, is currently able to properly handle nodes with "clocks" properties with an index set to 0. This patch is preparatory for future developments that require the use of the LTDC clock. [1] Documentation/devicetree/bindings/clock/st,stm32-rcc.txt Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2023-12-15ARM: dts: stm32f469-disco: sync with Linux 6.5Dario Binacchi
Sync the devicetree with linux 6.5 for stm32f746-disco board. Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2023-12-15clk: stm32f: fix setting of LCD clockDario Binacchi
Set pllsaidivr only if the PLLSAIR output frequency is an exact multiple of the pixel clock rate. Otherwise, we search through all combinations of pllsaidivr * pllsair and use the one which gives the rate closest to requested one. Fixes: 5e993508cb25 ("clk: clk_stm32f: Add set_rate for LTDC clock") Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2023-12-15clk: stm32f: fix setting of division factor for LCD_CLKDario Binacchi
The value to be written to the register must be appropriately shifted, as is correctly done in other parts of the code. Fixes: 5e993508cb25 ("clk: clk_stm32f: Add set_rate for LTDC clock") Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2023-12-15ARM: dts: stm32f769-disco: rework ltdc nodeDario Binacchi
With commit f479f5dbb7ac ("ARM: dts: stm32: add ltdc support on stm32f746 MCU"), which adds the 'ltdc' node in stm32f746.dtsi, we can simplify stm32f769-disco-uboot.dtsi and align stm32f769-disco.dtsi with the kernel version. Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Patrice Chotard <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2023-12-15Merge tag 'u-boot-imx-20231214' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx - Fix for i.MX8M Plus eDM SBC DDR timings with inline ECC - Switch to FPWM mode on Data Modul i.MX8M Plus eDM SBC so that DRAM EDAC detects more correctable errors - Fix for imx8mp-venice board DDR initialization
2023-12-14imx8mp-venice: update DRAM config for 2000MHzTim Harvey
The imx8mp venice boards can support 2000Mhz DRAM. Update the DRAM config to support this. Signed-off-by: Tim Harvey <[email protected]>
2023-12-14imx8mp-venice: fix DRAM bus configurationTim Harvey
The DRAM configuration for the 1GB and 4GB imx8mp venice boards had a bus mapping issue (channel A and B swapped) which creates an invalid deskewing configuration during training causing the DRAM to not be able to run at its full bus speed. Update the various config structures to resolve this. Signed-off-by: Tim Harvey <[email protected]>
2023-12-14board: gateworks: venice: remove extra fileTim Harvey
Remove lpddr4_timing_imx8mm_512mb.c mistakenly committed Fixes: a1c711046b0d "(board: gateworks: venice: add imx8mm-gw7903 support)" Signed-off-by: Tim Harvey <[email protected]>
2023-12-14ARM: imx: Update DRAM timings with inline ECC on Data Modul i.MX8M Plus eDM SBCMarek Vasut
Import DRAM timings generated by the DDR tool 3.31 which introduce assorted tweaks to the DRAM controller settings. Furthermore, enable DBI to improve noise resilience of the DRAM bus by reducing the number of bit changes on the bus. Reduce the DRAM rate to 3600 MTps to remove all remaining correctable errors reported by EDAC . It is not entirely clear why the slightly faster setting does produce sporadic correctable errors, while this one does not, but this could be related to simpler PLL setting at 3600 MTps. Enable inline ECC which is necessary to detect ECC errors and collect statistics by the EDAC driver in Linux. This reduces the DRAM size by 64 MiB for each 512 MiB of DRAM, so for a 4 GiB device the available DRAM size becomes 3.5 GiB . Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-12-14ARM: imx: Force DRAM regulators into FPWM mode on Data Modul i.MX8M Plus eDM SBCMarek Vasut
In case the Buck5 and Buck6 regulators which supply DRAM Vdd1 and Vdd2/Vddq respectively operate in automatic PWM/PFM mode, the DRAM EDAC detects more correctable errors than if the regulators operate in forced PWM only mode. Force DRAM regulators to forced PWM mode only to stop tempting the DRAM. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-12-14ARM: imx: Enable CAAM on DH i.MX8M Plus DHCOMMarek Vasut
Enable CAAM in U-Boot to make crypto available early in the boot process. This has a side-effect that in case an older kernel version contains a broken CAAM initialization timeout code, initialization in bootloader will help that old kernel version function correctly. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-12-14ARM: imx: Enable CAAM on Data Modul i.MX8M Mini/Plus eDM SBCMarek Vasut
Enable CAAM in U-Boot to make crypto available early in the boot process. This has a side-effect that in case an older kernel version contains a broken CAAM initialization timeout code, initialization in bootloader will help that old kernel version function correctly. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-12-14ddr: imx: Add 3600 MTps rate supportMarek Vasut
Add PLL settings for DDR 3600 MTps . This is very similar to 3200 MTps PLL setting, except the divider is not 9 but 8 . Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-12-14ddr: imx: Handle 3734 in addition to 3733 and 3732 MTps ratesMarek Vasut
The new MX8M DDR tool 3.31 now generates a programming file which uses data rate 3734 instead of 3733 or 3732 . Handle another rounding option . Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-12-14arm64: imx8mp: Inhibit DTC warning on DH i.MX8MP DHCOM rev.100 DTOMarek Vasut
Inhibit DTC warning in imx8mp-dhcom-pdk3-overlay-rev100.dts: " arch/arm/dts/imx8mp-dhcom-pdk3-overlay-rev100.dtbo: Warning (reg_format): /fragment@0/__overlay__:reg: property has invalid length (4 bytes) (#address-cells == 2, #size-cells == 1) arch/arm/dts/imx8mp-dhcom-pdk3-overlay-rev100.dtbo: Warning (avoid_default_addr_size): /fragment@0/__overlay__: Relying on default #address-cells value arch/arm/dts/imx8mp-dhcom-pdk3-overlay-rev100.dtbo: Warning (avoid_default_addr_size): /fragment@0/__overlay__: Relying on default #size-cells value " The DTO overwrites the 'reg' property of an ethernet PHY and is only used on specific combination of old prototype SoM and old prototype PDK3 carrier board, which had incorrectly placed pull resistor, which made the PHY change its MDIO address in that specific combination and which is already fixed on production hardware. The DTO is implemented in this simple manner because if it contained a full MDIO bus node reference to define #address-cells and #size-cells, it would also require a full new copy of the PHY node, i.e. ethernet-phy@5 { ... reg = <5>; ... }, to avoid DTC warnings about mismatch between node unit and reg value. The node unit in SoM DT is ethernet-phy@7 { ... }; . This simpler approach avoids unnecessary duplication without adverse side effects. Reported-by: Fabio Estevam <[email protected]> Reported-by: Sean Anderson <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Tested-by: Sean Anderson <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-12-14Merge tag 'xilinx-for-v2024.04-rc1' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-microblaze into next Xilinx changes for v2024.04-rc1 zynqmp: - Introduce Kria specific defconfig - Calculate SPI image location based on boot offset - DT updates zynqmp-clk: - Fix topsw_lsbus_clock for DP axi-enet: - Support older DT binding mailbox: - Add support for multiple mailboxes pcie-xilinx: - Covert driver to newer interface - Enable MMIO region zynq: - dfu updates - Enable capsule update for Antminer S9 - DT updates xilinx_spi: - Add new xfer callback and support runtime fifo depth discovery
2023-12-14spi: cadence-quadspi: Fix error message on stuck busy stateJan Kiszka
We are not iterating CQSPI_REG_RETRY, we are waiting 'timeout' ms, since day 1. Signed-off-by: Jan Kiszka <[email protected]> Reviewed-by: Stefan Roese <[email protected]> Reviewed-by: Jagan Teki <[email protected]>
2023-12-14mtd: spi-nor-ids: add support for xtx XT55Q02GBruce Suen
Add support for XTX XT55Q02G(1.8V,2Gbit). Signed-off-by: Bruce Suen <[email protected]> Reviewed-by: Jagan Teki <[email protected]>
2023-12-14mtd: spinand: add support for ESMT F50x1G41LBIgor Prusov
Adaptation of Linux commit d74c36480a67 This patch adds support for ESMT F50L1G41LB and F50D1G41LB. It seems that ESMT likes to use random JEDEC ID from other vendors. Their 1G chips uses 0xc8 from GigaDevice and 2G/4G chips uses 0x2c from Micron. For this reason, the ESMT entry is named esmt_c8 with explicit JEDEC ID in variable name. Datasheets: https://www.esmt.com.tw/upload/pdf/ESMT/datasheets/F50L1G41LB(2M).pdf https://www.esmt.com.tw/upload/pdf/ESMT/datasheets/F50D1G41LB(2M).pdf Signed-off-by: Igor Prusov <[email protected]> Signed-off-by: Chuanhong Guo <[email protected]> Signed-off-by: Martin Kurbanov <[email protected]> Signed-off-by: Dmitry Rokosov <[email protected]> Tested-by: Martin Kurbanov <[email protected]> Reviewed-by: Frieder Schrempf <[email protected]> Reviewed-by: Jagan Teki <[email protected]>
2023-12-14mtd: spi-nor-core: Implement spi_nor_read_sfdp_dma_unsafe() for sfdp parseVaishnav Achath
During SFDP header parse and BFPT parse, structures in stack are used to perform spi_nor_read_sfdp() which expects a dma-safe buffer. This commit introduces spi_nor_read_sfdp_dma_unsafe() to wrap spi_nor_read_sfdp() using a kmalloc'ed bounce buffer which is the same implementation in Linux (drivers/mtd/spi-nor/sfdp.c). Signed-off-by: Vaishnav Achath <[email protected]> Reviewed-by: Pratyush Yadav <[email protected]> Reviewed-by: Jagan Teki <[email protected]>
2023-12-14Merge tag 'u-boot-imx-next-20231214' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx into next - Add TPM support for venice boards - Add networking support for imx93-evk - Enable TCP, IPv6, wget for DHCOM and Data Modul boards - Enable fastboot support for Toradex boards - Allow pico-imx7d to boot from SD - Enable fastboot for beacon imx8m beacon boards, disabled SYS_CONSOLE_IS_IN_ENV - Fix mxsboot to prevent NAND blocks being reported as bad - Add imx8mm PWM clock support - Several devicetree syncs with the kernel - Add support for i.MX8MP Polyhex Debix Model A SBC - Reworked ddr_load_train_firmware() to get a 50ms boot time improvement
2023-12-14arm64: imx8mp: Enable TCP, IPv6, wget on Data Modul i.MX8M eDM SBCMarek Vasut
Enable support for TCP protocol, wget, and IPv6 on this platform. The former two allow users download payload into the U-Boot from a web server, which may be more convenient or easier to set up than TFTP server. The later is enabled to future proof the IP stack on this platform. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-12-14arm64: imx8mp: Enable TCP, IPv6, wget on DH i.MX8MP DHCOMMarek Vasut
Enable support for TCP protocol, wget, and IPv6 on this platform. The former two allow users download payload into the U-Boot from a web server, which may be more convenient or easier to set up than TFTP server. The later is enabled to future proof the IP stack on this platform. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-12-14arm: imx6: Enable TCP, IPv6, wget on DH i.MX6 DHCOMMarek Vasut
Enable support for TCP protocol, wget, and IPv6 on this platform. The former two allow users download payload into the U-Boot from a web server, which may be more convenient or easier to set up than TFTP server. The later is enabled to future proof the IP stack on this platform. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-12-13Merge tag 'dm-next-13dec23' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-dm into next minor improvements to test, acpi updates for new PyPl release
2023-12-13test: vboot: Using variable 'old_dtb' before assignmentHeinrich Schuchardt
old_dtb can only be assumed initialized in the finally block if it is assigned a value before the try statement. Avoid a pylint error reported by current pylint. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-12-13test: fit: Using variable 'old_dtb' before assignmentHeinrich Schuchardt
old_dtb can only be assumed initialized in the finally block if it is assigned a value before the try statement. Avoid a pylint error reported by current pylint. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-12-13binman: elf: Using variable 'old_val' before assignmentHeinrich Schuchardt
old_val can only be assumed initialized in the finally block if it is assigned a value before the try statement. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-12-13cmd: check argc for acpi dumpHeinrich Schuchardt
'acpi dump' without parameter results in a NULL dereference. Check the number of arguments. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-12-13bootstd: Fix a memory leak in the efi manager bootflowIlias Apalodimas
efi_get_var() allocates memory which has to be freed after the value of the variable is consumed. Free the memory properly Fixes: f2bfa0cb1794 ("bootstd: Make efi_mgr bootmeth work for non-sandbox setups") Signed-off-by: Ilias Apalodimas <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Mark Kettenis <[email protected]>
2023-12-13doc: board: ti: k3: Mention TI_DM argumentNeha Malcom Francis
Mention TI_DM argument can be used to fetch a custom DM binary in the A72 build instructions for K3 devices. Signed-off-by: Neha Malcom Francis <[email protected]> Reviewed-by: Andrew Davis <[email protected]> Reviewed-by: Manorit Chawdhry <[email protected]>
2023-12-13arm: dts: k3-*-binman: Move to using ti-dm entry typeNeha Malcom Francis
Move the DM entry in tispl.bin FIT image from default fetching an external blob entry to fetching using ti-dm entry type. This way, the DM entry will be populated by the TI_DM pathname if provided. Else it will resort to the ti-dm.bin file. Signed-off-by: Neha Malcom Francis <[email protected]> Reviewed-by: Andrew Davis <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-12-13binman: etype: dm: Add entry type for TI DMNeha Malcom Francis
K3 devices introduces the concept of centralized power, resource and security management to System Firmware. This is to overcome challenges by the traditional approach that implements system control functions on each of the processing units. The software interface for System Firmware is split into TIFS and DM. DM (Device Manager) is responsible for resource and power management from secure and non-secure hosts. This additional binary is necessary for specific platforms' ROM boot images and is to be packaged into tispl.bin Add an entry for DM. The entry can be used for the packaging of tispl.bin by binman along with ATF and TEE. Signed-off-by: Neha Malcom Francis <[email protected]> Reviewed-by: Andrew Davis <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-12-13binman: doc: fix typoDario Binacchi
s/use set/set/ Signed-off-by: Dario Binacchi <[email protected]> Reviewed-By: Michael Trimarchi <[email protected]>
2023-12-13cmd: acpi: fix acpi list commandHeinrich Schuchardt
ACPI tables may comprise either RSDT, XSDT, or both. The current code fails to check the presence of the RSDT table before accessing it. This leads to an exception if the RSDT table is not provided. The XSDT table takes precedence over the RSDT table. The return values of list_rsdt() and list_rsdp() are always zero and not checked. Remove the return values. Addresses in the XSDT table are 64-bit. Adjust the output accordingly. As the RSDT table has to be ignored if the XSDT command is present there is no need to compare the tables in a display command. Anyway the specification does not require that the sequence of addresses in the RSDT and XSDT table are the same. The FACS table header does not provide revision information. Correct the description of dump_hdr(). Adjust the ACPI test to match the changed output format of the 'acpi list' command. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-12-13acpi: fix struct acpi_xsdtHeinrich Schuchardt
The size of the ACPI table header is not a multiple of 8. We have to mark struct acpi_xsdt as packed to correctly access field Entry. Add a unit test for the offsets of field Entry in the RSDT and XSDT tables. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-12-13tools: Move python tools to version 0.0.6Simon Glass
A new release has been done with this version, so update it. Use the version numbers in dependencies also. Signed-off-by: Simon Glass <[email protected]>
2023-12-13patman: Update the run scriptSimon Glass
Patman now has its main program in a function, so update the toml file to match. Signed-off-by: Simon Glass <[email protected]>
2023-12-13tools/make_pip: Add mention of u_boot_pylib in tool listSimon Glass
This is not a tool but it is handled by the script, so update the help to include it. Signed-off-by: Simon Glass <[email protected]>
2023-12-13u_boot_pylib: Correct files used for pip releaseSimon Glass
The files list is incorrect and dates from a time when the script was run from a different directory. Update it to match all the other tools. Signed-off-by: Simon Glass <[email protected]>
2023-12-13tools: Keep test_util and patman test files in the pip releaseSimon Glass
The test_util module is actually imported by some tools, e.g. binman so include it in the pip release. The patman tool uses its test code when starting up, so keep that too. Show a list of deleted files so it is clear what is happening. Signed-off-by: Simon Glass <[email protected]>
2023-12-13sandbox: Add a dummy booti commandSimon Glass
Add basic sandbox support for 'booti' so we can start to boot the test ARMbian image. This is helpful in checking that it is parsed correctly. Signed-off-by: Simon Glass <[email protected]>
2023-12-13u_boot_pylib: Correct readme formattingSimon Glass
Correct a heading which is too short in the readme. Fixes: 75554dfac29 ("patman: Add support for building a u_boot_tools...") Signed-off-by: Simon Glass <[email protected]>
2023-12-13video: Add a function to clear the displaySimon Glass
Move the code from the 'cls' command into the console file, so it can be called from elsewhere. Signed-off-by: Simon Glass <[email protected]>