Love Kumar [Wed, 8 Nov 2023 07:10:31 +0000 (12:40 +0530)]
test/py: net: Add a TFTP put test
Execute tftpput command for uploading files to a server and validate its
size & CRC32.
Signed-off-by: Love Kumar <love.kumar@amd.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Tom Rini [Wed, 29 Nov 2023 03:31:09 +0000 (22:31 -0500)]
Merge patch series "cmd: add scmi command"
To quote the author:
"Scmi" command will be re-introduced per Michal's request.
The functionality is the same as I put it in my patch set of adding
SCMI base protocol support, but made some tweak to make UT, "ut dm
scmi_cmd," more flexible and tolerable when enabling/disabling a specific
SCMI protocol for test purpose.
Each commit may have some change history inherited from the preceding
patch series.
Test
====
The patch series was tested on the following platforms:
* sandbox
AKASHI Takahiro [Tue, 14 Nov 2023 02:14:28 +0000 (11:14 +0900)]
test: dm: add scmi command test
In this test, "scmi" command is tested against different sub-commands.
Please note that scmi command is for debug purpose and is not intended
in production system.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
AKASHI Takahiro [Tue, 14 Nov 2023 02:14:27 +0000 (11:14 +0900)]
doc: cmd: add documentation for scmi
This is a help text for scmi command.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
AKASHI Takahiro [Tue, 14 Nov 2023 02:14:26 +0000 (11:14 +0900)]
cmd: add scmi command for SCMI firmware
This command, "scmi", may provide a command line interface to various SCMI
protocols. It supports at least initially SCMI base protocol and is
intended mainly for debug purpose.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
AKASHI Takahiro [Tue, 14 Nov 2023 02:14:25 +0000 (11:14 +0900)]
firmware: scmi: support protocols on sandbox only if enabled
This change will be useful when we manually test SCMI on sandbox
by enabling/disabling a specific SCMI protocol.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
AKASHI Takahiro [Tue, 14 Nov 2023 02:14:24 +0000 (11:14 +0900)]
test: dm: skip scmi tests against disabled protocols
This is a precautionary change to make scmi tests workable whether or not
a specific protocol be enabled. If a given protocol is not configured,
we skip the test by returning -EAGAIN.
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Tom Rini [Wed, 29 Nov 2023 01:10:36 +0000 (20:10 -0500)]
Merge patch series "fs: fat: calculate FAT type based on cluster count"
To quote the author:
This series fixes an issue where the FAT type (FAT12, FAT16) is not
correctly detected, e.g. when the BPB field BS_FilSysType contains the
valid value "FAT ".
This issue occures, for example, if a partition is formatted by
swupdate using its diskformat handler. swupdate uses the FAT library
from http://elm-chan.org/fsw/ff/ internally.
See https://groups.google.com/g/swupdate/c/7Yc3NupjXx8 for a
discussion in the swupdate mailing list.
Please refer to the commit messages for more details.
1. Added bootsector checks
Most tests from https://www.win.tue.nl/~aeb/linux/fs/fat/fat-2.html
are added in the commit 'fs: fat: add bootsector validity check'.
Only the tests VIII, IX and X are not implemented.
I also checked the Linux kernel code (v6.6) and did not find any
checks on 'vistart->fs_type'. This is the reason why is skipped them
here.
See section '2. Size comparisons' for the impact on the binary size.
2. Size comparisons
I executed bloat-o-meter from the Linux kernel for an arm64
target (config xilinx_zynqmp_mini_emmc0_defconfig):
Comparison of the binary spl/u-boot-spl between master (rev
e17d174773e9ba9447596708e702b7382e47a6cf) and this patch
series (including the added validity checks of the boot sector):
add/remove: 0/0 grow/shrink: 1/1 up/down: 100/-12 (88)
Function old new delta
read_bootsectandvi 308 408 +100
fat_itr_root 444 432 -12
Total: Before=67977, After=68065, chg +0.13%
When compare the size of the binary spl/u-boot-spl between master this
series without the the validity checks of the boot sector:
add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-24 (-24)
Function old new delta
read_bootsectandvi 308 296 -12
fat_itr_root 444 432 -12
Total: Before=67977, After=67953, chg -0.04%
So the size of the spl on this arm64 target increases by 88 bytes for
this series. When i remove the validity check the size decreases by 24 bytes.
Christian Taedcke [Wed, 15 Nov 2023 12:44:24 +0000 (13:44 +0100)]
test: fs: Add test to detect fat type
Ensure that a large FAT12 filesystem and a small FAT16 filesystem are
detected correctly.
Signed-off-by: Christian Taedcke <christian.taedcke@weidmueller.com>
Christian Taedcke [Wed, 15 Nov 2023 12:44:23 +0000 (13:44 +0100)]
test: Add size granularity parameter to mk_fs
Without this commit it is only possible to create filesystem images
with a size granularity of 1MB.
This commit adds the option to create file systems with different
sizes, e.g 8.5MB.
Signed-off-by: Christian Taedcke <christian.taedcke@weidmueller.com>
Christian Taedcke [Wed, 15 Nov 2023 12:44:22 +0000 (13:44 +0100)]
test: fs: Add fat12 to supported fs of some tests
The tests fs_ext, fs_mkdir and fs_unlink support fat12 without
modifications.
The fs_basic test uses a partition that is too large for fat12, so it
is omitted here.
Signed-off-by: Christian Taedcke <christian.taedcke@weidmueller.com>
Christian Taedcke [Wed, 15 Nov 2023 12:44:21 +0000 (13:44 +0100)]
test: Add support to create a fat12 fs
This enables to implement tests for fat12 filesystem.
Signed-off-by: Christian Taedcke <christian.taedcke@weidmueller.com>
Christian Taedcke [Wed, 15 Nov 2023 12:44:20 +0000 (13:44 +0100)]
fs: fat: add bootsector validity check
The performed checks are similar to the checks performed by the Linux
kernel in the function fat_read_bpb() in the file fs/fat/inode.c.
Signed-off-by: Christian Taedcke <christian.taedcke@weidmueller.com>
Christian Taedcke [Wed, 15 Nov 2023 12:44:19 +0000 (13:44 +0100)]
fs: fat: simplify gotos from read_bootsectandvi
This simplifies the code a little bit.
Signed-off-by: Christian Taedcke <christian.taedcke@weidmueller.com>
Christian Taedcke [Wed, 15 Nov 2023 12:44:18 +0000 (13:44 +0100)]
fs: fat: calculate FAT type based on cluster count
This fixes an issue where the FAT type (FAT12, FAT16) is not
correctly detected, e.g. when the BPB field BS_FilSysType contains the
valid value "FAT ".
According to the FAT spec the field BS_FilSysType has only
informational character and does not determine the FAT type.
The logic of this code is based on the linux kernel implementation
from the file fs/fat/inode.c function fat_fill_super().
For details about FAT see http://elm-chan.org/docs/fat_e.html
Signed-off-by: Christian Taedcke <christian.taedcke@weidmueller.com>
Christian Taedcke [Wed, 15 Nov 2023 12:44:17 +0000 (13:44 +0100)]
test: spl: Remove usage of FAT32_SIGN
FAT32_SIGN is removed in the following commits.
Signed-off-by: Christian Taedcke <christian.taedcke@weidmueller.com>
Christian Taedcke [Wed, 15 Nov 2023 12:44:16 +0000 (13:44 +0100)]
fs: fat: use get_unaligned_le16 to convert u8[2] to u16
This reduces code duplications.
Signed-off-by: Christian Taedcke <christian.taedcke@weidmueller.com>
Tom Rini [Tue, 28 Nov 2023 21:19:19 +0000 (16:19 -0500)]
Merge patch series "Import "string" I/O functions from Linux"
To quote the author:
This series imports generic versions of ioread_rep/iowrite_rep and
reads/writes from Linux. Some cleanup is done to make sure that all
platforms have proper defines for implemented functions and there are no
redefinitions.
Igor Prusov [Tue, 14 Nov 2023 11:02:57 +0000 (14:02 +0300)]
musb-new: Remove implementation of io.h functions
Since {read,write}s{l, w, b}() functions are now supported in linux/io.h
there is no need to add custom implementation to driver.
Signed-off-by: Igor Prusov <ivprusov@salutedevices.com>
Igor Prusov [Tue, 14 Nov 2023 11:02:56 +0000 (14:02 +0300)]
treewide: Include linux/io.h instead of asm-generic/io.h
Directly including asm-generic/io.h may break build because it will
cause redefenition of generic io macros if linux/io.h gets included
later, hence replace it with direct include of linux/io.h
Signed-off-by: Igor Prusov <ivprusov@salutedevices.com>
Igor Prusov [Tue, 14 Nov 2023 11:02:55 +0000 (14:02 +0300)]
spi: meson_spifc_a1: Switch to io{read,write}32_rep()
Use io{read,write}32_rep() functions to sync code with Linux version.
Signed-off-by: Igor Prusov <ivprusov@salutedevices.com>
Igor Prusov [Tue, 14 Nov 2023 11:02:54 +0000 (14:02 +0300)]
asm-generic: Import functions from Linux
Currently {read,write}s{b,w,lq}() functions are available only on some
architectures, and there are no io{read,write}{8,16,32,64}_rep()
functions in u-boot. This patch adds generic versions that may be used
without arch-specific implementation.
Since some of added functions were already added locally in some files,
remove them to avoid redeclaration errors.
Signed-off-by: Igor Prusov <ivprusov@salutedevices.com>
Igor Prusov [Tue, 14 Nov 2023 11:02:53 +0000 (14:02 +0300)]
xtensa: io.h: Add defines for ins/outs functions
Add defines for {in,out}s{b,w,l}() functions to make asm-generic/io.h
aware of them.
Signed-off-by: Igor Prusov <ivprusov@salutedevices.com>
Igor Prusov [Tue, 14 Nov 2023 11:02:52 +0000 (14:02 +0300)]
powerpc: io.h: Add defines for __raw_{read, write} functions
Add defines for __raw_{read,write}{b,w,l}() functions to make
make asm-generic/io.h aware of them.
Signed-off-by: Igor Prusov <ivprusov@salutedevices.com>
Igor Prusov [Tue, 14 Nov 2023 11:02:51 +0000 (14:02 +0300)]
nios2: io.h: Add defines for ins/outs functions
Add defines for {in,out}s{b,w,l} functions to make asm-generic/io.h
aware of them.
Signed-off-by: Igor Prusov <ivprusov@salutedevices.com>
Igor Prusov [Tue, 14 Nov 2023 11:02:50 +0000 (14:02 +0300)]
riscv: io.h: Fix signatures of reads/writes functions
Change type of address parameter from int* to volatile void* for
{read,write}s{b,w,l}() functions and add const qualifier for reads. This
is done to keep function signatures in sync with asm-generic/io.h and
other platforms.
Signed-off-by: Igor Prusov <ivprusov@salutedevices.com>
Igor Prusov [Tue, 14 Nov 2023 11:02:49 +0000 (14:02 +0300)]
riscv: io.h: Add defines for reads/writes functions
Add defines for {read,write}s{b,w,l} functions to make asm-generic/io.h
aware of them.
Signed-off-by: Igor Prusov <ivprusov@salutedevices.com>
Igor Prusov [Tue, 14 Nov 2023 11:02:48 +0000 (14:02 +0300)]
mips: io.h: Add defines for read/write/in/out functions
Add defines for {read,write}{b,w,l,q}(), {read,write}s{b,w,l,q}() and
{in,out}s{b,w,l,q}() functions to make asm-generic/io.h aware of them.
Signed-off-by: Igor Prusov <ivprusov@salutedevices.com>
Igor Prusov [Tue, 14 Nov 2023 11:02:47 +0000 (14:02 +0300)]
mips: io.h: Add const to reads functions params
Currently reads{b,w,l}() functions don't have const qualifier for their
address parameter. Since asm-generic/io.h in Linux has const for all
read functions, add it here as well to keep signatures in sync.
Signed-off-by: Igor Prusov <ivprusov@salutedevices.com>
Igor Prusov [Tue, 14 Nov 2023 11:02:46 +0000 (14:02 +0300)]
x86: Add defines for ins/outs functions
Add defines for {in,out}s{b,w,l}() functions to make sure that
they will be used by asm-generic/io.h
Signed-off-by: Igor Prusov <ivprusov@salutedevices.com>
Igor Prusov [Tue, 14 Nov 2023 11:02:45 +0000 (14:02 +0300)]
sandbox: move asm-generic include to the end of file
Generic version of io.h should be included at the end of
architecture-specific ones to make sure that arch implementations are
used and to avoid redefinitions.
Signed-off-by: Igor Prusov <ivprusov@salutedevices.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Tom Rini [Tue, 28 Nov 2023 17:53:14 +0000 (12:53 -0500)]
Merge patch series "sysinfo: Expand sysinfo with some more banner information"
To quote the author:
The show_board_info() function was adjusted to weak so that it could be
entirely replaced with a board-specific implementation.
The intended way for boards to provide their own information is via a
sysinfo driver. But currently there is no way to show anything other
than the model name.
This series adds support for showing a few more items, in a way that is
easy for boards to extend.
Since there is already a weak checkboard() function, we don't need to
have two levels of weak function here. So this series drops the weak
attribute from show_board_info()
Existing boards will see a slight change in output, in that the model
name will appear first, before any custom output. If that is a problem,
then the solution is to implement a sysinfo driver for the board.
Simon Glass [Mon, 13 Nov 2023 02:58:29 +0000 (19:58 -0700)]
x86: coreboot: Add a sysinfo driver
Create a sysinfo driver to avoid needing a custom checkboard()
function. With this the following information is printed when booting
from coreboot under QEMU:
Model: Standard PC (i440FX + PIIX, 1996)
Manufacturer: QEMU
Prior-stage version:
4.21-885-g2a87ef1eca56
Prior-stage date: 11/11/2023
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 13 Nov 2023 02:58:28 +0000 (19:58 -0700)]
sysinfo: Allow displaying more info on startup
At present only the model name is shown on start. Some boards want to
display more information. Add some more options to allow display of the
manufacturer as well as the version and date of any prior-stage
firmware.
This is useful for coreboot, at least. If other boards have more
information to display, it is easy to add it, now.
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 13 Nov 2023 02:58:27 +0000 (19:58 -0700)]
Revert "generic-board: make show_board_info a weak function"
We already have:
- a sysinfo driver-interface which can obtain the model
- a weak function called checkboard() for showing board info
The current implementation has a weak function on top of a weak
function. Now that all boards have been updated to use checkboard()
instead, drop the __weak on show_board_info()
This reverts commit
f7637cc01414b9c87b6b0f861f34d83c19bfaaaf.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
Simon Glass [Mon, 13 Nov 2023 02:58:26 +0000 (19:58 -0700)]
udoo: Use checkboard() instead of show_board_info()
Boards can use a sysinfo driver if a particular model name is needed.
Update this board to use checkboard() directly, rather than having a
weak function laid on top of a weak function.
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 13 Nov 2023 02:58:25 +0000 (19:58 -0700)]
toradex: Use checkboard() instead of show_board_info()
Boards can use a sysinfo driver if a particular model name is needed.
Update this board to use checkboard() directly, rather than having a
weak function laid on top of a weak function.
Make all the checkboard() functions call the new tdx_checkboard() so
that the same information is displayed.
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 13 Nov 2023 02:58:24 +0000 (19:58 -0700)]
solidrun: Use checkboard() instead of show_board_info()
Boards can use a sysinfo driver if a particular model name is needed.
Update this board to use checkboard() directly, rather than having a
weak function laid on top of a weak function.
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 13 Nov 2023 02:58:23 +0000 (19:58 -0700)]
turris: Use checkboard() instead of show_board_info()
Boards can use a sysinfo driver if a particular model name is needed.
Update this board to use checkboard() directly, rather than having a
weak function laid on top of a weak function.
Signed-off-by: Simon Glass <sjg@chromium.org>
Simon Glass [Mon, 13 Nov 2023 02:58:22 +0000 (19:58 -0700)]
meson: Use checkboard() instead of show_board_info()
Boards can use a sysinfo driver if a particular model name is needed.
Update this board to use checkboard() directly, rather than having a
weak function laid on top of a weak function.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Simon Glass [Mon, 13 Nov 2023 02:58:21 +0000 (19:58 -0700)]
board: Move show_board_info() comment to header file
Move this comment to its prototype and tidy it up a bit.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
Tom Rini [Mon, 27 Nov 2023 21:19:09 +0000 (16:19 -0500)]
Merge patch series "ufs: Add a PCI UFS controller support"
To quote the author:
This adds a PCI UFS controller support and enables the support on
QEMU RISC-V for testing.
Requiring QEMU v8.2+.
Bin Meng [Wed, 11 Oct 2023 13:15:52 +0000 (21:15 +0800)]
qemu: riscv: Enable UFS support
This enables UFS support for QEMU RISC-V 'virt' machine.
Signed-off-by: Bin Meng <bmeng@tinylab.org>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Bin Meng [Wed, 11 Oct 2023 13:15:51 +0000 (21:15 +0800)]
ufs: Handle UFS 3.1 controllers
Extend the version check to handle UFS 3.1 controllers as well.
Tested on QEMU emulated UFS 3.1 controller.
Signed-off-by: Bin Meng <bmeng@tinylab.org>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Bin Meng [Wed, 11 Oct 2023 13:15:50 +0000 (21:15 +0800)]
ufs: Add a PCI based UFS controller driver
This adds a simple PCI based UFS controller driver with a QEMU
emulated UFS controller on the PCI bus.
Requiring QEMU v8.2+.
Signed-off-by: Bin Meng <bmeng@tinylab.org>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Bin Meng [Wed, 11 Oct 2023 13:15:49 +0000 (21:15 +0800)]
ufs: Allow mmio registers on the PCI bus
Check if the UFS controller is on the PCI bus, and get its register
base address accordingly.
Signed-off-by: Bin Meng <bmeng@tinylab.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
Bin Meng [Wed, 11 Oct 2023 13:15:48 +0000 (21:15 +0800)]
pci_ids: Add Red Hat vendor and device IDs
Red Hat, Inc. donates a part of its device ID range [1] to QEMU,
to be used for virtual devices. This commit adds several typical
devices that are useful in U-Boot.
[1] https://www.qemu.org/docs/master/specs/pci-ids.html
Signed-off-by: Bin Meng <bmeng@tinylab.org>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Bin Meng [Wed, 11 Oct 2023 13:15:47 +0000 (21:15 +0800)]
cmd: ufs: Correct the help text
Remove the additional space and use "sub-system" for consistency
with other commands like "scsi" and "usb".
Signed-off-by: Bin Meng <bmeng@tinylab.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
Bin Meng [Wed, 11 Oct 2023 13:15:46 +0000 (21:15 +0800)]
cmd: kconfig: Make ufs prompt look similar to other commands
At present the 'ufs' command prompt does not look similar like other
commands. Update it.
Signed-off-by: Bin Meng <bmeng@tinylab.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
Bin Meng [Wed, 11 Oct 2023 13:15:45 +0000 (21:15 +0800)]
ufs: Add a line feed to the end of some dev_xxx() messages
Add a line feed to improve readability of some dev_xxx() messages.
Signed-off-by: Bin Meng <bmeng@tinylab.org>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Bin Meng [Wed, 11 Oct 2023 13:15:44 +0000 (21:15 +0800)]
ufs: Correct the UFS terminlogy
UFS stands for Universal Flash Storage, not Subsytem.
Signed-off-by: Bin Meng <bmeng@tinylab.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
Tom Rini [Sat, 25 Nov 2023 17:34:23 +0000 (12:34 -0500)]
Merge tag 'u-boot-dfu-next-
20231124' of https://source.denx.de/u-boot/custodians/u-boot-dfu into next
u-boot-dfu-next-
20231124
- Make dfu entity name size configurable in KConfig
- Implement start-stop for UMS (graceful shutdown via eject)
- Improve help messages for cmd/bind
- Improve help message for udc bind failures
Tom Rini [Sat, 25 Nov 2023 17:32:48 +0000 (12:32 -0500)]
Merge branch '2023-11-25-assorted-platform-updates' into next
- Updates for the Siemens AM335x platforms, Nuvoton platforms, and
disable CONFIG_NET on platforms that lack NETDEVICES, so that
NETDEVICES can be implied by NET.
Tom Rini [Thu, 9 Nov 2023 00:12:25 +0000 (19:12 -0500)]
net: Make NET imply NETDEVICES
Normally, when NET is enabled, CMD_NET will then be enabled and in turn
NETDEVICES will (likely) be enabled via imply. However, if we disable
CMDLINE in a defconfig we now no longer get CMD_NET enabling NETDEVICES
for us. This suggestion (as an imply is) really isn't about the network
commands but network itself and is a legacy of how intertwined
NET/CMD_NET were historically. Move this over to the NET entry instead
where it is a more logical fit.
Reported-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Tom Rini [Fri, 17 Nov 2023 15:47:57 +0000 (10:47 -0500)]
boards: Disable NET on platforms without NETDEVICES
None of these platforms enabled a networking devices, and disabled
CMD_NET. Given that we used to gate network support on CMD_NET rather
than NET, we disable CONFIG_NET on these platforms now.
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Jim Liu [Tue, 14 Nov 2023 08:51:59 +0000 (16:51 +0800)]
board: nuvoton: update console environment variable
If CONFIG_SYS_SKIP_UART_INIT is enabled, calculate the
current baud rate and update the "console" environment
variable.
Signed-off-by: Jim Liu <JJLIU0@nuvoton.com>
Jim Liu [Tue, 14 Nov 2023 08:51:58 +0000 (16:51 +0800)]
serial: npcm: support skip uart clock setting
Skip the uart clock setting if CONFIG_SYS_SKIP_UART_INIT is enabled.
Fix divisor error.
Signed-off-by: Jim Liu <JJLIU0@nuvoton.com>
Jim Liu [Tue, 14 Nov 2023 08:51:57 +0000 (16:51 +0800)]
configs: arbel: Enable full functions
Enable more functions/commands for arbel evb.
Signed-off-by: Jim Liu <JJLIU0@nuvoton.com>
Jim Liu [Tue, 14 Nov 2023 08:51:56 +0000 (16:51 +0800)]
arm: dts: npcm845-evb: fix/add node and aliases
Modify spi and usb aliases name.
Add dt-binding for usb phy define and fix usb phy reset error.
Add tpm/otpee and host_intf node.
Signed-off-by: Jim Liu <JJLIU0@nuvoton.com>
Enrico Leto [Wed, 8 Nov 2023 14:53:22 +0000 (15:53 +0100)]
configs: draco: restore clock driver
Fix 'failed to get fck clock' error on boot. Add missing configs.
Signed-off-by: Enrico Leto <enrico.leto@siemens.com>
Enrico Leto [Wed, 8 Nov 2023 14:53:21 +0000 (15:53 +0100)]
configs: draco: disable misc init
The initcall sequence fails at arch_misc_init. Disable misc init until
driver model and DT are clean.
Signed-off-by: Enrico Leto <enrico.leto@siemens.com>
Enrico Leto [Wed, 8 Nov 2023 14:53:20 +0000 (15:53 +0100)]
configs: draco: remove unused resources from spl
We don't need device tree, GPIO & SPI in SPL.
Signed-off-by: Enrico Leto <enrico.leto@siemens.com>
Enrico Leto [Wed, 8 Nov 2023 14:53:19 +0000 (15:53 +0100)]
configs: thuban, rastaban: remove emmc
These targets use NAND FLASH only. Maybe some MMC definitions were added by
trying MMC for the etamin target evaluation and were not removed.
Signed-off-by: Enrico Leto <enrico.leto@siemens.com>
Enrico Leto [Wed, 8 Nov 2023 14:53:18 +0000 (15:53 +0100)]
configs: draco: remove spi flash support
The SPI FLASH was set in the early development phase for evaluations.
Any target use it anymore.
Signed-off-by: Enrico Leto <enrico.leto@siemens.com>
Enrico Leto [Wed, 8 Nov 2023 14:53:17 +0000 (15:53 +0100)]
siemens,am335x: clean-up draco targets
Draco is a family of 3 boards: thuban, rastaban & etamin. Rename all
targets of the family adding the draco- prefix to increase readibility
and simplify future commits about concerning all boards of the family.
The name draco was initially used for the first target. It's deprecated
since a 2nd target was introduced. Unfortunately the draco target was
copied to the thuban target instead to be renamed. Remove it to save
unnecessary maintenance effort.
Signed-off-by: Enrico Leto <enrico.leto@siemens.com>
Tom Rini [Wed, 22 Nov 2023 19:05:53 +0000 (14:05 -0500)]
Merge branch '2023-11-22-TI-K3-cleanups' into next
This brings in a large number of cleanups and reorganizations to the TI
K3 family of SoCs. We get DTS resyncs for most of the SoCs under that
umbrella as well, and a few enhancements too.
Manorit Chawdhry [Fri, 17 Nov 2023 05:02:57 +0000 (10:32 +0530)]
arm: dts: k3-am68*: Sync with kernel v6.7-rc1
Sync devicetree with kernel v6.7-rc1
Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
Manorit Chawdhry [Fri, 17 Nov 2023 05:02:56 +0000 (10:32 +0530)]
arm: dts: k3-j721s2*: Sync with kernel v6.7-rc1
Sync devicetree with kernel v6.7-rc1
Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
Neha Malcom Francis [Wed, 15 Nov 2023 10:10:24 +0000 (15:40 +0530)]
arm: dts: k3-*-binman: Move to using templated FITs
Reduce redundancy in code by using templates to generate the A72 boot
binaries (tispl.bin and u-boot.img) as well as R5 boot binary sysfw.itb
(for legacy boot following devices J721E and AM65x).
Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Acked-by: Andrew Davis <afd@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Manorit Chawdhry <m-chawdhry@ti.com>
Neha Malcom Francis [Wed, 15 Nov 2023 10:10:23 +0000 (15:40 +0530)]
arm: dts: k3-binman: Add support for FIT templates
Add templates for FIT images used extensively across K3 boards with most
of the code common. This includes the FIT portions of:
- tispl.bin
- u-boot.img
- sysfw.itb (in case of legacy boot flow)
Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Nishanth Menon [Wed, 15 Nov 2023 03:28:57 +0000 (21:28 -0600)]
arm: dts: k3-am625-sk-r5/u-boot: Drop duplicate bootph-nodes
Kernel dts import now provides bootph-all and bootph-pre-ram properties
for the properties we have been overriding so far. Drop the same.
While at this enable the DM and TIFS UARTs for programming pinmux
since they are marked reserved by board.dts
Reviewed-by: Dhruva Gole <d-gole@ti.com>
Tested-by: Dhruva Gole <d-gole@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Wed, 15 Nov 2023 03:28:56 +0000 (21:28 -0600)]
arm: dts: k3-am625-beagleplay-u-boot: drop duplicate bootph-nodes
Kernel dts import now provides bootph-all and bootph-pre-ram properties
for the properties we have been overriding so far. Drop the same.
Reviewed-by: Dhruva Gole <d-gole@ti.com>
Tested-by: Dhruva Gole <d-gole@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Wed, 15 Nov 2023 03:28:55 +0000 (21:28 -0600)]
arm: dts: k3-am625: Drop SoC provided bootph params from board u-boot/r5 dtsi
k3-am62* SoC dtsi files now provide the following:
bootph-all: dmss secure_proxy_main dmsc k3_pds k3_clks k3_reset
main_pmx0 main_timer0 mcu_pmx0 wkup_conf chipid
bootph-pre-ram: secure_proxy_sa3 main_esm mcu_esm
Drop these from board r5 and u-boot.dtsi files as these are duplicate in
them now.
Acked-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Tested-by: Dhruva Gole <d-gole@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Wed, 15 Nov 2023 03:28:54 +0000 (21:28 -0600)]
arm: dts: k3-am625*: Sync with kernel v6.7-rc1
Sync with kernel v6.7-rc1 and sync up the u-boot dts files accordingly.
Tested-by: Dhruva Gole <d-gole@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Roger Quadros [Tue, 14 Nov 2023 20:28:56 +0000 (22:28 +0200)]
arm: dts: k3-am625-verdin-wifi-dev-u-boot.dtsi: Fix DMA with BCDMA
BCDMA can be used at SPL for OSPI boot and mem-to-mem DMA
so add "bootph-all" to BCDMA node.
Suggested-by: Nishanth Menon <nm@ti.com>
Fixes: 9a3f2b6798b0 ("arm: dts: k3-am625-verdin-wifi-dev-u-boot.dtsi: Fix DMA/Ethernet")
Signed-off-by: Roger Quadros <rogerq@kernel.org>
Reviewed-by: Nishanth Menon <nm@ti.com>
Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Reid Tonking [Mon, 13 Nov 2023 20:43:09 +0000 (14:43 -0600)]
arm: dts: k3-j7200: Sync with Linux 6.7-rc1
Sync u-boot device tree with Linux kernel 6.7-rc1
Signed-off-by: Reid Tonking <reidt@ti.com>
Joao Paulo Goncalves [Mon, 13 Nov 2023 19:07:21 +0000 (16:07 -0300)]
arm: k3: Enable instruction cache for main domain SPL
Change spl_enable_dcache so it also enable icache on SPL
initialization for the main domain part of the boot flow. This
improves bootloader booting time.
Link: https://lore.kernel.org/all/20231109140958.1093235-1-joao.goncalves@toradex.com/
Signed-off-by: Joao Paulo Goncalves <joao.goncalves@toradex.com>
Tested-by: Nishanth Menon <nm@ti.com>
Jai Luthra [Mon, 13 Nov 2023 14:51:49 +0000 (08:51 -0600)]
doc: board: ti: Add AM62A documentation
Add generic boot-flow diagrams, and SoC-specific info around build
steps.
Signed-off-by: Jai Luthra <j-luthra@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Mon, 13 Nov 2023 14:51:48 +0000 (08:51 -0600)]
configs: am62ax_evm_a53_defconfig: switch to stdboot
Switch over to stdboot
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Mon, 13 Nov 2023 14:51:47 +0000 (08:51 -0600)]
board: ti: am62ax: env: Set the boot_targets
Set the default boot_targets to map up SD card as priority followed by
emmc and so on.
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Mon, 13 Nov 2023 14:51:46 +0000 (08:51 -0600)]
board: ti: am62ax: env: Use default findfdt
Use the default findfdt instead of local logic.
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Mon, 13 Nov 2023 14:51:45 +0000 (08:51 -0600)]
configs: am62ax_evm_a53_defconfig: Enable networking
Enable networking
Signed-off-by: Nishanth Menon <nm@ti.com>
Vignesh Raghavendra [Mon, 13 Nov 2023 14:51:44 +0000 (08:51 -0600)]
dma: ti: k3-udma: Introduce DMA support for the am62ax
In preparation for enabling ethernet for the am62ax family of SoCs,
introduce the initial DMA channel settings for the am62ax
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
[bb@ti.com: expanded on commit message]
Signed-off-by: Bryan Brattlof <bb@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Mon, 13 Nov 2023 14:51:43 +0000 (08:51 -0600)]
arm: dts: k3-am62a*: Sync with kernel v6.7-rc1
Sync with kernel v6.7-rc1 and sync up the u-boot dts files accordingly.
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Mon, 13 Nov 2023 14:51:42 +0000 (08:51 -0600)]
arm: mach-k3: am62a: Add main_timer0 id to the dev list
main_timer0 is used by u-boot as the tick-timer. Add it to the soc
devices list so it an be enabled via the k3 power controller.
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
Neha Malcom Francis [Mon, 13 Nov 2023 04:30:23 +0000 (10:00 +0530)]
arm: dts: k3-j721e-*: Sync with kernel v6.7-rc1
Sync the U-Boot DTS files with those of Kernel v6.7-rc1.
Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Neha Malcom Francis [Mon, 13 Nov 2023 04:30:22 +0000 (10:00 +0530)]
dt-bindings: misc: Move esm-k3.txt to ti,j721e-esm.yaml
Move esm-k3.txt to ti,j721e-esm.yaml in line with the devicetree
documentation in kernel.
Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Nishanth Menon [Sat, 4 Nov 2023 08:11:03 +0000 (03:11 -0500)]
doc: board: beagle: Add BeagleBone AI-64 documentation
Add base documentation for BeagleBone AI-64.
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Sat, 4 Nov 2023 08:11:02 +0000 (03:11 -0500)]
configs: Add j721e_beagleboneai64_* configs
Add basic support for mmc/emmc and networking support for BeagleBone
AI-64.
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Sat, 4 Nov 2023 08:11:01 +0000 (03:11 -0500)]
board: beagle: Add BeagleBone AI-64 support
Add base support for BeagleBone AI-64 board support.
Further information at https://beagleboard.org/ai-64
Signed-off-by: Nishanth Menon <nm@ti.com>
Robert Nelson [Sat, 4 Nov 2023 08:11:00 +0000 (03:11 -0500)]
arm: dts: Add k3-j721e-beagleboneai64
BeagleBoard.org BeagleBone AI-64 is an open source hardware single
board computer based on the Texas Instruments TDA4VM SoC featuring
dual-core 2.0GHz Arm Cortex-A72 processor, C7x+MMA and 2 C66x
floating-point VLIW DSPs, 3x dual ARM Cortex-R5 co-processors,
2x 6-core Programmable Real-Time Unit and Industrial Communication
SubSystem, PowerVR Rogue 8XE GE8430 3D GPU. The board features 4GB
DDR4, USB3.0 Type-C, 2x USB SS Type-A, miniDisplayPort, 2x 4-lane
CSI, DSI, 16GB eMMC flash, 1G Ethernet, M.2 E-key for WiFi/BT, and
BeagleBone expansion headers.
This board family can be indentified by the BBONEAI-64-B0 in the
at24 eeprom:
[aa 55 33 ee 01 37 00 10 2e 00 42 42 4f 4e 45 41 |.U3..7....BBONEA|]
[49 2d 36 34 2d 42 30 2d 00 00 42 30 30 30 37 38 |I-64-B0-..B00078|]
Baseline of the devicetree is from v6.6-rc1
https://beagleboard.org/ai-64
https://git.beagleboard.org/beagleboard/beaglebone-ai-64
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Sat, 4 Nov 2023 08:01:37 +0000 (03:01 -0500)]
board: Move omap3 beagle under beagle vendor folder
Move the omap3 beagle to the beagle vendor folder representing
BeagleBoard.org platforms.
Suggested-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Sat, 4 Nov 2023 08:01:36 +0000 (03:01 -0500)]
doc: board: Move am62x_beagleplay to it's own vendor
Move BeaglePlay documentation to beagle as a board vendor and update
references accordingly.
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Bryan Brattlof <bb@ti.com>
Nishanth Menon [Sat, 4 Nov 2023 08:01:35 +0000 (03:01 -0500)]
board: Move beagleplay under beagle vendor folder
Move beagleplay support away from ti/am62x to it's own beagle vendor
folder.
This forms the starting point for new beagle platforms added under it's
own board vendor folder.
As part of this create all the associated files with a bare minimum
beagleplay.c file.
Suggested-by: Andrew Davis <afd@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Bryan Brattlof <bb@ti.com>
[trini: Update k3-binman.dtsi to use full path to scheme.yaml now]
Signed-off-by: Tom Rini <trini@konsulko.com>
Nishanth Menon [Sat, 4 Nov 2023 08:01:34 +0000 (03:01 -0500)]
configs: Add am62x_beagleplay_*_defconfig
Add am62x_beagleplay_* defconfig customized for the configuration of
BeaglePlay and drop the config fragments.
This is in preparation for dropping the dependency on ti vendor folder
entirely.
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Sat, 4 Nov 2023 08:01:33 +0000 (03:01 -0500)]
arm: dts: k3-am625-beagleplay-u-boot/r5: Just depend on k3-binman.dtsi
With the upcoming folder separation, there is no further need to depend
on am625-binman.dtsi. Duplicate the existing definitions to u-boot.dtsi
and r5.dts as appropriate.
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Bryan Brattlof <bb@ti.com>
Nishanth Menon [Sat, 4 Nov 2023 07:21:50 +0000 (02:21 -0500)]
doc: board: ti: j721e_evm: Use board relative path for include directives
When using include directives within a section that is included by non
TI board rst file, k3.rst and other include paths need to be relative to
doc/board/ base.
Signed-off-by: Nishanth Menon <nm@ti.com>
Nishanth Menon [Sat, 4 Nov 2023 07:21:49 +0000 (02:21 -0500)]
configs: j7200_evm_a72_defconfig: Switch to bootstd
Switch to using bootstd. Note with this change, we will stop using
distro_bootcmd and instead depend entirely on bootflow method of
starting the system up.
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
Nishanth Menon [Sat, 4 Nov 2023 07:21:48 +0000 (02:21 -0500)]
configs: j7200: Remove HBMC_AM654 config
Kernel commit
1b77265626a4 ("arm64: dts: ti: k3-j7200-mcu-wakeup: Add
HyperBus node") was merged to kernel without its dependent patch [1].
Similar fix is needed in U-Boot, and hbmc currently breaks boot. Till
this gets fixed in U-Boot, disable the config by default so that the
hbmc probe that happens in board/ti/j721e/evm.c will not take place
and lead to boot failure.
This is similar to the approach in commit
5b2671594b80 ("configs:
j721e: Remove HBMC_AM654 config"), introduced to j7200 evm platform.
[1] https://lore.kernel.org/all/
20230424184810.29453-1-afd@ti.com/
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
Nishanth Menon [Sat, 4 Nov 2023 07:21:47 +0000 (02:21 -0500)]
arm: mach-k3: j721e: Improve support for UDA FS
Commit
5019170970ad ("arch: arm: mach-k3: j721e: add support for UDA
FS") introduced basic UDA FS support, however, we can Take approach
similar to commit
0f1c1e8b368b ("arm: mach-k3: am625: Add support for
UDA FS"). While boot partition support with EMMC boot is useful, it is
constrained by the size of boot hardware partition itself.
In the case of K3 devices, tispl images can contain OP-TEE images that
can substantially vary in size and the u-boot image itself can vary over
time as we enable various features.
So use the CSD information in the case of EMMC_BOOT configuration being
enabled to pick boot partition or UDA FS mode operation to pick.
If EMMC_BOOT is disabled, then depend on filesystem configuration to
pick data from UDA.
Signed-off-by: Nishanth Menon <nm@ti.com>