Tom Rini [Sat, 22 Apr 2023 22:30:31 +0000 (18:30 -0400)]
Merge tag 'u-boot-nand-
20230422' of https://source.denx.de/u-boot/custodians/u-boot-nand-flash
Pull request for u-boot-nand-
20230422
Replaces a patch by Linus Walleij merged with pull request
u-boot-nand-
20230417, with a newer version that contains fixes for tests
run by Tom Rini.
Linus Walleij [Fri, 7 Apr 2023 13:40:05 +0000 (15:40 +0200)]
mtd: rawnand: nand_base: Handle algorithm selection
For BRCMNAND with 1-bit BCH ECC (BCH-1) such as used on the
D-Link DIR-885L and DIR-890L routers, we need to explicitly
select the ECC like this in the device tree:
nand-ecc-algo = "bch";
nand-ecc-strength = <1>;
nand-ecc-step-size = <512>;
This is handled by the Linux kernel but U-Boot core does
not respect this. Fix it up by parsing the algorithm and
preserve the behaviour using this property to select
software BCH as far as possible.
Reviewed-by: Michael Trimarchi <michael@amarulasolutions.com>
Acked-by: William Zhang <william.zhang@broadcom.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Tested-by: Tom Rini <trini@konsulko.com> [am335x_evm]
Link: https://lore.kernel.org/all/20230407134008.1939717-3-linus.walleij@linaro.org/
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Dario Binacchi [Sat, 22 Apr 2023 20:58:10 +0000 (22:58 +0200)]
Revert "mtd: rawnand: nand_base: Handle algorithm selection"
It will be replaced by a more recent version which contains fixes for
tests run by Tom Rini.
This reverts commit
ff33d3c87c2a1ab576607c2f67a9cb7690a4e7ca.
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Tom Rini [Mon, 17 Apr 2023 20:32:17 +0000 (16:32 -0400)]
Merge tag 'u-boot-amlogic-
20230417' of https://source.denx.de/u-boot/custodians/u-boot-amlogic
- Add initial support for BPI-CM4
- Spring Cleanup of Amlogic board documentation
- add support for BananaPi M2-Pro
- add support for BananaPi M2S
- add support for Radxa Zero2
- add support for WeTek Hub and WeTek Play2
- switch LibreTech-CC v2 and WeTek Core2 to EE powerdomain
- add support for Beelink GT1 Ultimate
Tom Rini [Mon, 17 Apr 2023 14:47:33 +0000 (10:47 -0400)]
Merge tag 'u-boot-nand-
20230417' of https://source.denx.de/u-boot/custodians/u-boot-nand-flash
Pull request for u-boot-nand-
20230417
The first two patches are by Frieder Schrempf who joins as a reviewer for
the SPI NAND framework and drivers.
The following 2 patches are by Linus Walleij and are taken by the series
"Add Broadcom Northstar basic support".
Bin Meng makes static a list for octeontx.
Francesco Dolcini specifies MTD partitions on command line for
colibri-{imx6ull,imx7}.
Karl Chan [Mon, 27 Mar 2023 20:15:15 +0000 (04:15 +0800)]
doc: boards: amlogic: add documentation for Beelink GT1 Ultimate
Add build instructions for the Beelink GT1 Ultimate board.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Signed-off-by: Karl Chan <exxxxkc@getgoogleoff.me>
Link: https://lore.kernel.org/r/8760391a-3506-5ac5-8d55-92c23cccff44@yahoo.com
[narmstrong: fixed MAINTAINERS indentation, added doc to index]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Karl Chan [Mon, 27 Mar 2023 20:13:14 +0000 (04:13 +0800)]
boards: amlogic: add Beelink GT1 Ultimate defconfig
Add configuration for the Beelink GT1 Ultimate board.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Signed-off-by: Karl Chan <exxxxkc@getgoogleoff.me>
Link: https://lore.kernel.org/r/e3c87efd-4ac1-24a7-503d-71669aae5177@yahoo.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Karl Chan [Mon, 27 Mar 2023 20:11:52 +0000 (04:11 +0800)]
ARM: dts: add support for Beelink GT1 Ultimate
Import the device-tree from linux-amlogic/for-next (Linux 6.3-rc1).
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Signed-off-by: Karl Chan <exxxxkc@getgoogleoff.me>
Link: https://lore.kernel.org/r/f5a8db4e-b2d0-e00a-cc4f-01a4f794c761@yahoo.com
[narmstrong: fixed imported dt file]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Sun, 26 Mar 2023 06:06:25 +0000 (06:06 +0000)]
boards: amlogic: switch LibreTech-CC v2 and WeTek Core2 to EE powerdomain
The LibreTech-CC (LePotato) v2 and WeTek Core2 boards are still using
the older GX VPU powerdomain driver. Update their configs to use the
newer EE driver like other Amlogic boards [0].
[0] https://lore.kernel.org/all/
20201106101901.2472557-5-narmstrong@baylibre.com/T/#u
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230326060625.2734090-1-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Thu, 23 Mar 2023 14:31:42 +0000 (14:31 +0000)]
doc: boards: amlogic: add documentation for WeTek Hub and WeTek Play2
Add build instructions for the WeTek Hub and WeTek Play2 boards.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230323143142.780306-15-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Thu, 23 Mar 2023 14:31:41 +0000 (14:31 +0000)]
boards: amlogic: add WeTek Hub and WeTek Play2 defconfig
Add configurations for the WeTek Hub and WeTek Play2 boards.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230323143142.780306-14-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Thu, 23 Mar 2023 14:31:40 +0000 (14:31 +0000)]
ARM: dts: add support for WeTek Hub and WeTek Play2
Import the dts files from linux-amlogic/for-next (Linux 6.4-rc1) and
add the old PHY reset bindings for dwmac to the u-boot.dtsi until we
support the new bindings in the PHY node. Without this the PHY is not
functional in u-boot or Linux.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230323143142.780306-13-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Thu, 23 Mar 2023 14:31:39 +0000 (14:31 +0000)]
doc: boards: amlogic: add documentation for Radxa Zero2
Add build docs for the Radxa Zero2 board.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230323143142.780306-12-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Thu, 23 Mar 2023 14:31:38 +0000 (14:31 +0000)]
boards: amlogic: add Radxa Zero2 defconfig
Add board configuration for the Radxa Zero2.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230323143142.780306-11-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Thu, 23 Mar 2023 14:31:37 +0000 (14:31 +0000)]
ARM: dts: add support for Radxa Zero2
Import the device-tree from linux-amlogic/for-next (Linux 6.4-rc1)
to support the Radxa-Zero2 board.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230323143142.780306-10-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Thu, 23 Mar 2023 14:31:36 +0000 (14:31 +0000)]
docs: boards: amlogic: add documentation for BananaPi M2S
Add build docs for the BPI-M2S board.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230323143142.780306-9-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Thu, 23 Mar 2023 14:31:35 +0000 (14:31 +0000)]
boards: add BananaPi M2S defconfig
Add configuration for the Bananapi BPI-M2S.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230323143142.780306-8-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Thu, 23 Mar 2023 14:31:34 +0000 (14:31 +0000)]
ARM: dts: add support for BananaPi M2S
Import the device-tree from linux-amlogic/for-next (Linux 6.4-rc1)
and omit the NPU node from the A311D board variant dts as this is
not supported under U-Boot.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230323143142.780306-7-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Thu, 23 Mar 2023 14:31:33 +0000 (14:31 +0000)]
docs: boards: amlogic: add documentation for BananaPi M2-Pro
Add build docs for the BPI-M2-PRO board.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230323143142.780306-6-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Thu, 23 Mar 2023 14:31:32 +0000 (14:31 +0000)]
boards: add BananaPi M2-Pro defconfig
Add configuration for the BananaPi M2-Pro board.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230323143142.780306-5-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Thu, 23 Mar 2023 14:31:31 +0000 (14:31 +0000)]
ARM: dts: add support for BananaPi M2-Pro
Import the board dts from the linux-amlogic/for-next (6.4-rc1)
branch. This involves spliting the BPI-M5 dts into a dtsi and
then reusing this for the M2-Pro.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230323143142.780306-4-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Thu, 23 Mar 2023 14:31:29 +0000 (14:31 +0000)]
docs: boards: amlogic: add bananapi-m5 to u200 maintainer file
The bananapi-m5 docs are missing from the file, so add them.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20230323143142.780306-2-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:46:09 +0000 (11:46 +0000)]
doc: boards: amlogic: add documentation for ODROID-HC4
Add separate documentation for the ODROID-HC4 board to ensure
users build U-Boot using the HC4 defconfig that enables PCIe
SATA boot. This avoids user frustration trying to boot after
using the C4 recipe which only works from SD card.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-34-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:46:08 +0000 (11:46 +0000)]
doc: boards: amlogic: add documentation for GS-King-X
GS-King-X is also supported with the beelink-s922x FIP sources and can use
the GT-King defconfig. Add a board document with instructions.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-33-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:46:07 +0000 (11:46 +0000)]
doc: boards: amlogic: add documentation for BananaPi M5
Add missing build documentation for the BPI-M5 board.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-32-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:46:06 +0000 (11:46 +0000)]
doc: boards: amlogic: add documentation for BananaPi CM4IO
Add build instructions for the BananaPi BPI-CM4IO carrier board with
BPI-CM4 module.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-31-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:46:05 +0000 (11:46 +0000)]
doc: boards: amlogic: update documentation for WeTek Core2
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-30-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:46:04 +0000 (11:46 +0000)]
doc: boards: amlogic: update documentation for W400
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-29-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:46:03 +0000 (11:46 +0000)]
doc: boards: amlogic: update documentation for U200
Improve Documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-28-christianshewitt@gmail.com
[narmstrong: fixed doc build, add commit msg]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:46:02 +0000 (11:46 +0000)]
doc: boards: amlogic: update documentation for SEI610
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-27-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:46:01 +0000 (11:46 +0000)]
doc: boards: amlogic: update documentation for SEI510
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-26-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:46:00 +0000 (11:46 +0000)]
doc: boards: amlogic: update documentation for S400
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-25-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:59 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for Radxa Zero
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-24-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:58 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for Q200
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-23-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:57 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for P201
Improve documentation. Notably we can now support U-Boot install to
the internal eMMC storage in addition to SD cards.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-22-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:56 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for P200
Improve documentation. Notably we can now support U-Boot install to
the internal eMMC storage in addition to SD cards.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-21-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:55 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for ODROID-N2L
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-20-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:54 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for ODROID-N2/N2+
Improve documentation. Notably mention the ODROID-N2+ and the option
to use FDTDIR not FDT for automatic device-tree selection.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-19-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:53 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for ODROID GO ULTRA
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-18-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:52 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for ODROID-C4
Improve documentation. Notably drop references to the ODROID-HC4 board
as its support has evolved and we will add an HC4 specific document in
a later patch.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-17-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:51 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for ODROID-C2
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-16-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:50 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for NanoPi-K2
Improve documentation. Notably we can now support U-Boot install to
the removable eMMC storage module in addition to SD cards.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-15-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:49 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for LePotato
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-14-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:48 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for LaFrite
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-13-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:47 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for Khadas VIM3L
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-12-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:46 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for Khadas VIM3
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-11-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:45 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for Khadas VIM2
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-10-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:44 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for Khadas VIM
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-9-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:43 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for JetHub J80
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-8-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:42 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for JetHub J100
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-7-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:41 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for Beelink GT-King Pro
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-6-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:40 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for Beelink GT-King
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-5-christianshewitt@gmail.com
[narmstrong: fixed doc build]
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:39 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for pre-generated-fip's
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-4-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:38 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for boot-flow
Improve documentation.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-3-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Christian Hewitt [Mon, 20 Mar 2023 11:45:37 +0000 (11:45 +0000)]
doc: boards: amlogic: update documentation for index page
Improve documentation. Notably we remove all the board names from the
feature matrix to reduce table width. SoC types have been added to the
titles in individual board documents so readers can still correlate a
board against the features. This makes it easier to add new boards to
to the document in the future.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Link: https://lore.kernel.org/r/20230320114609.930145-2-christianshewitt@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Neil Armstrong [Tue, 7 Mar 2023 08:20:25 +0000 (09:20 +0100)]
ARM: meson: Add initial support for BPI-CM4 module with BPI-CM4IO baseboard
Add support for both the BananaPi BPI-CM4 module and the BananaPi
baseboard which is compatible with the RaspberryPi CM4IO baseboard.
The BananaPi BPI-CM4 module follows the CM4 specifications at [1],
but with a single HDMI port and a single DSI output.
The current CM4IO baseboard DT should work fine on the Raspberry CM4
baseboard and other derivatives baseboards, but proper DT should
be written for other baseboards.
[1] https://datasheets.raspberrypi.com/cm4io/cm4io-datasheet.pdf
Link: https://lore.kernel.org/r/20230307-u-boot-cm4-v1-2-43f5a393cd37@linaro.org
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Neil Armstrong [Tue, 7 Mar 2023 08:20:24 +0000 (09:20 +0100)]
ARM: dts: import initial DT for BPI-CM4 module with BPI-CM4IO baseboard
Import initial support for BPI-CM4 module with BPI-CM4IO baseboard
from the Linux submission applied at [1].
The BananaPi BPI-CM4 module follows the CM4 specifications at [2],
but with a single HDMI port and a single DSI output.
The current CM4IO baseboard DT should work fine on the Raspberry CM4
baseboard and other derivatives baseboards, but proper DT should
be written for other baseboards.
[1] https://git.kernel.org/amlogic/c/
0262f2736978b1763363224698f47112a148dab0
[2] https://datasheets.raspberrypi.com/cm4io/cm4io-datasheet.pdf
Link: https://lore.kernel.org/r/20230307-u-boot-cm4-v1-1-43f5a393cd37@linaro.org
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Tom Rini [Sun, 16 Apr 2023 23:00:48 +0000 (19:00 -0400)]
Merge branch 'master_sh/gen4/rswitch' of https://source.denx.de/u-boot/custodians/u-boot-sh
Tom Rini [Sun, 16 Apr 2023 23:00:25 +0000 (19:00 -0400)]
Merge branch 'master_sh/gen4/mmcfix' of https://source.denx.de/u-boot/custodians/u-boot-sh
Tom Rini [Sun, 16 Apr 2023 22:59:40 +0000 (18:59 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-coldfire
Marek Vasut [Mon, 20 Mar 2023 20:05:47 +0000 (21:05 +0100)]
ARM: renesas: Enable rswitch, serdes and PHY driver on R8A779F0 S4 Spider
Enable Renesas RSwitch driver, matching SERDES PHY driver and Marvell
10G ethernet PHY driver in R8A779F0 S4 Spider board configuration to
make ethernet available via the RSwitch ports.
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Marek Vasut [Thu, 23 Mar 2023 00:21:28 +0000 (01:21 +0100)]
configs: m68k: Use default shell prompt
The current shell prompt '->' interferes with CI matching on 'bdinfo'
output. When CI test.py attempts to locate memory information in the
'bdinfo' output, it matches on '->' prefix which is identical to the
shell prefix. Switch the prompt to default '=>' one to avoid this
interference.
Suggested-by: Tom Rini <trini@konsulko.com> # found the CI oddity
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Phong Hoang [Mon, 20 Mar 2023 20:05:04 +0000 (21:05 +0100)]
net: rswitch: Add Renesas Ethernet Switch
This patch adds Ethernet Switch support that found on R-Car S4
(r8a779f0) SoC. This is extracted from multiple patches from
downstream BSP, with additional rework of the network device
registration.
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Signed-off-by: Phong Hoang <phong.hoang.wz@renesas.com>
Signed-off-by: Takeshi Kihara <takeshi.kihara.df@renesas.com>
[Marek: Rework the driver to support all ports via subdrivers.
Split the driver up, add generic PHY framework support.
Generic code clean ups.]
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
Marek Vasut [Sun, 19 Mar 2023 17:09:43 +0000 (18:09 +0100)]
phy: renesas: Add Renesas Ethernet SERDES driver for R-Car S4-8
Add Renesas Ethernet SERDES driver for R-Car S4-8 (r8a779f0).
The datasheet describes initialization procedure without any information
about registers' name/bits. So, this is all black magic to initialize
the hardware. Especially, all channels should be initialized at once.
This driver is imported and adjusted from Linux 6.3-rc1 commit:
50133cd3e8dd1 ("phy: renesas: r8a779f0-eth-serdes: Remove retry code in .init()")
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Marek Vasut [Sat, 8 Apr 2023 17:35:37 +0000 (19:35 +0200)]
mmc: tmio: Use IS_ENABLED() to check for CONFIG_ option
Use IS_ENABLED() instead of CONFIG_IS_ENABLED() to check for CONFIG_
option which is identical across all of U-Boot and xPL builds.
Fixes:
2769ddc99fd ("mmc: tmio: Replace ifdeffery with IS_ENABLED/CONFIG_IS_ENABLED macros")
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Francesco Dolcini [Mon, 6 Feb 2023 22:48:38 +0000 (23:48 +0100)]
colibri-imx6ull: specify MTD partitions on command line
Disable fdt_fixup_mtdparts() and pass MTD partition on the command
line. Dynamically editing the fdt with a static partitions configuration
is not required and there is no advantages compared to using the command
line. This change should prevent boot failures as the one in [0].
Cc: Marek Vasut <marex@denx.de>
Cc: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/all/Y4dgBTGNWpM6SQXI@francesco-nb.int.toradex.com/
Link: https://lore.kernel.org/all/20230105123334.7f90c289@xps-13/
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Link: https://lore.kernel.org/all/20230206224838.75963-4-francesco@dolcini.it/
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Francesco Dolcini [Mon, 6 Feb 2023 22:48:37 +0000 (23:48 +0100)]
colibri-imx7: specify MTD partitions on command line
Disable fdt_fixup_mtdparts() and pass MTD partition on the command
line. Dynamically editing the fdt with a static partitions configuration
is not required and there is no advantages compared to using the command
line. This change should prevent boot failures as the one in [0].
Cc: Marek Vasut <marex@denx.de>
Cc: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/all/Y4dgBTGNWpM6SQXI@francesco-nb.int.toradex.com/
Link: https://lore.kernel.org/all/20230105123334.7f90c289@xps-13/
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Link: https://lore.kernel.org/all/20230206224838.75963-3-francesco@dolcini.it/
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Bin Meng [Wed, 5 Apr 2023 14:38:37 +0000 (22:38 +0800)]
nand: raw: octeontx: Make list static
octeontx_bch_devices and octeontx_pci_nand_deferred_devices are only
referenced in the files where they are defined. Make them static.
Signed-off-by: Bin Meng <bmeng@tinylab.org>
Acked-by: Michael Trimarchi <michael@amarulasolutions.com>
Link: https://lore.kernel.org/all/20230405143837.785082-1-bmeng@tinylab.org/
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Linus Walleij [Wed, 8 Mar 2023 21:42:31 +0000 (22:42 +0100)]
nand: brcmnand: add iproc support
Add support for the iproc Broadcom NAND controller,
used in Northstar SoCs for example. Based on the Linux
driver.
Cc: Philippe Reynes <philippe.reynes@softathome.com>
Cc: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Reviewed-by: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: William Zhang <william.zhang@broadcom.com>
Link: https://lore.kernel.org/all/20230308214231.378013-1-linus.walleij@linaro.org/
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Linus Walleij [Wed, 8 Mar 2023 21:28:51 +0000 (22:28 +0100)]
mtd: rawnand: nand_base: Handle algorithm selection
For BRCMNAND with 1-bit BCH ECC (BCH-1) such as used on the
D-Link DIR-885L and DIR-890L routers, we need to explicitly
select the ECC like this in the device tree:
nand-ecc-algo = "bch";
nand-ecc-strength = <1>;
nand-ecc-step-size = <512>;
This is handled by the Linux kernel but U-Boot core does
not respect this. Fix it up by parsing the algorithm and
preserve the behaviour using this property to select
software BCH as far as possible.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Michael Trimarchi <michael@amarulasolutions.com>
Acked-by: William Zhang <william.zhang@broadcom.com>
Link: https://lore.kernel.org/all/20230308212851.370939-1-linus.walleij@linaro.org/
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Frieder Schrempf [Mon, 13 Feb 2023 09:46:25 +0000 (10:46 +0100)]
MAINTAINERS: Rename NAND FLASH to RAW NAND
As there are other types of NAND flashes like SPI NAND, let's be
more specific.
Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
Link: https://lore.kernel.org/all/20230213094626.50957-2-frieder@fris.de/
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Frieder Schrempf [Mon, 13 Feb 2023 09:46:24 +0000 (10:46 +0100)]
MAINTAINERS: Add entry for SPI NAND framework and drivers
In [1] Michael agreed on taking patches for SPI NAND through the RAW
NAND tree. Add a dedicated entry to the MAINTAINERS file which adds
Michael and Dario as maintainers and myself as reviewer.
[1] https://lists.denx.de/pipermail/u-boot/2023-February/508571.html
Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
Cc: Jagan Teki <jagan@amarulasolutions.com>
Cc: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Cc: Michael Nazzareno Trimarchi <michael@amarulasolutions.com>
Cc: Tom Rini <trini@konsulko.com>
Link: https://lore.kernel.org/all/20230213094626.50957-1-frieder@fris.de/
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Marek Vasut [Mon, 20 Mar 2023 19:46:47 +0000 (20:46 +0100)]
travis-ci: Add m68k M5208EVBE machine
Add m68k M5208EVBE machine configured to test U-Boot m68k support.
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
Marek Vasut [Thu, 23 Mar 2023 00:22:41 +0000 (01:22 +0100)]
CI: Add m68k target
Add M5208EVBE board to CI. This does not use default config due to
limitations of QEMU emulation, instead the timer is switched from
DMA timer to PIT timer and RAMBAR accesses are inhibited.
Local QEMU launch command is as follows:
$ qemu-system-m68k -nographic -machine mcf5208evb -cpu m5208 -bios u-boot.bin
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Acked-by: Angelo Dureghello <angelo@kernel-space.org>
Marek Vasut [Thu, 23 Mar 2023 00:20:41 +0000 (01:20 +0100)]
arch: m68k: Add QEMU specific RAMBAR workaround
The QEMU emulation of m68k does not support RAMBAR accesses,
add Kconfig option which inhibits those accesses, so that
U-Boot can be started in m68k QEMU for CI testing purpopses
until QEMU emulation improves.
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Marek Vasut [Thu, 23 Mar 2023 00:20:40 +0000 (01:20 +0100)]
arch: m68k: Introduce trivial PIT based timer
The QEMU emulation of m68k does not support DMA timer, the only
timer that is supported is the PIT timer. Implement trivial PIT
timer support for m68k.
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Marek Vasut [Thu, 23 Mar 2023 00:20:39 +0000 (01:20 +0100)]
arch: m68k: Use existing CONFIG_MCFTMR instead of CFG_MCFTMR
There is an existing CONFIG_MCFTMR Kconfig symbol,
use it and drop all other instances of CFG_MCFTMR.
This duality is likely a result of bogus conversion
to Kconfig.
Fixes:
7ff7b46e6ce ("m68k: rename CONFIG_MCFTMR to CFG_MCFTMR")
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Tom Rini [Fri, 14 Apr 2023 14:50:55 +0000 (10:50 -0400)]
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-marvell
- mvebu: Boot support for 4K Native disks (Pali)
- a38x: Perform DDR training sequence again for 2nd boot (Tony)
Tom Rini [Fri, 14 Apr 2023 14:50:04 +0000 (10:50 -0400)]
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sunxi
The biggest change is some refactoring of the H616 DRAM driver, which
allows better fine-tuning for each board, and is the base for pending
LPDDR3 and LPDDR4 support, needed by new boards. The sun8i-emac
Ethernet driver sees some refactoring that enables it for the Allwinner
D1 EMAC IP. The sunxi HDMI driver is now using more DT properties. Also
the early SPL code now supports some odd H616 SoC variant.
There are some more patches pending, that require the final review
touches and some testing, I will send a separate PR for them later.
The gitlab CI completed successfully, and I boot tested a few boards
with different SoCs, via FEL and SD card, into Linux.
Tony Dinh [Mon, 3 Apr 2023 04:42:33 +0000 (21:42 -0700)]
ddr: marvell: a38x: Perform DDR training sequence again for 2nd boot
- DDR Training sequence happens very fast. The speedup in boot time is
negligible by skipping the training sequence during 2nd boot or after.
So remove the check and skip.
- This change improves the robustness of DDR training. If u-boot crashed
during DDR training, the training could be left in a limbo state, where
the BootROM has recorded that it is already in a 2nd boot. The training
must be repeated in this scenario to get out of this limbo state, but due
to the check it cannot be performed.
Signed-off-by: Tony Dinh <mibodhi@gmail.com>
Reviewed-by: Stefan Roese <sr@denx.de>
Pali Rohár [Wed, 29 Mar 2023 19:25:58 +0000 (21:25 +0200)]
arm: mvebu: spl: Allow to build SATA kwbimage for 4K Native disks
Add a new config option CONFIG_MVEBU_SPL_SATA_BLKSZ for specifying block
size of SATA disk. This information is used during building of SATA
kwbimage and must be correctly set, otherwise BootROM does not load SPL.
For 4K Native disks CONFIG_MVEBU_SPL_SATA_BLKSZ must be set to 4096.
Signed-off-by: Pali Rohár <pali@kernel.org>
Tested-by: Martin Rowe <martin.p.rowe@gmail.com>
Pali Rohár [Wed, 29 Mar 2023 19:25:57 +0000 (21:25 +0200)]
tools: kwboot: Add support for parsing SATA images with non-512 block size
Currently kwboot expected that sector size for SATA image is always 512
bytes. If SATA image cannot be parsed with sector size of 512 bytes, try
larger sector sizes which are power of two and up to the 32 kB. Maximal
theoretical value is 32 kB because ATA IDENTIFY command returns sector size
as 16-bit number.
Signed-off-by: Pali Rohár <pali@kernel.org>
Pali Rohár [Wed, 29 Mar 2023 19:25:56 +0000 (21:25 +0200)]
tools: kwbimage: Add support for SATA images with non-512 byte block size
SATA kwbimage contains offsets in block size unit, not in bytes.
Until now kwbimage expected that SATA disk always have block size of 512
bytes. But there are 4K Native SATA disks with block size of 4096 bytes.
New SATA_BLKSZ command allows to specify different block size than 512
bytes and therefore allows to generate kwbimage for disks with different
block sizes.
This change add support for generating SATA images with different block
size. Also it add support for verifying and dumping such images.
Because block size itself is not stored in SATA kwbimage, image
verification is done by checking every possible block size (it is any
power of two value between 512 and 32 kB).
Signed-off-by: Pali Rohár <pali@kernel.org>
Pali Rohár [Wed, 29 Mar 2023 19:25:55 +0000 (21:25 +0200)]
tools: kwbimage: Simplify align code
Replace repeated code patterns by generic code.
Signed-off-by: Pali Rohár <pali@kernel.org>
Pali Rohár [Wed, 29 Mar 2023 19:25:54 +0000 (21:25 +0200)]
tools: imagetool: Extend print_header() by params argument
This allows image type print_header() callback to access struct
image_tool_params *params.
Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Pali Rohár [Tue, 11 Apr 2023 18:35:51 +0000 (20:35 +0200)]
cmd: mvebu/bubt: a38x: Do not hardcode SATA block size to 512
Find SATA block device by blk_get_devnum_by_uclass_id() function and read
from it the real block size of the SATA disk. In case of error, fallback
back to 512 bytes.
Signed-off-by: Pali Rohár <pali@kernel.org>
Pali Rohár [Wed, 29 Mar 2023 19:25:52 +0000 (21:25 +0200)]
arm: mvebu: spl: Do not hardcode SATA block size to 512
Find SATA block device by blk_get_devnum_by_uclass_id() function and read
from it the real block size of the SATA disk.
Signed-off-by: Pali Rohár <pali@kernel.org>
Andre Przywara [Thu, 8 Dec 2022 20:38:54 +0000 (20:38 +0000)]
sunxi: A64: drop boot0 header reservation
In the early days of the Allwinner A64 U-Boot support, we relied on a
vendor provided "boot0" binary to perform the DRAM initialisation. This
replaced the SPL, and required to equip the U-Boot (proper) binary with
a vendor specific header to be recognised as a valid boot0 payload.
Fortunately these days are long gone (we gained SPL and DRAM support in
early 2017!), and we never needed to use that hack on any later 64-bit
Allwinner SoC.
Since this is highly obsolete by now, remove that option from the
defconfigs of all A64 boards. We leave the code still in here for now,
since some people expressed their interest in this.
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Andre Przywara [Wed, 5 Apr 2023 20:30:11 +0000 (21:30 +0100)]
sunxi: arm64: boot0.h: runtime check for RVBAR address
Some SoCs of the H616 family use a die variant, that puts some CPU power
and reset control registers at a different address. There are examples
of two instances of the same board, using different die revisions of the
otherwise same H313 SoC. We need to write to a register in that block
*very* early in the SPL boot, to switch the core to AArch64.
Since the devices are otherwise indistinguishable, let the SPL code read
that die variant and use the respective RVBAR address based on that.
That is a bit tricky, since we need to do that in hand-coded AArch32
machine language, shared by all 64-bit SoCs. To avoid build dependencies
in this mess, we always provide two addresses to choose from, and just
give identical values for all other SoCs. This allows the same code to
run on all 64-bit SoCs, and controls this switch behaviour purely from
Kconfig.
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Andre Przywara [Thu, 8 Dec 2022 20:33:57 +0000 (20:33 +0000)]
sunxi: boot0.h: allow RVBAR MMIO address customisation
To switch the ARMv8 Allwinner SoCs into the 64-bit AArch64 ISA, we need
to program the 64-bit start code address into an MMIO mapped register
that shadows the architectural RVBAR register.
This address is SoC specific, with just two versions out there so far.
Now a third address emerged, on a *variant* of an existing SoC (H616).
Change the boot0.h start code to make this address a Kconfig
selectable option, to allow easier maintenance.
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Jernej Skrabec [Mon, 10 Apr 2023 08:21:19 +0000 (10:21 +0200)]
sunxi: Add TPR2 parameter for H616 DRAM driver
It turns out that some H616 and related SoCs (like H313) need TPR2
parameter for proper working. Add it.
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Jernej Skrabec [Mon, 10 Apr 2023 08:21:18 +0000 (10:21 +0200)]
sunxi: Parameterize some of H616 DDR3 timings
Currently twr2rd, trd2wr and twtp are constants, but according to
vendor driver they are calculated from other values. Do that here too,
in preparation for later introduction of new parameter.
While at it, introduce constant for t_wr_lat, which was incorrectly
calculated from tcl before.
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Jernej Skrabec [Mon, 10 Apr 2023 08:21:17 +0000 (10:21 +0200)]
sunxi: Parameterize "unknown feature" in H616 DRAM driver
Part of the code, previously known as "unknown feature", also doesn't
have constant values. They are derived from TPR0 parameter in vendor
DRAM code.
Let's move that code to separate function and introduce TPR0 parameter
here too, to ease adding new boards.
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Acked-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Jernej Skrabec [Mon, 10 Apr 2023 08:21:16 +0000 (10:21 +0200)]
sunxi: Parameterize bit delay code in H616 DRAM driver
These values are highly board specific and thus make sense to add
parameter for them. To ease adding support for new boards, let's make
them same as in vendor DRAM settings.
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Acked-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Jernej Skrabec [Mon, 10 Apr 2023 08:21:15 +0000 (10:21 +0200)]
sunxi: Make bit delay function in H616 DRAM code void
Mentioned function result is always true and result isn't checked
anyway. Let's make it void.
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Jernej Skrabec [Mon, 10 Apr 2023 08:21:14 +0000 (10:21 +0200)]
sunxi: Always configure ODT on H616 DRAM
Vendor H616 DRAM code always configure part which we call ODT
configuration. Let's reflect that here too.
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Jernej Skrabec [Mon, 10 Apr 2023 08:21:13 +0000 (10:21 +0200)]
sunxi: Convert H616 DRAM options to single setting
Vendor DRAM settings use TPR10 parameter to enable various features.
There are many mores features that just those that are currently
mentioned. Since new will be added later and most are not known, let's
reuse value from vendor DRAM driver as-is. This will also help adding
support for new boards.
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Jernej Skrabec [Mon, 10 Apr 2023 08:21:12 +0000 (10:21 +0200)]
sunxi: parameterize H616 DRAM ODT values
While ODT values for same memory type are similar, they are not
necessary the same. Let's parameterize them and make parameter same as
in vendor DRAM settings. That way it will be easy to introduce new board
support.
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Jernej Skrabec [Mon, 10 Apr 2023 08:21:11 +0000 (10:21 +0200)]
sunxi: cosmetic: Fix H616 DRAM driver code style
Fix code style for pointer declaration. This is just cosmetic change to
avoid checkpatch errors in later commits.
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Jernej Skrabec [Mon, 10 Apr 2023 08:21:10 +0000 (10:21 +0200)]
sunxi: Fix write to H616 DRAM CR register
Vendor DRAM code actually writes to whole CR register and not just sets
bit 31 in mctl_ctrl_init().
Just to be safe, do that here too.
Acked-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>