platform/kernel/u-boot.git
3 years agoMerge tag 'video-for-2021.01-rc1' of https://gitlab.denx.de/u-boot/custodians/u-boot...
Tom Rini [Mon, 26 Oct 2020 21:27:38 +0000 (17:27 -0400)]
Merge tag 'video-for-2021.01-rc1' of https://gitlab.denx.de/u-boot/custodians/u-boot-video

 - disable CONFIG_VIDEO to remove DM conversion warnings
   for boards: at91sam9, eb_cpu5282, ls1021aqds, ls1021atwr,
   mx23evk, mx6sxsabresd, mx7dsabresd, nokia_rx51, picosam9g45,
   sansa_fuze_plus, xfi3

3 years agonokia_rx51: disable obsolete VIDEO config
Anatolij Gustschin [Mon, 26 Oct 2020 18:50:58 +0000 (19:50 +0100)]
nokia_rx51: disable obsolete VIDEO config

Disable VIDEO config to fix DM_VIDEO conversion
deadline warning.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
3 years agoeb_cpu5282: fix CONFIG_DM_VIDEO build warnings
Anatolij Gustschin [Sun, 18 Oct 2020 18:32:35 +0000 (20:32 +0200)]
eb_cpu5282: fix CONFIG_DM_VIDEO build warnings

Remove CONFIG_VIDEO dependency to fix board removal warnings.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Jens Scharsig <esw@bus-elektronik.de>
3 years agosansa_fuze_plus: disable obsolete VIDEO config
Anatolij Gustschin [Sun, 18 Oct 2020 17:32:06 +0000 (19:32 +0200)]
sansa_fuze_plus: disable obsolete VIDEO config

DM_VIDEO conversion deadline has passed, disable VIDEO config.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
3 years agoxfi3: disable obsolete VIDEO config
Anatolij Gustschin [Sun, 18 Oct 2020 16:36:23 +0000 (18:36 +0200)]
xfi3: disable obsolete VIDEO config

DM_VIDEO conversion deadline has passed, disable VIDEO config.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
3 years agomx23evk: disable obsolete VIDEO config
Anatolij Gustschin [Sun, 18 Oct 2020 16:33:45 +0000 (18:33 +0200)]
mx23evk: disable obsolete VIDEO config

DM_VIDEO conversion deadline has passed, disable VIDEO config.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Otavio Salvador <otavio@ossystems.com.br>
3 years agoat91sam9n12ek: disable obsolete VIDEO config
Anatolij Gustschin [Sun, 18 Oct 2020 17:29:07 +0000 (19:29 +0200)]
at91sam9n12ek: disable obsolete VIDEO config

DM_VIDEO conversion deadline has passed, disable VIDEO config.
Boards should convert to DM_VIDEO if they need video console
support.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Eugen Hristev <eugen.hristev@microchip.com>
3 years agoat91sam9: disable obsolete VIDEO config
Anatolij Gustschin [Sun, 18 Oct 2020 16:04:34 +0000 (18:04 +0200)]
at91sam9: disable obsolete VIDEO config

DM_VIDEO conversion deadline has passed, disable VIDEO config.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
3 years agopicosam9g45: disable obsolete VIDEO config
Anatolij Gustschin [Sun, 18 Oct 2020 16:00:35 +0000 (18:00 +0200)]
picosam9g45: disable obsolete VIDEO config

DM_VIDEO conversion deadline has passed, disable VIDEO config.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Erik van Luijk <evanluijk@interact.nl>
3 years agols1021atwr: disable obsolete VIDEO config
Anatolij Gustschin [Sun, 18 Oct 2020 15:58:21 +0000 (17:58 +0200)]
ls1021atwr: disable obsolete VIDEO config

DM_VIDEO conversion deadline has passed, disable VIDEO config.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
3 years agols1021aqds: disable obsolete VIDEO config
Anatolij Gustschin [Sun, 18 Oct 2020 15:57:25 +0000 (17:57 +0200)]
ls1021aqds: disable obsolete VIDEO config

DM_VIDEO conversion deadline has passed, disable VIDEO config.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: Alison Wang <alison.wang@nxp.com>
3 years agoimx: mx7dsabresd: disable obsolete VIDEO config
Anatolij Gustschin [Sun, 18 Oct 2020 15:55:20 +0000 (17:55 +0200)]
imx: mx7dsabresd: disable obsolete VIDEO config

DM_VIDEO conversion deadline has passed, disable VIDEO config.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
3 years agoimx: mx6sxsabresd: disable obsolete VIDEO config
Anatolij Gustschin [Sun, 18 Oct 2020 15:54:05 +0000 (17:54 +0200)]
imx: mx6sxsabresd: disable obsolete VIDEO config

DM_VIDEO conversion deadline has passed, disable VIDEO config.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
3 years agoMerge branch 'master' of https://gitlab.denx.de/u-boot/custodians/u-boot-riscv
Tom Rini [Mon, 26 Oct 2020 12:25:37 +0000 (08:25 -0400)]
Merge branch 'master' of https://gitlab.denx.de/u-boot/custodians/u-boot-riscv

- No need to check before free in kendryte clk.
- Only enable OF_BOARD_FIXUP if U-Boot is configured for S-Mode.
- Reduce k210 dts DMA block size
- Move timers into drivers/timer
- Correct fu540 dts reg size of clint node

3 years agoriscv: fu540: dts: Correct reg size of clint node
Pragnesh Patel [Tue, 20 Oct 2020 05:33:02 +0000 (11:03 +0530)]
riscv: fu540: dts: Correct reg size of clint node

Signed-off-by: Pragnesh Patel <pragnesh.patel@sifive.com>
Reviewed-by: Bin Meng <bin.meng@windriver.com>
Reviewed-by: Rick Chen <rick@andestech.com>
3 years agoriscv: Move timer portions of SiFive CLINT to drivers/timer
Sean Anderson [Mon, 26 Oct 2020 01:46:58 +0000 (21:46 -0400)]
riscv: Move timer portions of SiFive CLINT to drivers/timer

Half of this driver is a DM-based timer driver, and half is RISC-V-specific
IPI code. Move the timer portions in with the other timer drivers. The
KConfig is not moved, since it also enables IPIs. It could also be split
into two configs, but no boards use the timer but not the IPI atm, so I
haven't split it.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Rick Chen <rick@andestech.com>
3 years agotimer: Add _TIMER suffix to Andes PLMT Kconfig
Sean Anderson [Mon, 26 Oct 2020 01:46:57 +0000 (21:46 -0400)]
timer: Add _TIMER suffix to Andes PLMT Kconfig

This matches the naming scheme of other timer drivers.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Rick Chen <rick@andestech.com>
3 years agoriscv: Move Andes PLMT driver to drivers/timer
Sean Anderson [Mon, 26 Oct 2020 01:46:56 +0000 (21:46 -0400)]
riscv: Move Andes PLMT driver to drivers/timer

This is a regular timer driver, and should live with the other timer
drivers.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Rick Chen <rick@andestech.com>
3 years agoriscv: k210: Reduce DMA block size
Sean Anderson [Mon, 12 Oct 2020 18:18:15 +0000 (14:18 -0400)]
riscv: k210: Reduce DMA block size

Although the max DMA size supported by the hardware register is 22 bits (or
4M), the Linux driver for this device only supports transfers of up to 2M.
On a device with 8M total memory, I don't think it will make too much of a
difference.

Reported-by: Damien Le Moal <Damien.LeMoal@wdc.com>
Signed-off-by: Sean Anderson <seanga2@gmail.com>
Reviewed-by: Rick Chen <rick@andestech.com>
3 years agoriscv: Only enable OF_BOARD_FIXUP for S-Mode
Sean Anderson [Sat, 5 Sep 2020 13:22:11 +0000 (09:22 -0400)]
riscv: Only enable OF_BOARD_FIXUP for S-Mode

It is unsafe to enable OF_BOARD_FIXUP only based on OF_SEPARATE.
OF_SEPARATE may indicate that the user wishes U-Boot to use a different
device tree than one obtained via OF_PRIOR_STAGE. However, OF_SEPARATE may
also indicate that the device tree which would be obtained via
OF_PRIOR_STAGE is invalid, nonexistant, or otherwise unusable. In this
latter case, enabling OF_BOARD_FIXUP will result in corruption of the
device tree. To remedy this, only enable OF_BOARD_FIXUP if U-Boot is
configured for S-Mode.

Fixes: 1c17e55594a394ced7de88d91be294eaf8c564c1
Signed-off-by: Sean Anderson <seanga2@gmail.com>
Reviewed-by: Leo Liang <ycliang@andestech.com>
3 years agoclk: kendryte: no need to check argument of free()
Heinrich Schuchardt [Tue, 29 Sep 2020 19:52:12 +0000 (21:52 +0200)]
clk: kendryte: no need to check argument of free()

free() checks if its argument is NULL. No need to check it twice.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Sean Anderson <seanga2@gmail.com>
3 years agoMerge branch '2020-10-23-misc-changes'
Tom Rini [Sat, 24 Oct 2020 14:49:28 +0000 (10:49 -0400)]
Merge branch '2020-10-23-misc-changes'

Highlights:
- Fix a problem with the bootm overlap tests
- Remove duplicated code in fatwrite
- Cleanup our current "misc" command code and add a new one for misc
  class devices.
- Various GPIO fixes

3 years agopower: regulator: add dummy helper
Peng Fan [Thu, 15 Oct 2020 10:06:48 +0000 (18:06 +0800)]
power: regulator: add dummy helper

Add dummy helper to enabling the header could be included when
DM REGULATOR not enabled.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
3 years agophy: nop-phy: add clk bulk
Peng Fan [Thu, 15 Oct 2020 10:05:58 +0000 (18:05 +0800)]
phy: nop-phy: add clk bulk

Add clk bulk for nop-phy driver.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
3 years agobootm: fix wrong conditions about images overlap
Jaehoon Chung [Wed, 21 Oct 2020 05:17:03 +0000 (14:17 +0900)]
bootm: fix wrong conditions about images overlap

It doesn't need to consider start byte address.
If ramdisk size is 0x800000 and start address is 0x2700000, then it's
used until 0x02efffff, not 0x02f00000. But it's detected to overlapt RD
image, when kernel start address is 0x02f00000.
Because it's doing wrong calculation about rd_len.
This patch fixed wrong calculation address position when check
condition.

In addition, it needs to check one more condition about overlapping
entire area.

Fixes: commit fbde7589ce30 ("common: bootm: add checks to verify if ramdisk / fdtimage overlaps OS image")

Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
3 years agocmd: fat: Use do_save() for fatwrite
Lad Prabhakar [Tue, 20 Oct 2020 07:45:46 +0000 (08:45 +0100)]
cmd: fat: Use do_save() for fatwrite

do_save() function defined in fs.c also supports FAT file system
re-use the same for fatwrite command.

Also fix the FAT test script to match the expected output.

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Biju Das <biju.das.jz@bp.renesas.com>
3 years agotest: unit tests for print_freq(), print_size()
Heinrich Schuchardt [Thu, 22 Oct 2020 19:45:28 +0000 (21:45 +0200)]
test: unit tests for print_freq(), print_size()

Provide unit tests for functions print_freq() and print_size().

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
3 years agocmd: Add a 'misc' command to access miscellaneous devices
Bin Meng [Wed, 14 Oct 2020 06:34:52 +0000 (14:34 +0800)]
cmd: Add a 'misc' command to access miscellaneous devices

Enable the command "misc" for accessing miscellaneous devices with
a MISC uclass driver. The command provides listing all MISC devices
as well as read and write functionalities via their drivers.

Signed-off-by: Bin Meng <bin.meng@windriver.com>
3 years agocmd: Split out timer command from the sleep command
Bin Meng [Tue, 13 Oct 2020 10:45:06 +0000 (18:45 +0800)]
cmd: Split out timer command from the sleep command

CONFIG_CMD_TIMER merits a single file instead of co-exist in the
sleep command file.

Signed-off-by: Bin Meng <bin.meng@windriver.com>
3 years agocmd: Rename CMD_MISC to CMD_SLEEP
Bin Meng [Tue, 13 Oct 2020 10:45:05 +0000 (18:45 +0800)]
cmd: Rename CMD_MISC to CMD_SLEEP

The "cmd/Kconfig" has a TODO description for CMD_MISC that it should
really be named as CMD_SLEEP. Change it in the whole source tree.

Signed-off-by: Bin Meng <bin.meng@windriver.com>
3 years agoMakefile: Fix u-boot-nodtb.bin target
Pali Rohár [Wed, 7 Oct 2020 13:39:40 +0000 (15:39 +0200)]
Makefile: Fix u-boot-nodtb.bin target

This change fixes two issues when building u-boot-nodtb.bin target:

* Remove intermediate binary u-boot-nodtb.bin from disk when static_rela
  call (which modifies u-boot-nodtb.bin binary) failed. It is required
  because previous objcopy call creates binary and static_rela finish it.

* Do not call static_rela cmd when u-boot-nodtb.bin binary was not
  created/updated by previous objcopy call.

Second fix would ensure that u-boot-nodtb.bin binary is not updated when
all prerequisites were up-to-date. And therefore final binary u-boot.bin
is not updated in case all prerequisites were not modified and were
up-to-date.

Now running 'make SOURCE_DATE_EPOCH=0 u-boot.bin' second time now does not
touch u-boot.bin binary in case nothing was modified, so GNU make can
correctly detect that everything is up-to-date.

Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agoi2c: i2c-gpio: Convert to use APIs which support live DT
Patrick Delaunay [Thu, 10 Sep 2020 16:25:09 +0000 (18:25 +0200)]
i2c: i2c-gpio: Convert to use APIs which support live DT

Use ofnode_ or dev_ APIs instead of fdt_ and fdtdec_ APIs so that the
driver can support live DT.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
3 years agopower: regulator: gpio-regulator: Convert to use APIs which support live DT
Patrick Delaunay [Thu, 10 Sep 2020 16:18:17 +0000 (18:18 +0200)]
power: regulator: gpio-regulator: Convert to use APIs which support live DT

Use ofnode_ or dev_ APIs instead of fdt_ and fdtdec_ APIs so that the
driver can support live DT.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agopower: regulator: gpio-regulator: protect count value
Patrick Delaunay [Thu, 10 Sep 2020 16:18:16 +0000 (18:18 +0200)]
power: regulator: gpio-regulator: protect count value

Update the size of states_array to avoid overflow for
dev_pdata->voltages[j] and dev_pdata->states[j].

As the size of array is GPIO_REGULATOR_MAX_STATES, the size of
states_array is limited by GPIO_REGULATOR_MAX_STATES * 2 = 4
instead of 8 previously.

The value of the "count" variable is limited by the third parameter of
fdtdec_get_int_array_count.

Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agopost: remove redundant condition
Heinrich Schuchardt [Mon, 3 Aug 2020 20:12:13 +0000 (22:12 +0200)]
post: remove redundant condition

(A && A == 0x20) is only true for (A == 0x20).

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agoMerge branch 'master' of https://gitlab.denx.de/u-boot/custodians/u-boot-samsung
Tom Rini [Fri, 23 Oct 2020 13:19:12 +0000 (09:19 -0400)]
Merge branch 'master' of https://gitlab.denx.de/u-boot/custodians/u-boot-samsung

3 years agoMerge branch '2020-10-23-revert-xen-changes'
Tom Rini [Fri, 23 Oct 2020 13:16:20 +0000 (09:16 -0400)]
Merge branch '2020-10-23-revert-xen-changes'

I had inadvertently merged the Xen series before everything was fully
happy with the board maintainer.  Revert the series.

3 years agoRevert "serial: serial_xen: print U-Boot banner and others"
Tom Rini [Fri, 23 Oct 2020 13:16:13 +0000 (09:16 -0400)]
Revert "serial: serial_xen: print U-Boot banner and others"

This reverts commit 18426bf02217de2e9bb2b41eaa74d769892c55ef.

Signed-off-by: Tom Rini <trini@konsulko.com>
3 years agoRevert "arch: arm/xen: add putc() for debugging"
Tom Rini [Fri, 23 Oct 2020 13:16:07 +0000 (09:16 -0400)]
Revert "arch: arm/xen: add putc() for debugging"

This reverts commit 3a51b2a2c3cedc0d2a9ce981b8e00ab8cefcb6b7.

Signed-off-by: Tom Rini <trini@konsulko.com>
3 years agoRevert "xen: add definitions for console_io"
Tom Rini [Fri, 23 Oct 2020 13:16:01 +0000 (09:16 -0400)]
Revert "xen: add definitions for console_io"

This reverts commit 16389a74c516470c8f0fd8c712e1638f80384b92.

Signed-off-by: Tom Rini <trini@konsulko.com>
3 years agoRevert "serial: serial_xen: add DEBUG_UART support"
Tom Rini [Fri, 23 Oct 2020 13:15:55 +0000 (09:15 -0400)]
Revert "serial: serial_xen: add DEBUG_UART support"

This reverts commit 82e21b391bd315f6fe0e0b79326af8a141e9cca7.

Signed-off-by: Tom Rini <trini@konsulko.com>
3 years agoMerge branch 'master' of https://gitlab.denx.de/u-boot/custodians/u-boot-sunxi
Tom Rini [Fri, 23 Oct 2020 00:32:02 +0000 (20:32 -0400)]
Merge branch 'master' of https://gitlab.denx.de/u-boot/custodians/u-boot-sunxi

- sun8i emac changes (Andre)
- SCP firmware (Samuel)

3 years agoMerge branch '2020-10-22-misc-changes'
Tom Rini [Thu, 22 Oct 2020 18:36:47 +0000 (14:36 -0400)]
Merge branch '2020-10-22-misc-changes'

- Assorted updates for Xen, IPQ40xx, ASpeed, Keymile
- Assorted typo / documentation fixes
- Fix default preboot cmd to act like before with USB_STORAGE set
- A number of other bugfixes throughout the code

3 years agortc: move pcf8563 to Kconfig
Heiko Schocher [Fri, 16 Oct 2020 08:41:46 +0000 (10:41 +0200)]
rtc: move pcf8563 to Kconfig

add Kconfig option for pcf8563 driver and
run tools/moveconfig.py

Signed-off-by: Heiko Schocher <hs@denx.de>
Reviewed-by: Stefan Roese <sr@denx.de>
3 years agommc: mtk-sd: change some dev_err into dev_dbg
Fabien Parent [Thu, 15 Oct 2020 16:38:18 +0000 (18:38 +0200)]
mmc: mtk-sd: change some dev_err into dev_dbg

dev_err has been used for debugging and a few dev_err message are
printed for normal code execution. Make them dev_dbg instead.

Signed-off-by: Fabien Parent <fparent@baylibre.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
3 years agoserial: serial_xen: add DEBUG_UART support
AKASHI Takahiro [Thu, 15 Oct 2020 04:25:16 +0000 (13:25 +0900)]
serial: serial_xen: add DEBUG_UART support

By using a hypervisor call, we can implement DEBUG_UART on xen.
This will allow us to see messages even earlier than serial_init().

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
3 years agoxen: add definitions for console_io
AKASHI Takahiro [Thu, 15 Oct 2020 04:25:15 +0000 (13:25 +0900)]
xen: add definitions for console_io

Those definitions added are used with HYPERVISOR_console_io().

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
3 years agoarch: arm/xen: add putc() for debugging
AKASHI Takahiro [Thu, 15 Oct 2020 04:25:14 +0000 (13:25 +0900)]
arch: arm/xen: add putc() for debugging

This new function, xen_debug_putc(), is intended to be used to
enable CONFIG_DEBUG_UART on xen guest.

Please note that the underlying functionality in Xen is available
only when Xen is configured with !NDEBUG but is much simpler than
a generic HYPERVISOR_console_io().

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
3 years agoserial: serial_xen: print U-Boot banner and others
AKASHI Takahiro [Thu, 15 Oct 2020 04:25:13 +0000 (13:25 +0900)]
serial: serial_xen: print U-Boot banner and others

At present, DM_FLAG_PRE_RELOC is set only if !OF_CONTROL.
It doesn't make sense for this para-virtualized driver.

With this patch applied, you will be able to see early boot messages:

U-Boot 2020.10-00001-ge442e71a6c52-dirty (Oct 15 2020 - 11:02:25 +0900)
xenguest

Xen virtual CPU
Model: XENVM-4.15
DRAM:  128 MiB
PVBLOCK:
(XEN) gnttab_mark_dirty not implemented yet
pvblock: 0
In:    hypervisor
Out:   hypervisor
Err:   hypervisor
xenguest#

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
3 years agocosmetic: reset: ast2500: Rename driver and configs
Chia-Wei, Wang [Thu, 15 Oct 2020 02:25:14 +0000 (10:25 +0800)]
cosmetic: reset: ast2500: Rename driver and configs

1. Rename AST2500 reset driver from ast2500-reset.c
   to reset-ast2500.c
2. Rename AST2500 reset kconfig option from AST2500_RESET
   to RESET_AST2500

Signed-off-by: Chia-Wei, Wang <chiawei_wang@aspeedtech.com>
Reviewed-by: Ryan Chen <ryan_chen@aspeedtech.com>
3 years agoreset: ast2500: Use SCU for reset control
Chia-Wei, Wang [Thu, 15 Oct 2020 02:25:13 +0000 (10:25 +0800)]
reset: ast2500: Use SCU for reset control

The System Control Unit (SCU) controller of Aspeed
SoCs provides the reset control for each peripheral.

This patch refactors the reset method to leverage
the SCU reset control. Thus the driver dependency
on watchdog including dedicated WDT API and reset
flag encoding can be eliminated.

The Kconfig description is also updated accordingly.

Signed-off-by: Chia-Wei, Wang <chiawei_wang@aspeedtech.com>
Reviewed-by: Ryan Chen <ryan_chen@aspeedtech.com>
3 years agoclk: ccf: replace the get_rate helper
Dario Binacchi [Wed, 14 Oct 2020 21:42:17 +0000 (23:42 +0200)]
clk: ccf: replace the get_rate helper

The 12d152620d commit fixed the get_rate helper because the set_parent
one did not re-parent the clock device to the new parent. The 4d139f3838
commit allows you to remove this workaround by calling the
clk_get_parent_rate routine.

Signed-off-by: Dario Binacchi <dariobin@libero.it>
3 years agodoc: dfu: fix typo in README.dfu
Chance.Yang [Wed, 14 Oct 2020 03:47:33 +0000 (11:47 +0800)]
doc: dfu: fix typo in README.dfu

Fix "ram" typos for serial flash

Signed-off-by: Chance.Yang <chance.yang@vatics.com>
3 years agolog: Tidy up documentation
Simon Glass [Wed, 14 Oct 2020 01:55:07 +0000 (19:55 -0600)]
log: Tidy up documentation

Fix up the documentation which was lost in a merge conflict in the
conversion to RST.

Fixes: 52d3df7fefe ("log: Allow LOG_DEBUG to always enable log output")

Signed-off-by: Simon Glass <sjg@chromium.org>
3 years agoARM: mvebu: a38x: Fix comment typo
Naoki Hayama [Mon, 12 Oct 2020 09:35:55 +0000 (18:35 +0900)]
ARM: mvebu: a38x: Fix comment typo

%s/occured/occurred/

Signed-off-by: Naoki Hayama <naoki.hayama@lineo.co.jp>
Reviewed-by: Stefan Roese <sr@denx.de>
3 years agofs: btrfs: Fix typo in error message
Naoki Hayama [Mon, 12 Oct 2020 09:35:33 +0000 (18:35 +0900)]
fs: btrfs: Fix typo in error message

%s/occured/occurred/

Signed-off-by: Naoki Hayama <naoki.hayama@lineo.co.jp>
Reviewed-by: Marek Behún <kabel@kernel.org>
Reviewed-by: Qu Wenruo <wqu@suse.com>
3 years agommc: Fix comment typo
Naoki Hayama [Mon, 12 Oct 2020 09:35:22 +0000 (18:35 +0900)]
mmc: Fix comment typo

%s/occured/occurred/

Signed-off-by: Naoki Hayama <naoki.hayama@lineo.co.jp>
3 years agoRemove default value of CONFIG_PREBOOT for CONFIG_USB_STORAGE
Patrick Delaunay [Mon, 12 Oct 2020 07:47:50 +0000 (09:47 +0200)]
Remove default value of CONFIG_PREBOOT for CONFIG_USB_STORAGE

Remove the default value "usb start" for CONFIG_USB_STORAGE as the USB
storage boot initialization is correctly managed by  distro boot command
('usb_boot' defined in include/config_distro_bootcmd.h already include
the command 'usb  start').

Fixes: 324d77998ed6 ("Define default CONFIG_PREBOOT with right config option")
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agogpio: fix gpio_request_by_name() description
Dario Binacchi [Sun, 11 Oct 2020 12:25:47 +0000 (14:25 +0200)]
gpio: fix gpio_request_by_name() description

Replace 'dev->dev' with '@desc->dev' in the gpio_request_by_name function
desc parameter description.

Signed-off-by: Dario Binacchi <dariobin@libero.it>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agodm: core: improve uclass_get_device_by_phandle_id() description
Dario Binacchi [Sun, 11 Oct 2020 12:25:46 +0000 (14:25 +0200)]
dm: core: improve uclass_get_device_by_phandle_id() description

Complete the devp parameter description.

Signed-off-by: Dario Binacchi <dariobin@libero.it>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agokm/common: change ubicopy variable
Holger Brunck [Fri, 9 Oct 2020 15:21:33 +0000 (17:21 +0200)]
km/common: change ubicopy variable

Instead having a hard coded value for "cramfsaddr" after compile time,
we change it to take the variable "cramfsaddr" for the ubicopy variable.
This makes sure that ubicopy uses the right address, even when
the value for "cramfsaddr" has changed.

CC: Valentin Longchamp <valentin.longchamp@hitachi-powergrids.com>
CC: Heiko Schocher <hs@denx.de>
CC: Tom Rini <trini@konsulko.com>
Signed-off-by: Holger Brunck <holger.brunck@hitachi-powergrids.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
3 years agokm: adapt defines and variables for new memory layout
Holger Brunck [Fri, 9 Oct 2020 15:21:32 +0000 (17:21 +0200)]
km: adapt defines and variables for new memory layout

Due to increasing kernel image sizes we get problems when decompressing
the kernel image. To fix this we need to change the addresses where we
load and where we extract the kernel. Also we need to adapt the address
where to load the CRAMFS image and where to load the DTB file.
While at it also harmonize all boards for PPC and ARM to have the
same values. Also we add a new variable "env_version", so that the
userspace is able to detect if this is a u-boot binary with updated
values or not.

CC: Valentin Longchamp <valentin.longchamp@hitachi-powergrids.com>
CC: Heiko Schocher <hs@denx.de>
CC: Tom Rini <trini@konsulko.com>
Signed-off-by: Holger Brunck <holger.brunck@hitachi-powergrids.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
[trini: Remove old values from kmp204x.h]
Signed-off-by: Tom Rini <trini@konsulko.com>
3 years agolib: print_freq() should output kHz not KHz
Heinrich Schuchardt [Thu, 8 Oct 2020 20:23:23 +0000 (22:23 +0200)]
lib: print_freq() should output kHz not KHz

In the International System of Units (SI) the prefix kilo is abbreviated as
'k' not 'K'. 'K' is the symbol for Kelvin.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Stefan Roese <sr@denx.de>
3 years agoIPQ40xx: Add PRNG support
Robert Marko [Thu, 8 Oct 2020 20:05:14 +0000 (22:05 +0200)]
IPQ40xx: Add PRNG support

Since we now have the driver for Qualcomm PRNG HW, lets use it and add the necessary clocks and nodes.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Cc: Luka Perkov <luka.perkov@sartura.hr>
3 years agorng: Add Qualcomm MSM PRNG driver
Robert Marko [Thu, 8 Oct 2020 20:05:13 +0000 (22:05 +0200)]
rng: Add Qualcomm MSM PRNG driver

Add support for the hardware pseudo random number generator found in Qualcomm SoC-s.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Cc: Luka Perkov <luka.perkov@sartura.hr>
3 years agoIPQ40xx: Add support for MDIO
Robert Marko [Thu, 8 Oct 2020 20:05:12 +0000 (22:05 +0200)]
IPQ40xx: Add support for MDIO

Lets add the necessary DTS node and pinctrl properties for newly added MDIO driver.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Cc: Luka Perkov <luka.perkov@sartura.hr>
3 years agonet: Add IPQ40xx MDIO driver
Robert Marko [Thu, 8 Oct 2020 20:05:11 +0000 (22:05 +0200)]
net: Add IPQ40xx MDIO driver

This adds the driver for the IPQ40xx built-in MDIO.
This will be needed to support future PHY driver.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Cc: Luka Perkov <luka.perkov@sartura.hr>
3 years agoIPQ40xx: Add SPI support
Robert Marko [Thu, 8 Oct 2020 20:05:10 +0000 (22:05 +0200)]
IPQ40xx: Add SPI support

Since we have SPI driver for IPQ40xx QUP SPI controller, lets add the necessary nodes, pinctrl and clocks.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Cc: Luka Perkov <luka.perkov@sartura.hr>
3 years agospi: Add Qualcomm QUP SPI controller driver
Robert Marko [Thu, 8 Oct 2020 20:05:09 +0000 (22:05 +0200)]
spi: Add Qualcomm QUP SPI controller driver

This patch adds support for the Qualcomm QUP SPI controller that is commonly found in most of Qualcomm SoC-s.

Driver currently supports v1.1.1, v2.1.1 and v2.2.1 HW.
FIFO and Block modes are supported, no support for DMA mode is planned.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Signed-off-by: Luka Kovacic <luka.kovacic@sartura.hr>
Cc: Luka Perkov <luka.perkov@sartura.hr>
3 years agotools: image-host.c: use correct output format
Heinrich Schuchardt [Thu, 8 Oct 2020 18:51:24 +0000 (20:51 +0200)]
tools: image-host.c: use correct output format

When building on a 32bit host the following warning occurs:

tools/image-host.c: In function ‘fit_image_read_data’:
tools/image-host.c:296:56: warning: format ‘%ld’ expects argument of
type ‘long int’, but argument 3 has type ‘__off64_t’
{aka ‘long long int’} [-Wformat=]
   printf("File %s don't have the expected size (size=%ld, expected=%d)\n",
                                                      ~~^
                                                      %lld
          filename, sbuf.st_size, expected_size);
                    ~~~~~~~~~~~~
tools/image-host.c:311:62: warning: format ‘%ld’ expects argument of
type ‘long int’, but argument 4 has type ‘__off64_t’
{aka ‘long long int’} [-Wformat=]
   printf("Can't read all file %s (read %zd bytes, expexted %ld)\n",
                                                            ~~^
                                                            %lld
          filename, n, sbuf.st_size);
                       ~~~~~~~~~~~~

Fix the format strings.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agokm: fix license string and compatible strings
Holger Brunck [Thu, 8 Oct 2020 10:27:22 +0000 (12:27 +0200)]
km: fix license string and compatible strings

As the ownership is now Hitachi Power Grids, change the license string
and adapt the compatible string in DTS files. For kmeter1.dts we
change it to "keymile,KMETER1" for now, as this is then compliant with
what is submitted to the linux kernel. All other boards don't have
a upstreamed version in linux mainline.

Signed-off-by: Holger Brunck <holger.brunck@hitachi-powergrids.com>
CC: Valentin Longchamp <valentin.longchamp@hitachi-powergrids.com>
CC: Heiko Schocher <hs@denx.de>
CC: Marek Vasut <marex@denx.de>
CC: Tom Rini <trini@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
3 years agoREADME: Convert HTTP links to HTTPS
Naoki Hayama [Thu, 8 Oct 2020 04:17:16 +0000 (13:17 +0900)]
README: Convert HTTP links to HTTPS

Convert all the other http:// links to https:// .
www.denx.de/twiki/ seems to move to www.denx.de/wiki/ ,
so change it.

I checked all links in this patch are valid.

Signed-off-by: Naoki Hayama <naoki.hayama@lineo.co.jp>
3 years agoREADME: vxworks: Fix typo overwride
Naoki Hayama [Thu, 8 Oct 2020 04:17:08 +0000 (13:17 +0900)]
README: vxworks: Fix typo overwride

%s/overwride/override/

Signed-off-by: Naoki Hayama <naoki.hayama@lineo.co.jp>
3 years agoREADME: sandbox: Change reference to sandbox details
Naoki Hayama [Thu, 8 Oct 2020 04:16:58 +0000 (13:16 +0900)]
README: sandbox: Change reference to sandbox details

doc/arch/index.rst is a list of links to each architecture.
As for the sandbox details, doc/arch/sandbox.rst looks better.

Signed-off-by: Naoki Hayama <naoki.hayama@lineo.co.jp>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agoREADME: Update directory hierarchy
Naoki Hayama [Thu, 8 Oct 2020 04:16:38 +0000 (13:16 +0900)]
README: Update directory hierarchy

Removed:
- /arch/openrisc

Added:
- /arch/xtensa
- /env

Signed-off-by: Naoki Hayama <naoki.hayama@lineo.co.jp>
3 years agoREADME: Update source code location
Naoki Hayama [Thu, 8 Oct 2020 04:16:25 +0000 (13:16 +0900)]
README: Update source code location

This patch include these updates

- Git repository has moved to GitLab
- HTTPS access to the file server is allowed
- pre-built images are no longer available

Signed-off-by: Naoki Hayama <naoki.hayama@lineo.co.jp>
3 years agoREADME: Update links to mailing list archives
Naoki Hayama [Thu, 8 Oct 2020 04:16:18 +0000 (13:16 +0900)]
README: Update links to mailing list archives

This patch includes these updates

- Change http://lists.denx.de/pipermail/u-boot
  to https://lists.denx.de/pipermail/u-boot
- http://dir.gmane.org/gmane.comp.boot-loaders.u-boot
  is broken, so remove it
- Another archive https://marc.info/?l=u-boot
  is available, so add it

Additional information:
dir.gmane.org has moved to news.gmane.io, but it only allows
access to the archive via NNTP.

- Server: news.gmane.io
- Group : gmane.comp.boot-loaders.u-boot

I don't include this information in this patch because
it's not very useful without web interfaces.

Signed-off-by: Naoki Hayama <naoki.hayama@lineo.co.jp>
3 years agotimer: Return count from timer_ops.get_count
Sean Anderson [Wed, 7 Oct 2020 18:37:44 +0000 (14:37 -0400)]
timer: Return count from timer_ops.get_count

No timer drivers return an error from get_count. Instead of possibly
returning an error, just return the count directly.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Reviewed-by: Claudiu Beznea <claudiu.beznea@microchip.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agodoc: Document timer API
Sean Anderson [Wed, 7 Oct 2020 18:37:43 +0000 (14:37 -0400)]
doc: Document timer API

This adds kerneldocs for <timer.h>.

I don't know who should maintain doc/api/timer.rst, since the timer
subsystem seems to be maintained by SoC maintainers. MAINTAINERS is left
un-updated for the moment.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agocommon: rename getc() to getchar()
Heinrich Schuchardt [Wed, 7 Oct 2020 16:11:48 +0000 (18:11 +0200)]
common: rename getc() to getchar()

The sandbox is built with the SDL2 library with invokes the X11 library
which in turn calls getc(). But getc() in glibc is defined as

    int getc(FILE *)

This does not match our definition.

    int getc(void)

The sandbox crashes when called with parameter -l.

Rename our library symbol getc() to getchar().

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agocli_hush.c: remove broken sanity check
Rasmus Villemoes [Wed, 7 Oct 2020 07:36:03 +0000 (09:36 +0200)]
cli_hush.c: remove broken sanity check

This code is intended do prevent one from setting a shell variable abc
by doing

  abc=123

if an environment variable named abc already exists. However, the
check is broken, since the env_get is done before the split on =, so
we look up whether an environment variable "abc=123" exists, which is
obviously never the case.

One could move the code to below the split on =, but instead, just
remove it, saving a little .text: The check has never worked as
intended (it goes all the way back to the initial git commit), and it
would anyway not guard against one first setting the shell variable,
then doing 'env set abc xyz'.

Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
3 years agocommon, autoboot: sync functionality with Kconfig description
Heiko Schocher [Wed, 7 Oct 2020 06:06:54 +0000 (08:06 +0200)]
common, autoboot: sync functionality with Kconfig description

add back again special case: -2
autoboot with no delay and no check for abort

as described in Kconfig option, see common/Kconfig
help text for option BOOTDELAY.

Signed-off-by: Heiko Schocher <hs@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agocosmetic: image: Fix comments and the order of definitions
Naoki Hayama [Wed, 7 Oct 2020 02:22:24 +0000 (11:22 +0900)]
cosmetic: image: Fix comments and the order of definitions

Fix some comments about functions.
Move genimg_get_comp_name() above genimg_get_short_name() because
genimg_get_comp_name() is related to get_table_entry_name().

Signed-off-by: Naoki Hayama <naoki.hayama@lineo.co.jp>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agomkimage: Skip adding non-existent IDs to a list
Naoki Hayama [Wed, 7 Oct 2020 02:21:55 +0000 (11:21 +0900)]
mkimage: Skip adding non-existent IDs to a list

In show_valid_options(), this patch introduces checking whether
a category has an entry ID. If not, adding it to a list for output
is skipped before calling qsort().
This patch will affect all kinds of image header categories
(-A, -C, -O and -T flags).

Signed-off-by: Naoki Hayama <naoki.hayama@lineo.co.jp>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agoimage: Add a function to modify category information
Naoki Hayama [Wed, 7 Oct 2020 02:21:25 +0000 (11:21 +0900)]
image: Add a function to modify category information

Add a generic function which can check whether a category has an
entry ID.

Signed-off-by: Naoki Hayama <naoki.hayama@lineo.co.jp>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agoKconfig: Use hex values for CONFIG_{SPL,TPL}_SIZE_LIMIT
Ovidiu Panait [Fri, 25 Sep 2020 18:12:56 +0000 (21:12 +0300)]
Kconfig: Use hex values for CONFIG_{SPL,TPL}_SIZE_LIMIT

CONFIG_{SPL,TPL}_SIZE_LIMIT are defined as hex (SPL_SIZE_LIMIT was
converted in b51882d0 ("spl: Convert CONFIG_SPL_SIZE_LIMIT to hex"), but
there are still places that reference integer values. Change those to hex
as well. Also, update the Makefile to check for 0x0 instead of 0.

This also fixes the following build error when CONFIG_SPL_SIZE_LIMIT
is set by menuconfig to 0x0:
...
spl/u-boot-spl.bin exceeds file size limit:
  limit:  0 bytes
  actual: 0x80f0 bytes
  excess: 0x80f0 bytes

Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
3 years agotpm: cr50: Correct logging statements
Simon Glass [Mon, 28 Sep 2020 00:46:24 +0000 (18:46 -0600)]
tpm: cr50: Correct logging statements

Fix up some logging statements in this file. Most of them should use
log_debug(), apart from one error.

Signed-off-by: Simon Glass <sjg@chromium.org>
3 years agoi2c: designware: Use log_debug() for debugging
Simon Glass [Mon, 28 Sep 2020 00:46:23 +0000 (18:46 -0600)]
i2c: designware: Use log_debug() for debugging

We don't want the debug output to be visible in a normal boot. Silence it.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Heiko Schocher<hs@denx.de>
3 years agoboard: Show memory for frame buffers
Simon Glass [Mon, 28 Sep 2020 00:46:22 +0000 (18:46 -0600)]
board: Show memory for frame buffers

When debugging is enabled, show the memory allocated to video frame
buffers.

Signed-off-by: Simon Glass <sjg@chromium.org>
3 years agobloblist: Place on a 4KB boundary
Simon Glass [Mon, 28 Sep 2020 00:46:18 +0000 (18:46 -0600)]
bloblist: Place on a 4KB boundary

It is much easier to read the bloblist addresses if it starts on a 4KB
boundary. Update it to align it accordingly.

Signed-off-by: Simon Glass <sjg@chromium.org>
3 years agosyscon: Drop the logging in syscon_get_by_driver_data()
Simon Glass [Mon, 28 Sep 2020 00:46:17 +0000 (18:46 -0600)]
syscon: Drop the logging in syscon_get_by_driver_data()

This function can be called when it is not known whether it will find
anything. This results in confusing log messages if the device is not
found. It is better for the caller to log the failure, if necessary.

Drop the logging from this function.

Signed-off-by: Simon Glass <sjg@chromium.org>
3 years agolog: Add missing category names
Simon Glass [Mon, 28 Sep 2020 00:46:13 +0000 (18:46 -0600)]
log: Add missing category names

Add some category names that were missed in recent changes. Update the
comment as a reminder.

Signed-off-by: Simon Glass <sjg@chromium.org>
3 years agoMerge tag 'u-boot-stm32-20201021' of https://gitlab.denx.de/u-boot/custodians/u-boot-stm
Tom Rini [Thu, 22 Oct 2020 12:25:41 +0000 (08:25 -0400)]
Merge tag 'u-boot-stm32-20201021' of https://gitlab.denx.de/u-boot/custodians/u-boot-stm

- Activate CMD_EXPORTENV/CMD_IMPORTENV/CMD_ELF for STM32MP15 defconfig
- Fix stm32prog command: parsing of FlashLayout without partition
- Update MAINTAINERS for ARM STM STM32MP
- Manage eth1addr on dh board with KS8851
- Limit size of cacheable DDR in pre-reloc stage in stm32mp1
- Use mmc_of_parse() to read host capabilities in mmc:sdmmc2 driver

3 years agoMerge branch '2021.01-rc' of https://github.com/lftan/u-boot
Tom Rini [Thu, 22 Oct 2020 12:25:14 +0000 (08:25 -0400)]
Merge branch '2021.01-rc' of https://github.com/lftan/u-boot

- fix Gen5 enable of EMAC via FPGA

3 years agosamsung: common: remove the duplicated stdio print message
Jaehoon Chung [Thu, 22 Oct 2020 06:56:57 +0000 (15:56 +0900)]
samsung: common: remove the duplicated stdio print message

Remove duplicated stdio print message.
It's already displayed in common/console.c.

Loading Environment from MMC... OK
In:    serial
Out:   serial
Err:   serial
Model: Odroid XU3/XU4/HC1/HC2 based on Exynos5422
Type:  xu3
In:    serial
Out:   serial
Err:   serial

Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
3 years agosun50i: a64: A64-Teres-I board detect builtin keyboard
Jonas Smedegaard [Wed, 5 Aug 2020 23:09:12 +0000 (01:09 +0200)]
sun50i: a64: A64-Teres-I board detect builtin keyboard

A64-Teres-I board is a laptop which comes with a builtin keyboard.
The keyboard+trackpad controller pauses for 2 seconds at a firmware
prompt before loading its HID interface.

U-Boot needs to wait equally long to reliably enable the keyboard.

Signed-off-by: Jonas Smedegaard <dr@jones.dk>
Reviewed-by: Tom Rini <trini@konsulko.com>
Series-Cc: Jagan Teki <jagan@amarulasolutions.com>
Series-Cc: Lukasz Majewski <lukma@denx.de>
Series-Cc: Andre Przywara <andre.przywara@arm.com>

3 years agosunxi: Enable ethernet on newer Olimex OLinuXino-A20-Lime2-eMMC
Jonas Smedegaard [Sun, 9 Aug 2020 09:48:51 +0000 (11:48 +0200)]
sunxi: Enable ethernet on newer Olimex OLinuXino-A20-Lime2-eMMC

Olimex OLinuXino LIME2 rev. H through L uses Micrel KSZ9031 PHY.

This enables the Micrel PHY for A20-OLinuXino-Lime2-eMMC_defconfig.

Signed-off-by: Jonas Smedegaard <dr@jones.dk>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
3 years agosunxi: binman: Add support for including SCP firmware
Samuel Holland [Thu, 22 Oct 2020 02:12:16 +0000 (21:12 -0500)]
sunxi: binman: Add support for including SCP firmware

Allwinner sun50i SoCs contain an OpenRISC 1000 CPU that functions as a
System Control Processor, or SCP. ARM Trusted Firmware (ATF)
communicates with the SCP over SCPI to implement the PSCI system
suspend, shutdown and reset functionality. Currently, SCP firmware is
optional; the system will boot and run without it, but system suspend
will be unavailable.

Since all communication with the SCP is mediated by ATF, the only thing
U-Boot needs to do is load the firmware into SRAM. The SCP firmware
occupies the last 16KiB of SRAM A2, immediately following ATF.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Samuel Holland <samuel@sholland.org>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
3 years agobinman: Add support for SCP firmware
Samuel Holland [Thu, 22 Oct 2020 02:12:15 +0000 (21:12 -0500)]
binman: Add support for SCP firmware

Add an entry type for a firmware blob for a System Control Processor,
given by an entry arg. This firmware is a raw binary blob.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Samuel Holland <samuel@sholland.org>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
3 years agosunxi: binman: Update FIT component descriptions
Samuel Holland [Thu, 22 Oct 2020 02:12:14 +0000 (21:12 -0500)]
sunxi: binman: Update FIT component descriptions

Since commit d879616e9e64 ("spl: fit: simplify logic for FDT loading for
non-OS boots"), the SPL looks at the "os" properties of FIT images to
determine where to append the FDT.

The "os" property of the "firmware" image also determines how to execute
the next stage of the boot process, as in 1d3790905d9c ("spl: atf:
introduce spl_invoke_atf and make bl31_entry private"). For this reason,
the next stage must be specified in "firmware", not in "loadables".

To support this additional functionality, and to properly model the boot
process, where ATF runs before U-Boot, add the "os" properties and swap
the firmware/loadable images in the FIT image.

Since this description was copied as an example in commit 70248d6a2916
("binman: Support generating FITs with multiple dtbs"), update those
examples as well for correctness and consistency.

Acked-by: Patrick Wildt <patrick@blueri.se>
Signed-off-by: Samuel Holland <samuel@sholland.org>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>