]> git.dujemihanovic.xyz Git - u-boot.git/log
u-boot.git
10 months agoarm64: zynqmp: Describe 25MHz fixed clock for PL GEMs
Michal Simek [Mon, 29 Jan 2024 07:46:43 +0000 (08:46 +0100)]
arm64: zynqmp: Describe 25MHz fixed clock for PL GEMs

Describe 25Mhz fixed oscilator which is providing clock for PL based
ethernet IPs. Physicially it is one chip but it is described as 2 fixed
clock to be aligned with other SOM versions which were using integrated
clock generators where clocks could be adjusted via i2c (si5332 chips).

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/c430aeacaa76d9f61ed3f874f721a33049f45eb9.1706514396.git.michal.simek@amd.com
10 months agoarm64: zynqmp: Sync clock labels with kr260 revB
Michal Simek [Fri, 26 Jan 2024 07:24:41 +0000 (08:24 +0100)]
arm64: zynqmp: Sync clock labels with kr260 revB

Board description describes the hard part of chip (PS) but programmable
logic (PL) part is not described in this file. But clocks on the board are
not only connected to PS but also wired to PL. And because two revisions
are available where revA is using one si5332 and revB multiple clock chips
using the same clock labels helping with keeping only one device tree
overlay which targets PL. That's why synchronize clock labels and use
labels from revB which are more generic.
Unfortunately if there is driver for si5332 chip split could happen again
but it is still worth to do it now and solve this issue when occurs.

Reported-by: Sagar Karmarkar <sagar.karmarkar@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/abac6069e6029ed4076ec7b9d6b33604b6072aa3.1706253871.git.michal.simek@amd.com
10 months agoarm64: zynqmp: Add 'silabs, skip-recall' to all si570 clk nodes
Saeed Nowshadi [Thu, 25 Jan 2024 08:07:58 +0000 (09:07 +0100)]
arm64: zynqmp: Add 'silabs, skip-recall' to all si570 clk nodes

Without 'silabs,skip-recall' property, the driver on System Controller
re-calibrates the output clock frequency at probe() time based on the NVRAM
setting.  This re-calibration causes a glitch on the output clock.  At
power-on, Versal is also booting and expecting a glitch-free clock for
its correct operation.  System Controller should skip the re-calibration
step to prevent any clock instability for Versal.

Signed-off-by: Saeed Nowshadi <saeed.nowshadi@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/bbb2322c94503f0e6b369c60312b7546500fad95.1706170068.git.michal.simek@amd.com
10 months agoarm64: xilinx: Enable EFI_HTTP_BOOT by default
Michal Simek [Wed, 24 Jan 2024 10:58:40 +0000 (11:58 +0100)]
arm64: xilinx: Enable EFI_HTTP_BOOT by default

Enable EFI_HTTP_BOOT to be able to booting OS via http.
In case of that dhcp server is not providing dns server IP set it up via
setenv dnsip <ip addr>.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/b78a7d8b0100c724f657c0997b273e073cf31a14.1706093917.git.michal.simek@amd.com
10 months agoconfigs: versal_net: Enable CONFIG_LTO for mini qspi/ospi
Venkatesh Yadav Abbarapu [Fri, 26 Jan 2024 08:11:39 +0000 (13:41 +0530)]
configs: versal_net: Enable CONFIG_LTO for mini qspi/ospi

Adding a tiny bit more code for mini u-boot leads to a OCM
image overflow. Fix this by enabling LTO for this board, so that such
changes still can be made to the common U-Boot code.

Enable building mini u-boot image with LTO, which results in about 8KB
reduction in size.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/20240126081139.3210211-1-venkatesh.abbarapu@amd.com
10 months agoconfigs: versal: Enable CONFIG_LTO for mini qspi/ospi
Venkatesh Yadav Abbarapu [Fri, 26 Jan 2024 08:09:00 +0000 (13:39 +0530)]
configs: versal: Enable CONFIG_LTO for mini qspi/ospi

Adding a tiny bit more code for mini u-boot leads to a OCM
image overflow. Fix this by enabling LTO for this board, so that such
changes still can be made to the common U-Boot code.

Enable building mini u-boot image with LTO, which results in about 8KB
reduction in size.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/20240126080900.3209323-1-venkatesh.abbarapu@amd.com
10 months agosoc: zynqmp: Add the IDcode for dr_SE and eg_SE variants
Venkatesh Yadav Abbarapu [Tue, 23 Jan 2024 04:57:15 +0000 (10:27 +0530)]
soc: zynqmp: Add the IDcode for dr_SE and eg_SE variants

ID code is added for zu67dr_SE, zu11eg_SE, zu19eg_SE and zu47dr_SE
variants. SE is the select edition of restricted devices with the
capabilities.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20240123045715.893652-1-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
10 months agoMerge branch 'master-779h0-r2' of https://source.denx.de/u-boot/custodians/u-boot-sh
Tom Rini [Sun, 11 Feb 2024 17:42:25 +0000 (12:42 -0500)]
Merge branch 'master-779h0-r2' of https://source.denx.de/u-boot/custodians/u-boot-sh

10 months agoARM: renesas: Add Renesas R8A779H0 V4M Gray Hawk board code
Hai Pham [Sun, 28 Jan 2024 15:52:09 +0000 (16:52 +0100)]
ARM: renesas: Add Renesas R8A779H0 V4M Gray Hawk board code

Add board code for the Renesas R8A779H0 V4M Gray Hawk board.

Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
10 months agoARM: dts: renesas: Add Renesas Gray Hawk boards support
Hai Pham [Sun, 28 Jan 2024 15:52:08 +0000 (16:52 +0100)]
ARM: dts: renesas: Add Renesas Gray Hawk boards support

Initial support for the Renesas Gray Hawk CPU and BreakOut boards.

The arch/arm/dts/r8a779h0-gray-hawk-cpu.dtsi is extended version of:
https://lore.kernel.org/linux-renesas-soc/b657402113267acd57aece0b4c681b707e704455.1706194617.git.geert+renesas@glider.be/
The version currenty submitted upstream lacks functionality which is
present in this series. Once the upstream support implements that
missing functionality, these DTs will be updated to match.

Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
10 months agoARM: dts: renesas: Add Renesas R8A779H0 V4M DT extras
Hai Pham [Sun, 28 Jan 2024 15:52:07 +0000 (16:52 +0100)]
ARM: dts: renesas: Add Renesas R8A779H0 V4M DT extras

Add Renesas R8A779H0 V4M DT extras for U-Boot.

Until the RPC node becomes part of main DT, keep it here as
an extension so that board code can enable and use the RPC
to access SPI NOR.

Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
10 months agoARM: dts: renesas: Add Renesas R8A779H0 V4M SoC support
Hai Pham [Sun, 28 Jan 2024 15:52:06 +0000 (16:52 +0100)]
ARM: dts: renesas: Add Renesas R8A779H0 V4M SoC support

Add initial support for the Renesas R8A779H0 (R-Car V4M) SoC.

The current version is imported and modified from:
https://lore.kernel.org/linux-renesas-soc/4107bc3d7c31932da29e671ddf4b1564ba38a84c.1706194617.git.geert+renesas@glider.be/
The modifications contain nodes from previous version
which are useful in U-Boot and not part of the Linux
kernel DT yet. The following nodes were added:
- pfc
- gpio0..gpio7
- i2c0..i2c3
- avb0..avb2
- mmc0

Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
10 months agomtd: spi: renesas: Add R8A779H0 V4M support
Hai Pham [Sun, 28 Jan 2024 15:52:05 +0000 (16:52 +0100)]
mtd: spi: renesas: Add R8A779H0 V4M support

Support RPC SPI on R8A779H0 V4M SoC.

Reviewed-by: Paul Barker <paul.barker.ct@bp.renesas.com>
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
10 months agoARM: renesas: Add R8A779H0 V4M Kconfig entry and PRR ID
Hai Pham [Sun, 28 Jan 2024 15:52:04 +0000 (16:52 +0100)]
ARM: renesas: Add R8A779H0 V4M Kconfig entry and PRR ID

Add Kconfig entry and PRR ID to support R8A779H0 V4M SoC.

Reviewed-by: Paul Barker <paul.barker.ct@bp.renesas.com>
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
10 months agopinctrl: renesas: Add R8A779H0 V4M PFC tables
Hai Pham [Sun, 28 Jan 2024 15:52:03 +0000 (16:52 +0100)]
pinctrl: renesas: Add R8A779H0 V4M PFC tables

Add pinctrl tables for R8A779H0 V4M SoC.

The current version of these PFC tables is imported and squashed from:
https://lore.kernel.org/linux-renesas-soc/cover.1706264667.git.geert+renesas@glider.be/

Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
10 months agoclk: renesas: Implement R8A779H0 V4M PLL7 support
Marek Vasut [Sun, 28 Jan 2024 15:52:02 +0000 (16:52 +0100)]
clk: renesas: Implement R8A779H0 V4M PLL7 support

Add PLL7 support to Gen3/Gen4 common clock driver. Add initial PLL7
multiplier and divider values into table in R8A779H0 V4M clock driver.

The PLL7 is new PLL added in R8A779H0 V4M SoC. Only integer multiplication
mode is supported by PLL7. The PLL reference clock are either 16.66 MHz or
20 MHz on R8A779H0 V4M SoC, and the output frequency must be 2000 MHz. The
multiplier values fitting this requirement are calculated to 120 or 100.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
10 months agoclk: renesas: Add R8A779H0 V4M clock tables
Hai Pham [Sun, 28 Jan 2024 15:52:01 +0000 (16:52 +0100)]
clk: renesas: Add R8A779H0 V4M clock tables

Add clock tables for R8A779H0 V4M SoC.

The current version is imported from:
https://lore.kernel.org/linux-renesas-soc/c678ef7164e3777fa91572f72e47ef385cea64b8.1706194617.git.geert+renesas@glider.be/
The current version still contains PLL7 extras from the
previous version to provide ethernet support in U-Boot.

Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
10 months agodt-bindings: power: Add R8A779H0 V4M SYSC power domain definitions
Duy Nguyen [Sun, 28 Jan 2024 15:52:00 +0000 (16:52 +0100)]
dt-bindings: power: Add R8A779H0 V4M SYSC power domain definitions

Add power domain indices for R-Car V4M (R8A779H0).

The current version is imported from:
https://lore.kernel.org/linux-renesas-soc/c5cbef71178cada761e9da7bcbb6f21334f93ef8.1706194617.git.geert+renesas@glider.be/

Signed-off-by: Duy Nguyen <duy.nguyen.rh@renesas.com>
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
10 months agodt-bindings: clock: Add R8A779H0 V4M CPG Core Clock Definitions
Duy Nguyen [Sun, 28 Jan 2024 15:51:59 +0000 (16:51 +0100)]
dt-bindings: clock: Add R8A779H0 V4M CPG Core Clock Definitions

Add all Clock Pulse Generator Core Clock Outputs for the Renesas R-Car
V4M (R8A779H0) SoC.

The current version is imported from:
https://lore.kernel.org/linux-renesas-soc/11acbd2a30b58607474e9c32eb798b3a00e85e73.1706194617.git.geert+renesas@glider.be/

Signed-off-by: Duy Nguyen <duy.nguyen.rh@renesas.com>
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
10 months agoMerge tag 'u-boot-dfu-20240209' of https://source.denx.de/u-boot/custodians/u-boot-dfu
Tom Rini [Fri, 9 Feb 2024 14:00:42 +0000 (09:00 -0500)]
Merge tag 'u-boot-dfu-20240209' of https://source.denx.de/u-boot/custodians/u-boot-dfu

u-boot-dfu-20240209

- sparse error checking fix when using raw chunks
- 2 new additions (AVB, AB) of myself to the MAINTAINERS file

10 months agolib: sparse: Fix error checking for write_sparse_chunk_raw
Sean Anderson [Thu, 1 Feb 2024 18:18:51 +0000 (13:18 -0500)]
lib: sparse: Fix error checking for write_sparse_chunk_raw

The return value of write_sparse_chunk_raw is unsigned, so the existing
check has no effect. Use IS_ERR_VALUE to detect error instead, which is
what write_sparse_chunk_raw does itself.

Fixes: 62649165cb0 ("lib: sparse: Make CHUNK_TYPE_RAW buffer aligned")
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Link: https://lore.kernel.org/u-boot/1b323ec3-59b0-490b-a2f0-fd961dafcf49@moroto.mountain/
Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Reviewed-by: Michael Trimarchi <michael@amarulasolutions.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
Link: https://lore.kernel.org/r/20240201181851.221701-1-sean.anderson@seco.com
Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
10 months agoMAINTAINERS: add Mattijs for Android AVB
Mattijs Korpershoek [Fri, 12 Jan 2024 08:40:45 +0000 (09:40 +0100)]
MAINTAINERS: add Mattijs for Android AVB

Igor has not been active for quite some time on lore:
https://lore.kernel.org/all/?q=igor.opaniuk@gmail.com

I'm interested in helping with maintaining the android_avb
command. I'm a long time android/aosp developer and my daily job is
still doing android work.

Add myself as maintainer for Android AVB.

Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Reviewed-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Acked-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org>
Link: https://lore.kernel.org/r/20240112-maintainers-ab-v1-2-f2a538eab18a@baylibre.com
Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
10 months agoMAINTAINERS: add Mattijs for Android AB
Mattijs Korpershoek [Fri, 12 Jan 2024 08:40:44 +0000 (09:40 +0100)]
MAINTAINERS: add Mattijs for Android AB

Igor has not been active for quite some time on lore:
https://lore.kernel.org/all/?q=igor.opaniuk@gmail.com

I'm interested in helping with maintaining the android_ab
command. I'm a long time android/aosp developer and my daily job is
still doing android work.

Add myself as maintainer for Android AB.

Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org>
Acked-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Link: https://lore.kernel.org/r/20240112-maintainers-ab-v1-1-f2a538eab18a@baylibre.com
Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
10 months agoti: keystone2: Move common Kconfig selections to under ARCH_KEYSTONE
Andrew Davis [Tue, 25 Jul 2023 15:54:16 +0000 (10:54 -0500)]
ti: keystone2: Move common Kconfig selections to under ARCH_KEYSTONE

These select/imply settings are common to the whole architecture not just
these boards, move these settings to the architecture config.

Signed-off-by: Andrew Davis <afd@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
10 months agoti: keystone2: Imply NFS command support
Andrew Davis [Tue, 25 Jul 2023 15:54:15 +0000 (10:54 -0500)]
ti: keystone2: Imply NFS command support

TI KS2 boards have the nfs command in their common environment boot
configuration, enable this command.

Signed-off-by: Andrew Davis <afd@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
10 months agoMerge tag 'u-boot-imx-master-20240208' of https://gitlab.denx.de/u-boot/custodians...
Tom Rini [Thu, 8 Feb 2024 14:37:16 +0000 (09:37 -0500)]
Merge tag 'u-boot-imx-master-20240208' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx

- Add USB support for phycore-imx8mp
- Fix environment corruption, reset on mx6sabresd
- Print reset cause on imx8
- Extend mkimage to support generating an image for i.MXRT FlexSPI
- Add new apalis and colibri variants
- Add support for phyBOARD-Segin-i.MX93 support
- Fix when FEC is primarily used instead of EQOS on i.MX93.

10 months agoMerge tag 'fsl-qoriq-2024-2-8' of https://source.denx.de/u-boot/custodians/u-boot...
Tom Rini [Thu, 8 Feb 2024 14:10:41 +0000 (09:10 -0500)]
Merge tag 'fsl-qoriq-2024-2-8' of https://source.denx.de/u-boot/custodians/u-boot-fsl-qoriq

Add TJA1120 driver support
fsl-layerscape/soc.c: do not destroy bootcmd environment

10 months agophycore-imx8mp: add support for booting and flashing emmc via UUU
Benjamin Hahn [Thu, 8 Feb 2024 12:03:11 +0000 (13:03 +0100)]
phycore-imx8mp: add support for booting and flashing emmc via UUU

add support for Serial Downloader Boot via UUU as well as flashing emmc
via UUU on USB0 Port of phyBOARD Pollux.

Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
10 months agophycore-imx8mp: add USB mass storage support
Benjamin Hahn [Thu, 8 Feb 2024 12:03:10 +0000 (13:03 +0100)]
phycore-imx8mp: add USB mass storage support

add support for USB mass storage to USB0 port of phyBOARD Pollux.

tested with "ums 0 mmc 2"

Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
10 months agophycore-imx8mp: add USB host support
Benjamin Hahn [Thu, 8 Feb 2024 12:03:09 +0000 (13:03 +0100)]
phycore-imx8mp: add USB host support

The phyBOARD Pollux has two USB ports. Add support for USB host and USB
storage for the USB1 port.

Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
10 months agoimx8mp-phyboard-pollux-rdk: sync with kernel devicetree from v6.8-rc2
Benjamin Hahn [Thu, 8 Feb 2024 12:03:08 +0000 (13:03 +0100)]
imx8mp-phyboard-pollux-rdk: sync with kernel devicetree from v6.8-rc2

sync devicetree with kernel v6.8-rc2.

New commits on kernel v6.8-rc2:
4a58fcdb1818 arm64: dts: imx8mp-phyboard-pollux: Add support for RS232/RS485
3bd7fdcc359e arm64: dts: imx8mp-phyboard-pollux: Add gpio-line-names
f5faa633daf8 arm64: dts: imx8mp-phyboard-pollux: Enable USB support
27c0dc128d04 arm64: dts: imx8mp-phyboard-pollux: Add flexcan support
fa2a1ec50456 arm64: dts: imx8mp-phyboard-pollux: Add missing usdhc clocks assignment
055e38c76388 arm64: dts: imx8mp-phyboard-pollux-rdk: Fix led sub-node names

Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
10 months agomx6sabresd: Remove board_phy_config()
Fabio Estevam [Fri, 2 Feb 2024 16:04:05 +0000 (13:04 -0300)]
mx6sabresd: Remove board_phy_config()

With Ethernet DM in place, there is no longer the need for having
the board_phy_config() anymore.

Remove it.

Confirmed that TFTP transfer still works fine without board_phy_config().

Signed-off-by: Fabio Estevam <festevam@denx.de>
Reviewed-by: Igor Opaniuk <igor.opaniuk@foundries.io>
10 months agomx6sabresd: Convert to watchdog driver model
Fabio Estevam [Fri, 2 Feb 2024 16:04:04 +0000 (13:04 -0300)]
mx6sabresd: Convert to watchdog driver model

Commit 68dcbdd594d4 ("ARM: imx: Add weak default reset_cpu()") caused
the 'reset' command in U-Boot to not cause a board reset.

Fix it by switching to the watchdog driver model via sysreset, which
is the preferred method for implementing the watchdog reset.

Signed-off-by: Fabio Estevam <festevam@denx.de>
10 months agomx6sabresd: Fix U-Boot corruption after saving the environment
Fabio Estevam [Fri, 2 Feb 2024 16:04:03 +0000 (13:04 -0300)]
mx6sabresd: Fix U-Boot corruption after saving the environment

U-Boot binary has grown in such a way that it goes beyond the reserved
area for the environment variables.

Running "saveenv" and rebooting the board causes U-Boot to hang because
of this overlap.

Fix this problem by selecting CONFIG_LTO so that the U-Boot proper
size can be reduced.

Also, to prevent this same problem to happen in the future, use
CONFIG_BOARD_SIZE_LIMIT, which can detect the overlap in build-time.

CONFIG_BOARD_SIZE_LIMIT is calculated as follows:

CONFIG_BOARD_SIZE_LIMIT = CONFIG_ENV_OFFSET - u-boot-img.dtb offset
CONFIG_BOARD_SIZE_LIMIT = 0xc000 - 69 * 1024
CONFIG_BOARD_SIZE_LIMIT = 715766

Signed-off-by: Fabio Estevam <festevam@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Igor Opaniuk <igor.opaniuk@foundries.io>
10 months agotoradex: tdx-cfg-block: add 0086 i.mx8m mini sku
Joao Paulo Goncalves [Wed, 31 Jan 2024 17:32:04 +0000 (14:32 -0300)]
toradex: tdx-cfg-block: add 0086 i.mx8m mini sku

Add new product id 0086 Verdin iMX8M Mini DualLite 2GB IT.

Signed-off-by: Joao Paulo Goncalves <joao.goncalves@toradex.com>
Reviewed-by: Igor Opaniuk <igor.opaniuk@foundries.io>
10 months agoimx: imx8: print reset cause
Igor Opaniuk [Wed, 31 Jan 2024 12:49:26 +0000 (13:49 +0100)]
imx: imx8: print reset cause

Add support for printing reset cause during boot.

Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
10 months agoimx: scu_api: add implementation of sc_pm_reset_reason
Igor Opaniuk [Wed, 31 Jan 2024 12:49:25 +0000 (13:49 +0100)]
imx: scu_api: add implementation of sc_pm_reset_reason

Add implementation of sc_pm_reset_reason() call for obtaining
reset reason.

Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
10 months agoboard: phytec: phycore-imx93: Add phyBOARD-Segin-i.MX93 support
Mathieu Othacehe [Tue, 30 Jan 2024 14:50:37 +0000 (15:50 +0100)]
board: phytec: phycore-imx93: Add phyBOARD-Segin-i.MX93 support

Add initial support for the PHYTEC phyBOARD-Segin-i.MX93 board based on
the PHYTEC phyCORE-i.MX93 SoM.

Supported features:
- 1GB LPDDR4 RAM
- eMMC
- external SD
- FEC Ethernet
- debug UART
- watchdog

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
Tested-by: Primoz Fiser <primoz.fiser@norik.com>
Reviewed-by: Yannic Moog <y.moog@phytec.de>
10 months agoimx9: clock: Fix board_interface_eth_init for FEC
Primoz Fiser [Tue, 30 Jan 2024 12:43:37 +0000 (13:43 +0100)]
imx9: clock: Fix board_interface_eth_init for FEC

Commit d5eae216d833 ("net: dwc_eth_qos: Add board_interface_eth_init()
for i.MX93") implemented board_interface_eth_init for i.MX9 platforms.
However it only accounted for the EQOS interface while any board using
FEC as primary Ethernet interface was left out as return value -EINVAL
is always returned from the function in such case.

Fix this by returning 0 (success) when FEC interface is primarily used
instead of EQOS interface on i.MX93.

Fixes: d5eae216d833 ("net: dwc_eth_qos: Add board_interface_eth_init() for i.MX93")
Signed-off-by: Primoz Fiser <primoz.fiser@norik.com>
Tested-by: Mathieu Othacehe <m.othacehe@gmail.com>
10 months agotools: mkimage: Add support for i.MXRT FlexSPI Header
Jesse Taube [Wed, 24 Jan 2024 02:15:16 +0000 (21:15 -0500)]
tools: mkimage: Add support for i.MXRT FlexSPI Header

Modify imx8m Flex SPI Configuration Block to work with imxrt.
Add more Flex SPI configuration options to Kconfig.

Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com>
Tested-by: Adam Ford <aford173@gmail.com> #imx8mn-beacon
10 months agoARM: imx: Enable kaslrseed command on Data Modul i.MX8M Mini/Plus eDM SBC
Marek Vasut [Mon, 22 Jan 2024 14:55:48 +0000 (15:55 +0100)]
ARM: imx: Enable kaslrseed command on Data Modul i.MX8M Mini/Plus eDM SBC

Linux 6.6.y with KASLR enabled would print the following message on boot:
"
KASLR disabled due to lack of seed
"
Enable the 'kaslrseed' command so a random number seed can be pulled
from CAAM and inserted into the /chosen node 'kaslr-seed' property of
Linux kernel DT before boot, thus letting KASLR work properly.

Signed-off-by: Marek Vasut <marex@denx.de>
10 months agotoradex: tdx-cfg-block: Add new apalis and colibri pid
Joao Paulo Goncalves [Mon, 22 Jan 2024 20:09:30 +0000 (17:09 -0300)]
toradex: tdx-cfg-block: Add new apalis and colibri pid

Add new apalis imx6 and colibri imx6/imx7 products IDs.

Signed-off-by: Joao Paulo Goncalves <joao.goncalves@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
10 months agofsl-layerscape/soc.c: do not destroy bootcmd environment
Mike Looijmans [Tue, 30 Jan 2024 14:26:56 +0000 (15:26 +0100)]
fsl-layerscape/soc.c: do not destroy bootcmd environment

When an XXX_BOOTCOMMAND isn't defined, the result is that bootcmd is set
to some random memory content. Fix it so that the function does nothing
in that case and leaves the bootcmd environment unmodified.

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Reviewed-by: Dan Carpenter <dan.carpenter@linaro.org>
10 months agonet: phy: nxp-c45-tja11xx: add tja1120 support
Radu Pirea (NXP OSS) [Wed, 13 Dec 2023 16:14:23 +0000 (18:14 +0200)]
net: phy: nxp-c45-tja11xx: add tja1120 support

Add TJA1120 driver structure and report 1G speed.

Signed-off-by: "Radu Pirea (NXP OSS)" <radu-nicolae.pirea@oss.nxp.com>
10 months agonet: phy: nxp-c45-tja11xx: rename nxp_c45_tja11xx structure
Radu Pirea (NXP OSS) [Wed, 13 Dec 2023 16:14:22 +0000 (18:14 +0200)]
net: phy: nxp-c45-tja11xx: rename nxp_c45_tja11xx structure

Rename nxp_c45_tja11xx structure to nxp_c45_tja1103. The driver will
support more PHYs and nxp_c45_tja11xx is too generic.

Signed-off-by: "Radu Pirea (NXP OSS)" <radu-nicolae.pirea@oss.nxp.com>
10 months agonet: phy: nxp-c45-tja11xx: read PHY the speed from hardware
Radu Pirea (NXP OSS) [Wed, 13 Dec 2023 16:14:21 +0000 (18:14 +0200)]
net: phy: nxp-c45-tja11xx: read PHY the speed from hardware

Read PHY speed from hardware instead of assuming 100Mbps by default.
The TJA1103 works only at 100Mbps, but the driver will support more PHYs.

Signed-off-by: "Radu Pirea (NXP OSS)" <radu-nicolae.pirea@oss.nxp.com>
10 months agonet: phy: nxp-c45-tja11xx: use local definion of features
Radu Pirea (NXP OSS) [Wed, 13 Dec 2023 16:14:20 +0000 (18:14 +0200)]
net: phy: nxp-c45-tja11xx: use local definion of features

Use a local definition for the PHY features. PHY_100BT1_FEATURES are
not defined using the 100BaseT1 bit, so keep this workaround in the driver.

Signed-off-by: "Radu Pirea (NXP OSS)" <radu-nicolae.pirea@oss.nxp.com>
10 months agoMerge branch '2024-02-06-assorted-fixes'
Tom Rini [Wed, 7 Feb 2024 14:47:47 +0000 (09:47 -0500)]
Merge branch '2024-02-06-assorted-fixes'

A number of assorted fixes

10 months agoMerge tag 'u-boot-rockchip-20240207' of https://source.denx.de/u-boot/custodians...
Tom Rini [Wed, 7 Feb 2024 13:33:47 +0000 (08:33 -0500)]
Merge tag 'u-boot-rockchip-20240207' of 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;

10 months agoarm: dts: rockpro64: Add RockPro64 smbios
Shantur Rathore [Mon, 13 Nov 2023 11:23:09 +0000 (11:23 +0000)]
arm: dts: rockpro64: Add RockPro64 smbios

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>
10 months agoblk: host_dev: Fix error code in host_sb_attach_file()
Dan Carpenter [Wed, 31 Jan 2024 07:09:52 +0000 (10:09 +0300)]
blk: host_dev: Fix error code in host_sb_attach_file()

This error path should return -EINVAL instead of success.

Fixes: e261fbf34785 ("blk: host_dev: Sanity check on the size of host backing file")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
10 months agofirmware: ti_sci: Add comment explaining the is_secure code
Dhruva Gole [Tue, 30 Jan 2024 15:00:00 +0000 (20:30 +0530)]
firmware: ti_sci: Add comment explaining the is_secure code

Add a comment to explain the code under is_secure condition of
ti_sci_do_xfer. This will help avoid confusion amongst people who may in
future touch upon this code.

Reviewed-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Dhruva Gole <d-gole@ti.com>
10 months agofirmware: ti_sci: fix the secure_hdr in do_xfer
Dhruva Gole [Tue, 30 Jan 2024 14:59:59 +0000 (20:29 +0530)]
firmware: ti_sci: fix the secure_hdr in do_xfer

The ti_sci driver in U-Boot has support for secure_msg as part of it's
do_xfer function. This let's U-boot send secure messages during boot up.

The protocol to send such secure messages is described as part of the
struct ti_sci_secure_msg_hdr. As part of this, there are 2 fields for
checksum and reserved that occupy the first 4 bytes of any secure
message. This is called as the secure_hdr.

As of now, the secure_hdr needs to be 0 init-ed before sending secure
messages. However the existing code was never putting the zero-inited vars
into the secure_buf, leading to possibility of the first 4 bytes of
secure_buf being possibly garbage.

Fix this by initialising the secure_hdr itself to the secure_buf
location, thus when we make secure_hdr members 0, it automatically ensures
the first 4 bytes of secure_buf are 0.

Fixes: 32cd25128bd849 ("firmware: Add basic support for TI System Control Interface (TI SCI)")
Reviewed-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Dhruva Gole <d-gole@ti.com>
10 months agoarm: mach-k3: j721s2_init: Support less than max DDR controllers
Neha Malcom Francis [Tue, 30 Jan 2024 10:23:56 +0000 (15:53 +0530)]
arm: mach-k3: j721s2_init: Support less than max DDR controllers

The number of DDR controllers to be initialised and used should depend
on the device tree with the constraint of the maximum number of
controllers the device supports. Since J721S2 has multiple (2)
controllers, instead of hardcoding the number of probes, move to
depending on the device tree UCLASS_RAM nodes present.

Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Manorit Chawdhry <m-chawdhry@ti.com>
10 months agodma: ti: k3-udma: Use ring_idx to pair k3 nav rings
MD Danish Anwar [Tue, 30 Jan 2024 06:18:04 +0000 (11:48 +0530)]
dma: ti: k3-udma: Use ring_idx to pair k3 nav rings

Use ring_idx to pair rings. ring_idx will be same as tx flow_id for all
non-negative flow_ids. For negative flow_ids, ring_idx will be tchan->id
added with bchan_cnt.

Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/dma/ti/k3-udma.c?h=v6.8-rc2#n1686
Signed-off-by: MD Danish Anwar <danishanwar@ti.com>
Reviewed-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
10 months agovexpress_ca9x4: Enable DM_SERIAL
Ole P. Orhagen [Fri, 26 Jan 2024 12:47:50 +0000 (13:47 +0100)]
vexpress_ca9x4: Enable DM_SERIAL

This commit enables support for DM_SERIAL in the vexpress_ca9x4 boards.

When running the board with the DM_SERIAL driver, the board ran out of
memory in SPL when initialising the DM serial driver.

Thus this required an increase in the pre-allocated SRAM memory. I did
increase it to 0x800, and it now works graciously.

It could probably be set lower, but I do not see any reason not to use the
available SRAM at this point.

Also adds stdout-path to the 'chosen' node in the device tree.

Signed-off-by: Ole P. Orhagen <ole.orhagen@northern.tech>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
10 months agocommon: event: check event_type_name() argument
Heinrich Schuchardt [Sun, 28 Jan 2024 07:58:55 +0000 (08:58 +0100)]
common: event: check event_type_name() argument

In event_type_name() we should avoid possible buffer overruns by checking
the type argument.

Addresses-Coverity-ID: 478862 Out-of-bounds access
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
10 months agoarm: dts: nuvoton: modify npcm8xx reset property
Jim Liu [Wed, 24 Jan 2024 01:54:51 +0000 (09:54 +0800)]
arm: dts: nuvoton: modify npcm8xx reset property

Change reset method from generic to reset driver

Signed-off-by: Jim Liu <JJLIU0@nuvoton.com>
10 months agoscripts/gen_compile_commands: update to Linux v6.7
Brandon Maier [Mon, 22 Jan 2024 18:45:50 +0000 (18:45 +0000)]
scripts/gen_compile_commands: update to Linux v6.7

Adds support for assembly files and updates the LINE_PATTERN so it
supports both "cmd" and "savedcmd", which allows reverting the U-Boot
modification in commit 97fbb2eb016b ("scripts/gen_compile_commands.py:
adapt _LINE_PATTERN").

Upstream commits:

880946158b011 gen_compile_commands.py: fix path resolve with symlinks in it
9e56d3be4bfd2 gen_compile_commands: Sort output compile commands by file name
52c15e7e79285 gen_compile_commands: Allow the line prefix to still be cmd_
1c67921444bf6 gen_compile_commands: add assembly files to compilation database

Signed-off-by: Brandon Maier <brandon.maier@collins.com>
Cc: Joao Marcos Costa <jmcosta944@gmail.com>
10 months agoMerge patch series "board: siemens: clean up subfolders"
Tom Rini [Mon, 5 Feb 2024 18:33:01 +0000 (13:33 -0500)]
Merge patch series "board: siemens: clean up subfolders"

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.

10 months agosiemens: factoryset: use correct config for soc specific implementation
Enrico Leto [Wed, 24 Jan 2024 14:43:55 +0000 (15:43 +0100)]
siemens: factoryset: use correct config for soc specific implementation

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>
10 months agosiemens: board: clean up includes
Enrico Leto [Wed, 24 Jan 2024 14:43:54 +0000 (15:43 +0100)]
siemens: board: clean up includes

Many includes were not removed when code parts were moved or removed.

Signed-off-by: Enrico Leto <enrico.leto@siemens.com>
10 months agosiemens: board: clean up products folders vs common
Enrico Leto [Wed, 24 Jan 2024 14:43:53 +0000 (15:43 +0100)]
siemens: board: clean up products folders vs common

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>
10 months agosiemens: board: etamin: remove deprecated nand config
Enrico Leto [Wed, 24 Jan 2024 14:43:52 +0000 (15:43 +0100)]
siemens: board: etamin: remove deprecated nand config

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>
10 months agosiemens draco: i2c: use driver model for u-boot
Enrico Leto [Wed, 24 Jan 2024 14:43:51 +0000 (15:43 +0100)]
siemens draco: i2c: use driver model for u-boot

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>
10 months agosiemens: eeprom: simplify setup & read
Enrico Leto [Wed, 24 Jan 2024 14:43:50 +0000 (15:43 +0100)]
siemens: eeprom: simplify setup & read

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>
10 months agosiemens: eeprom: clean up definitions
Enrico Leto [Wed, 24 Jan 2024 14:43:49 +0000 (15:43 +0100)]
siemens: eeprom: clean up definitions

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>
10 months agoMerge tag 'rpi-next-2024.04' of https://source.denx.de/u-boot/custodians/u-boot-raspb...
Tom Rini [Mon, 5 Feb 2024 14:31:48 +0000 (09:31 -0500)]
Merge tag 'rpi-next-2024.04' of https://source.denx.de/u-boot/custodians/u-boot-raspberrypi

Add RaspberryPi5 basic support.

Acked-by: Peter Robinson <pbrobinson@gmail.com>
10 months agorockchip: rk3568-generic: Enable eMMC HS200 mode
Jonas Karlman [Wed, 31 Jan 2024 22:07:14 +0000 (22:07 +0000)]
rockchip: rk3568-generic: Enable eMMC HS200 mode

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>
10 months agorockchip: rk3588-evb: Enable USB support
Andy Yan [Sat, 3 Feb 2024 11:31:07 +0000 (19:31 +0800)]
rockchip: rk3588-evb: Enable USB support

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>
10 months agommc: rockchip_sdhci: Fix HS400 mode write on RK3568
Jonas Karlman [Sun, 4 Feb 2024 20:53:07 +0000 (20:53 +0000)]
mmc: rockchip_sdhci: Fix HS400 mode write on RK3568

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>
10 months agorockchip: rk35xx: Enable eMMC HS200 mode by default
Jonas Karlman [Sun, 4 Feb 2024 20:53:06 +0000 (20:53 +0000)]
rockchip: rk35xx: Enable eMMC HS200 mode by default

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>
10 months agorockchip: rk35xx: Remove use of eMMC DDR52 mode
Jonas Karlman [Sun, 4 Feb 2024 20:53:05 +0000 (20:53 +0000)]
rockchip: rk35xx: Remove use of eMMC DDR52 mode

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>
10 months agorockchip: rk3588-quartzpro64: Enable AHCI, PCI and USB
Jonas Karlman [Fri, 26 Jan 2024 23:39:05 +0000 (23:39 +0000)]
rockchip: rk3588-quartzpro64: Enable AHCI, PCI and USB

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>
10 months agorockchip: rk3588: Enable eMMC HS200 mode
Jonas Karlman [Fri, 26 Jan 2024 23:26:09 +0000 (23:26 +0000)]
rockchip: rk3588: Enable eMMC HS200 mode

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>
10 months agorockchip: rk35xx: Remove unnecessary status props
Jonas Karlman [Fri, 26 Jan 2024 22:14:55 +0000 (22:14 +0000)]
rockchip: rk35xx: Remove unnecessary status props

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>
10 months agorockchip: rk3588: Add default u-boot,spl-boot-order prop
Jonas Karlman [Fri, 26 Jan 2024 22:14:54 +0000 (22:14 +0000)]
rockchip: rk3588: Add default u-boot,spl-boot-order prop

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>
10 months agorockchip: rk3588: Sync device tree from linux v6.8-rc1
Jonas Karlman [Fri, 26 Jan 2024 22:14:53 +0000 (22:14 +0000)]
rockchip: rk3588: Sync device tree from linux v6.8-rc1

Sync rk3588 device tree from linux v6.8-rc1.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
10 months agorockchip: rk3588: Sync device tree with linux v6.7
Jonas Karlman [Fri, 26 Jan 2024 22:14:52 +0000 (22:14 +0000)]
rockchip: rk3588: Sync device tree with linux v6.7

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>
10 months agorockchip: rk356x: Move common uart2 props to rk356x-u-boot.dtsi
Jonas Karlman [Fri, 26 Jan 2024 22:14:51 +0000 (22:14 +0000)]
rockchip: rk356x: Move common uart2 props to rk356x-u-boot.dtsi

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>
10 months agorockchip: rk356x: Sync device tree from linux v6.8-rc1
Jonas Karlman [Fri, 26 Jan 2024 22:14:50 +0000 (22:14 +0000)]
rockchip: rk356x: Sync device tree from linux v6.8-rc1

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>
10 months agorockchip: rk356x: Sync device tree from linux v6.7
Jonas Karlman [Fri, 26 Jan 2024 22:14:49 +0000 (22:14 +0000)]
rockchip: rk356x: Sync device tree from linux v6.7

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>
10 months agoarch: arm: mach-rockchip: Kconfig: Enable BOOTSTD_FULL for RK3399 and RK3588
Shantur Rathore [Sun, 21 Jan 2024 22:04:47 +0000 (22:04 +0000)]
arch: arm: mach-rockchip: Kconfig: Enable BOOTSTD_FULL for RK3399 and RK3588

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>
10 months agorockchip: rv1126: Move RAM disk address
Tim Lunn [Wed, 24 Jan 2024 03:26:02 +0000 (14:26 +1100)]
rockchip: rv1126: Move RAM disk address

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>
10 months agorockchip: rv1126: select SPL_OPTEE_IMAGE
Tim Lunn [Wed, 24 Jan 2024 03:26:01 +0000 (14:26 +1100)]
rockchip: rv1126: select SPL_OPTEE_IMAGE

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>
10 months agoboard: rockchip: Add Sonoff iHost board
Tim Lunn [Wed, 24 Jan 2024 03:26:00 +0000 (14:26 +1100)]
board: rockchip: Add Sonoff iHost board

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>
10 months agorockchip: Convert rv1126 to standard boot
Tim Lunn [Wed, 24 Jan 2024 03:25:59 +0000 (14:25 +1100)]
rockchip: Convert rv1126 to standard boot

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>
10 months agoram: rockchip: Add rv1126 ddr4 support
Tim Lunn [Wed, 24 Jan 2024 03:25:58 +0000 (14:25 +1100)]
ram: rockchip: Add rv1126 ddr4 support

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>
10 months agoarm: dts: rockchip: Sync rv1126 dts from linux 6.8-rc1
Tim Lunn [Wed, 24 Jan 2024 03:25:57 +0000 (14:25 +1100)]
arm: dts: rockchip: Sync rv1126 dts from linux 6.8-rc1

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>
10 months agorockchip: rk3328-rock-pi-e: Enable DM_ETH_PHY and PHY_REALTEK
Jonas Karlman [Thu, 18 Jan 2024 07:19:46 +0000 (07:19 +0000)]
rockchip: rk3328-rock-pi-e: Enable DM_ETH_PHY and PHY_REALTEK

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>
10 months agonet: designware: Reset eth phy before phy connect
Jonas Karlman [Thu, 18 Jan 2024 07:19:45 +0000 (07:19 +0000)]
net: designware: Reset eth phy before phy connect

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>
10 months agoconfigs: rockchip: rk3036: Fix CONFIG_SPL_STACK define
Kever Yang [Wed, 24 Jan 2024 07:51:10 +0000 (15:51 +0800)]
configs: rockchip: rk3036: Fix CONFIG_SPL_STACK define

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>
10 months agospl: Make SPL_STACK available for ROCKCHIP_RK3036 without spl framework
Kever Yang [Wed, 24 Jan 2024 07:42:04 +0000 (15:42 +0800)]
spl: Make SPL_STACK available for ROCKCHIP_RK3036 without spl framework

rk3036 soc has limit internal sram, and not able to support spl
framework.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
10 months agorockchip: sdram: fix LPDDR5 bank info for sys_reg version 3
YouMin Chen [Tue, 12 Dec 2023 07:56:41 +0000 (15:56 +0800)]
rockchip: sdram: fix LPDDR5 bank info for sys_reg version 3

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>
10 months agoMerge tag 'smbios-2024-04-rc2' of https://source.denx.de/u-boot/custodians/u-boot-efi
Tom Rini [Sat, 3 Feb 2024 14:11:25 +0000 (09:11 -0500)]
Merge tag 'smbios-2024-04-rc2' of 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

10 months agosmbios: correctly name Structure Table Maximum Size field
Heinrich Schuchardt [Wed, 31 Jan 2024 22:49:34 +0000 (23:49 +0100)]
smbios: correctly name Structure Table Maximum Size field

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>
10 months agosmbios: do not determine maximum structure size
Heinrich Schuchardt [Wed, 31 Jan 2024 22:42:35 +0000 (23:42 +0100)]
smbios: do not determine maximum structure size

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>
10 months agocmd: smbios: show correct table size for SMBIOS2.1 entry point
Heinrich Schuchardt [Wed, 31 Jan 2024 22:34:46 +0000 (23:34 +0100)]
cmd: smbios: show correct table size for SMBIOS2.1 entry point

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>
10 months agosmbios: correctly fill chassis handle
Heinrich Schuchardt [Mon, 29 Jan 2024 17:32:58 +0000 (18:32 +0100)]
smbios: correctly fill chassis handle

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>
10 months agosmbios: provide type 4 RISC-V SMBIOS Processor ID
Heinrich Schuchardt [Mon, 29 Jan 2024 11:46:05 +0000 (12:46 +0100)]
smbios: provide type 4 RISC-V SMBIOS Processor ID

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>