summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-05-04Kconfig: j721s2: Change K3_MCU_SCRATCHPAD_BASE to non firewalled regionManorit Chawdhry
On K3 HS-SE devices all the firewalls are locked by default until sysfw comes up. Rom configures some of the firewall for its usage along with the SRAM for R5 but the PSRAM region is still locked. The K3 MCU Scratchpad for j721s2 was set to a PSRAM region triggering the firewall exception before sysfw came up. The exception started happening after adding multi dtb support that accesses the scratchpad for reading EEPROM contents. Old map: ┌─────────────────────────────────────┐ 0x41c00000 │ SPL │ ├─────────────────────────────────────┤ 0x41c61f20 (approx) │ STACK │ ├─────────────────────────────────────┤ 0x41c65f20 │ Global data │ │ sizeof(struct global_data) = 0xd8 │ ├─────────────────────────────────────┤ gd->malloc_base = 0x41c66000 │ HEAP │ │ CONFIG_SYS_MALLOC_F_LEN = 0x10000 │ ├─────────────────────────────────────┤ CONFIG_SPL_BSS_START_ADDR │ SPL BSS │ (0x41c76000) │ CONFIG_SPL_BSS_MAX_SIZE = 0xA000 │ ├─────────────────────────────────────┤ (0x41c80000) │ DM DATA │ ├─────────────────────────────────────┤ (0x41c84130) (approx) │ EMPTY │ └─────────────────────────────────────┘ CONFIG_SYS_K3_BOOT_PARAM_TABLE_INDEX (0x41cffbfc) New map: ┌─────────────────────────────────────┐ 0x41c00000 │ SPL │ ├─────────────────────────────────────┤ 0x41c61f20 (approx) │ STACK │ ├─────────────────────────────────────┤ 0x41c65f20 │ Global data │ │ sizeof(struct global_data) = 0xd8 │ ├─────────────────────────────────────┤ gd->malloc_base = 0x41c66000 │ HEAP │ │ CONFIG_SYS_MALLOC_F_LEN = 0x10000 │ ├─────────────────────────────────────┤ CONFIG_SPL_BSS_START_ADDR │ SPL BSS │ (0x41c76000) │ CONFIG_SPL_BSS_MAX_SIZE = 0xA000 │ ├─────────────────────────────────────┤ (0x41c80000) │ DM DATA │ ├─────────────────────────────────────┤ (0x41c84130) (approx) │ EMPTY │ ├─────────────────────────────────────┤ SYS_K3_MCU_SCRATCHPAD_BASE │ SCRATCHPAD │ (0x41cff9fc) │ SYS_K3_MCU_SCRATCHPAD_SIZE = 0x200 │ └─────────────────────────────────────┘ CONFIG_SYS_K3_BOOT_PARAM_TABLE_INDEX (0x41cffbfc) Reviewed-by: Kamlesh Gurudasani <kamlesh@ti.com> Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
2023-05-04configs: j721s2: Merge the HS and non-HS defconfigsManorit Chawdhry
K3 devices have runtime type board detection. Make the default defconfig include the secure configuration. Then remove the HS specific config. Non-HS devices will continue to boot due to runtime device type detection. If TI_SECURE_DEV_PKG is not set the build will emit warnings, for non-HS devices these can be ignored. Reviewed-by: Kamlesh Gurudasani <kamlesh@ti.com> Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
2023-05-04arm: dts: iot2050: Include u-boot specific bits implicitlyJan Kiszka
Create *-u-boot.dtsi files for each target dtb of the IOT2050 series so that we can drop the #include deviations from upstream dts[i] files here. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
2023-05-04environment: ti: Add get_fit_config command to get FIT config stringAndrew Davis
When OE is packaging a dtb file into the FIT image it names the node based on the dtb filename. Node names can't have "/" so it is turned into "_". We select our FIT config using the "fdtfile" env var so we don't duplicate the board_name to fdt logic. Result is fdtfile needs mangled when used to select a config node from OE made FIT image. Do this here. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2023-05-04configs: am62x: enable secure device configs by defaultPraneeth Bajjuri
Enable the CONFIG_TI_SECURE_DEVICE by default Non-HS devices will continue to boot due to runtime device type detection. TI's security enforcing SoCs will authenticate each binary it loads by comparing it's signature with keys etched into the SoC during the boot up process. The am62x family of SoCs by default will have some level of security enforcement checking. To keep things as simple as possible, enable the CONFIG_TI_SECURE_DEVICE options by default so all levels of secure SoCs will work out of the box Signed-off-by: Praneeth Bajjuri <praneeth@ti.com> Signed-off-by: Kamlesh Gurudasani <kamlesh@ti.com> Signed-off-by: Bryan Brattlof <bb@ti.com>
2023-05-04k3: pmic: Clear ESM masksNeha Malcom Francis
ESM MCU masks must be set to 0h so that PMIC can handle errors that require attention for example SYS_SAFETY_ERRn. The required bits must be cleared: ESM_MCU_RST_MASK, ESM_MCU_FAIL_MASK, ESM_MCU_PIN_MASK. If PMIC expected to handle errors, make sure EVM is configured to connect SOC_SAFETY_ERRz (Main) to the PMIC. Note that even though the User Guide for TPS65941 for J721E mentions that these bits are reset to 0h; it is not reflected once board boots to kernel, possibly due to NVM configurations. Eithercase, it is best to account for this from R5 SPL side as well. Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
2023-05-04Merge branch '2023-05-03-assorted-updates-and-fixes'Tom Rini
- Various typo fixes, pass -Werror to host tools builds, bdi cleanups, fix hush and local variables, a FSL PCI fix and correct some python in one of the tests.
2023-05-04Merge tag 'efi-2023-07-rc2' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request efi-2023-07-rc2 Documentation: * treat documentation warnings as errors in CI * adjust StarFive VisionFive 2 and SiFive Unmatched documentation * man-page for cp * correct description of uclass_get_device_by_of_path * correct proftool usage UEFI * Fix documentation of EFI Python tests * Rename efi_selftest Python test
2023-05-04CI: treat documentation warnings as errorsHeinrich Schuchardt
We do not want to merge documentation that produces Sphinx warnings. scripts/kernel-doc uses environment variable KDOC_WERROR to determine if warnings should be treated as errors. Reported-by: Tom Rini <trini@konsulko.com> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-04efi: Rename the base efi self-testSimon Glass
This function uses the same base name as all the others in this file, so it is not easy to run just that one test. Add a _base suffix so that it can be run on its own. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2023-05-04doc: man-page for cpHeinrich Schuchardt
Add a man-page for the cp command. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-04test: fix pydoc issues for EFI testsHeinrich Schuchardt
Fix issues reported by pydocstyle. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2023-05-04doc: correct HiFive Unmatched boot descriptionHeinrich Schuchardt
Main U-Boot is loaded by sector number, not by partition GUID type. Fixes: 70415e1e528d ("board: sifive: add HiFive Unmatched board support") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2023-05-04doc: fix StarFive VisionFive v2 documentationHeinrich Schuchardt
The number of the partition that U-Boot SPL loads the main U-Boot from is defined as 2 by CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=0x2. The partition type GUID is not used currently. Reword the description of the boot process to make it clearer. Fixes: 5ecf9b0b8a75 ("board: starfive: add StarFive VisionFive v2 board support") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2023-05-04doc: Indicate required OpenSBI release for VisionFive 2Heinrich Schuchardt
Support for the VisionFive 2 board is not contained in the most recent OpenSBI release (v1.2). Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2023-05-04docs: fix wrong proftool usagePavel Skripkin
Guide shows incorrect usage of proftool, which is confusing. If proftool is used w/o '-o' argument it complains like following $ ./sandbox/tools/proftool -m sandbox/System.map -t trace dump-ftrace > trace.dat Must provide trace data, System.map file and output file Usage: proftool [-cmtv] <cmd> <profdata> s/>/-o/ fixes it and proftool outputs decoded data to trace.dat Signed-off-by: Pavel Skripkin <paskripkin@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-04doc: mmc: drop 0x prefixes in read/write examplesAlexander Shirokov
The patch drops 0x prefixes because all numbers are interpreted as HEX by default. Also, it fixes the mismatch between input arguments and output at 'mmc write' example. Now it's 256 (0x100) blocks. Signed-off-by: Alexander Shirokov <shirokovalexs@gmail.com> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2023-05-04dm: core: fix introduce uclass_get_device_by_of_pathHeinrich Schuchardt
Correct the function documentation. Fixes: ca031c082700 ("dm: core: introduce uclass_get_device_by_of_path()") Reported-by: Tom Rini <trini@konsulko.com> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-04tools: fix TestFdtUtil()Heinrich Schuchardt
Variable old_outdir cannot be used before assignment. The assignment must occur before the try block. tools/dtoc/test_fdt.py:796:26: E0601: Using variable 'old_outdir' before assignment (used-before-assignment) Add missing space in assignment. Fixes: a004f29464d1 ("binman: Tidy up _SetupDtb() to use its own temporary file") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-03pci: fsl: Do not access PCI BAR0 register of PCIe Root PortPali Rohár
Freescale PCIe Root Port has PEXCSRBAR register at position of PCI BAR0. PCIe Root Port does not have any PCIe memory, so returns zero when trying to read from PCIe Root Port BAR0 and ignore any writes. Signed-off-by: Pali Rohár <pali@kernel.org>
2023-05-03buildman: Pass -Werror to the host compiler tooSimon Glass
The host compiler is not failing on warnings at present, when the -E flag is used in buildman. Add the required flag to fix this. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Tom Rini <trini@konsulko.com>
2023-05-03common/Kconfig: fix comments syntax errorHugo Villeneuve
Fix comments error in EVENT_DEBUG description: this get usefui -> this to get useful Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-03event: fix comments syntax errorHugo Villeneuve
Fix comments syntax error in event description: creasted -> created Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-03boot/Kconfig: fix comments syntax errorHugo Villeneuve
Fix comments syntax error in SPL_LOAD_FIT_APPLY_OVERLAY description. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-03cmd: bdinfo: Print ethaddr of current MACMarek Vasut
Instead of always printing ethaddr of MAC 0, print eth%daddr of the current MAC. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-03cmd: bdinfo: Wrap network information printing into print_eth()Marek Vasut
Move all the network information printing into print_eth(), no functional change. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-03cmd: bdinfo: Map fdt_blob and new_fdt to sysmemMarek Vasut
Map fdt_blob and new_fdt to sysmem, otherwise $fdtcontroladdr and bdinfo output do not match and the bdinfo output address is not a valid address accessible via sandbox memory accessors. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-03tools: fix TestFdtUtil()Heinrich Schuchardt
Variable old_outdir cannot be used before assignment. The assignment must occur before the try block. tools/dtoc/test_fdt.py:796:26: E0601: Using variable 'old_outdir' before assignment (used-before-assignment) Add missing space in assignment. Fixes: a004f29464d1 ("binman: Tidy up _SetupDtb() to use its own temporary file") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-03test: hush_if_test: Add hush variable testStefan Herbrechtsmeier
Add a test for the hush shell variable assignment and clear. Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-03common: cli_hush: Restore clear local variable supportStefan Herbrechtsmeier
The u-boot hush shell doesn’t support the unset command to clear a variable and therefore an empty value ("c=") should be a valid value for the set_local_var function to clear the variable. This partial reverts commit aa722529635c ("common: cli_hush: avoid dead code") and only checks for a `=` in the string. Additionally explicit call the unset_local_var function to remove the variable if the value is empty. Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-03bk4r1: Enable LTOTom Rini
In order to allow for general platform growth due to fixes, enable LTO here to give us more room. Signed-off-by: Tom Rini <trini@konsulko.com>
2023-05-03Merge tag 'u-boot-imx-20230503' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx u-boot-imx-20230503 ------------------- - Fixes for : pico-imx6ul, smegw01 - new boards: DMSSE20, Reform 2 - fix: get_boot_device, PLL video rate CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/16211
2023-05-03Merge branch '2023-05-02-assorted-platform-updates-and-additions'Tom Rini
- Updates for starqltechn and other qualcomm platforms, hi3798mv200, Broadcom Northstar, and mediatek platforms - Drop omap5_uevm, and assorted TI platform updates - Add MAX14526
2023-05-03starqltechn: enable bootmenuDzmitry Sankouski
Needed for multiboot with vendor's Android. Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com>
2023-05-03starqltechn: use button keyboard driverDzmitry Sankouski
Button keyboard driver used to navigate bootmenu entries. Add gpio buttons, button keyboard driver. Add gpio keys dts bindings. Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-03starqltechn: use 16x32 fontDzmitry Sankouski
This font is more readable on high ppi display Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-05-03arm: histb: hi3798mv200: add initial support for Hi3798MV200 HC2910-2AGHD05 ↵Yang Xiwen
board A board with Hi3798MV200 SoC and various peripherals. Details are in the board README.md. Signed-off-by: Yang Xiwen <forbidden405@outlook.com>
2023-05-03dt-binding: histb-clock: add clocks definition for Hi3798MV200Yang Xiwen
These clocks are found on Hi3798MV200 Signed-off-by: Yang Xiwen <forbidden405@outlook.com>
2023-05-03mmc: hi6220_dw_mmc: add compatible for HC2910 supportYang Xiwen
It adds compatible "hisilicon,hi3798mv200-dw-mshc" for HC2910 SoC Hi3798MV200 to probe this mmc driver. Signed-off-by: Yang Xiwen <forbidden405@outlook.com>
2023-05-03arm: add support for Hisilicon HiSTB family SoCsYang Xiwen
First supported chip is hi3798mv200 (which is similar to Hi3798cv200 used by poplar). Signed-off-by: Yang Xiwen <forbidden405@outlook.com>
2023-05-03arm: Remove omap5_uevm boardTom Rini
This platform is unsupported by TI and was never widely distributed. As this is untested for a long while and missing some DM conversions, remove it and related device tree files. Signed-off-by: Tom Rini <trini@konsulko.com>
2023-05-03arm: mach-k3: Workaround errata ID i2331Nitin Yadav
Errata doc: https://www.ti.com/lit/pdf/sprz457 Errata ID i2331 CPSW: Device lockup when reading CPSW registers Details: A device lockup can occur during the second read of any CPSW subsystem register after any MAIN domain power on reset (POR). A MAIN domain POR occurs using the hardware MCU_PORz signal, or via software using CTRLMMR_RST_CTRL.SW_MAIN_POR or CTRLMMR_MCU_RST_CTRL.SW_MAIN_POR. After these resets, the processor and internal bus structures may get into a state which is only recoverable with full device reset using MCU_PORz. Due to this errata, Ethernet boot should not be used on this device. Workaround(s): To avoid the lockup, a warm reset should be issued after a MAIN domain POR and before any access to the CPSW registers. The warm reset realigns internal clocks and prevents the lockup from happening. Workaround above errata by calling do_reset() in case of cold boot in order to trigger warm reset. This needs enabling SYSRESET driver in R5 SPL to enable TI SCI reset driver. Signed-off-by: Nitin Yadav <n-yadav@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Reviewed-by: Bryan Brattlof <bb@ti.com>
2023-05-03board: ti: j721s2: Add support to detect daughtercardsKishon Vijay Abraham I
Add support to detect daughtercards (GESI Ethernet card) in-order to set the MAC address of the main CPSW2G interface. Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com> Signed-off-by: Siddharth Vadapalli <s-vadapalli@ti.com>
2023-05-03configs: j7200_evm_a72: Enhance bootcmd to configure ethernet PHYKishon Vijay Abraham I
Update the default BOOTCOMMAND to provide an automatic and easier way to configure ethernet PHY before loading the firmware. Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com> Signed-off-by: Siddharth Vadapalli <s-vadapalli@ti.com>
2023-05-03configs: change bpi-r3 to board specific dts and change promptFrank Wunderlich
Use own devicetree for the board and change the prompt. Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
2023-05-03board: mediatek: add Bananapi-R3 devicetreeDaniel Golle
Add board specific devicetree for Bananapi R3 SBC. Signed-off-by: Daniel Golle <daniel@makrotopia.org> Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
2023-05-03pinctrl: mediatek: set R1/R0 in case pullen/pullsel succeededDaniel Golle
Commit dafe0fbfb0f3 ("pinctrl: mediatek: rewrite mtk_pinconf_set and related functions") changed the logic deciding to set R0 and R1 registers for V1 devices. Before: /* Also set PUPD/R0/R1 if the pin has them */ err = mtk_hw_set_value(dev, pin, PINCTRL_PIN_REG_PUPD, !pullup); if (err != -EINVAL) { mtk_hw_set_value(dev, pin, PINCTRL_PIN_REG_R0, r0); mtk_hw_set_value(dev, pin, PINCTRL_PIN_REG_R1, r1); } After: /* try pupd_r1_r0 if pullen_pullsel return error */ err = mtk_pinconf_bias_set_pullen_pullsel(dev, pin, disable, pullup, val); if (err) return mtk_pinconf_bias_set_pupd_r1_r0(dev, pin, disable, pullup, val); Tracing mtk_pinconf_bias_set_pullen_pullsel shows that the function always either returns 0 in case of success or -EINVAL in case any error has occurred. Hence the logic responsible of the decision to program R0 and R1 has been inverted. This leads to problems on BananaPi R2 (MT7623N) when booting from SDMMC, it turns out accessing eMMC no longer works since U-Boot 2022.07: MT7623> mmc dev 0 Card did not respond to voltage select! : -110 The problem wasn't detected for a long time as both eMMC and SDMMC work fine if they are used to boot from, and hence R0 and R1 were already setup by the bootrom and/or preloader. Fix the logic to restore the originally intended and correct behavior and also change the descriptive comment accordingly. Fixes: dafe0fbfb0f3 ("pinctrl: mediatek: rewrite mtk_pinconf_set and related functions") Signed-off-by: Daniel Golle <daniel@makrotopia.org> Tested-By: Frank Wunderlich <frank-w@public-files.de>
2023-05-03arm: mach-k3: am62a7: Enable QoS for DSSAradhya Bhatia
Enable Quality of Service (QoS) blocks for Display SubSystem (DSS), by servicing the DSS - DDR traffic from the Real-Time (RT) queue. This is done by setting the DSS DMA orderID to 8. The C7x and VPAC have been overwhelming the DSS's access to the DDR (when it was accessing via the Non Real-Time (NRT) Queue), primarily because their functional frequencies, and hence DDR accesses, were significantly higher than that of DSS. This led the display to flicker when certain edgeAI models were being run. With the DSS traffic serviced from the RT queue, the flickering issue has been found to be mitigated. The am62a qos files are auto generated from the k3 resource partitioning tool. Section-3.1.12, "QoS Programming Guide", in the AM62A TRM[1], provides more information about the QoS, and section-14.1, "System Interconnect Registers", provides the register descriptions. [1] AM62A Tech Ref Manual: https://www.ti.com/lit/pdf/spruj16 Signed-off-by: Aradhya Bhatia <a-bhatia1@ti.com>
2023-05-03arm: mach-k3: j7200: Fix firewall warnings at boot timeManorit Chawdhry
J721E and J7200 have same file j721e_init.c which had the firewall configs for J721E being applied on J7200 causing the warnings. Split the firewalls for both the boards to remove those warnings. Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
2023-05-03board: Fix documentation for Snapdragon based Samsung and Qualcomm boardsBhupesh Sharma
The current documentation for Snapdragon based Samsung and Qualcomm boards is vague in the sense that at one place it mentions that u-boot can be used as a replacement for ABL bootloader and at another it mentions that u-boot is loaded as an Android boot image through ABL. Fix the same. Signed-off-by: Bhupesh Sharma <bhupesh.sharma@linaro.org> Reviewed-by: Sumit Garg <sumit.garg@linaro.org>