]> git.ipfire.org Git - thirdparty/u-boot.git/log
thirdparty/u-boot.git
2 years agoCI, pytest: Add a test for sandbox without LTO
Tom Rini [Thu, 26 Oct 2023 18:31:38 +0000 (14:31 -0400)] 
CI, pytest: Add a test for sandbox without LTO

The primary motivation for having a sandbox without LTO build in CI is
to ensure that we don't have that option break. We now have the ability
to run tests of specific options being enabled/disabled, so drop the
parts of CI that build and test that configuration specifically and add
a build test instead. We still test that "NO_LTO=1" rather than editing
the config file works via the ftrace tests.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agosandbox: Add a test for disabling CONFIG_CMDLINE
Simon Glass [Thu, 26 Oct 2023 18:31:37 +0000 (14:31 -0400)] 
sandbox: Add a test for disabling CONFIG_CMDLINE

Now that everything is working, add a test to make sure that this
builds correctly.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
2 years agoclk_k210.c: Clean up how we handle nop
Tom Rini [Thu, 26 Oct 2023 18:31:36 +0000 (14:31 -0400)] 
clk_k210.c: Clean up how we handle nop

Now that sandbox has <asm/barrier.h> and defines nop() there we should
include that in our driver for clarity and then remove our local nop()
from <k210/pll.h>.

Reviewed-by: Sean Anderson <seanga2@gmail.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agosandbox: Add <asm/barrier.h>
Tom Rini [Thu, 26 Oct 2023 18:31:35 +0000 (14:31 -0400)] 
sandbox: Add <asm/barrier.h>

Add a mostly empty asm/barrier.h file for sandbox where we define nop() to
be an empty function.

Reviewed-by: Sean Anderson <seanga2@gmail.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agosandbox: Avoid requiring CMDLINE
Simon Glass [Thu, 26 Oct 2023 18:31:34 +0000 (14:31 -0400)] 
sandbox: Avoid requiring CMDLINE

Add some dependencies on features that we had been selecting so that we
can still disable CMDLINE.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agosandbox: Disable CONFIG_DISTRO_DEFAULTS
Simon Glass [Thu, 26 Oct 2023 18:31:33 +0000 (14:31 -0400)] 
sandbox: Disable CONFIG_DISTRO_DEFAULTS

This is not used for sandbox, so drop it. Enable the things that it
controls to avoid dstrastic changes in the config settings for
sandbox builds.

The end result is that these are enabled:

   BOOTMETH_DISTRO
   BOOTSTD_DEFAULTS

and these are disabled:

   USE_BOOTCOMMAND
   BOOTCOMMAND (was "run distro_bootcmd")
   DISTRO_DEFAULTS

Note that the tools-only build has already disabled DISTRO_DEFAULTS
and BOOTSTD_FULL

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoblock: rkmtd: select CONFIG_RANDOM_UUID explicitly
AKASHI Takahiro [Thu, 26 Oct 2023 18:31:32 +0000 (14:31 -0400)] 
block: rkmtd: select CONFIG_RANDOM_UUID explicitly

This option is necessary to compile any way.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
2 years agolib: uuid: move CONFIG_RANDOM_UUID
AKASHI Takahiro [Thu, 26 Oct 2023 18:31:31 +0000 (14:31 -0400)] 
lib: uuid: move CONFIG_RANDOM_UUID

This option is independent from any commands and should be managed
under lib. For instance, drivers/block/rkmtd.c is a user.

It would be better to remove this configuration.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
2 years agofastboot: Depend on CMDLINE
Tom Rini [Thu, 26 Oct 2023 18:31:30 +0000 (14:31 -0400)] 
fastboot: Depend on CMDLINE

Much of the functionality of fastboot relies on being able to run
commands as defined in the environment. This means it does depend on
CMDLINE being enabled.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agocmd: Make most commands depend on CMDLINE
Simon Glass [Thu, 26 Oct 2023 18:31:29 +0000 (14:31 -0400)] 
cmd: Make most commands depend on CMDLINE

If we disable CMDLINE then we should not ask about enabling the hush
parser nor any of the commands that would be run on the command line as
it is no longer available. Convert the CMDLINE option into a menuconfig
and make every command referenced under cmd/Kconfig depend on it.

This leaves as future work moving the commands that are not under the
cmd/ hierarchy as future work.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoboot: Make preboot and bootcmd require CMDLINE
Tom Rini [Thu, 26 Oct 2023 18:31:28 +0000 (14:31 -0400)] 
boot: Make preboot and bootcmd require CMDLINE

In order for a predefined "preboot" or "bootcmd" to be executed by the
running system we must have a command line.  Add CMDLINE as a
dependency.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agobootmeth_script: Depend on CMDLINE
Tom Rini [Thu, 26 Oct 2023 18:31:27 +0000 (14:31 -0400)] 
bootmeth_script: Depend on CMDLINE

As this particular bootmeth requires the command line and assorted
commands to function, make sure we have CMDLINE enabled.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agobootmeth_cros: Require bootm.o and bootm_os.o
Tom Rini [Thu, 26 Oct 2023 18:31:26 +0000 (14:31 -0400)] 
bootmeth_cros: Require bootm.o and bootm_os.o

In order to use bootmeth_cros, at least on non-X86, we need to be able
to start any type of kernel that the "bootm" code paths can handle.  Add
these objects to the required list for this option.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoboot: Move SYS_BOOTM_LEN to be by LEGACY_IMAGE_FORMAT
Tom Rini [Thu, 26 Oct 2023 18:31:25 +0000 (14:31 -0400)] 
boot: Move SYS_BOOTM_LEN to be by LEGACY_IMAGE_FORMAT

This particular option is required for booting all image types,
regardless of if we are starting an OS via command line or something
else.  Move the question for SYS_BOOTM_LEN to be by the question for
LEGACY_IMAGE_FORMAT, as that's where our generic OS questions start.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoboot: Rework BOOT_DEFAULTS to allow for CMDLINE to be disabled
Tom Rini [Thu, 26 Oct 2023 18:31:24 +0000 (14:31 -0400)] 
boot: Rework BOOT_DEFAULTS to allow for CMDLINE to be disabled

We split BOOT_DEFAULTS to have BOOT_DEFAULTS_FEATURES and
BOOT_DEFAULTS_CMDS that in turn list general features or commands that
we want enabled when BOOT_DEFAULTS is selected.  We only select
BOOT_DEFAULTS_CMDS if CMDLINE is set.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoboot: Make DISTRO_DEFAULTS select CMDLINE
Tom Rini [Thu, 26 Oct 2023 18:31:23 +0000 (14:31 -0400)] 
boot: Make DISTRO_DEFAULTS select CMDLINE

The implementation of DISTRO_DEFAULTS is done in environment scripts and
requires the command line in order to work. Because of this, select
CMDLINE here.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoautoboot: Correct dependencies on CMDLINE
Simon Glass [Thu, 26 Oct 2023 18:31:22 +0000 (14:31 -0400)] 
autoboot: Correct dependencies on CMDLINE

Make AUTOBOOT depend on CMDLINE since it is mostly meaningless without it.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
2 years agobootmeth: Make BOOTMETH_EFILOADER depend on CMD_BOOTEFI
Tom Rini [Thu, 26 Oct 2023 18:31:21 +0000 (14:31 -0400)] 
bootmeth: Make BOOTMETH_EFILOADER depend on CMD_BOOTEFI

Today, the bootmeth for using the EFI loader via bootefi depends on
calling the bootefi command directly, so make this in turn depend on
CMD_BOOTEFI.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoefi: Rearrange the Kconfig for CMD_BOOTEFI_BOOTMGR
Simon Glass [Thu, 26 Oct 2023 18:31:20 +0000 (14:31 -0400)] 
efi: Rearrange the Kconfig for CMD_BOOTEFI_BOOTMGR

The command should not be used to enable library functionality. Add a
new BOOTEFI_BOOTMGR Kconfig for that. Adjust the conditions so that the
same code is built.

Signed-off-by: Simon Glass <sjg@chromium.org>
Suggested-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
2 years agocli_simple: Rework this support slightly
Tom Rini [Thu, 26 Oct 2023 18:31:19 +0000 (14:31 -0400)] 
cli_simple: Rework this support slightly

The interactive portion of our non-HUSH 'simple' parser is guarded by
CONFIG_CMDLINE already.  Much of the code behind this simple parser is
also used as "input" parser, such as from menu interfaces and so forth
and not strictly command line input.  To support this, always build the
assorted cli object files, but guard the interactive portions of
cli_simple.c with a CMDLINE check.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agovideo: Don't require the font command
Simon Glass [Thu, 26 Oct 2023 18:31:18 +0000 (14:31 -0400)] 
video: Don't require the font command

While it is nice to have the font command, using 'select' makes it
impossible to build the console code without it. Stop using 'select' and
make it default if CONSOLE_TRUETYPE is enabled when asking the command.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agotest: Make UNIT_TEST depend on CMDLINE
Simon Glass [Thu, 26 Oct 2023 18:31:17 +0000 (14:31 -0400)] 
test: Make UNIT_TEST depend on CMDLINE

Many tests make some use of the command line, so require it for all test
code.

This could be teased apart, perhaps with a test flag indicating that it
uses the command line. Leave that for later.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
2 years agoenv: Move env_set() out of cmd/nvedit.c and in to env/common.c
Tom Rini [Thu, 26 Oct 2023 18:31:16 +0000 (14:31 -0400)] 
env: Move env_set() out of cmd/nvedit.c and in to env/common.c

Inside of env/common.c we already have our helper env_set_xxx functions,
and even have a comment that explains why env_set() itself wasn't moved.
We now handle that move. This requires that we rename the previous
_do_env_set() to env_do_env_set() and note it as an internal env
function. Add comments about this function to explain why we do this
when we add the prototype. Add a new function, env_inc_id() to allow for
the counter to be updated by both commands and callers, and document
this as well by the prototype.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoKconfig: Move CONFIG_SYS_[CP]BSIZE to common/Kconfig
Tom Rini [Thu, 26 Oct 2023 18:31:15 +0000 (14:31 -0400)] 
Kconfig: Move CONFIG_SYS_[CP]BSIZE to common/Kconfig

Move CONFIG_SYS_CBSIZE (console buffer size) and CONFIG_SYS_PBSIZE
(console print buffer size) out of cmd/Kconfig and in to common/Kconfig.
Create help entries for both which explain their usage and why they are
both not entirely command centric.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoqemu: Correct CMD_QFW dependencies in Kconfig
Tom Rini [Thu, 26 Oct 2023 18:31:14 +0000 (14:31 -0400)] 
qemu: Correct CMD_QFW dependencies in Kconfig

Rather than selecting CMD_QFW, we should make the option itself by
enabled by default on these platforms.  Then in the board-specific
Kconfig we should select the appropriate back-end as needed if the
command is enabled.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoversion: Separate our version string from the version command
Tom Rini [Thu, 26 Oct 2023 18:31:13 +0000 (14:31 -0400)] 
version: Separate our version string from the version command

In order to be able to disable all commands we need to construct our
version string in a common file, and have the version command reference
that string, like the other users of it do.  Create common/version.c
with just the strings.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agodfu: Make DFU_TFTP depend on NETDEVICES
Tom Rini [Thu, 26 Oct 2023 18:31:12 +0000 (14:31 -0400)] 
dfu: Make DFU_TFTP depend on NETDEVICES

In order to do a DFU update over TFTP we need to have some network
device available, so make this depend on NETDEVICES

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agovirtio: Make VIRTIO_NET depend on NETDEVICES
Tom Rini [Thu, 26 Oct 2023 18:31:11 +0000 (14:31 -0400)] 
virtio: Make VIRTIO_NET depend on NETDEVICES

As VIRTIO_NET is the symbol for enabling network devices, make this
depend on NETDEVICES

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agobuildman: Use oldconfig when adjusting the config
Simon Glass [Thu, 26 Oct 2023 18:31:10 +0000 (14:31 -0400)] 
buildman: Use oldconfig when adjusting the config

We cannot be sure that the new config is consistent, particularly when
changing a major item like CONFIG_CMDLINE. Use 'make oldconfig' to
check that and avoid any such problems.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 years agoMerge tag 'xilinx-for-v2024.01-rc3' of https://source.denx.de/u-boot/custodians/u...
Tom Rini [Tue, 7 Nov 2023 15:36:23 +0000 (10:36 -0500)] 
Merge tag 'xilinx-for-v2024.01-rc3' of https://source.denx.de/u-boot/custodians/u-boot-microblaze

Xilinx changes for v2024.01-rc3

xilinx:
- Disable lock in mini spi configurations

zynq:
- DTS syncups
- Kconfig updates

zynqmp:
- DTS syncups
- Kconfig fixups

versal:
- Make 30MHz as default freq for spi

versal net:
- Enable ADMA for mmc

serial:
- Read baudrate from DT

spi:
- Put spi lock under one Kconfig
- Support 64bit addresses in cadance_ospi
- zynqmp_gqspi - change logging support

firmware:
- Handle errors in zynqmp_pm_feature()

include:
- Sync vsc8531 dt binding with kernel

2 years agoMAINTAINERS: fastboot: add Mattijs
Mattijs Korpershoek [Thu, 5 Oct 2023 13:04:26 +0000 (15:04 +0200)] 
MAINTAINERS: fastboot: add Mattijs

Fastboot has been marked as orphaned since 2021.
Since I'm interested in maintaining this, assign myself.

Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Lukasz Majewski <lukma@denx.de>
2 years agoMAINTAINERS: usb gadget: add Mattijs
Mattijs Korpershoek [Thu, 5 Oct 2023 13:04:25 +0000 (15:04 +0200)] 
MAINTAINERS: usb gadget: add Mattijs

It seems that Lukasz and Marek could get some help in maintaining the
usb gadget drivers.

Assign myself as maintainer.

Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Lukasz Majewski <lukma@denx.de>
2 years agodt-bindings: Remove VSC8531 specific RGMII delay definitions
Michal Simek [Wed, 1 Nov 2023 15:05:16 +0000 (16:05 +0100)] 
dt-bindings: Remove VSC8531 specific RGMII delay definitions

Based on Linux upstream discussion value enumeration shouldn't be used.
Instead of it delay in pS should be used that's why remove it from the
header.

Link: https://lore.kernel.org/all/YNsm%2F0dmpBgO8mqr@lunn.ch/
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/bbd343474856a67252f3b31d22b3b5a80ad04043.1698851109.git.michal.simek@amd.com
2 years agoarm64: zynqmp: Add description for nvmem efuse layout
Michal Simek [Wed, 1 Nov 2023 12:06:15 +0000 (13:06 +0100)] 
arm64: zynqmp: Add description for nvmem efuse layout

Based on discussion with DT folks at link below there is not going to be
any name restrictions for child names. That's why add description for
current nvmem layout.

Link: https://lore.kernel.org/lkml/20231013101450.573-3-praveen.teja.kundanala@amd.com/
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/af81299cafc2bd13ed30dcd69bdf6efb5fbb7f68.1698840373.git.michal.simek@amd.com
2 years agoARM: zynq: Add partition description
Michal Simek [Wed, 1 Nov 2023 11:22:14 +0000 (12:22 +0100)] 
ARM: zynq: Add partition description

Xilinx is using standard mtd partition layout for quite a long time. It is
used for testing purpose on evaluation boards.
Also #address/size-cells shouldn't be present without nodes which should
use them that's why move them from zynq-7000.dtsi to nand/nor nodes
directly.

The patch was tested on zc706 and zedboard(with also increasing max
frequency and rx bus width).

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/4c3348981bba32d3892194420d78fe8621c47534.1698837725.git.michal.simek@amd.com
2 years agoxilinx: Enable SPI_FLASH_MTD by default
Michal Simek [Wed, 1 Nov 2023 11:22:13 +0000 (12:22 +0100)] 
xilinx: Enable SPI_FLASH_MTD by default

Provide access to qspi flash layout via mtd command.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/b3c4a3eddb71aab9535b034380d0dbae770828d4.1698837725.git.michal.simek@amd.com
2 years agoarm64: zynqmp: Comment all smmu entries
Michal Simek [Wed, 1 Nov 2023 08:01:03 +0000 (09:01 +0100)] 
arm64: zynqmp: Comment all smmu entries

SMMU is disabled by default and not all masters can be enabled at the same
time because of limited number of entries. That's why comment all iommu
properties but keep them for reference in DT. In XEN case they should be
added back and Xen should have SMMU enabled by default.
Also add IDs for DP and DPDMA.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/e868c27c52ded5d8ef25f75ba394b1ab3b31b80a.1698825657.git.michal.simek@amd.com
2 years agoarm64: versal-net: Add DTSes for mini qspi/ospi configuration
Michal Simek [Thu, 26 Oct 2023 14:04:52 +0000 (16:04 +0200)] 
arm64: versal-net: Add DTSes for mini qspi/ospi configuration

Mini U-Boot is running out of OCM and it's only purpose is to program non
volatile memories. There are different configurations which ospi/qspi can
be that's why describe them via DT.
DT binding is already approved that's why there is no reason not to add it.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/a99a8d72201a782fc811715942dea97fb5ab583b.1698329087.git.michal.simek@amd.com
2 years agoarm64: versal: Add DTSes for mini qspi/ospi configuration
Michal Simek [Thu, 26 Oct 2023 14:04:51 +0000 (16:04 +0200)] 
arm64: versal: Add DTSes for mini qspi/ospi configuration

Mini U-Boot is running out of OCM and it's only purpose is to program non
volatile memories. There are different configurations which ospi/qspi can
be that's why describe them via DT.
DT binding is already approved that's why there is no reason not to add it.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/9518ab1c4299a45e800b8611172edd78c9243132.1698329087.git.michal.simek@amd.com
2 years agoARM: zynq: Add DTSes for mini qspi configurations
Michal Simek [Thu, 26 Oct 2023 14:04:50 +0000 (16:04 +0200)] 
ARM: zynq: Add DTSes for mini qspi configurations

Mini U-Boot is running out of OCM and it's only purpose is to program non
volatile memories. There are different configurations which qspi can be
that's why describe them via DT.
DT binding is already approved that's why there is no reason not to add it.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/e7d31a9d9c4a76e171eefc619f31fabd0831a614.1698329087.git.michal.simek@amd.com
2 years agoARM: zynq: Add DTSes for mini qspi configurations
Michal Simek [Thu, 26 Oct 2023 14:04:49 +0000 (16:04 +0200)] 
ARM: zynq: Add DTSes for mini qspi configurations

Mini U-Boot is running out of OCM and it's only purpose is to program non
volatile memories. There are different configurations which qspi can be
that's why describe them via DT.
DT binding is already approved that's why there is no reason not to add it.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/28b3cdd7e91b2b4c3c36d0bf65aa5bac042f248c.1698329087.git.michal.simek@amd.com
2 years agoxilinx: versal: Setup 30MHz as default spi frequency
Michal Simek [Tue, 31 Oct 2023 10:50:54 +0000 (11:50 +0100)] 
xilinx: versal: Setup 30MHz as default spi frequency

Align default SPI configuration with ZynqMP/Versal NET.
There is no reason to run on lower frequencies.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/c1d6ebd659f3002649b1200c926f8b9ed3132085.1698749448.git.michal.simek@amd.com
2 years agoarm64: versal-net: enable CONFIG_MMC_SDHCI_ADMA
Venkatesh Yadav Abbarapu [Fri, 27 Oct 2023 03:04:46 +0000 (08:34 +0530)] 
arm64: versal-net: enable CONFIG_MMC_SDHCI_ADMA

The Standard Host Controller Interface (SDHCI) specification version
3.00 adds support for Advanced DMA (ADMA) for both 64 and 32 bit
widths of DMA. This significantly improves read and write throughput.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20231027030446.4009-1-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
2 years agoarm64: zynqmp: Fix Kconfig entry indentation
Michal Simek [Thu, 26 Oct 2023 06:34:31 +0000 (08:34 +0200)] 
arm64: zynqmp: Fix Kconfig entry indentation

Use tabs instead of space for entry indentation which is standard coding
style.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/ff28e719de82258c066f1fedae87f88597f367b5.1698302068.git.michal.simek@amd.com
2 years agoarm: xilinx: Add missing dual parallel flash description
Michal Simek [Mon, 23 Oct 2023 07:21:53 +0000 (09:21 +0200)] 
arm: xilinx: Add missing dual parallel flash description

Describe flash memories based on the latest DT binding.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/cddf2909d0445eba08b998d42ffc31c1fa3132b9.1698045694.git.michal.simek@amd.com
2 years agoarm64: zynqmp: Disable Tri-state for MIO38 Pin
Tejas Bhumkar [Fri, 20 Oct 2023 05:06:22 +0000 (10:36 +0530)] 
arm64: zynqmp: Disable Tri-state for MIO38 Pin

gpio38 is used in SOM's kv260 to reset the Ethernet PHY.
At present, HW reset is not working properly as Tri-state 
is enabled for MIO38, causing inappropriate PHY register reads.

Disabled Tri-state for MIO38 to make HW reset work.

Tri-state disable :
ZynqMP> md 0xFF180208 2
ff18020800bfe7a3 00000540

Tri-state enable :
ZynqMP> md 0xFF180208 2
ff18020800bfe7e3 00000540

Signed-off-by: Tejas Bhumkar <tejas.arvind.bhumkar@amd.com>
Link: https://lore.kernel.org/r/20231020050622.972750-1-tejas.arvind.bhumkar@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
2 years agozynqmp: migrate gqspi debug to logging
Ibai Erkiaga [Fri, 13 Oct 2023 12:37:27 +0000 (13:37 +0100)] 
zynqmp: migrate gqspi debug to logging

The following patch migrates the usage of debug and printf functions
to the relevant logging function as per U-Boot DM guidelines.

Additionally some of the debugging statements have been rearanged for
a more meaningfull debug experience.

aarch64-linux-gnu-size reports 229 bytes less when debug is enabled at
file level, while is just 5bytes more when disabled.

Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@amd.com>
Link: https://lore.kernel.org/r/20231013123739.2757979-1-ibai.erkiaga-elorza@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
2 years agoarm64: dts: zynqmp: make hw-ecc as the default ecc mode
Amit Kumar Mahapatra [Thu, 12 Oct 2023 13:58:21 +0000 (15:58 +0200)] 
arm64: dts: zynqmp: make hw-ecc as the default ecc mode

Except for Linux no other component (i.e., u-boot, fsbl or BootRom) of the
software stack supports software ecc engine. So, make hw-ecc as the default
ecc mode.

Signed-off-by: Amit Kumar Mahapatra <amit.kumar-mahapatra@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/f47b95616eb40d3a9908ca60df94ec6e873b071c.1697119098.git.michal.simek@amd.com
2 years agoARM: zynq: Disable the config CONFIG_SPI_FLASH_USE_4K_SECTORS
Venkatesh Yadav Abbarapu [Thu, 12 Oct 2023 13:39:56 +0000 (15:39 +0200)] 
ARM: zynq: Disable the config CONFIG_SPI_FLASH_USE_4K_SECTORS

Lock size for the flashes will be in terms of sector size, so
disable the CONFIG_SPI_FLASH_USE_4K_SECTORS and read it from the
flash itself.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/8e5c2bf3b7e5f366c4e261e8055ea254bda53aa9.1697117993.git.michal.simek@amd.com
2 years agoarm64: zynqmp: Disable the lock option for mini qspi
Venkatesh Yadav Abbarapu [Thu, 12 Oct 2023 13:37:52 +0000 (15:37 +0200)] 
arm64: zynqmp: Disable the lock option for mini qspi

As mini configs are required only for flashing the images, so
disabling the lock config which will save nearly 6KB of memory.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/374d6b3a46d19b7ee171dfe8071676098db93e25.1697117869.git.michal.simek@amd.com
2 years agoarm64: zynqmp: remove snps, xhci-stream-quirk property for usb
Piyush Mehta [Thu, 12 Oct 2023 12:58:51 +0000 (14:58 +0200)] 
arm64: zynqmp: remove snps, xhci-stream-quirk property for usb

To sync up with the upstream bulk-stream feature, removed
'snps,xhci-stream-quirk' DT property for usb.

Signed-off-by: Piyush Mehta <piyush.mehta@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/1f4ecfe3ea6a4d0d8d8de324f5dffd3efc86656a.1697115523.git.michal.simek@amd.com
2 years agoarm64: zynqmp: Remove address/size-cells from ams node
Michal Simek [Thu, 12 Oct 2023 12:58:50 +0000 (14:58 +0200)] 
arm64: zynqmp: Remove address/size-cells from ams node

Remove unused address/size-cells which is also done upstream that's why
this is pretty much sync patch with upstream.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/0ca8d8fe245ad7cb665f5333202d83f70acfc11f.1697115523.git.michal.simek@amd.com
2 years agoRevert "arm64: zynqmp: Add power domain description for PL"
Michal Simek [Thu, 12 Oct 2023 12:58:49 +0000 (14:58 +0200)] 
Revert "arm64: zynqmp: Add power domain description for PL"

This reverts commit d59fac2f3f247470708a1aed1af96802a05e0e61.

This power domain shouldn't be enabled by default. Power domain behavior
should be handled on case by case basis. Adding this property to
zynqmp.dtsi is breaking some suspend/resume cases that's why remove it
from this file.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/7ed2a46383c6918fbbaca2d618459b1ee58f865c.1697115523.git.michal.simek@amd.com
2 years agoarm64: zynqmp: Remove xlnx,zynqmp-aes node
Michal Simek [Thu, 12 Oct 2023 12:58:48 +0000 (14:58 +0200)] 
arm64: zynqmp: Remove xlnx,zynqmp-aes node

AES can be discovered via firmware interface that's why remove node for it.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/eaf575a6ca92f8c10cefb447c08c1292025deb74.1697115523.git.michal.simek@amd.com
2 years agoarm64: zynqmp: Use mdio node by vp-x-a2785-00-revA and vpk120-revA
Michal Simek [Thu, 12 Oct 2023 12:58:47 +0000 (14:58 +0200)] 
arm64: zynqmp: Use mdio node by vp-x-a2785-00-revA and vpk120-revA

All boards have been converted to use mdio node that's why move ethernet
phys under mdio node too.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/6c60f5d29b9d9992bd0130fd263c8ed13cb8166c.1697115523.git.michal.simek@amd.com
2 years agoarm64: zynqmp: Remove fclk driver
Michal Simek [Thu, 12 Oct 2023 08:22:16 +0000 (10:22 +0200)] 
arm64: zynqmp: Remove fclk driver

fclk will never go upstream that's why removing this node from DT.
All PL (programmable logic) based IPs should handle clocks self without
using this workaround.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/fbb8665b8a58dbe96349abfe5492a509939e165b.1697098930.git.michal.simek@amd.com
2 years agospi: cadence_ospi_versal: Add support for 64-bit address
Venkatesh Yadav Abbarapu [Wed, 11 Oct 2023 03:15:15 +0000 (08:45 +0530)] 
spi: cadence_ospi_versal: Add support for 64-bit address

When 64-bit address is passed only lower 32-bit address
is getting updated. Program the upper 32-bit address in the
DMA destination memory address MSBs register.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20231011031515.4151-1-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
2 years agodrivers: firmware: Handle error case in the zynqmp_pm_feature
Venkatesh Yadav Abbarapu [Wed, 11 Oct 2023 02:56:47 +0000 (08:26 +0530)] 
drivers: firmware: Handle error case in the zynqmp_pm_feature

Unhandled error coming from xilinx_pm_request() but return
value is not read back that's why getting sparse warning
as below:
warning: variable 'ret' set but not used [-Wunused-but-set-variable].
In case of error return the "ret" value.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20231011025647.17200-1-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
2 years agoarm64: versal_net: Disable the lock option for mini ospi and qspi
Venkatesh Yadav Abbarapu [Tue, 3 Oct 2023 03:17:15 +0000 (08:47 +0530)] 
arm64: versal_net: Disable the lock option for mini ospi and qspi

As mini configs are required only for flashing the images, so
disabling the lock config which will save nearly 6KB of memory.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20231003031715.5343-4-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
2 years agoarm64: versal: Disable the lock option for mini ospi and qspi
Venkatesh Yadav Abbarapu [Tue, 3 Oct 2023 03:17:14 +0000 (08:47 +0530)] 
arm64: versal: Disable the lock option for mini ospi and qspi

As mini configs are required only for flashing the images, so
disabling the lock config which will save nearly 6KB of memory.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20231003031715.5343-3-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
2 years agomtd: spi-nor: Add spi flash lock config option
Venkatesh Yadav Abbarapu [Tue, 3 Oct 2023 03:17:13 +0000 (08:47 +0530)] 
mtd: spi-nor: Add spi flash lock config option

Provide an explicit configuration option to disable default "lock"
of any flash chip which supports locking. By disabling the lock
config will save some amount of memory and also don't expose the
lock functionality to the users i.e., via sf protect command.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20231003031715.5343-2-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
2 years agoserial: zynqmp: Fetch baudrate from dtb and update
Algapally Santosh Sagar [Thu, 21 Sep 2023 11:20:43 +0000 (16:50 +0530)] 
serial: zynqmp: Fetch baudrate from dtb and update

The baudrate configured in .config is taken by default by serial. If
change of baudrate is required then the .config needs to changed and
u-boot recompilation is required or the u-boot environment needs to be
updated.

To avoid this, support is added to fetch the baudrate directly from the
device tree file and update.
The serial, prints the log with the configured baudrate in the dtb.
The commit c4df0f6f315c ("arm: mvebu: Espressobin: Set default value for
$fdtfile env variable") is taken as reference for changing the default
environment variable.

The default environment stores the default baudrate value, When default
baudrate and dtb baudrate are not same glitches are seen on the serial.
So, the environment also needs to be updated with the dtb baudrate to
avoid the glitches on the serial.

Also add test to cover this new function.

Signed-off-by: Algapally Santosh Sagar <santoshsagar.algapally@amd.com>
Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20230921112043.3144726-3-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
2 years agoconfigs: Add support in Kconfig and convert for armada boards
Algapally Santosh Sagar [Thu, 21 Sep 2023 11:20:42 +0000 (16:50 +0530)] 
configs: Add support in Kconfig and convert for armada boards

Move the DEFAULT_ENV_IS_RW to Kconfig for easier configuration.
Hence, add the CONFIG_DEFAULT_ENV_IS_RW config to the defconfig files
to allow enabling them for armada boards.

Signed-off-by: Algapally Santosh Sagar <santoshsagar.algapally@amd.com>
Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Link: https://lore.kernel.org/r/20230921112043.3144726-2-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
2 years agoPrepare v2024.01-rc2 v2024.01-rc2
Tom Rini [Mon, 6 Nov 2023 19:46:41 +0000 (14:46 -0500)] 
Prepare v2024.01-rc2

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoconfigs: Resync with savedefconfig
Tom Rini [Mon, 6 Nov 2023 19:41:58 +0000 (14:41 -0500)] 
configs: Resync with savedefconfig

Rsync all defconfig files using moveconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoMerge branch '2023-11-06-assorted-changes'
Tom Rini [Mon, 6 Nov 2023 15:20:42 +0000 (10:20 -0500)] 
Merge branch '2023-11-06-assorted-changes'

- One new MIPS platform and a mailmap update

2 years ago.mailmap: map Pali Rohár
Heinrich Schuchardt [Mon, 6 Nov 2023 09:09:08 +0000 (01:09 -0800)] 
.mailmap: map Pali Rohár

Pali expressed that he does not want to receive mails relating to his past
contributions.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2 years agobmips: Add Inteno XG6846 board
Linus Walleij [Tue, 26 Sep 2023 09:23:39 +0000 (11:23 +0200)] 
bmips: Add Inteno XG6846 board

This adds support for the Inteno XG6846 board based on the
Broadcom MIPS 6328 SoC.

The default boot will read a uImage from flash and boot it.

Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2 years agoMerge tag 'u-boot-amlogic-20231106' of https://source.denx.de/u-boot/custodians/u...
Tom Rini [Mon, 6 Nov 2023 14:47:13 +0000 (09:47 -0500)] 
Merge tag 'u-boot-amlogic-20231106' of https://source.denx.de/u-boot/custodians/u-boot-amlogic

- fixup to also enabled DFU RAM boot for libretech-ac
- sm fix to bind child sm devices in the device tree
- add missing A1 clocks for USB stack

2 years agoMerge branch '2023-11-06-networking-updates'
Tom Rini [Mon, 6 Nov 2023 14:45:33 +0000 (09:45 -0500)] 
Merge branch '2023-11-06-networking-updates'

- A few dhcp related improvements, be clearer to the user when we don't
  have a MAC address, assorted driver/phy improvements and new drivers.

2 years agoARM: configs: libretech-ac: enable USB_DFU like in meson64.h
Neil Armstrong [Thu, 2 Nov 2023 13:49:58 +0000 (14:49 +0100)] 
ARM: configs: libretech-ac: enable USB_DFU like in meson64.h

USB_DFU was added in meson64.h but is missing in libretech-ac.h,
fix this to enable DFU RAM boot for libretech-ac.

Fixes 4aa027b3f8 ("configs: meson64: add alternate USB DFU boot target")

Link: https://lore.kernel.org/r/20231102-libretech-ac-fix-dfu-v1-1-112379165028@linaro.org
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2 years agodrivers: sm: bind child sm devices in the device tree
Dmitry Rokosov [Wed, 1 Nov 2023 14:04:57 +0000 (17:04 +0300)] 
drivers: sm: bind child sm devices in the device tree

One well-known sm child device that provides secure power control is the
Secure Power Controller. This device utilizes SMC calls to communicate
with power domains on the secure monitor side.

Signed-off-by: Dmitry Rokosov <ddrokosov@salutedevices.com>
Signed-off-by: Alexey Romanov <avromanov@salutedevices.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20231101140500.9025-3-avromanov@salutedevices.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2 years agoclk: a1: add new clocks for USB stack
Alexey Romanov [Wed, 1 Nov 2023 14:04:56 +0000 (17:04 +0300)] 
clk: a1: add new clocks for USB stack

Since we sync device tree with Linux, we have to add this
clock definition for USB stack.

Signed-off-by: Alexey Romanov <avromanov@salutedevices.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20231101140500.9025-2-avromanov@salutedevices.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2 years agonet: designware: add DMA offset awareness
Baruch Siach [Wed, 25 Oct 2023 08:08:44 +0000 (11:08 +0300)] 
net: designware: add DMA offset awareness

Older DesignWare Ethernet MAC versions that this driver supports can
only work with 32-bit DMA source/destination addresses. Some platforms
have no physical RAM at the lowest 4GB address space. For these
platforms the driver must translate DMA addresses to/from physical
memory addresses.

Call translation routines so that properly configured platforms can use
the DesignWare Ethernet MAC. For platforms using device-tree this
usually means adding dma-ranges property to the bus the device node is
in.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
2 years agonet: eth-uclass: Improve error message when MAC is not found
Fabio Estevam [Fri, 20 Oct 2023 12:41:51 +0000 (09:41 -0300)] 
net: eth-uclass: Improve error message when MAC is not found

While bringinp up a new board without the MAC fuses programmed,
the following error message was observed:

Error: ethernet@30bf0000 address not set.

Improve the error message to make it clearer the reason of
the failure.

Signed-off-by: Fabio Estevam <festevam@denx.de>
2 years agonet: e1000: Drop e1000_eth_ids[]
Bin Meng [Wed, 11 Oct 2023 10:58:25 +0000 (18:58 +0800)] 
net: e1000: Drop e1000_eth_ids[]

e1000_eth_ids holds compatible strings for e1000 devices, but it
is meaningless as e1000 is a PCI device and there is no such
compatible string assigned to e1000 by the DT bindings community.

Drop it.

Signed-off-by: Bin Meng <bmeng@tinylab.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 years agonet: Add option for tracing packets
Sean Anderson [Sun, 8 Oct 2023 01:53:12 +0000 (21:53 -0400)] 
net: Add option for tracing packets

Add an option to trace all packets send/received. This can be helpful when
debugging protocol issues, as the packets can then be imported into
wireshark [1] and analyzed further.

[1] https://www.wireshark.org/docs/wsug_html_chunked/ChIOImportSection.html

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 years agonet: phy: TI DP83869 fix invalid clock delay configuration
Frank de Brabander [Fri, 6 Oct 2023 12:24:39 +0000 (14:24 +0200)] 
net: phy: TI DP83869 fix invalid clock delay configuration

Setting the clock delay from the device tree settings
rx-internal-delay-ps and tx-internal-delay-ps was broken:

 - The expected value in the device tree is suppose to be a
   delay in picoseconds, but the driver only allowed an array index.
 - Driver converted this array index to the actual delay in
   picoseconds and tried to apply this in the device register. This
   however is not a valid register value. The actual logic here was
   reversed, it converted an register representation of the delay to
   the device tree delay in picoseconds.

Only when the internal delays were NOT configured in the device tree
and they default value of 7 (=2000ps) was used, a valid value was
loaded in the register.

Signed-off-by: Frank de Brabander <debrabander@gmail.com>
2 years agonet: eth-uclass: Setup ROM source only when ROM reading passes
Michal Simek [Fri, 15 Sep 2023 14:10:06 +0000 (16:10 +0200)] 
net: eth-uclass: Setup ROM source only when ROM reading passes

There is no reason to setup ROM source if read_rom_hwaddr hook doesn't
exist or reading mac address fails. It is ending up with confusion about
mac address source.

It is nicely visible if you put mac address to DT as
local-mac-address = [ff ff ff ff ff ff];
but also save ethaddr to variables
setenv -f ethaddr 02:18:31:7e:3e:01

Before this patch U-Boot prints that source is ROM
Address in ROM is ff:ff:ff:ff:ff:ff
Address in environment is 02:18:31:7e:3e:01

After that source is DT:
Address in DT is ff:ff:ff:ff:ff:ff
Address in environment is 02:18:31:7e:3e:01

Signed-off-by: Michal Simek <michal.simek@amd.com>
2 years agonet: add hifemac_mdio MDIO bus driver for HiSilicon platform
Yang Xiwen [Tue, 22 Aug 2023 17:03:43 +0000 (01:03 +0800)] 
net: add hifemac_mdio MDIO bus driver for HiSilicon platform

It adds the driver for the internal MDIO bus of HIFEMAC Ethernet
controller.  It's based on the mainstream linux driver.

Signed-off-by: Yang Xiwen <forbidden405@outlook.com>
2 years agonet: add hifemac Ethernet driver for HiSilicon platform
Yang Xiwen [Tue, 22 Aug 2023 17:03:42 +0000 (01:03 +0800)] 
net: add hifemac Ethernet driver for HiSilicon platform

It adds the driver for HIFEMAC Ethernet controller found on HiSilicon
SoCs like Hi3798MV200.  It's based on the mainstream linux driver, but
quite a lot of code gets rewritten and cleaned up to adopt u-boot driver
model.

Signed-off-by: Yang Xiwen <forbidden405@outlook.com>
2 years agonet: mv88e6xxx: add Clause 45 support
Robert Marko [Tue, 8 Aug 2023 16:05:16 +0000 (18:05 +0200)] 
net: mv88e6xxx: add Clause 45 support

Marvell LinkStreet switches support Clause 45 MDIO on the internal bus.

C45 read or writes require the register address to be written first to
the SMI PHY Data register, and then a special C45 Write Address Register
OP is used on the SMI PHY Register before making a C45 Read Data Register
OP and being able to actually read the register.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2 years agonet: mv88e6xxx: use generic bitfield macros for MDIO
Robert Marko [Tue, 8 Aug 2023 16:05:15 +0000 (18:05 +0200)] 
net: mv88e6xxx: use generic bitfield macros for MDIO

Driver is currently defining the mask and bit shifting itself,
there is no need for that as U-Boot has generic bitfield macros that help
us achieve the same result but in a cleaner way.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2 years agonet: ftgmac100: Add reset control
Dylan Hung [Thu, 27 Jul 2023 01:58:14 +0000 (09:58 +0800)] 
net: ftgmac100: Add reset control

Add optional reset control, especially for the Aspeed SOC. For the
hardware without a reset line, the reset assertion/deassertion will be
skipped.

Signed-off-by: Dylan Hung <dylan_hung@aspeedtech.com>
Reviewed-by: Ryan Chen <ryan_chen@aspeedtech.com>
Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2 years agonet: Get pxe config file from dhcp option 209
Sean Edmond [Tue, 25 Jul 2023 23:20:30 +0000 (16:20 -0700)] 
net: Get pxe config file from dhcp option 209

Allow dhcp server pass pxe config file full path by using option 209

Signed-off-by: Sean Edmond <seanedmond@microsoft.com>
2 years agonet: dhcp6: Fix OPT_BOOTFILE_PARAM parsing
Sean Edmond [Tue, 25 Jul 2023 23:13:29 +0000 (16:13 -0700)] 
net: dhcp6: Fix OPT_BOOTFILE_PARAM parsing

RFC 5970 states that OPT_BOOTFILE_PARAM (option 60) can be
multiple parameters that start with a 16-bit length field followed
by the parameter. For example:
[ param-len 1 (16-bits) ] [ parameter 1 (variable length) ]

This fix ensure we're considering "param-len 1" in the parsing.

Signed-off-by: Sean Edmond <seanedmond@microsoft.com>
2 years agonet: dw_eth_qos: Add 64-bit addressing
Ley Foon Tan [Fri, 9 Dec 2022 06:33:14 +0000 (14:33 +0800)] 
net: dw_eth_qos: Add 64-bit addressing

Set upper 32bit address for DMA descriptors and buffer address to support
64-bit addressing.

Signed-off-by: Ley Foon Tan <leyfoon.tan@starfivetech.com>
2 years agoMerge branch '2023-11-03-assorted-tegra-improvements'
Tom Rini [Sat, 4 Nov 2023 13:55:39 +0000 (09:55 -0400)] 
Merge branch '2023-11-03-assorted-tegra-improvements'

- Assorted improvements for Tegra platforms

2 years agosysreset: implement PALMAS sysreset functions
Svyatoslav Ryhel [Tue, 24 Oct 2023 07:49:08 +0000 (10:49 +0300)] 
sysreset: implement PALMAS sysreset functions

PALMAS PMIC family has embedded poweroff function used by some
device to initiane device power off. Implement it as sysreset
driver.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 years agosysreset: implement TPS65910 sysreset functions
Svyatoslav Ryhel [Tue, 24 Oct 2023 07:49:07 +0000 (10:49 +0300)] 
sysreset: implement TPS65910 sysreset functions

TPS65910/TPS65911 PMICs have embedded power control functions
used by some device to initiane device power off. Implement it as
sysreset driver.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 years agosysreset: implement TPS80031 sysreset functions
Svyatoslav Ryhel [Tue, 24 Oct 2023 07:49:06 +0000 (10:49 +0300)] 
sysreset: implement TPS80031 sysreset functions

TPS80031/TPS80032 PMICs have embedded power control functions
used by some device to initiane device power off. Implement it as
sysreset driver.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 years agosysreset: implement MAX77663 sysreset functions
Svyatoslav Ryhel [Tue, 24 Oct 2023 07:49:05 +0000 (10:49 +0300)] 
sysreset: implement MAX77663 sysreset functions

MAX77663 PMIC has embedded poweroff function used by some
device to initiane device power off. Implement it as sysreset
driver.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 years agoarm: mach-tegra: enable sysreset driver
Svyatoslav Ryhel [Tue, 24 Oct 2023 07:49:04 +0000 (10:49 +0300)] 
arm: mach-tegra: enable sysreset driver

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 years agosysreset: tegra: create arch specific sysreset driver
Svyatoslav Ryhel [Tue, 24 Oct 2023 07:49:03 +0000 (10:49 +0300)] 
sysreset: tegra: create arch specific sysreset driver

Tegra uses built in Power Management Controller (PMC) to perform
CPU reset. Code to perform this was located in mach-tegra, so lest
create DM driver to handle this.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 years agopower: regulator: tps65911: add regulator support
Svyatoslav Ryhel [Fri, 27 Oct 2023 08:26:15 +0000 (11:26 +0300)] 
power: regulator: tps65911: add regulator support

The driver provides regulator set/get voltage enable/disable
functions for TI TPS5911 PMIC.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 years agopower: pmic: tps65910: add TPS65911 PMIC support
Svyatoslav Ryhel [Fri, 27 Oct 2023 08:26:14 +0000 (11:26 +0300)] 
power: pmic: tps65910: add TPS65911 PMIC support

Add support to bind the regulators/child nodes with the pmic.
Also adds the pmic i2c based read/write functions to access pmic
registers.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 years agopower: regulator: tps80031: add regulator support
Svyatoslav Ryhel [Fri, 27 Oct 2023 08:26:13 +0000 (11:26 +0300)] 
power: regulator: tps80031: add regulator support

The driver provides regulator set/get voltage enable/disable
functions for TI TPS80031/TPS80032 PMICs.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 years agopower: pmic: add the base TPS80031 PMIC support
Svyatoslav Ryhel [Fri, 27 Oct 2023 08:26:12 +0000 (11:26 +0300)] 
power: pmic: add the base TPS80031 PMIC support

Add support to bind the regulators/child nodes with the pmic.
Also adds the pmic i2c based read/write functions to access pmic
registers.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 years agopower: regulator: max77663: add regulator support
Svyatoslav Ryhel [Fri, 27 Oct 2023 08:26:11 +0000 (11:26 +0300)] 
power: regulator: max77663: add regulator support

The driver provides regulator set/get voltage
enable/disable functions for MAXIM MAX77663 PMICs.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2 years agopower: pmic: add the base MAX77663 PMIC support
Svyatoslav Ryhel [Fri, 27 Oct 2023 08:26:10 +0000 (11:26 +0300)] 
power: pmic: add the base MAX77663 PMIC support

Add support to bind the regulators/child nodes with the pmic.
Also adds the pmic i2c based read/write functions to access pmic
registers.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>