aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2024-02-07Merge tag 'u-boot-rockchip-20240207' of ↵WIP/07Feb2024Tom Rini100-370/+1984
https://source.denx.de/u-boot/custodians/u-boot-rockchip - Add board: rv1126 Sonoff iHost board - rv1126 ddr4 support; - Enable BOOTSTD_FULL for RK3399 and RK3588; - rk3036 spl stack addr fix; - dts sync from linux v6.8-rc1 for rk356x, rk3588, rv1126; - Enable eMMC HS200 mode by default for rk3568 and rk3588;
2024-02-07arm: dts: rockpro64: Add RockPro64 smbiosShantur Rathore2-0/+24
Add smbios information for Pine64 RockPro64 board and enable in config Signed-off-by: Shantur Rathore <i@shantur.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2024-02-05Merge patch series "board: siemens: clean up subfolders"WIP/05Feb2024Tom Rini29-325/+216
Enrico Leto <enrico.leto@siemens.com> says: The common folder was initialially created for the common parts of the products based on draco-am355x board family. We have the product lines 'pxm2', 'rut' and the base line unfortunately named 'draco'! Adding the new capricorn-imx8 board family, the files were enhanced without cleanup. Simplify first EEPROM probe and access that implements both i2c with & without driver model. Use abstraction functions for this. Move all am355x specifics to a new file 'board_am335x'. Clean-up includes, config checks, maintainer.
2024-02-05siemens: factoryset: use correct config for soc specific implementationEnrico Leto2-4/+4
Adding the capricorn board family some parts diverge from draco family. The switches used were not pertinent and need to be enhanced for each new board of the capricorn family. Replace them through the SOC name 'AM33XX' and 'IMX8'. Signed-off-by: Enrico Leto <enrico.leto@siemens.com>
2024-02-05siemens: board: clean up includesEnrico Leto9-97/+23
Many includes were not removed when code parts were moved or removed. Signed-off-by: Enrico Leto <enrico.leto@siemens.com>
2024-02-05siemens: board: clean up products folders vs commonEnrico Leto13-90/+64
The common folder was initialially created for the common parts of the products based on draco-am355x board family. These are the product lines 'pxm2', 'rut' and the base line named 'draco'! Adding the new capricorn-imx8 board family, common was enhanced without cleanup. - rename 'common/board.c' to 'common/board_am335x.c' - add 'common/board_am335x.h' for export to the product lines Reviewed-by: Alexander Sverdlin <alexander.sverdlin@siemens.com> Signed-off-by: Enrico Leto <enrico.leto@siemens.com>
2024-02-05siemens: board: etamin: remove deprecated nand configEnrico Leto3-32/+0
NAND was used in the early development phase of etamin. The board runs now on MMC. This setting is no more used -> remove to simplify the board file. Further clean-up of etamin should remove all NAND settings. Complete clean- up of etamin board will take place in a separate patch serie. Signed-off-by: Enrico Leto <enrico.leto@siemens.com>
2024-02-05siemens draco: i2c: use driver model for u-bootEnrico Leto3-3/+9
Add support for driver model where EEPROM data are read in draco board. Reviewed-by: Alexander Sverdlin <alexander.sverdlin@siemens.com> Signed-off-by: Enrico Leto <enrico.leto@siemens.com>
2024-02-05siemens: eeprom: simplify setup & readEnrico Leto13-77/+84
Since we have boards using the driver model or not for i2c, use abstraction function to probe the i2c, check the EEPROM and read from EEPROM. Signed-off-by: Enrico Leto <enrico.leto@siemens.com>
2024-02-05siemens: eeprom: clean up definitionsEnrico Leto10-29/+39
Move the I2C and EEPROM address definitions in common board header. Reviewed-by: Alexander Sverdlin <alexander.sverdlin@siemens.com> Signed-off-by: Enrico Leto <enrico.leto@siemens.com>
2024-02-05Merge tag 'rpi-next-2024.04' of ↵Tom Rini10-27/+171
https://source.denx.de/u-boot/custodians/u-boot-raspberrypi Add RaspberryPi5 basic support. Acked-by: Peter Robinson <pbrobinson@gmail.com>
2024-02-05rockchip: rk3568-generic: Enable eMMC HS200 modeJonas Karlman3-2/+16
Writing to eMMC using HS200 mode work more reliably then other modes on RK356x boards. Add device tree props and enable Kconfig options for eMMC HS200 mode on the generic RK3566/RK3568 board. Also enable the pinctrl driver in SPL and add missing rk3568-generic.dtb to Makefile. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-05rockchip: rk3588-evb: Enable USB supportAndy Yan1-0/+12
Enable USB releated config to support boot from usb. Signed-off-by: Andy Yan <andy.yan@rock-chips.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-05mmc: rockchip_sdhci: Fix HS400 mode write on RK3568Jonas Karlman1-4/+5
Testing has shown that writing to eMMC using HS400 modes on RK3568 result in an ERROR. Change the tap number for transmit clock to fix this. Also stop DLL when config_dll() is called to disable DLL. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-05rockchip: rk35xx: Enable eMMC HS200 mode by defaultJonas Karlman4-6/+4
Testing has shown that writing to eMMC using a slower mode then HS200 typically generate an ERROR on first attempt on RK3588. # Rescan using MMC legacy mode => mmc rescan 0 # Write a single block to sector 0x4000 fails with ERROR => mmc write 20000000 4000 1 # Write a single block to sector 0x4000 now works => mmc write 20000000 4000 1 With the MMC_SPEED_MODE_SET Kconfig option enabled. Writing to eMMC using HS200 mode work more reliably than slower modes on RK35xx boards. Enable MMC_HS200_SUPPORT Kconfig option by default to prefer use of HS200 mode on RK356x and RK3588. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-05rockchip: rk35xx: Remove use of eMMC DDR52 modeJonas Karlman12-12/+0
Testing has shown that writing to eMMC using DDR52 mode does not seem to work on RK356x and RK3588 boards. A simple test of writing a single block to e.g. sector 0x4000 fails: # Rescan using DDR52 mode => mmc rescan 4 # Write a single block to sector 0x4000 fails with ERROR => mmc write 20000000 4000 1 With the MMC_SPEED_MODE_SET Kconfig option enabled. Fix this by removing the mmc-ddr-1_8v prop from sdhci nodes in affected board u-boot.dtsi files. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-05rockchip: rk3588-quartzpro64: Enable AHCI, PCI and USBJonas Karlman1-0/+25
Enable Kconfig options to support AHCI, PCI and USB features. This help keep rk3588-quartzpro64 in sync with other RK3588 boards. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-05rockchip: rk3588: Enable eMMC HS200 modeJonas Karlman9-0/+18
Writing to eMMC using HS200 mode work more reliably then other modes on RK3588 boards. Enable MMC_HS200_SUPPORT Kconfig option to prefer use of HS200 mode. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com> Reviewed-by: Weizhao Ouyang <o451686892@gmail.com>
2024-02-04rockchip: rk35xx: Remove unnecessary status propsJonas Karlman3-14/+1
Remove unnecessary status props from rk35xx u-boot.dtsi files, regular device tree files or default value already enable the affected nodes. Also reorder bootph-pre-ram and clock-frequency props alphabetically in rk3588s-u-boot.dtsi uart2 node. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04rockchip: rk3588: Add default u-boot,spl-boot-order propJonas Karlman7-34/+4
Add a default u-boot,spl-boot-order prop to rk3588s-u-boot.dtsi and remove the prop from board u-boot.dtsi files using the default value. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Eugen Hristev <eugen.hristev@collabora.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04rockchip: rk3588: Sync device tree from linux v6.8-rc1Jonas Karlman14-36/+251
Sync rk3588 device tree from linux v6.8-rc1. Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
2024-02-04rockchip: rk3588: Sync device tree with linux v6.7Jonas Karlman7-34/+47
Sync rk3588 device tree from linux v6.7. Also drop the rockchip,rk3568-dwc3 compatible now that dwc3-generic driver support the rockchip,rk3588-dwc3 compatible. Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
2024-02-04rockchip: rk356x: Move common uart2 props to rk356x-u-boot.dtsiJonas Karlman14-156/+5
Move uart2 bootph-pre-ram and clock-frequency props from board to SoC u-boot.dtsi. Regular board device tree already enables the uart2 node, so status prop is dropped from u-boot.dtsi file. Also remove unnecessary stdout-path = &uart2, regular board device tree already provide a stdout-path = "serial2:" value. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04rockchip: rk356x: Sync device tree from linux v6.8-rc1Jonas Karlman6-3/+16
Sync rk356x device tree from linux v6.8-rc1. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04rockchip: rk356x: Sync device tree from linux v6.7Jonas Karlman13-48/+48
Sync rk356x device tree from linux v6.7. Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04arch: arm: mach-rockchip: Kconfig: Enable BOOTSTD_FULL for RK3399 and RK3588Shantur Rathore1-0/+2
Rockchip RK3399 and RK3588 SoCs can support wide range of bootflows. Without full bootflow commands, it can be difficult to figure out issues if any, hence enable by default. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Shantur Rathore <i@shantur.com>
2024-02-04rockchip: rv1126: Move RAM disk addressTim Lunn1-1/+1
OPTEE gets loaded into a memory region overlapping with the ram disk. Fix the ramdisk address so it doesn't overlap with the OPTEE memory region. Signed-off-by: Tim Lunn <tim@feathertop.org> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04rockchip: rv1126: select SPL_OPTEE_IMAGETim Lunn1-0/+1
rv1126 requires OPTEE as it provides pcsi support. Mainline Linux kernel will fail to boot without this. Select SPL_OPTEE_IMAGE when building FIT image. TEE must be provided when building. Signed-off-by: Tim Lunn <tim@feathertop.org> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04board: rockchip: Add Sonoff iHost boardTim Lunn7-0/+114
Sonoff iHost is gateway device designed to provide a Smart Home Hub, it is based on Rockchip RV1126. There is also a version with 2GB RAM based off the RV1109 dual core SoC however this works with the same config as the RV1126 for uboot purposes. Features: - Rockchip RV1126 - 4GB DDR4 - 8GB eMMC - microSD slot - RMII Ethernet PHY - 1x USB 2.0 Host - 1x USB 2.0 OTG - Realtek RTL8723DS WiFi/BT - EFR32MG21 Silabs Zigbee radio - Speaker/Microphone Signed-off-by: Tim Lunn <tim@feathertop.org> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04rockchip: Convert rv1126 to standard bootTim Lunn2-8/+1
RV1126 soc appears to have been missed with the conversion of rockchip socs to standard boot. Remove remnants of distro boot for rv1126 common and the one existing board. Signed-off-by: Tim Lunn <tim@feathertop.org> Link: https://lore.kernel.org/all/20230407223645.v8.8.I4cf7708a1ba953b9abd81375d93af34665c7b251@changeid/ Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04ram: rockchip: Add rv1126 ddr4 supportTim Lunn8-0/+533
Add support for ddr4 on rv1126. Timing detection files are imported from downstream Rockchip BSP u-boot. Allow selecting ddr4 ram with define CONFIG_RAM_ROCKCHIP_DDR4. Signed-off-by: Tim Lunn <tim@feathertop.org> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04arm: dts: rockchip: Sync rv1126 dts from linux 6.8-rc1Tim Lunn6-10/+835
Sync linux dts files for rv1126 boards from linux v6.8-rc1 tag. Includes the newly added dts for Sonoff iHost. Signed-off-by: Tim Lunn <tim@feathertop.org> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04rockchip: rk3328-rock-pi-e: Enable DM_ETH_PHY and PHY_REALTEKJonas Karlman1-0/+2
Enable the DM_ETH_PHY and PHY_REALTEK now that the designware ethernet driver call eth_phy_set_mdio_bus() to assist with resetting the eth PHY during probe. Fixes ethernet on the v1.21 hw revision of Radxa ROCK Pi E: => mdio list ethernet@ff540000: 1 - RealTek RTL8211F <--> ethernet@ff540000 => net list eth0 : ethernet@ff540000 86:e0:c0:ea:fa:a9 active eth1 : ethernet@ff550000 86:e0:c0:ea:fa:a8 => dhcp Speed: 1000, full duplex BOOTP broadcast 1 BOOTP broadcast 2 BOOTP broadcast 3 DHCP client bound to address 192.168.1.114 (1004 ms) Reported-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04net: designware: Reset eth phy before phy connectJonas Karlman1-0/+7
Some ethernet PHY require being reset before a phy-id can be read back on the MDIO bus. This can result in the following message being show on e.g. a Radxa ROCK Pi E v1.21 with a RTL8211F ethernet PHY. Could not get PHY for ethernet@ff540000: addr -1 Add support to designware ethernet driver to reset eth phy by calling the eth phy uclass function eth_phy_set_mdio_bus(). The call use NULL as bus parameter to not set a shared mdio bus reference that would be freed when probe fails. Also add a eth_phy_get_addr() call to try and get the phy addr from DT when DM_MDIO is disabled. This help fix ethernet on Radxa ROCK Pi E v1.21: => mdio list ethernet@ff540000: 1 - RealTek RTL8211F <--> ethernet@ff540000 Reported-by: Trevor Woerner <twoerner@gmail.com> Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04configs: rockchip: rk3036: Fix CONFIG_SPL_STACK defineKever Yang2-0/+2
The CONFIG_SPL_STACK for rk3036 is removed in below patch, need to add it back. Fixes: f113d7d3034 ("Convert CONFIG_SPL_STACK to Kconfig") Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04spl: Make SPL_STACK available for ROCKCHIP_RK3036 without spl frameworkKever Yang1-1/+2
rk3036 soc has limit internal sram, and not able to support spl framework. Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-04rockchip: sdram: fix LPDDR5 bank info for sys_reg version 3YouMin Chen1-1/+8
This patch add support for additional bank info used by LPDDR5. Series-version: 2 Signed-off-by: YouMin Chen <cym@rock-chips.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
2024-02-03Merge tag 'smbios-2024-04-rc2' of ↵WIP/03Feb2024Tom Rini8-39/+60
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request smbios-2024-04-rc2 * In smbios command - write 'Not Specified' for missing strings - show correct table size for SMBIOS2.1 entry point - adjust formatting of handle numbers - add missing colon after UUID * In generated SMBIOS table - avoid introducing 'Unknown' string for missing properties - provide RISC-V vendor ID in the type 4 structure - provide the correct chassis handle in structure type 2 * Rename Structure Table Maximum Size field in SMBIOS 3 entry point
2024-02-02smbios: correctly name Structure Table Maximum Size fieldHeinrich Schuchardt7-10/+10
In the SMBIOS 3 entry point the Structure Table Maximum Size field was incorrectly named max_struct_size. A Maximum Structure Size field only exists in the SMBIOS 2.1 entry point and has a different meaning. Call the Structure Table Length field table_maximum_size. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-02-02smbios: do not determine maximum structure sizeHeinrich Schuchardt1-6/+1
Only the SMBIOS 2.1 entry point has a field for the maximum structure size. As we have switched to an SMBIOS 3 entry point remove the superfluous calculation. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-02-02cmd: smbios: show correct table size for SMBIOS2.1 entry pointHeinrich Schuchardt1-4/+4
The SMBIOS table size for SMBIOS2.1 entry points is in field 'Structure Table Length' (offset 0x16) and not in field 'Maximum Structure Size' (offset 0x08). Rename the receiving variable max_struct_size to table_maximum_size to avoid future confusion. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-02-02smbios: correctly fill chassis handleHeinrich Schuchardt1-0/+2
The chassis handle field in the type 2 structure must point to the handle of the type 3 structure. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-02-02smbios: provide type 4 RISC-V SMBIOS Processor IDHeinrich Schuchardt1-0/+12
For RISC-V CPUs the SMBIOS Processor ID field contains the Machine Vendor ID from CSR mvendorid. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-02-02smbios: if a string value is unknown, use string number 0Heinrich Schuchardt1-15/+18
The SMBIOS specification describes: "If a string field references no string, a null (0) is placed in that string field." Accordingly we should avoid writing a string "Unknown" to the SMBIOS table. dmidecode displays 'Not Specified' if the string number is 0. Commit 00a871d34e2f ("smbios: empty strings in smbios_add_string()") correctly identified that strings may not have length 0 as two consecutive NULs indentify the end of the string list. But the suggested solution did not match the intent of the SMBIOS specification. Fixes: 00a871d34e2f ("smbios: empty strings in smbios_add_string()") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-02-02smbios: Fix table when no string is presentMatthias Brugger1-0/+4
When no string is present in a table, next_ptr points to the same location as eos. When calculating the string table length, we would only reserve one \0. By spec a SMBIOS table has to end with two \0\0 when no strings a present. Signed-off-by: Matthias Brugger <mbrugger@suse.com> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-02-02cmd: smbios: replace missing string by 'Not Specified'Heinrich Schuchardt1-1/+5
A missing string value is indicated by a string index of 0. In this case print 'Not Specified' like the Linux dmidecode command does. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-02-02cmd: smbios: add missing colon after UUIDHeinrich Schuchardt1-1/+1
For consistent formatting add a colon ':' after the UUID label. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-02-02cmd: smbios: always use '0x%04x' for printing handlesHeinrich Schuchardt1-2/+2
Handles are u16 numbers. Consistently use '0x%04x' to print them. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-02-02smbios: get_str_from_dt() - add sysinfo_id descriptionHeinrich Schuchardt1-0/+1
Add description for parameter sysinfo_id of function get_str_from_dt(). Fixes: 07c9e683a484 ("smbios: Allow a few values to come from sysinfo") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-02-02lib: smbios_entr() use logical or for booleansHeinrich Schuchardt1-1/+1
As a matter of programming style use logical or to combine two boolean results. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>