Commit graph

91598 commits

Author SHA1 Message Date
Joao Paulo Goncalves
2bb18248c6 arm: dts: k3-am625-verdin-r5: Change CPU frequency to 800MHz
The lowest speed grade of Toradex AM62 SoMs is K speed, resulting in a
max value of 800MHz for the CPU operating frequency. A solution with
runtime selection of the CPU frequency is already planned to avoid these
kinds of problems in the future.

Fixes: 8fb8a6d499 ("arm: dts: k3-am625-verdin-r5:Change CPU frequency to 1000MHz")
Signed-off-by: Joao Paulo Goncalves <joao.goncalves@toradex.com>
2024-03-22 11:10:44 -04:00
Fabio Estevam
f0e997dc61 clk: clk-imx8qm: Add LPUART IPG entries
Since commit cc7df0b9e8 ("serial: lpuart: Enable IPG clock")
the apalis-imx8qm board no longer boots.

The reason is that the imx8qm clock driver does not handle the
LPUART IPG clocks inside get_rate(), set_rate() and enable() functions.

Fix the boot regression by adding the LPUART IPG entries.

Fixes: cc7df0b9e8 ("serial: lpuart: Enable IPG clock")
Reported-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
2024-03-22 11:10:39 -04:00
Fabio Estevam
bcbd1364cb clk: clk-imx8qxp: Add LPUART IPG entries
Since commit cc7df0b9e8 ("serial: lpuart: Enable IPG clock")
the colibri-imx8qxp board no longer boots.

The reason is that the imx8qxp clock driver does not handle the
LPUART IPG clocks inside get_rate(), set_rate() and enable() functions.

Fix the boot regression by adding the LPUART IPG entries.

Fixes: cc7df0b9e8 ("serial: lpuart: Enable IPG clock")
Reported-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Tested-by: Hiago De Franco <hiago.franco@toradex.com> # Toradex Colibri iMX8X
Acked-by: Sean Anderson <seanga2@gmail.com>
2024-03-22 11:10:39 -04:00
Tom Rini
5397daaed8 Pull request efi-2024-04-rc5-2
Documentation:
 
 * patman: Properly document the patchwork_url setting
 * doc: man-page for if
 * colibri-imx8x, apalis-imx8: update board documentation
 
 UEFI:
 
 * correct handling of EFI binary return code
 * don't show usage help if EFI binary fails.
 * correct error handling for bootefi selftest command
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEK7wKXt3/btL6/yA+hO4vgnE3U0sFAmX7524ACgkQhO4vgnE3
 U0v8hg//fSetKqpliNYMwWZ2YU37U6dVo12tjkAuQl2XDhPpdOu6JbO1DpGD/J7/
 sE1Ldi6Ngl5svdE5T0QMhyWxpqWIjwpAUYA8/7MipDNANzr5VgsDAXUp3Keh0NeH
 UoLQVz1MC9Azij9neahvNQxTYqf62NFeiCLyJH0I2dQ5Cecp2RjhV5Si70ji+TjC
 Fr47TuA7+dnvcYgVLhGfGKZdac9FTaI/6zJ/sbgL7qDmGTVHJlKvpP9gvg7hIFYR
 oKih/KtgFXNfkglJ8dF5wGg2urER2kkxAJbjE7Zf+6M8H+sVzQ5N7hnfHMkepWxz
 hm8R9+PxV+LFVJWRu37vm/wxdbEZr4N0M5OA09qvJNfMwTpt3TMrUP92zsgVtsxc
 byAtXUocyX6wjdDD8yYHf0DkA//9kcQvx+YBgu0u1jruuUHW4zzuafRDxHsebLR9
 LnaZEgcyRtE+SAcGz4blzBYIukDxLR75Dbm7kS1x3F/l3gRKuX97jKuWsr+eCdH0
 P4bZvpvkWbOpUi10XF+cXyXoSIL6f1RrFxPyizPBXHHvSgaIWkspZ70O/RLyX28t
 3lpJkTak2RFQDfA4UARbuBgGd9d8bTVcZBWlX5yihP1nX17X2WzyuvblmlQffCtV
 B/RiccOw2KGBidbT6RofbNoer51BW9aijAWjg6enOFRBe1ZNh88=
 =yiZ0
 -----END PGP SIGNATURE-----

Merge tag 'efi-2024-04-rc5-2' of https://source.denx.de/u-boot/custodians/u-boot-efi

Pull request efi-2024-04-rc5-2

Documentation:

* patman: Properly document the patchwork_url setting
* doc: man-page for if
* colibri-imx8x, apalis-imx8: update board documentation

UEFI:

* correct handling of EFI binary return code
* don't show usage help if EFI binary fails.
* correct error handling for bootefi selftest command
2024-03-21 08:35:23 -04:00
Douglas Anderson
fcd0c8b847 patman: Properly document the patchwork_url setting
The "Series-patchwork-url:" tag description says that it overrides the
settings file but doesn't specify the name of the setting. Elsewhere
in the documentation about the "useful" settings we see a setting that
sounds promising called "patchwork_server" that's actually not a valid
setting. It should be "patchwork_url".

Fix these problems so the doc is right and more useful.

Signed-off-by: Douglas Anderson <dianders@chromium.org>
2024-03-21 07:36:54 +01:00
Heinrich Schuchardt
98b5ea1881 doc: typo Synopis
%s/Synopis/Synopsis/g

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-03-21 07:29:19 +01:00
Heinrich Schuchardt
a9122d2c45 doc: man-page for if
Provide a man-page for the if command.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-03-21 07:29:01 +01:00
Heinrich Schuchardt
68fc0b877b cmd: bootefi: error handling bootefi selftest
If bootefi selftest is executed and a problem with the device-tree
installation occurs, efi_install_fdt() writes sensible error messages.
It never returns EFI_INVALID_PARAMETER. It neither makes sense to check
for EFI_INVALID_PARAMETER nor to show the usage help for the bootefi
command in this case.

Fixes: 296faf4f7e ("cmd: bootefi: re-organize do_bootefi()")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-03-21 07:28:43 +01:00
Heinrich Schuchardt
46e5dd661c cmd: bootefi: Don't show usage help if EFI binary fails.
If an EFI binary returns an error code EFI_INVALID_PARAMETER, we show the
usage help for the bootefi command:

    Shell> exit 0x8000000000000002
    ## Application failed, r = 2
    bootefi - Boots an EFI payload from memory

    Usage:
    bootefi <image address>[:<image size>] [<fdt address>]
      - boot EFI payload
    bootefi bootmgr [fdt address]
      - load and boot EFI payload based on BootOrder/BootXXXX variables.

        If specified, the device tree located at <fdt address> gets
        exposed as EFI configuration table.

This makes no sense.

Fixes: 296faf4f7e ("cmd: bootefi: re-organize do_bootefi()")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-03-21 07:28:43 +01:00
Heinrich Schuchardt
6f90a05a04 efi_loader: correct handling of EFI binary return code
We should not try to remove protocol interfaces from a NULL handle.
efi_run_image() should always return the return code of the executed EFI
binary.

Fixes: 6422820ac3 ("efi_loader: split unrelated code from efi_bootmgr.c")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2024-03-21 07:28:43 +01:00
Hiago De Franco
b9d4db4e0f doc: board: apalis-imx8: Update and improve documentation
Update and improve the building documentation of Apalis iMX8.
The following changes were made:
- imx-atf repository changed to nxp-imx GitHub.
- imx-atf branch updated to 'lf_v2.6'.
- imx-seco updated to version 5.8.7.
- nxp-imx mfgtools link updated to GitHub releases.
- General writing improvements.

Signed-off-by: Hiago De Franco <hiago.franco@toradex.com>
2024-03-21 07:25:06 +01:00
Hiago De Franco
fa0ed4c401 doc: board: colibri-imx8x: Update and improve documentation
Update and improve the building documentation of Colibri iMX8X.
The following changes were made:
- imx-atf repository changed to nxp-imx GitHub.
- imx-atf branch updated to 'lf_v2.6'.
- imx-seco updated to version 5.8.7.
- nxp-imx mfgtools link updated to GitHub releases.
- General writing improvements.

Signed-off-by: Hiago De Franco <hiago.franco@toradex.com>
Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2024-03-21 07:25:06 +01:00
Tom Rini
6ec096a711 Merge tag 'u-boot-imx-master-20240317' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx
CI:
https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/19974

- Fix build error when SoM detection on Phytec board.
- Fix sc_misc_otp_fuse_read() error check on colibri-imx8x/apalis-imx8.
- Fix NPU/VPU fdt disable fixup on i.MX8M.
2024-03-17 19:43:02 -04:00
Vitor Soares
e648c4a345 arm: imx: imx8m: soc: Fix NPU/VPU fdt disable fixup
On imx8m[m|p|q].dtsi, upstream Linux uses different names for NPU/VPU
IP block nodes. It leads variants without such HW block having it
enabled by default.

This patch adds the upstream Linux node's paths to the disable list while
keep the compatibility with downstream Linux.

Signed-off-by: Vitor Soares <vitor.soares@toradex.com>
Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2024-03-17 18:00:04 -03:00
Fabio Estevam
cd7af7ee5a apalis-imx8: Fix sc_misc_otp_fuse_read() error check
Commit bfb3409d67 ("imx: toradex/apalis-imx8: correct SCU API usage")
made an incorrect logic change in the error code check of
sc_misc_otp_fuse_read():

-       if (scierr == SC_ERR_NONE) {
+       if (scierr) {
                /* QP has one A72 core disabled */
                is_quadplus = ((val >> 4) & 0x3) != 0x0;
        }

The other changes in this commit are correct.

sc_misc_otp_fuse_read() returns 0 on a successful fuse read.

This inversion causes board_mem_get_layout() to report incorrect RAM size.

Go back the original error check logic to fix the problem.

Fixes: bfb3409d67 ("imx: toradex/apalis-imx8: correct SCU API usage")
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2024-03-17 17:59:50 -03:00
Fabio Estevam
fdd529fa62 colibri-imx8x: Fix sc_misc_otp_fuse_read() error check
Commit aa6e698a7a ("imx: toradex/colibri-imx8x: correct SCU API usage")
made an incorrect logic change in the error code check of
sc_misc_otp_fuse_read():

-       if (sc_err == SC_ERR_NONE) {
+       if (sc_err) {
                /* DX has two A35 cores disabled */
                return (val & 0xf) != 0x0;
        }

The other changes in this commit are correct.

sc_misc_otp_fuse_read() returns 0 on a successful fuse read.

This inversion causes board_mem_get_layout() to report incorrect RAM size.

Go back the original error check logic to fix the problem.

Fixes: aa6e698a7a ("imx: toradex/colibri-imx8x: correct SCU API usage")
Reported-by: Hiago De Franco <hiago.franco@toradex.com>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Tested-by: Hiago De Franco <hiago.franco@toradex.com> # Toradex Colibri iMX8X 1GB
2024-03-17 17:59:32 -03:00
Benjamin Hahn
e1897784aa board: phytec: define get_som_type also when SoM detection is disabled
define the phytec_get_som_type function also when the SoM detection is
disabled.

Fixes:
commit 110d321a56 ("board: phytec: common: phytec_som_detection: Add phytec_get_som_type")

Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
2024-03-17 17:59:11 -03:00
Tom Rini
86fd291a79 Pull request efi-2024-04-rc5
Documentation:
 
 * fix Python string escapes
 * develop: commands: Fix function prototype
 * fix incorrect path Documentation
 * fix mistyped "env flags" command
 * board: phytec: phycore-am62x: Update artifact names
 
 UEFI:
 
 * Invoke ft_board_setup() before efi_carve_out_dt_rsv()
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEK7wKXt3/btL6/yA+hO4vgnE3U0sFAmXyQU0ACgkQhO4vgnE3
 U0v5Ww/+LFusLohjO6aIE65NsMvEFUMXIZe2Ll6jBOXV+T8/foDnsRsFaeVx1GL5
 lJOjnlHSED3/Q3JIhL8KWn35CovykhLxsWkqdmvssXPuZH1k9Q2OZnyBnYcYJMJA
 kguEvpF6ynf70JGPK8w/GgNzqf2qzKe6SYTdgWKQeYO3mhcQT7pGvFXWK0qDVG47
 HKGY+g2vXD0GQxzeeIiVr1ZAQUu+FmXeiPDEIQ4tKki7HEoFvuj5rCldZEIelzHF
 LXGZ9nlHAOHK+7USkL+3vMs7VOvxndXi77maW8i0Dcn8bFcBP3/pJcduoNBZHHBS
 vnILeKux63FuhIxnHOGBP3OoxbW8RsZhn5C6+K/IMpKWzFw6Y577ZSp+dNKp9Gpc
 3P3HFTzXVQX6j7MqvsnMNCOHvGJ3ZFUJFsXx2r6bfKX8VcxMCbFbJg/fNu102f4y
 WCwWtgNmW4EuOHUupEfSnOLSZhRT1gliom5wcvTdt0ML9Z7mP9bYz+LkT+/P2WMA
 oEeppMo0+MSlbhoXX11UT8/hJD4n/tB85yrmUkuq2K3u+YRw0hy+3WpOT/62u9CC
 320HEX6XKrD8mvNM1XpWtylVo8KQNws0FBfWIrCwpDE52sKfHqlIVu95g3ZqyEOl
 bHFLQocagoCO8Pzdllm9N1rfTAGL84h2w2C4kmQTCUrzYvAkl6s=
 =QKo8
 -----END PGP SIGNATURE-----

Merge tag 'efi-2024-04-rc5' of https://source.denx.de/u-boot/custodians/u-boot-efi

Pull request efi-2024-04-rc5

Documentation:

* fix Python string escapes
* develop: commands: Fix function prototype
* fix incorrect path Documentation
* fix mistyped "env flags" command
* board: phytec: phycore-am62x: Update artifact names

UEFI:

* Invoke ft_board_setup() before efi_carve_out_dt_rsv()
2024-03-13 20:39:46 -04:00
Tom Rini
a81242099c - mips: implement __udivdi3 to fix building of SquashFS
- mips: fix bug in cache init on MIPS32r2 or later
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiQkHUH+J02LLC9InKPlOlyTyXBgFAmXyCh8ACgkQKPlOlyTy
 XBicug/+KSFfoD7nYY5VCSgDIPPvbwm91uW7nwlTDymSHZx1gvX6uaAuo7fPVBlE
 j+nrPpV9g7aGMihkV6JC4/2TAYB0norA7umjXV9QcZlv+qJahxhMqtmKjqH+nxiZ
 zslH8lg1mOkuDnIEBzyaXryqPEOv+Uo0jaOiWAm9Lc8gRprI7g34yM+N/7PY3KLN
 dFXc6bpP3JKwsmgAfG7w8WB/aBLBo1Ksdj1tfHzmj87IyPeL51cldDbxK9aNnRlq
 61PfRALhO+39Lgm9QTi1ukGkOU1/l7v0523PECOwjiQ6QbgElch0pJl9tNwhjc8G
 w+8OQcSEw/xnF8NSzSVaGKXGy91PjenNeAS39DQX1XvjfMZmtIcfNEClRcOgeb6x
 eYDfjKdpn8uEMNZ8hn7eetRjXcgKTFP7z+ZMrvUPB+E+1MB3ncU19sYTMh31nL/4
 6VU1AEM95TWWSbYK/wH+r+TnudO7CVdPmqRA1x1Pf3w66kWPBiR8/WwOuLRLx6HN
 cg2/vBrF+iK87ItCFPSBUYzLmt2UbKRzbIIQgG9ub4qfAe6FADtyF/HNPiu+mU5H
 XwUB+cjnntaRQPbZpp2t9ILwmJ3R47RTntcWoruWYUm9lEzrLZ6z9Az66zDmPy0L
 aXrbzHfSqZ+Mg5I7cyx0d0+4PgqQlBOH/jlVkRHyQ4HzM6/h5BE=
 =Qt/+
 -----END PGP SIGNATURE-----

Merge tag 'mips-fixes-for-v2024.04' of https://source.denx.de/u-boot/custodians/u-boot-mips

- mips: implement __udivdi3 to fix building of SquashFS
- mips: fix bug in cache init on MIPS32r2 or later
2024-03-13 17:15:46 -04:00
Daniel Schwierzeck
6806a133cd mips: fix change_k0_cca()
The intention of change_k0_cca() is to read the C0.Config register into
register $t0, update $t0 with the new cache coherency mode passed in $a0
and write back $t0 to C0.Config. With MIPS32 R2 or later instruction
sets, this can be achieved with a single instruction with INS. The
source and destination register of the INS instruction is passed as
first parameter. In case of change_k0_cca() it is register $t0. But
for writing back the updated value to C0.Config, the incorrect $a0
register is used. This is only correct in the MIPS32 R1 code path.

Fix the `mtc0` instruction to write back the value of the $t0 register.
Fix the MIPS32 R1 code path to also store the updated value in $t0.

Reported by user ddqxy138 on Github.
b838586086

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
2024-03-13 21:15:40 +01:00
Linus Walleij
811dd44b0b mips: implement __udivdi3
Squashfs wasn't compiling because the lldiv() directives
turn into __udivdi3 and we are using private libgcc.

After this squashfs compiles for MIPS.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Tested-by: Bartel Eerdekens <barteleerdekens@gmail.com>
2024-03-13 21:15:40 +01:00
Heinrich Schuchardt
c8a2567475 doc: fix incorrect path Documentation
When copying the build system for Linux we missed to replace some
instances of 'Documentation' by 'doc'.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-03-13 08:16:16 +01:00
Benjamin Gray
b13297cc45 doc/sphinx: fix Python string escapes
Python 3.6 introduced a DeprecationWarning for invalid escape sequences.
This is upgraded to a SyntaxWarning in Python 3.12, and will eventually
be a syntax error.

Fix these now to get ahead of it before it's an error.

Signed-off-by: Benjamin Gray <bgray@linux.ibm.com>
Message-ID: <20230912060801.95533-3-bgray@linux.ibm.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>

Adapted for U-Boot
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-03-13 08:16:16 +01:00
Wadim Egorov
f99a1e241f doc: board: phytec: phycore-am62x: Update artifact names
Use proper binary artifact names for HSFS devices.
Do not use the *_unsigned binaries.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Dhruva Gole <d-gole@ti.com>
2024-03-13 08:10:00 +01:00
Alexander Dahl
27987b86a0 doc: develop: commands: Fix function prototype
When using the previous prototype you got a compiler warning like this:

    warning: initialization of 'int (*)(struct cmd_tbl *, int,  int,  char * const*)' from incompatible pointer type 'int (*)(struct cmd_tbl *, int,  int,  const char **)' [-Wincompatible-pointer-types]

Fixes: 3d9640f55c ("doc: expand README.commands")
Signed-off-by: Alexander Dahl <ada@thorsis.com>
2024-03-13 08:09:23 +01:00
Mark Kettenis
1431ab8b6c efi_loader: Don't carve out memory reservations too early
Moving the efi_carve_out_dt_rsv() call in commit 1be415b21b
("efi_loader: create memory reservations in ACPI case")
broke boards that create additional memory reservations in
ft_board_setup() since it is now called before those additional
memory reservations are made.  This is the case for the rk3588
boards and breaks booting OpenBSD on those boards.

Move the call back to its original location and add a call in
the code path used for ACPI.

Fixes: 1be415b21b ("efi_loader: create memory reservations in ACPI case")
Signed-off-by: Mark Kettenis <kettenis@openbsd.org>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-03-13 08:06:57 +01:00
Thomas Weißschuh
0dc8cbda52 doc: fix mistyped "env flags" command
Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2024-03-13 08:05:42 +01:00
Tom Rini
7422f661e2 Merge https://source.denx.de/u-boot/custodians/u-boot-riscv
* riscv: lib: improve extension detection
* riscv: sbi: fix display format and global variable storage
* sifive: fu740: reduce DDR speed
* board: starfive vf2: switch to standard boot and fix DTS
2024-03-12 09:53:06 -04:00
Minda Chen
544af8207c board: starfive: maintainer: Add visionfive2 PCIe driver
Add PCIe driver file to visionfive2 board MAINTAINERS list.

Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2024-03-12 14:36:13 +08:00
Minda Chen
999c7ed418 board: starfive: Update maintainer of VisionFive v2 board
Update the maintainer of Starfive VisionFive v2 board.

Signed-off-by: Minda Chen <minda.chen@starfivetech.com>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2024-03-12 14:36:13 +08:00
Heinrich Schuchardt
3a223ff63c cmd: sbi: formatting PolarFire Hart Software Services version
The 'PolarFire Hart Software Services' SBI implementation returns the
version of the incorporated OpenSBI. Format the number accordingly.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
2024-03-12 14:36:13 +08:00
Heinrich Schuchardt
4de6d37fa2 cmd: sbi: Correctly display unknown implementation IDs
For an unknown implementation ID an output like

    SBI 1.0Unknown implementation ID 16777216
    Extensions:
      sbi_set_timer
      ...

was shown. The number 16777216 is not the implementation ID.

* Show the correct number
* Use a hexadecimal output format
* Add a missing line feed

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Dan Carpenter <dan.carpenter@linaro.org>
2024-03-12 14:36:13 +08:00
Bo Gan
e6b7aeef3d riscv: dts: jh7110: Enable PLL node in SPL
Previously PLL node was missing from SPL dts. This caused BUS_ROOT
to stay on OSC clock (24Mhz). As a result, all peripherals have to
run at a much lower frequency, and loading from sdcard/emmc is slow.
Thus, enabling PLL node in dts to fix this.

Signed-off-by: Bo Gan <ganboing@gmail.com>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2024-03-12 14:36:13 +08:00
Conor Dooley
0d95add3b1 riscv: cpu: improve multi-letter extension detection in supports_extension()
The first multi-letter extension after the single-letter extensions does
not have to be preceded by an underscore, which could cause the parser
to mistakenly find a single-letter extension after the start of the
multi-letter portion of the string.
Three letters precede multi-letter extensions (s, x & z), none of which
are valid single-letter extensions. The dt-binding also allows
multi-letter extensions starting with h, but no such extension have been
frozen or ratified, and the unprivileged spec no longer uses "h" as a
prefix for multi-letter hypervisor extensions, having moved to "sh"
instead. For that reason, modify the parser to stop at s, x & z to prevent
this overrun, ignoring h.

Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-03-12 14:36:13 +08:00
Leon M. Busch-George
e1d7ff220c riscv: dts: jh7110: fix indentation
Signed-off-by: Leon M. Busch-George <leon@georgemail.eu>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2024-03-12 14:36:13 +08:00
Heinrich Schuchardt
25e7d4bf64 serial: move sbi_dbcn_available to .data section
U-Boot SPL loads the device-tree directly behind main U-Boot overlapping
the .bss section. reserve_fdt() is called in board_init_f() to relocate the
device-tree to a safe location.

Debug UARTs are enabled before board_init_f(). With sbi_dbcn_available in
the .bss section the device-tree is corrupted when _debug_uart_init() is
called in the SBI serial driver. Move the variable to the .data section.

Link: https://bugs.launchpad.net/ubuntu/+source/u-boot/+bug/2054091
Fixes: dfe0837494 ("risc-v: implement DBCN based debug console")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Tested-by: Aurelien Jarno <aurelien@aurel32.net>
Tested-by: Conor Dooley <conor.dooley@microchip.com>
2024-03-12 14:36:13 +08:00
Thomas Perrot
7480282eca riscv: sifive: fu740: reduce DDR speed from 1866MT/s to 1600MT/s
It appears that there is some timing marginality either in the
board layout or the SoC that results in occasional data corruption
on some boards.
We observed this issue on some of the new HiFive Unmatched RevB
boards during volume production as well as some of the original
HiFive Unmatched boards from 2021 in our possession. This means
that there are other boards out there that might have the issue
too.

We have done some limited testing with DDR4 at 1600MT/s and
faulty boards (failing at 1866MT/s) passed.
We plan further testing after we procure a temperature chamber.

Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2024-03-12 14:36:13 +08:00
Nam Cao
e3a904a690 starfive: visionfive2: switch to standard boot
Distro boot scripts are deprecated. Use standard boot instead.

Signed-off-by: Nam Cao <namcao@linutronix.de>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2024-03-12 14:36:13 +08:00
Tom Rini
f3c979dd00 Prepare v2024.04-rc4
Signed-off-by: Tom Rini <trini@konsulko.com>
2024-03-11 13:11:46 -04:00
Tom Rini
da07a629e1 Merge tag 'u-boot-imx-master-20240311' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx
- Use TF-A on imx8mp_beacon to fix boot regression.
- Use latest 6.8 dts for imx8mp_beacon.
- Fix the RAM initialization for phycore_imx8mp PCL-070 rev 1.
- Describe the 0087 i.mx8m mini product variant in tdx-cfg-block.
2024-03-11 09:22:44 -04:00
Tom Rini
b8ed8b1376 configs: Resync with savedefconfig
Rsync all defconfig files using moveconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-03-11 09:10:24 -04:00
Adam Ford
4484c7b3c3 arm: dts: imx8mp-beacon-kit: Resync DTS with Linux 6.8
The device tree has evolved over time, so re-sync.  This also
partial reverts one change on the PCIe, because U-Boot doesn't
have a proper driver.  However, since the clock is configured
to generate a 100MHz reference clock by default, a proper driver
isn't really necessary.

Signed-off-by: Adam Ford <aford173@gmail.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
2024-03-11 08:43:42 -03:00
Joao Paulo Goncalves
12d3257fa2 toradex: tdx-cfg-block: add 0087 i.mx8m mini product variant
Add new product id 0087 Verdin iMX8M Mini Quad 2GB IT.

Signed-off-by: Joao Paulo Goncalves <joao.goncalves@toradex.com>
2024-03-11 08:43:27 -03:00
Adam Ford
383d4b130c configs: imx8mp_beacon: Fall back to using TF-A
When the board was originally added, it enabled some features which
allowed it to bypass Trusted Firmware, but as the feature set of
Linux grew and more features became available, the U-Boot config
options which bypassed TF-A caused issues, so it needs to return
to the standard operating mode of using TF-A or the system no
longer boots.

Fixes: ab53bd43db ("arm64: imx: Add support for imx8mp-beacon-kit")
Signed-off-by: Adam Ford <aford173@gmail.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
2024-03-11 08:43:08 -03:00
Benjamin Hahn
76832300a9 board: phycore_imx8mp: Use 2GHz RAM timings for PCL-070 from pcb_rev 1
We need to differ between PCL-070 and PCM-070. PCL-070 supports 2GHz RAM
timings from pcb rev 1 or newer. PCM-070 supports 2GHz RAM timings from
pcb rev 3 or newer.

Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
2024-03-11 08:42:44 -03:00
Benjamin Hahn
110d321a56 board: phytec: common: phytec_som_detection: Add phytec_get_som_type
Add a function that gets the som_type from the EEPROM.
Add an enum for the som_type.

Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
2024-03-11 08:42:44 -03:00
Tom Rini
0981f8900f Merge https://source.denx.de/u-boot/custodians/u-boot-usb
- Singular quirk DT property rename.
2024-03-09 11:29:48 -05:00
Marek Vasut
91e70367a5 net: phy: Use PHY MDIO address from DT if available
In case the PHY is fully described in DT, use PHY MDIO address
from DT directly instead of always using auto-detection. This
also fixes the behavior of 'mdio list' in such DT setup, which
now prints the PHY connected to the MAC correctly.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Paul Barker <paul.barker.ct@bp.renesas.com>
2024-03-09 10:58:48 -05:00
Tom Rini
485bfe1adb Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-marvell
- net: mv88e6xxx: fix missing SMI address initialization (Marek)
- mvebu: turris_omnia: Enable networking via ethernet switch (Marek)
- mvebu: helios-4: add config fragment for spi booting et al (Josua)
- rng: Add Turris Mox rTWM RNG driver (Max)
2024-03-05 07:08:55 -05:00
Tom Rini
46e3871aa6 Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sunxi
One fix makes the reboot more robust on some older board, another one
stabilises the initial clock setup on the A10/A20.
Two patches make sure our DRAM init does not actually change the content
of the DRAM array, which allows to use DRAM for Linux' pstore
functionality.
We get SPI support for U-Boot proper for one more SoC, that patch was
lingering around for a while, and should not affect other SoCs, so I am
merging this now.
As an added bonus, we get the defconfig file for a new board, the DT was
already synced from the kernel tree.

The CI looked happy with changes, and I tested them on five different
boards with different SoCs.
2024-03-05 07:08:10 -05:00