summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-07-11board: gateworks: venice: assume emmc device for USB bootTim Harvey
When booting from USB (SDP) setup firmware-update environment for emmc device. Signed-off-by: Tim Harvey <[email protected]>
2023-07-11imx8m: beacon: Update MAINTAINER file to include beacon rst filesAdam Ford
With variou README files migrated to rst, add them to the MAINTAINER file for Beacon. Signed-off-by: Adam Ford <[email protected]>
2023-07-11imx8m: imx8mn-beacon: Migrate README to rstAdam Ford
Since U-Boot builds HTML documentation, migrate the contents of the README file to an rst file which can generate the proper outputs. Signed-off-by: Adam Ford <[email protected]>
2023-07-11imx: imx8mn-beacon: Move environment definition to env fileAdam Ford
Instead of cluttering up a header file with a bunch of defines, move the default environmental variables to a file called imx8mn_beacon.env and reference it from the defconfigs. Signed-off-by: Adam Ford <[email protected]>
2023-07-11imx8m: imx8mm-beacon: Migrate README to rstAdam Ford
Since U-Boot builds HTML documentation, migrate the contents of the README file to an rst file which can generate the proper outputs. Signed-off-by: Adam Ford <[email protected]>
2023-07-11imx: imx8mm-beacon: Move environment definition to env fileAdam Ford
Instead of cluttering up a header file with a bunch of defines, move the default environmental variables to a file called imx8mm_beacon.env and reference it from the defconfig. Signed-off-by: Adam Ford <[email protected]>
2023-07-11imx8mn-var-som: read eth MAC address from EEPROMHugo Villeneuve
Read ethernet MAC address from EEPROM located on the SOM. Signed-off-by: Hugo Villeneuve <[email protected]>
2023-07-11arm: dts: imx8mn-var-som: fix PHY detection bug by adding deassert delayHugo Villeneuve
While testing the ethernet interface on a Variscite symphony carrier board using an imx8mn SOM with an onboard ADIN1300 PHY (EC hardware configuration), the ethernet PHY is not detected. The ADIN1300 datasheet indicate that the "Management interface active (t4)" state is reached at most 5ms after the reset signal is deasserted. The device tree in Variscite custom git repository uses the following property: phy-reset-post-delay = <20>; Add a new MDIO property 'reset-deassert-us' of 20ms to have the same delay inside the ethphy node. Adding this property fixes the problem with the PHY detection. Note that this SOM can also have an Atheros AR8033 PHY. In this case, a 1ms deassert delay is sufficient. Add a comment to that effect. Fixes: c4c1ed68c1e8 ("imx8mn_var_som: Add support for Variscite VAR-SOM-MX8M-NANO board") Signed-off-by: Hugo Villeneuve <[email protected]>
2023-07-11imx8mn-var-som: fix non-applied PHY reset-gpios propertiesHugo Villeneuve
Select DM_ETH_PHY so that the reset-gpios property of the ethphy node can be used. Also select DM_PCA953X, which is needed for resetting the ethernet PHY on the carrier board via the PCA9534 I/O expander. Commit 4e5114daf9eb ("imx8mn: synchronise device tree with linux") did synchronise device tree with linux, which in effect removed obsolete PHY reset properties and replaced them with new mdio DM properties. But the commit didn't activate DM_ETH_PHY or DM_PCA953X. Fixes: 4e5114daf9eb ("imx8mn: synchronise device tree with linux") Signed-off-by: Hugo Villeneuve <[email protected]>
2023-07-11imx8mn-var-som: read and print SoM infos from eeprom on startupHugo Villeneuve
Enable support to read and display configuration/manufacturing infos from 4Kbit EEPROM located on SOM board. Note: CONFIG_DISPLAY_BOARDINFO is automatically selected for ARM arch. Signed-off-by: Hugo Villeneuve <[email protected]>
2023-07-11imx8m: soc.c: demote some printfs to debugRasmus Villemoes
Getting Found /vpu_g1@38300000 node Modify /vpu_g1@38300000:status disabled Found /vpu_g2@38310000 node Modify /vpu_g2@38310000:status disabled etc. on the console on every boot is needlessly verbose. Demote the "Found ..." lines to debug(), which is consistent with other instances in soc.c. Signed-off-by: Rasmus Villemoes <[email protected]> Reviewed-by: Frieder Schrempf <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2023-07-11config: xea: Enable DM_SERIAL for the XEA - single binary (SB) u-bootLukasz Majewski
The single binary version of u-boot for XEA board is used to debrick and factory programming. The produced u-boot.sb is a single file, which allows having fully operational u-boot prompt loaded with imx287 ROM. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11config: xea: Enable DM_SERIAL for the XEA (imx287 based) boardLukasz Majewski
The XEA board now supports the DM_SERIAL feature in u-boot. The SPL is using the SPL_OF_PLATDATA - i.e. NOT SPL_DM_SERIAL to reduce the overall size of the SPL binary. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11arm: Kconfig: Switch XEA (imx287 based) board to use CONFIG_PL01X_SERIALLukasz Majewski
The CONFIG_PL011 used by all other ARCH_MX28 based boards is not supporting DM_SERIAL. Instead, other define - namely CONFIG_PL01X_SERIAL shall be used by boards supporting DM_SERIAL. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11arm: xea: Call spl_early_init() before DM serial console is enabled in SPLLukasz Majewski
The in-spl enabled DM serial console requires the board setup to be able to parse SPL_OF_PLATDATA based serial driver (pl01x) for the imx28 based XEA board. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11arm: mxs: Prevent serial console init when in very early SPL boot codeLukasz Majewski
When DM_SERIAL is enabled on mxs (i.e. imx28) platform, the console early initialization must be postponed until the driver model is correctly setup. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11serial: pl01x: Modify pending callback to test if transmit FIFO is emptyLukasz Majewski
Before this change the FR_TXFF (Transmit FIFO full) bit (5 in HW_UARTDBG_FR) has been used to assess if there is still data pending to be sent via UART. This approach is problematic, as it may happen that serial is in the middle of transmission (so the TX FIFO is NOT full anymore) and this test returns true infinitely. As a result, for example in _serial_flush() DM serial function we are locked in endless while(). The fix here is to test explicitly if the TX FIFO is empty. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11serial: pl01x: Prepare the driver to support SPL_OF_PLATDATALukasz Majewski
This commit prepares the pl01x serial driver to be used with SPL_OF_PLATDATA enabled. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11serial: pl01x: Change OF_CONTROL to OF_REALLukasz Majewski
Before this change, building this driver for SPL with enabled SPL_DM_SERIAL was problematic, as '-Wunused-const-variable=' warning was visible. Now, the code is only considered when u-boot proper is build. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11dts: xea: Disable 'clks' node for xea (imx287)Lukasz Majewski
As imx28 family of SoCs is NOT supporting the Common Clock Framework (CCF) the 'clks' property shall NOT be enabled by default. Without this change u-boot proper before relocation tries to bind driver (which doesn't exists) for this device. As a result, pre-relocation DTB parsing is finished with error and the board hangs in a very early stage of u-boot proper boot process. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11dts: xea: Remove clocks property from debug UART on XEALukasz Majewski
The imx287 SoC doesn't support common clock framework (CCF), so the 'clocks' property is removed to avoid early (i.e. in SPL) errors when SPL_OF_PLATDATA is used. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11dts: xea: Add u-boot specific 'type' property to duartLukasz Majewski
The DM_SERIAL implicitly requires CONFIG_PL01X_SERIAL, which allows support for both serial IP block versions (i.e. PL011 and PL010). The decision about used IP block is based on the compatible string, when DM is used. In the XEA, the OF_PLATDATA is used to allow usage of serial driver in the SPL (as the size of SPL is crucial). In this case one cannot extract the type of IP block from .data field (corresponding to compatible) and it must be explicitly read at probe from dtoc generated, u-boot specific property. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11dts: xea: Enable debug UART support in XEA's SPL (DM_SERIAL)Lukasz Majewski
After enabling DM_SERIAL for XEA board, the same serial shall be used in the SPL (with SPL_OF_PLATDATA support). Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11spl: xea: Provide stub DM driver for imx28 clocksLukasz Majewski
This code fixes following WARNING: DTOC spl/dts/dt-plat.c fsl_imx28_clkctrl: WARNING: the driver fsl_imx28_clkctrl was not found in the driver list As imx28 doesn't yet support common clock framework, this prevents from DTOC warnings during SPL build. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11defconfig: xea: Change default spi-nor memory bus to 2Lukasz Majewski
After the re-sync with Linux kernel (v6.0) of the XEA DTS (SHA1: 7d08ddd09b75e7a3c103cc0d0d3ed700287f268e) the alias for SPI bus, to which SPI-NOR memory is connected, has changed from 'spi3' to 'spi2'. To be in sync with current u-boot's xea dts, the default bus number (which allows running 'sf probe' without any extra parameters given) has been adjusted. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11dts: xea: Provide missing FEC required properties (mac0 and reg_fec_3v3)Lukasz Majewski
After the commit (SHA1: 7d08ddd09b75e7a3c103cc0d0d3ed700287f268e) some u-boot specific XEA FEC related properties have been replaced by ones from the Linux kernel. To be more specific - XEA board (and imx287 in general) has built L2 switch connected to FEC, which needs some special treatment. In u-boot it is handled with 'mac0' node, whereas Linux uses dedicated switch DTS node. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11dts: xea: Delete not used in u-boot DTS nodesLukasz Majewski
After the re-sync with Linux Kernel's DTS (SHA1: 7d08ddd09b75e7a3c103cc0d0d3ed700287f268e), the XEA's descripion has nodes and properties, which are NOT utilized in the u-boot. To avoid confusion - those are deleted. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11toradex: tdx-cfg-block: add 0070 verdin i.mx 8m plus quad skuEmanuele Ghidoli
Add new i.MX 8M Plus Quad SKU to ConfigBlock handling. 0070: Verdin iMX8M Plus Quad 8GB WB IT This SKU is identical to 0066 but supporting Industrial Temperature range. Signed-off-by: Emanuele Ghidoli <[email protected]> Signed-off-by: Francesco Dolcini <[email protected]>
2023-07-11arm: config: Adjust imx287 based XEA board PMU configurationLukasz Majewski
This patch adjusts XEA's PMU setup as this board is supposed to be mainly powered from DCDC_BATT source. Moreover, in this HW design the VDD_4P2 is not used as well. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11arm: mxs: Add function to dump PMU registersLukasz Majewski
This commit provides function, which when debugging output is enabled dumps the IMX28 PMU registers. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11arm: mxs: Provide Kconfig option to not enable 4P2 regulator in IMX28 PMULukasz Majewski
The IMX28 PMU (Power Management Unit) has a dedicated Linear Regulator to produce (by default) 4.2V output - available outside the chip as VDD_4P2. When system is supposed to not use VDD5V as a main power source - instead the DCDC_BATT is used; it is safe to disable this regulator. As the in-PMU DCDC switching regulator (from which DCDC_VDDA, DCDC_VDDIO and DCDC_VDDD are generated) can be driven from DCDC_BATT or output of this 4P2 regulator - by disabling the latter the use of the DCDC_BATT is forced. To be more specific - according to NXP's AN4199 the DCDC_BATT source is preferred (over VDD5V), as more efficient and stable source for industrial applications. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11arm: mxs: Provide Kconfig option to disable battery charging at IMX28 PMULukasz Majewski
This new Kconfig option allows disabling the in-PMU battery charging block. This may be required when DCDC_BAT source is powered not from battery, but from already regulated, good quality source. Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11arm: mxs: Provide Kconfig option to to not use VDD5V as IMX28 PMU sourceLukasz Majewski
This option sets the current limit for 5V source to zero, so all the PMU outputs are primarily powered from battery source (DCDC_BAT). This option may be set on systems, where the 5V is NOT supposed to be in any scenario powering the system - for example on systems where DCDC_BAT is connected to fixed and regulated 4.2V source (so the "battery" is not present). Signed-off-by: Lukasz Majewski <[email protected]>
2023-07-11power: imx8m-power-domain: Add delay to align with kernel driverFabio Estevam
In the imx8m power domain kernel driver, there is an extra udelay(5) prior to requesting the domain to power up: https://github.com/torvalds/linux/blob/v6.3/drivers/soc/imx/gpcv2.c#L347-L375 Haven't observed any issues due to the lack of this delay in U-Boot yet, but better to align it with the kernel driver implementation. Signed-off-by: Fabio Estevam <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2023-07-11board: gateworks: venice: update board doc to show other emmc partsTim Harvey
Update the venice board documentation to show how to install to the various eMMC hardware partitions available as the same binary firmware can be placed in either user/boot0/boot1 without build-time config changes. Note that the boot offsets differ depending on the SoC and the eMMC hardware partition. Signed-off-by: Tim Harvey <[email protected]>
2023-07-11board: gateworks: venice: move env locationTim Harvey
To allow U-Boot to fit within emmc boot partitions move the env from just under 16MiB to just under 4MiB as some emmc devices used on venice boards have 4MiB boot partitions. This still leaves plenty of room for U-Boot. Signed-off-by: Tim Harvey <[email protected]>
2023-07-11board: gateworks: venice: dynamically update the update_firmware scriptTim Harvey
The update_firmware script is intended to update the boot firmware but the details including the offset and hardware partition are dependent on the boot device. Specifically: - IMX8MM/IMX8MP (BOOTROM v2) the offset is 32KiB for SD and eMMC user hardware partition and 0KiB for eMMC boot partitions. - IMX8MM the offset is 33KiB for SD and eMMC regardless of hardware partition. Dynamically set soc, dev, bootpart, and bootblk env vars at runtime and use these in the update_firmware script. Remove the splblk env var from config files as its no longer needed. Signed-off-by: Tim Harvey <[email protected]>
2023-07-11board: gateworks: venice: dynamically determine U-Boot env partitionTim Harvey
Determine the U-Boot env hardware partition depending on the boot device. This allows the same boot firmware image to be placed on user, boot0, or boot1 without changing CONFIG_SYS_MMC_ENV_PART. Signed-off-by: Tim Harvey <[email protected]>
2023-07-11board: gateworks: venice: dynamically determine U-Boot raw sectorTim Harvey
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR needs to adjust for IMX8MN and IMX8MP when booting from an eMMC boot partition due to IMX BOOTROM v2 using an SPL offset of 0 for boot partitions and 32K for the user partition. In order to allow the same firmware to run on both user and boot hardware partitions adjust raw_sect dynamically at runtime. Signed-off-by: Tim Harvey <[email protected]>
2023-07-11board: gateworks: venice: add eraseenv commandTim Harvey
Add eraseenv command and remove the unnecessary env command. Signed-off-by: Tim Harvey <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-07-11board: gateworks: venice: add GPIO name lookupTim Harvey
Add GPIO name lookup so that you can act on GPIO's by name vs controller id: Before: u-boot=> gpio input pci_wdis# GPIO: 'pci_wdis#' not found Command 'gpio' failed: Error -22 After: u-boot=> gpio input pci_wdis# gpio: pin pci_wdis# (gpio 103) value is 1 Signed-off-by: Tim Harvey <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-07-11configs: verdin-imx8mp: enable ARCH_MISC_INITSergio Prado
This is required to boot a FIT image, otherwise the caam_jr driver is not initialized and the hash verification fails with the following error: Verifying Hash Integrity ... sha256dev_get_priv: null device CAAM was not setup properly or it is faulty Signed-off-by: Sergio Prado <[email protected]> Signed-off-by: Marcel Ziswiler <[email protected]>
2023-07-11ARM: imx9: support env in fat and ext4Oleksandr Suvorov
Change boot device logic to also allow environment stored in fat and in ext4 when booting from SD or eMMC. As the boot device check for SD and for eMMC was depending on ENV_IS_IN_MMC being defined, change the ifdef blocks at env_get_location to use IS_ENABLED instead for all modes, returning NOWHERE when no valid mode is found. This solution is based on (with added SPL support): Link: https://lore.kernel.org/all/[email protected]/ Signed-off-by: Oleksandr Suvorov <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2023-07-11arm: mx6: module_fuse: fix build failure due to wrong argument nameGiulio Benetti
nodeoff variable should be variable off returned by fdt_path_offset() so let's rename it to off. Signed-off-by: Giulio Benetti <[email protected]> Reviewed-by: Peng Fan <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-07-11colibri-imx8x: print firmware versionsAndrejs Cainikovs
Print firmware versions during U-Boot start: BuildInfo: - SCFW f5623878, SECO-FW c9de51c0, IMX-MKIMAGE 0, ATF c6a19b1 - U-Boot 2022.04-00335-g65192567f81-dirty Signed-off-by: Andrejs Cainikovs <[email protected]>
2023-07-11configs: imx: imx8mm_beacon: Add config option for QSPI bootingAdam Ford
The imx8mm_beacon SOM has a QSPI part attached to the FSPI controller. Update the header and spl files to support booting from NOR flash and add imx8mm_beacon_fspi_defconfig to support this configuration. Signed-off-by: Adam Ford <[email protected]>
2023-07-11imx: imx8mm-beacon: Enable FlexSPI in U-BootAdam Ford
In order to use the FlexSPI interface in U-Boot, configure the alias to make spi0 point to flexspi. With that enabled, sf probe detects the QSPI part as: SF: Detected n25q256ax1 with page size 256 Bytes, erase size 4 KiB, total 32 MiB Signed-off-by: Adam Ford <[email protected]>
2023-07-10Merge branch 'next'Tom Rini
2023-07-10Prepare v2023.07v2023.07Tom Rini
Signed-off-by: Tom Rini <[email protected]>
2023-07-09Merge tag 'fsl-qoriq-2023-7-6' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-fsl-qoriq into next Enable DM Serial for ls1043ardb and ls1046ardb/afrwy Fixed secure boot on LS-CH2 platforms