summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-05-24test: Avoid random numbers in dm_test_devm_regmap()Simon Glass
There is no good reason to use a sequence from rand() here. We may as well invent our own sequence. This should molify Coverity which does not use rand() being used. Signed-off-by: Simon Glass <[email protected]> Reported-by: Coverity (CID: 312949)
2021-05-24pylibfdt: Rework "avoid unused variable warning" linesTom Rini
Clang has -Wself-assign enabled by default under -Wall and so when building with -Werror we would get an error here. Inspired by Linux kernel git commit a21151b9d81a ("tools/build: tweak unused value workaround") make use of the fact that both Clang and GCC support casting to `void` as the method to note that something is intentionally unused. Signed-off-by: Tom Rini <[email protected]>
2021-05-23Merge https://source.denx.de/u-boot/custodians/u-boot-shTom Rini
- Various clk/pinctrl updates to re-sync with Linux and other fixes
2021-05-21configs: sama7g5ek: increase bootm lenEugen Hristev
Increase the BOOTM_LEN to 32M . This would allow a bigger kernel image to be booted, for example the multi_v7_defconfig. Loading Kernel Image Image too large: increase CONFIG_SYS_BOOTM_LEN Must RESET board to recover resetting ... Signed-off-by: Eugen Hristev <[email protected]>
2021-05-21pinctrl: renesas: Implement unlock register masksMarek Vasut
The V3U SoC has several unlock registers, one per register group. They reside at offset zero in each 0x200 bytes-sized block. To avoid adding yet another table to the PFC implementation, this patch adds the option to specify an address mask instead of the fixed address in sh_pfc_soc_info::unlock_reg. This is a direct port of Linux 5.12 commit e127ef2ed0a6 ("pinctrl: renesas: Implement unlock register masks") by Ulrich Hecht <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2021-05-21pinctrl: renesas: Fix R-Car Gen2 help textMarek Vasut
The help text for Gen2 entries had a copy paste error, still containing the Gen3 string, while the description was correctly listing Gen2. Fix the help text. Signed-off-by: Marek Vasut <[email protected]>
2021-05-21pinctrl: renesas: Deduplicate KconfigMarek Vasut
The help text in the Kconfig file was always a copy of the same thing. Move single copy into the common PFC driver entry instead. Also fix a copy-paste error in the PFC help text, which identified PFC as clock. Signed-off-by: Marek Vasut <[email protected]>
2021-05-21gpio: renesas: Pass struct udevice to rcar_gpio_set_direction()Marek Vasut
Pass struct udevice to rcar_gpio_set_direction() in preparation of quirk handling in rcar_gpio_set_direction(). No functional change. Signed-off-by: Marek Vasut <[email protected]>
2021-05-21clk: renesas: Deduplicate gen3_clk_get_rate64() PLL handlingMarek Vasut
Most of the PLLx, MAIN, FIXED clock handlers are calling very similar code, which determines parent rate and then applies multiplication and division. The only difference is whether multiplication is fixed factor or coming from CRx register. Deduplicate the code into a single function. Signed-off-by: Marek Vasut <[email protected]>
2021-05-21clk: renesas: Add register pointers into struct cpg_mssr_infoHai Pham
Base on Linux v5.10-rc2, commit 8b652aa8a1fb by Yoshihiro Shimoda To support other register layouts in the future, add register pointers of {control,status,reset,reset_clear}_regs into struct cpg_mssr_info Signed-off-by: Hai Pham <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2021-05-21clk: renesas: Introduce enum clk_reg_layoutHai Pham
From Linux v5.10-rc2, commit ffbf9cf3f946 by Yoshihiro Shimoda Introduce enum clk_reg_layout to support multiple register layout variants Signed-off-by: Hai Pham <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2021-05-21clk: renesas: Pass struct cpg_mssr_info to renesas_clk_endisable()Hai Pham
CPG IP in some specific Renesas SoCs (i.e. new R8A779A0 V3U SoC) requires a different setting procedure. Make struct cpg_mssr_info accessible to handle the clock setting in that case. Signed-off-by: Hai Pham <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2021-05-21clk: renesas: Make reset controller modemr register offset configurableMarek Vasut
The MODEMR register offset changed on R8A779A0, make the MODEMR offset configurable. Fill the offset in on all clock drivers. No functional change. Based off "clk: renesas: Make CPG Reset MODEMR offset accessible from struct cpg_mssr_info" by Hai Pham <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2021-05-21clk: renesas: Add support for RPCD2 clockHai Pham
This supports RPCD2 clock handling. While at it, add the check point for RPC-IF clock RPCD2 Frequency Division Ratio, since it must be odd number Signed-off-by: Hai Pham <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2021-05-21clk: renesas: Fix Realtime Module Stop Control Register offsetsHai Pham
This patch fixes Realtime Module Stop Control Register (RMSTPCR) offsets based on R-Car Gen3, H2/M2/M2N/E2/E2X hardware user's manual. The r8a73a4 only has RMSTPCR0 - RMSTPCR5 so this calculation change doesn't affect it. Signed-off-by: Hai Pham <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2021-05-21clk: renesas: Fix incorrect return RPC clk_get_rateHai Pham
RPC clk_get_rate will return error code instead of expected clock rate. Fix this. Signed-off-by: Hai Pham <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2021-05-21clk: renesas: Reinstate RPC clock on R-Car D3/E3Marek Vasut
Reinstate RPC clock on D3/E3 after Linux 5.12 synchronization. The D3 and E3 clock drivers do not contain RPC clock entries mainline Linux yet. Signed-off-by: Marek Vasut <[email protected]>
2021-05-21clk: renesas: Synchronize R-Car Gen3 tables with Linux 5.12Marek Vasut
Synchronize R-Car Gen3 clock tables with Linux 5.12, commit 9f4ad9e425a1 ("Linux 5.12") . Signed-off-by: Marek Vasut <[email protected]>
2021-05-21clk: renesas: Synchronize R-Car Gen2 tables with Linux 5.12Marek Vasut
Synchronize R-Car Gen2 clock tables with Linux 5.12, commit 9f4ad9e425a1 ("Linux 5.12") . Signed-off-by: Marek Vasut <[email protected]>
2021-05-21clk: renesas: Synchronize RZ/G2 tables with Linux 5.12Marek Vasut
Synchronize RZ/G2 clock tables with Linux 5.12, commit 9f4ad9e425a1 ("Linux 5.12") . Signed-off-by: Marek Vasut <[email protected]>
2021-05-20Merge https://source.denx.de/u-boot/custodians/u-boot-marvellTom Rini
- Sync Armada mvpp2 ethernet driver with Marvell version (misc Marvell authors)
2021-05-20Merge https://source.denx.de/u-boot/custodians/u-boot-riscvTom Rini
2021-05-20arm: mvebu: armada-3720-uDPU.dts: Change back to phy-mode "2500base-x"Stefan Roese
With commit 8678776df6f5 (arm: mvebu: armada-3720-uDPU: fix PHY mode definition to sgmii-2500) the PHY mode was switch to "sgmii-2500", even when this is functionally incorrect since "2500base-x" was not supported in U-Boot at that time. As this mode is now supported (at least present in the headers), this patch moves back to the orinal version. Signed-off-by: Stefan Roese <[email protected]> Cc: Jakov Petrina <[email protected]> Cc: Vladimir Vid <[email protected]> Cc: Luka Perkov <[email protected]>
2021-05-20net: mvpp2: add explicit sgmii-2500 supportMarcin Wojtas
Until now the mvpp2 driver used an extra 'phy-speed' DT property in order to differentiate between the SGMII and SGMII @2.5GHz. As there is a dedicated PHY_INTERFACE_MODE_SGMII_2500 flag to mark the latter start using it and drop the custom flag. Signed-off-by: Marcin Wojtas <[email protected]> Reviewed-by: Stefan Chulski <[email protected]> Reviewed-by: Nadav Haklai <[email protected]> Tested-by: Nadav Haklai <[email protected]> Signed-off-by: Stefan Roese <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2021-05-20net: mvpp2: allow MDIO registration for fixed linksStefan Chulski
Currently, there are 2 valid cases for interface, PHY and mdio relation: - If an interface has PHY handler, it'll call mdio_mii_bus_get_from_phy(), which will register MDIO bus. - If we want to use fixed-link for an interface, PHY handle is not defined in the DTS, and no MDIO is registered. There is a third case, for some boards (with switch), the MDIO is used for switch configuration, but the interface itself uses fixed link. This patch allows this option by checking if fixed-link subnode is defined, in this case, MDIO bus is registers, but the PHY address is set to PHY_MAX_ADDR for this interface, so this interface will not try to access the PHY later on. Signed-off-by: Stefan Chulski <[email protected]> Signed-off-by: Stefan Roese <[email protected]>
2021-05-20net: mvpp2: fix missing switch case breakBen Peled
Signed-off-by: Ben Peled <[email protected]> Reviewed-by: Stefan Chulski <[email protected]> Reviewed-by: Kostya Porotchkin <[email protected]> Signed-off-by: Stefan Roese <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2021-05-20net: mvpp2: remove unused define MVPP22_SMI_PHY_ADDR_REGBen Peled
Signed-off-by: Ben Peled <[email protected]> Reviewed-by: Stefan Chulski <[email protected]> Reviewed-by: Kostya Porotchkin <[email protected]> Signed-off-by: Stefan Roese <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2021-05-20net: mvpp2: AN Bypass in 1000 and 2500 basex modeBen Peled
Signed-off-by: Ben Peled <[email protected]> Reviewed-by: Stefan Chulski <[email protected]> Reviewed-by: Kostya Porotchkin <[email protected]> Signed-off-by: Stefan Roese <[email protected]>
2021-05-20net: mvpp2: Fix 2.5G GMII_SPEED configurationsStefan Chulski
GMII_SPEED should be enabled for 2.5G speed Signed-off-by: Stefan Chulski <[email protected]> Reviewed-by: Yan Markman <[email protected]> Reviewed-by: Kostya Porotchkin <[email protected]> Signed-off-by: Stefan Roese <[email protected]>
2021-05-20net: mvpp2: remove redundant SMI address configurationMarcin Wojtas
Because the mvpp2 driver now relies on the PHYLIB and the external MDIO driver, configuring low level SMI bus settings is redundant. Signed-off-by: Marcin Wojtas <[email protected]> Reviewed-by: Kostya Porotchkin <[email protected]> Reviewed-by: Stefan Chulski <[email protected]> Signed-off-by: Stefan Roese <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2021-05-20net: mvpp2: add 1000BaseX and 2500BaseX ppv2 supportStefan Chulski
Signed-off-by: Stefan Chulski <[email protected]> Signed-off-by: Stefan Roese <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2021-05-20net: mvpp2: add CP115 port1 10G/5G SFI supportStefan Chulski
1. Differ between Port1 RGMII and SFI modes in Netcomplex config. 2. Remove XPCS config from SFI mode. Port1 doesn't XPCS domain, XPCS config should be removed. Access to Port1 XPCS can cause stall. 3. Add Port1 MPCS configurations. Signed-off-by: Stefan Chulski <[email protected]> Signed-off-by: Stefan Roese <[email protected]>
2021-05-20phy: introduce 1000BaseX and 2500BaseX modesStefan Chulski
Signed-off-by: Stefan Chulski <[email protected]> Signed-off-by: Stefan Roese <[email protected]>
2021-05-19Merge tag 'xilinx-for-v2021.07-rc3' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-microblaze Xilinx changes for v2021.07-rc3 ZynqMP: - Syncup DT with Linux kernel - Fix mmc mini configurations via DT - Add pinctrl/psgtr description to DTs - Add DTs for Kria boards - Enable RTC and Time commands Versal: - Fix early BSS section location
2021-05-19riscv: ae350: Increase malloc size for binman spl flowRick Chen
It will need larger heap size for u-boot-spl to load u-boot.itb which be generated from binman than USE_SPL_FIT_GENERATOR. Signed-off-by: Rick Chen <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2021-05-19riscv: Drop USE_SPL_FIT_GENERATORBin Meng
Now that we have switched to binman to generate u-boot.itb for all RISC-V boards, USE_SPL_FIT_GENERATOR is no longer needed and can be dropped. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-05-19riscv: ae350: Switch to use binman to generate u-boot.itbBin Meng
Use the new BINMAN_STANDALONE_FDT option for AE350 based SPL defconfigs, so that binman is now used to generate u-boot.itb. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Rick Chen <[email protected]>
2021-05-19riscv: qemu: Switch to use binman to generate u-boot.itbBin Meng
By utilizing the newly introduced BINMAN_STANDALONE_FDT option, along with a new dedicated device tree source file for the QEMU virt target used for binman only, we can now use binman to generate u-boot.itb. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-05-19riscv: dts: Sort build targets in alphabetical orderBin Meng
Sort the RISC-V DTS build targets by their Kconfig target names in alphabetical order. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-05-19binman: Support packaging U-Boot for scenarios like OF_BOARD or OF_PRIOR_STAGEBin Meng
For scenarios like OF_BOARD or OF_PRIOR_STAGE, no device tree blob is provided in the U-Boot build phase hence the binman node information is not available. In order to support such use case, a new Kconfig option BINMAN_STANDALONE_FDT is introduced, to tell the build system that a device tree blob containing binman node is explicitly required when using binman to package U-Boot. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-05-19lib: kconfig: Limit BINMAN_FDT for OF_SEPARATE or OF_EMBEDBin Meng
Generally speaking BINMAN_FDT makes sense for OF_SEPARATE or OF_EMBED. For the other OF_CONTROL methods, it's quite possible binman node is not available as binman is invoked during the build phase instead of runtime. Let's only turn it on for OF_SEPARATE or OF_EMBED by default. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-05-19riscv: sifive: unleashed: Switch to use binman to generate u-boot.itbBin Meng
At present SiFive Unleashed board uses the Makefile to create the FIT, using USE_SPL_FIT_GENERATOR, which is deprecated as per the Makefile warning. Update to use binman instead. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-05-19makefile: Pass OpenSBI blob to binman make rulesBin Meng
This updates the make rules to pass OpenSBI blob to binman. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-05-19binman: Add support for RISC-V OpenSBI fw_dynamic blobBin Meng
Add an entry for RISC-V OpenSBI's 'fw_dynamic' firmware payload. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Rick Chen <[email protected]> Reviewed-by: Rick Chen <[email protected]>
2021-05-19binman: test: Rename 172_fit_fdt.dts to 170_fit_fdt.dtsBin Meng
Currently there are 2 binman test cases using the same 172 number. It seems that 172_fit_fdt.dts was originally named as 170_, but commit c0f1ebe9c1b9 ("binman: Allow selecting default FIT configuration") changed its name to 172_ for no reason. Let's change it back. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-05-19binman: Correct the comment for ATF entry typeBin Meng
This is wrongly referring to Intel ME, which should be ATF. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-05-19binman: Correct '-a' description in the docBin Meng
It needs a space around '-a'. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Rick Chen <[email protected]>
2021-05-19common: kconfig: Correct a typo in SPL_LOAD_FITBin Meng
It should be FDT, not FTD. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Rick Chen <[email protected]>
2021-05-19xilinx: zynqmp: Enable DM_RTC/emul driver/cmd date/gettime and efi settimeMichal Simek
Right now U-Boot is not aware about date/time that's why enable it by default also with EFI runtime service for setting time. Signed-off-by: Michal Simek <[email protected]>
2021-05-19xilinx: versal: Enable CONFIG_POSITION_INDEPENDENTT Karthik Reddy
U-Boot expects to be linked to a specific hard-coded address and to be loaded to and run from that address. CONFIG_POSITION_INDEPENDENT config lifts that restriction & allowing the code to be loaded to and executed from almost any address. As we enabled CONFIG_POSITION_INDEPENDENT, CONFIG_INIT_SP_RELATIVE is enabled by default, where it will set the early stack pointer at runtime by adding an offset value to &_bss_start. The offset value is taken from SYS_INIT_SP_BSS_OFFSET. SYS_INIT_SP_BSS_OFFSET offset should be large enough so that the early malloc region, global data (gd), and early stack should fit. With commit d8fabcc424bd ("arm64: versal: Increase SYS_MALLOC_F_LEN") SYS_MALLOC_F_LEN is increased from 32KB to 1MB, so we need to accommodate this space with SYS_INIT_SP_BSS_OFFSET. Hence increasing SYS_INIT_SP_BSS_OFFSET to 1.5MB. Signed-off-by: T Karthik Reddy <[email protected]> Acked-by: Ashok Reddy Soma <[email protected]> Signed-off-by: Michal Simek <[email protected]>