]> git.ipfire.org Git - thirdparty/u-boot.git/log
thirdparty/u-boot.git
8 weeks agoserial: mediatek: enable baudrate accuracy compensation
Weijie Gao [Fri, 23 May 2025 09:26:02 +0000 (17:26 +0800)] 
serial: mediatek: enable baudrate accuracy compensation

The high-speed UART from MediaTek supports baudrate accuracy
compensation when using high-speed mode 3.

This is done by calculating the first digit of the fraction part of
sample count value. The fraction value will be then used as the
reference to insert 0 to 10 sample cycle(s) to one frame (assume
that frame format is 8n1, i.e. 10 bits per frame).

The fracdiv_[l/m] registers are used to determine whether a bit in one frame
should be inserted with one sample cycle.

With typical 40MHz source clock, the actual baudrates with/without
accuracy compensation are:

Ideal    w/o compensation w/ compensation
======== ================ ===============
9600     9603             9600
115200   114942           115207
921600   930232           921659
3000000  3076923          3007519

Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
8 weeks agoserial: mediatek: fix register names and offsets
Weijie Gao [Fri, 23 May 2025 09:25:55 +0000 (17:25 +0800)] 
serial: mediatek: fix register names and offsets

Fix UART register names and offsets according to the programming
guide to allow implementing some enhanced features.

Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
2 months agonet: phy: Do not do CL22 phy reset before ethernet phy driver probe
SkyLake.Huang [Mon, 14 Oct 2024 07:06:11 +0000 (15:06 +0800)] 
net: phy: Do not do CL22 phy reset before ethernet phy driver probe

Remove unnecessary CL22 phy reset before ethernet phy driver
probe. Lots of ethernet phys requires driver to load firmware.
Before that, CL22 phy reset may lead to malfunction.

Signed-off-by: SkyLake.Huang <skylake.huang@mediatek.com>
2 months agonet: tftp: don't call stop callback from UDP handler
Alexander Sverdlin [Mon, 13 May 2024 06:26:35 +0000 (08:26 +0200)] 
net: tftp: don't call stop callback from UDP handler

Contrary to doc/develop/driver-model/ethernet.rst contract, eth_ops
.free_pkt can be called after .stop, there are several error paths in TFTP,
for instance:

eth_halt() <= tftp_handler() <= net_process_received_packet() <= eth_rx()
...
am65_cpsw_free_pkt() <= eth_rx()

Which results in (deliberately "tftpboot"ing non-existing file):

TFTP error: 'File not found' (1)
Not retrying...
am65_cpsw_nuss_port ethernet@8000000port@1: RX dma free_pkt failed -22

Avoid the DMA error message (and follow the documentation) by deferring
eth_halt() until net_loop() calls net_start_again() and only do
eth_halt_state_only() instead.

Fixes: aafda38fb266 ("Add error codes/handling for TFTP-server")
Signed-off-by: Alexander Sverdlin <alexander.sverdlin@siemens.com>
2 months agoMerge patch series "BOOTP/DHCPv4 enhancements"
Tom Rini [Fri, 23 May 2025 17:29:55 +0000 (11:29 -0600)] 
Merge patch series "BOOTP/DHCPv4 enhancements"

Sean Edmond <seanedmond@microsoft.com> says:

In our datacenter application, a single DHCP server is servicing 36000+ clients.
Improvements are required to the DHCPv4 retransmission behavior to align with
RFC and ensure less pressure is exerted on the server:
- retransmission backoff interval maximum is configurable
  (environment variable bootpretransmitperiodmax)
- initial retransmission backoff interval is configurable
  (environment variable bootpretransmitperiodinit)
- transaction ID is kept the same for each BOOTP/DHCPv4 request
  (not recreated on each retry)

For our application we'll use:
- bootpretransmitperiodmax=16000
- bootpretransmitperiodinit=2000

A new configuration BOOTP_RANDOM_XID has been added to enable a randomized
BOOTP/DHCPv4 transaction ID.

Enhance DHCPv4 sending/parsing option 209 (PXE config file).  A previous
patch was accepted.  A new patch fixes a possible double free() and
addresses latest review comments.

Link: https://lore.kernel.org/r/20240509023918.2504185-1-seanedmond@microsoft.com
2 months agonet: bootp: add config option BOOTP_RANDOM_XID
Sean Edmond [Thu, 9 May 2024 02:39:03 +0000 (19:39 -0700)] 
net: bootp: add config option BOOTP_RANDOM_XID

The new config option BOOTP_RANDOM_XID will randomize the transaction ID
for each new BOOT/DHCPv4 exchange.

Signed-off-by: Sean Edmond <seanedmond@microsoft.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
2 months agonet: bootp: BOOTP/DHCPv4 retransmission improvements
Sean Edmond [Thu, 9 May 2024 02:39:02 +0000 (19:39 -0700)] 
net: bootp: BOOTP/DHCPv4 retransmission improvements

This patch introduces 3 improvements to align with RFC 951:
- retransmission backoff interval maximum is configurable
- initial retranmission backoff interval is configurable
- transaction ID is kept the same for each BOOTP/DHCPv4 request

In applications where thousands of nodes are serviced by a single DHCP
server, maximizing the retransmission backoff interval at 2 seconds (the
current u-boot default) exerts high pressure on the DHCP server and
network layer.

RFC 951 “7.2. Client Retransmission Strategy” states that the
retransmission backoff interval should be limited to 60 seconds.  This
patch allows the interval to be configurable using the environment
variable "bootpretransmitperiodmax"

The initial retranmission backoff period defaults to 250ms, which is
also too small for these scenarios with many clients.  This patch makes
the initial retransmission interval to be configurable using the
environment variable "bootpretransmitperiodinit".

Also, on a retransmission it is not expected for the transaction ID to
change (only the 'secs' field should be updated). Let's save the
transaction ID and use the same transaction ID for each BOOTP/DHCPv4
exchange.

Signed-off-by: Sean Edmond <seanedmond@microsoft.com>
2 months agonet: Enhancements for dhcp option 209
Sean Edmond [Thu, 9 May 2024 02:39:01 +0000 (19:39 -0700)] 
net: Enhancements for dhcp option 209

- Enable option 209 by default
- Set pxelinux_configfile to NULL to avoid potential double free
- change hardcoded 209 to a define

Signed-off-by: Sean Edmond <seanedmond@microsoft.com>
2 months agocmd: ximg: handle Z_BUF_ERROR explicitly in GZIP decompression
Aristo Chen [Thu, 8 May 2025 19:37:24 +0000 (19:37 +0000)] 
cmd: ximg: handle Z_BUF_ERROR explicitly in GZIP decompression

When decompressing GZIP-compressed image parts via the `imxtract` command,
explicitly handle the `Z_BUF_ERROR` return value from `gunzip()` to provide
a clearer diagnostic. This error typically indicates that the destination
buffer is too small to hold the uncompressed data.

Signed-off-by: Aristo Chen <aristo.chen@canonical.com>
[trini: Rework to indent the whole case with { } due to not using the
C23 extension]
Signed-off-by: Tom Rini <trini@konsulko.com>
2 months agocommon: add config for board_init() call
Ben Dooks [Wed, 7 May 2025 12:23:42 +0000 (13:23 +0100)] 
common: add config for board_init() call

Add CONFIG_BOARD_INIT to specifu if the board_init() needs calling
during initcall phase, and default it to 'y' for the relevant
architectures which probably need it.

This allows anyone with a board that doesn't need it to just remove
it from the initcall list w/o an empty code block in the board init
file.

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Reviewed-by: Tom Rini <trini@konsulko.com>
2 months agoclk: mediatek: add dummy clk enable/disable ops for apmixedsys clocks
Weijie Gao [Tue, 6 May 2025 08:12:20 +0000 (16:12 +0800)] 
clk: mediatek: add dummy clk enable/disable ops for apmixedsys clocks

Starting from commit ac30d90f336 (clk: Ensure the parent clocks are enabled
while reparenting), MediaTek filogic platforms will crash on booting when
initializing mmc devices.

The root cause is that to simplify the code, we reused the topckgen ops for
apmixedsys clocks as they share the get_rate with topckgen clocks while the
clk enable/disable ops are not available for apmixedsys clocks.

Now that a clock will be enabled first before reparenting, we have to add
dummy enable/disable ops for apmixedsys to avoid unexpected behavior when
apmixedsys clocks are the parent clock of the to-be-reparenting clocks.

Fixes: 40746bf429d (clk: mediatek: add clock driver support for MediaTek MT7981 SoC)
Fixes: 37d5a9a29dc (clk: mediatek: add clock driver support for MediaTek MT7986 SoC)
Fixes: ece4e5804f5 (clk: mediatek: add clock driver support for MediaTek MT7987 SoC)
Fixes: 421436981a2 (clk: mediatek: add clock driver support for MediaTek MT7988 SoC)
Signed-off-by: Sam Shih <sam.shih@mediatek.com>
Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
2 months agoarm: dts: k3: require mandatory firmware in binman
Bryan Brattlof [Tue, 6 May 2025 13:11:45 +0000 (08:11 -0500)] 
arm: dts: k3: require mandatory firmware in binman

TI's Foundational Security (TIFS), Device Management (DM) and Device
Management and Security Control (DMSC) firmware are required for a
successful boot. Remove the 'optional' flag so binman will emit an error
if these firmware components are not found

Signed-off-by: Bryan Brattlof <bb@ti.com>
Acked-by: Wadim Egorov <w.egorov@phytec.de>
2 months agoconfigs: verdin-am62: Drop unused or redundant config options
Emanuele Ghidoli [Tue, 6 May 2025 07:08:59 +0000 (09:08 +0200)] 
configs: verdin-am62: Drop unused or redundant config options

Several Kconfig options are enabled but unused or unnecessary for our
use case. These include features such as SPL FAT support, YMODEM, and
USB keyboard. Some R5-specific configurations are not used at all,
as U-Boot proper is not executed on that core.

Cleaning them up helps reduce build size and simplifies maintenance.

Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2 months agoconfigs: phycore_am6xx_a53_defconfig: Enable BOOTDEV_SPI_FLASH
Wadim Egorov [Thu, 8 May 2025 15:15:48 +0000 (17:15 +0200)] 
configs: phycore_am6xx_a53_defconfig: Enable BOOTDEV_SPI_FLASH

Enable standard boot with SPI Flash & sync after savedefconfig.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
2 months agoboard: phytec: common: k3: Factor out mac address setup
Wadim Egorov [Thu, 8 May 2025 15:15:47 +0000 (17:15 +0200)] 
board: phytec: common: k3: Factor out mac address setup

Factor out the mac address setup into setup_mac_from_eeprom().

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
2 months agoboard: phytec: common: k3: Update boot_targets at runtime
Wadim Egorov [Thu, 8 May 2025 15:15:46 +0000 (17:15 +0200)] 
board: phytec: common: k3: Update boot_targets at runtime

Factor out boot device detection from board_late_init() into a new
boot_targets_setup() helper.

Adjust the boot_targets environment variable to favor the device we
just booted from. If boot_targets is still at its default value,
prepend the current boot device to the list; otherwise leave any
user-customized order untouched.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
2 months agoconfigs: phycore_am6xx: Default BOOTCOMMAND to standard boot
Wadim Egorov [Thu, 8 May 2025 15:15:45 +0000 (17:15 +0200)] 
configs: phycore_am6xx: Default BOOTCOMMAND to standard boot

Make the "bootflow scan -lb" command execute first and
fallback to the legacy BSP boot scripts.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
2 months agoboard: phytec: phycore_am6xx: Set bootmeths & boot_targets environment
Wadim Egorov [Thu, 8 May 2025 15:15:44 +0000 (17:15 +0200)] 
board: phytec: phycore_am6xx: Set bootmeths & boot_targets environment

As part of our migration to the standard boot process, configure the
default values for the bootmeths and boot_targets environment variables.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
2 months agoboard: phytec: phycore_am64x: Update environment for fitboot
Nathan Morrisson [Thu, 8 May 2025 15:15:43 +0000 (17:15 +0200)] 
board: phytec: phycore_am64x: Update environment for fitboot

Add fit_addr_r to the environment to allow us to boot from a FIT image.

Signed-off-by: Nathan Morrisson <nmorrisson@phytec.com>
Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
2 months agoboard: phytec: phycore_am62x: Update environment for fitboot
Nathan Morrisson [Thu, 8 May 2025 15:15:42 +0000 (17:15 +0200)] 
board: phytec: phycore_am62x: Update environment for fitboot

Add fit_addr_r to the environment to allow us to boot from a FIT image.

Signed-off-by: Nathan Morrisson <nmorrisson@phytec.com>
Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
2 months agotiny-printf: Handle formatting of %p with an extra Kconfig
Christoph Niedermaier [Thu, 8 May 2025 11:57:25 +0000 (13:57 +0200)] 
tiny-printf: Handle formatting of %p with an extra Kconfig

The formatting with %pa / %pap behaves like %x, which results in an
incorrect value being output. To improve this, a new fine-tuning
Kconfig SPL_USE_TINY_PRINTF_POINTER_SUPPORT for pointer formatting
has been added. If it is enabled, the output of %pa / %pap should
be correct, and if it is disabled, the pointer formatting is
completely unsupported. In addition to indicate unsupported formatting,
'?' will be output. This allows enabling pointer formatting only
when needed. For SPL_NET it is selected by default. Then it also
supports the formatting with %pm, %pM and %pI4.

In summery this level of %p support for tiny printf is possible now:

1) The standard tiny printf won't have support for pointer formatting.
   So it doesn't print misleading values for %pa, instead '?' will be
   output:
   %p   => ?
   %pa  => ?a
   %pap => ?ap

2) If SPL_USE_TINY_PRINTF_POINTER_SUPPORT is enabled or DEBUG is defined
   tiny printf supports formatting %p and %pa / %pap.

3) If SPL_NET is enabled the support of pointers is extended
   for %pm, %pM and %pI4.

Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
2 months agoarm: cpu: armv7m: add ENTRY/ENDPROC macros
Johannes Krottmayer [Thu, 8 May 2025 19:00:28 +0000 (19:00 +0000)] 
arm: cpu: armv7m: add ENTRY/ENDPROC macros

Since GNU binutils version 2.44, assembly functions must include
the assembler directive .type name, %function. If not a call to
these functions fails with the error message 'Unknown destination
type (ARM/Thumb)' and the error message 'dangerous relocation:
unsupported relocation' at linking.

The macros ENTRY/ENDPROC includes this directive and should be
used for all assembly functions.

Signed-off-by: Johannes Krottmayer <johannes@krotti42.com>
Cc: Tom Rini <trini@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
2 months agoMerge tag 'dm-pull-16may25' of git://git.denx.de/u-boot-dm into next
Tom Rini [Fri, 16 May 2025 14:33:18 +0000 (08:33 -0600)] 
Merge tag 'dm-pull-16may25' of git://git.denx.de/u-boot-dm into next

Bring in the strim() changes and associated test

2 months agotest: Add a test for strim()
Simon Glass [Thu, 1 May 2025 11:10:09 +0000 (05:10 -0600)] 
test: Add a test for strim()

This function trims whitespace from the start and end of a string. Add a
test for it.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 months agostrim: Sync up with Linux version
Simon Glass [Thu, 1 May 2025 11:10:08 +0000 (05:10 -0600)] 
strim: Sync up with Linux version

Linux changed the behaviour of strim() so that a string with only spaces
reduces places the terminator at the start of the string, rather than
returning a pointer to the end of the string.

Bring in this version, from Linux v6.14

Add a comment about the new behaviour.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 months agofs.h: Switch to using rtc_def.h
Tom Rini [Thu, 1 May 2025 16:47:21 +0000 (10:47 -0600)] 
fs.h: Switch to using rtc_def.h

This file only needs the definition of 'struct rtc_time' and that is
found in <rtc_def.h>. Use that instead of pulling in rtc.h to pull in
rtc_def.h as rtc.h includes many other include files.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 months agofat.c: Add missing include
Tom Rini [Thu, 1 May 2025 16:47:20 +0000 (10:47 -0600)] 
fat.c: Add missing include

This file references rtc functions and implicitly includes <rtc.h>
today. Add this explicitly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 months agoext4fs.c: Add missing include
Tom Rini [Thu, 1 May 2025 16:47:19 +0000 (10:47 -0600)] 
ext4fs.c: Add missing include

This file references rtc functions and implicitly includes <rtc.h>
today. Add this explicitly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 months agocmd/cat.c: Add missing include
Tom Rini [Thu, 1 May 2025 16:47:18 +0000 (10:47 -0600)] 
cmd/cat.c: Add missing include

This file references errno values and so needs to include
<linux/errno.h>.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 months agoPrepare v2025.07-rc2 v2025.07-rc2
Tom Rini [Mon, 12 May 2025 20:33:38 +0000 (14:33 -0600)] 
Prepare v2025.07-rc2

Signed-off-by: Tom Rini <trini@konsulko.com>
2 months agoconfigs: Resync with savedefconfig
Tom Rini [Mon, 12 May 2025 14:52:37 +0000 (08:52 -0600)] 
configs: Resync with savedefconfig

Resync all defconfig files using qconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
2 months agoclk: Fix clk_set_parent() regression
Jonas Karlman [Sat, 10 May 2025 15:32:01 +0000 (15:32 +0000)] 
clk: Fix clk_set_parent() regression

The commit ac30d90f3367 ("clk: Ensure the parent clocks are enabled
while reparenting") add a call to clk_enable() for the parent clock.

For clock drivers that do not implement the enable() ops, like most
Rockchip clock drivers, this now cause the set_parent() ops to never
be called when CLK_CCF=n (default for Rockchip).

clk_enable() typically return -ENOSYS when the enable() ops is not
implemented by the clock driver, with CLK_CCF=y clk_enable() instead
return 0 when the enable() ops is unimplemented.

Change to ignore -ENOSYS from the newly introduced clk_enable() call to
fix this regression and restore the old behavior of set_parent() ops
being called regardless of if enable() ops is implemented or not.

Fixes: ac30d90f3367 ("clk: Ensure the parent clocks are enabled while reparenting")
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Tested-by: Dang Huynh <danct12@riseup.net>
Acked-by: Miquel Raynal <miquel.raynal@bootlin.com>
2 months agoMerge tag 'efi-2025-07-rc3' of https://source.denx.de/u-boot/custodians/u-boot-efi
Tom Rini [Sun, 11 May 2025 14:36:37 +0000 (08:36 -0600)] 
Merge tag 'efi-2025-07-rc3' of https://source.denx.de/u-boot/custodians/u-boot-efi

Pull-request efi-2025-07-rc3

CI:

* https://source.denx.de/u-boot/custodians/u-boot-efi/-/pipelines/26146

Documentation:

* Improve the pytest documentation
* u-boot-test-reset: mention power cycling
* describe u-boot-test-release
* correct link to QEMU
* describe that RISC-V supports semihosting

UEFI:

* link libggc via PLATFORM_LIBGCC to EFI binaries
* allow suppressing ANSI output in dtbdump.efi
* test/py/test_efi_fit: test fdt and initrd

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCAAdFiEEK7wKXt3/btL6/yA+hO4vgnE3U0sFAmggj+IACgkQhO4vgnE3
# U0sjTBAAkWySSBNFoj12AyjO2h4kJecxiJJxyoMYTcsr3xdgV0WTPQFaWcSBqTsL
# NgKq5KFNe+ywUdDIqU1VLOTcQf298hofRrcp5Gfhv+syZaRCorCSoSJI6ZveZ5Bi
# 9N2pPvhEVrlFBF2XannJ5ilYtLAbiqIvVFmdLmFwRPbODv/gfEkSudSy0Za7t1tM
# c7RoRegpXziY4Y1XPfr3MpXgKpUQkOPnvXKUwtHhL055X/1Ggg87dzPg1fiU+DiQ
# AGAgvGD/KF/ym4aWQ3jWyji8Kxc5BLsurv083it7JAmL82wqNbU9j5cx3mS/f2Le
# uL7YWv1GANbq+MoBC5O3nkB+yUtHSLylFC3KKFiehmKhc/JO+Uj3cJY/Q/25+lxs
# aahG3C/5xgBTgM6YEqJfSqKYQVFsC2V/a7gWAFlX7OidYXm6oDBu4TeAHmAtBgcj
# pz0AVCYMWyhKE+zb+4U2mlKEQ8bJpFdC2Q+pTMciGAM3YyztotJ1yoM4IndDrh4q
# ScrIpXHSqWLlZfev+NnJDw1UKLWEJIMeXh0uzfpaT5M0cLEDeHTOSX9Fp3ZPj9Af
# +T3nNWSXWlOW0wc6C5igj4p0UiGSbHMMPOa54f/D0gdl/UkPZ1YPBYVBa/eX1yBy
# NlaJziLCmLqyWpYIVhaigKDtGWfgjoHGaABfyuSIj/HxmIHhD5w=
# =NbGi
# -----END PGP SIGNATURE-----
# gpg: Signature made Sun 11 May 2025 05:54:10 AM CST
# gpg:                using RSA key 2BBC0A5EDDFF6ED2FAFF203E84EE2F827137534B
# gpg: Can't check signature: No public key

2 months agotest/py/test_efi_fit: test fdt and initrd
Adriano Cordova [Thu, 8 May 2025 18:30:34 +0000 (14:30 -0400)] 
test/py/test_efi_fit: test fdt and initrd

Add tests to check initrd and dtb loading

Signed-off-by: Adriano Cordova <adriano.cordova@canonical.com>
2 months agoefi_loader: fix dtbdump output color and format
Adriano Cordova [Thu, 8 May 2025 18:30:33 +0000 (14:30 -0400)] 
efi_loader: fix dtbdump output color and format

Imitate in dtbdump what initrddump does for color,
newlines and input handling. The output parsing in
the CI is strict and with the current output the CI
is not recongnizing the prompt '=>'.

Signed-off-by: Adriano Cordova <adriano.cordova@canonical.com>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2 months agoscripts/Makefile.lib: add PLATFORM_LIBGCC to efi linking
Adriano Cordova [Thu, 8 May 2025 18:30:32 +0000 (14:30 -0400)] 
scripts/Makefile.lib: add PLATFORM_LIBGCC to efi linking

Link .efi applications using libgcc

Signed-off-by: Adriano Cordova <adriano.cordova@canonical.com>
2 months agodoc: RISC-V supports semihosting
Heinrich Schuchardt [Fri, 9 May 2025 06:42:07 +0000 (08:42 +0200)] 
doc: RISC-V supports semihosting

Mention that RISC-V supports semihosting.
Update the link to ARM's semihosting documentation

Update SPDX identifier to current format.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2 months agodoc: correct link to QEMU
Heinrich Schuchardt [Fri, 9 May 2025 06:39:04 +0000 (08:39 +0200)] 
doc: correct link to QEMU

%s/hhttps:/https:/

Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2 months agodoc: pytest: Document the test_button test
Tom Rini [Thu, 8 May 2025 21:34:45 +0000 (15:34 -0600)] 
doc: pytest: Document the test_button test

Add this test to the documentation. No changes to the test itself were
required.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 months agodoc: pytest: Document the test_bootmenu test
Tom Rini [Thu, 8 May 2025 21:34:44 +0000 (15:34 -0600)] 
doc: pytest: Document the test_bootmenu test

Add this test to the documentation. There was already a function comment
that included the argument, so convert it to the right style to be
rendered correctly in output.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 months agodoc: pytest: Document the test_bind test
Tom Rini [Thu, 8 May 2025 21:34:43 +0000 (15:34 -0600)] 
doc: pytest: Document the test_bind test

Add this test to the documentation. None of the functions had comments,
so attempt to explain what each does.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 months agodoc: pytest: Document the test_efi_loader test
Tom Rini [Wed, 7 May 2025 23:23:02 +0000 (17:23 -0600)] 
doc: pytest: Document the test_efi_loader test

Add this test to the documentation. We need to add a code-block
annotation to the example and indent it correctly. We also need to
document the do_test_efi_helloworld_net function and that in turn means
changing the documentation to test_efi_helloworld_net_http and
test_efi_helloworld_net_tftp to reflect what is and isn't done in those
functions themselves now.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 months agodoc: pytest: Document the test_bootstage test
Tom Rini [Wed, 7 May 2025 23:23:01 +0000 (17:23 -0600)] 
doc: pytest: Document the test_bootstage test

Add this test to the documentation. We need to move the import to follow
the main comment so that it renders correctly, and add a code-block
annotation to the example and indent it correctly. Next, neither of the
functions had comments themselves, so document them now.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 months agodoc: pytest: Document the test_net test
Tom Rini [Wed, 7 May 2025 23:23:00 +0000 (17:23 -0600)] 
doc: pytest: Document the test_net test

Add this test to the documentation. While the diff appears large at
first, the only changes within the test are to move the imports to
follow the pydoc comment and then to code-block and indent the example
configuration.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 months agotest: test_net_boot: Add more comments
Tom Rini [Wed, 7 May 2025 22:08:20 +0000 (16:08 -0600)] 
test: test_net_boot: Add more comments

Some of the functions were missing pydoc comments. Add them so they will
be included in the documentation.

Reported-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 months agodoc: pytest: Document the test_net_boot test
Tom Rini [Wed, 7 May 2025 22:08:19 +0000 (16:08 -0600)] 
doc: pytest: Document the test_net_boot test

Add the test_net_boot.py test to the generated documentation. While most
of this was already commented correctly for inclusion the biggest
problem was examples of code without a code-block notation. This in turn
broke parsing. Add the missing notations. We also must have the comment
prior to any import lines or it will not be seen as a comment on the
overall file and thus not included.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 months agodoc: pytest: Framework for documenting tests and document test_000_version
Tom Rini [Wed, 7 May 2025 22:08:18 +0000 (16:08 -0600)] 
doc: pytest: Framework for documenting tests and document test_000_version

In order to easily document pytests, we need to include the autodoc
extension. We also need to make sure that for building the docs, CI
includes pytest and that we have PYTHONPATH configured such that it will
find all of the tests and related files. Finally, we need to have our
comments in the test file by in proper pydoc format in order to be
included in the output.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 months agodoc: Start improving our pytest documentation
Tom Rini [Wed, 7 May 2025 22:08:17 +0000 (16:08 -0600)] 
doc: Start improving our pytest documentation

Begin the work of documenting all of our pytests. To do this, we should
have a directory under develop for it as there will be a large number of
new files. As the current document is referenced externally in a number
of locations, add the sphinx_reredirects module so that we can redirect
from the old location to the new.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 months agocmd: nvedit: fix efi env -e -i command help
Vincent Stehlé [Tue, 6 May 2025 12:36:22 +0000 (14:36 +0200)] 
cmd: nvedit: fix efi env -e -i command help

The help string for the `setenv -e' command shows a comma being used as
the separator between address and size for the -i option, which deals
with UEFI Variables contents passed as a buffer in memory.
This is no longer the case since commit 2b3fbcb59f41 ("efi_loader: use
':' as separator for setenv -i") and commit 8f0ac536d493 ("efi: change
'env -e -i' usage syntax"), which changed the separator from a comma to
a colon.
Therefore fix this last bit of the help string accordingly.

While at it, fix the comment of function do_env_set_efi(), which also
mentions a comma as separator.

Signed-off-by: Vincent Stehlé <vincent.stehle@arm.com>
Cc: Tom Rini <trini@konsulko.com>
Cc: Heinrich Schuchardt <xypron.glpk@gmx.de>
Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Cc: Maxim Uvarov <maxim.uvarov@linaro.org>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2 months agodoc: describe u-boot-test-release
Heinrich Schuchardt [Sat, 3 May 2025 10:14:24 +0000 (12:14 +0200)] 
doc: describe u-boot-test-release

The scripts u-boot-test-release is called at the end of testing.
Describe it.

Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2 months agodoc: u-boot-test-reset: mention power cycling
Heinrich Schuchardt [Sat, 3 May 2025 10:12:37 +0000 (12:12 +0200)] 
doc: u-boot-test-reset: mention power cycling

Using power cycling is a valid option to implement u-boot-test-reset.

Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2 months agoboard: ti: sec-cfg.yaml: Fix OTP write_host_id order
Andrew Davis [Mon, 5 May 2025 17:46:01 +0000 (12:46 -0500)] 
board: ti: sec-cfg.yaml: Fix OTP write_host_id order

The write_host_id is the last element here and order does matter. This
may have gone unnoticed before as by default all elements are 0, but
if this is updated to a different host, it will not work. Update
the order so write_host_id is the last element in all current secure
board configs.

Reported-by: Prashant Shivhare <p-shivhare@ti.com>
Signed-off-by: Andrew Davis <afd@ti.com>
2 months agoDockerfile: use lz4 instead of lz4-tools
Heinrich Schuchardt [Mon, 5 May 2025 14:43:14 +0000 (16:43 +0200)] 
Dockerfile: use lz4 instead of lz4-tools

Since Ubuntu Jammy lz4-tools is only a virtual package which pulls in
lz4 as dependency.

Update documentation too.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
2 months agoboard: ti: common: Kconfig: add CMD_CACHE
Anshul Dalal [Fri, 2 May 2025 05:05:16 +0000 (10:35 +0530)] 
board: ti: common: Kconfig: add CMD_CACHE

Add CMD_CACHE to list of configs implied by TI_COMMON_CMD_OPTIONS.
This allows the usage of cache commands from U-Boot prompt.

Signed-off-by: Anshul Dalal <anshuld@ti.com>
Reviewed-by: Daniel Schultz <d.schultz@phytec.de>
2 months agoconfigs: j722s_evm_r5_defconfig: Enable PMIC config
Udit Kumar [Thu, 1 May 2025 17:53:08 +0000 (23:23 +0530)] 
configs: j722s_evm_r5_defconfig: Enable PMIC config

In kernel device tre commit 714d54917147: ("arm64: dts: ti: k3-j722s-evm:
Enable PMIC") adds pmic support.

Above commit of kernel get synched in u-boot by sha ab06a533f08e:("Squashed
'dts/upstream/' changes from 8531b4b4988c..955176a4ff59").

Now, PMIC DT is available in u-boot for J722S EVM,
So enable PMIC in defconfig as well.

Signed-off-by: Udit Kumar <u-kumar1@ti.com>
2 months agodisable mail for swarren
Stephen Warren [Fri, 14 Mar 2025 18:10:31 +0000 (12:10 -0600)] 
disable mail for swarren

I haven't been involved in U-Boot development for quite a while, so
CCing me on patches isn't currently useful. Add a .mailmap entry that I
believe will turn off patch CCs. This can always be removed if I become
active again! Remove myself from a few MAINTAINERS failed and the git
mailrc file too.

2 months agonet: dwc: xgmac: Allow DMA buffers above 4GB
Nikunj Kela [Sat, 22 Feb 2025 06:07:34 +0000 (22:07 -0800)] 
net: dwc: xgmac: Allow DMA buffers above 4GB

Currently, Synopsis xgmac driver only works if DMA region is under 4GB.
This change enables the DMA buffers allocations above 4GB memory
regions.

Signed-off-by: Nikunj Kela <nikunj.kela@sima.ai>
2 months agox86: Correct usage of FSP_VERSION2
Tom Rini [Sat, 15 Mar 2025 01:28:45 +0000 (19:28 -0600)] 
x86: Correct usage of FSP_VERSION2

As the code is today, we get a warning about "select" statements on
"choice" options not doing anything. In this case, we move to having a
"default FSP_VERSION2 if INTEL_APOLLOLAKE" in order to get the desired
outcome.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 months agox86: spl: Add support for NVMe boot device
Naresh Solanki [Wed, 12 Mar 2025 09:01:15 +0000 (14:31 +0530)] 
x86: spl: Add support for NVMe boot device

This change adds `BOOT_DEVICE_NVME` to the `enum` list in
`arch/x86/include/asm/spl.h`,
enabling NVMe as a recognized boot device for SPL (Secondary Program
Loader).

Tested x86 hardware with coreboot + U-Boot payload.
Verified successful boot to NVMe drive.

Signed-off-by: Naresh Solanki <naresh.solanki@9elements.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 months agogpio: x86: Correct usage of IS_ENABLED() macro in intel_pinctrl_defs.h
Tom Rini [Wed, 26 Feb 2025 20:31:32 +0000 (14:31 -0600)] 
gpio: x86: Correct usage of IS_ENABLED() macro in intel_pinctrl_defs.h

This file was using IS_ENABLED() to test for CONFIG flags but omitted
the CONFIG_ prefix and so did not work as expected.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 months agox86: Correct usage of IS_ENABLED() macro in arch/x86/lib/spl.c
Tom Rini [Wed, 26 Feb 2025 20:31:26 +0000 (14:31 -0600)] 
x86: Correct usage of IS_ENABLED() macro in arch/x86/lib/spl.c

This file was using IS_ENABLED() to test for CONFIG flags but omitted
the CONFIG_ prefix and so did not work as expected.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 months agox86: apl: Correct usage of IS_ENABLED() macro in acpi-pmc-uclass.c
Tom Rini [Wed, 26 Feb 2025 20:31:15 +0000 (14:31 -0600)] 
x86: apl: Correct usage of IS_ENABLED() macro in acpi-pmc-uclass.c

This file was using IS_ENABLED() to test for CONFIG flags but omitted
the CONFIG_ prefix and so did not work as expected.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 months agox86: cpu: Describe board final hooks in the header
Andy Shevchenko [Fri, 18 Oct 2024 15:55:57 +0000 (18:55 +0300)] 
x86: cpu: Describe board final hooks in the header

The new two declarations board_final_init() and board_final_cleanup()
need a description. Add it here.

Suggested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2 months agoMerge branch 'staging' of https://source.denx.de/u-boot/custodians/u-boot-tegra
Tom Rini [Thu, 8 May 2025 15:22:25 +0000 (09:22 -0600)] 
Merge branch 'staging' of https://source.denx.de/u-boot/custodians/u-boot-tegra

2 months agoMerge tag 'u-boot-rockchip-20250508' of https://source.denx.de/u-boot/custodians...
Tom Rini [Thu, 8 May 2025 14:29:17 +0000 (08:29 -0600)] 
Merge tag 'u-boot-rockchip-20250508' of https://source.denx.de/u-boot/custodians/u-boot-rockchip

CI: https://source.denx.de/u-boot/custodians/u-boot-rockchip/-/pipelines/26117

- New Board support: rk3566 LCKFB TaishanPi, rk3588 Xunlong Orange Pi 5
  Max;
- Add rk3288 rmii support;
- pinctrl driver fix;
- binman description update;

2 months agoARM: tegra: drop CONFIG_DISABLE_SDMMC1_EARLY
Svyatoslav Ryhel [Fri, 18 Apr 2025 14:29:52 +0000 (17:29 +0300)] 
ARM: tegra: drop CONFIG_DISABLE_SDMMC1_EARLY

This was a temporary workaround for the Tegra210 Jetson Nano board. It is
not used by any device anymore, so let's remove it.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 months agoARM: tegra: set default SYS_CONFIG_NAME from SoC Kconfig
Svyatoslav Ryhel [Tue, 15 Apr 2025 15:07:01 +0000 (18:07 +0300)] 
ARM: tegra: set default SYS_CONFIG_NAME from SoC Kconfig

Since most boards now use the same generic device config header, move its
setup to SoC Kconfig instead of setting SYS_CONFIG_NAME in each board's
Kconfig.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 months agoARM: tegra: convert boards to use TEGRA_PRAM
Svyatoslav Ryhel [Tue, 15 Apr 2025 08:55:28 +0000 (11:55 +0300)] 
ARM: tegra: convert boards to use TEGRA_PRAM

Switch boards that use CFG_PRAM to TEGRA_PRAM.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 months agoARM: tegra: add PRAM Kconfig option
Svyatoslav Ryhel [Tue, 15 Apr 2025 08:54:55 +0000 (11:54 +0300)] 
ARM: tegra: add PRAM Kconfig option

Wrap CFG_PRAM with Kconfig option.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 months agoboard: lg: star: add Optimus 2X P990 support
Svyatoslav Ryhel [Fri, 3 Nov 2023 19:00:22 +0000 (21:00 +0200)] 
board: lg: star: add Optimus 2X P990 support

The LG Optimus 2X is a touchscreen-based, slate-sized smartphone designed
and manufactured by LG that runs the Android operating system. The
Optimus 2X features a 4" WVGA display, an Nvidia Tegra 2 dual-core chip,
512 MB of RAM and extendable 8 GB of internal storage. UART-B is default
debug port.

Tested-by: Ion Agorria <ion@agorria.com>
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 months agovideo: backlight: add Skyworks/Analogictech AAT2870 led controller driver
Svyatoslav Ryhel [Wed, 2 Oct 2024 09:07:10 +0000 (12:07 +0300)] 
video: backlight: add Skyworks/Analogictech AAT2870 led controller driver

Add support for Skyworks AAT2870 LED Backlight Driver and Multiple LDO
Lighting Management Unit. Only backlight is supported as for now. Supported
backlight level range is from 2 to 255 with step of 1.

Tested-by: Ion Agorria <ion@agorria.com>
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 months agovideo: panel: add LG LH400WV3-SD04 MIPI DSI panel driver
Svyatoslav Ryhel [Mon, 3 Mar 2025 13:00:37 +0000 (15:00 +0200)] 
video: panel: add LG LH400WV3-SD04 MIPI DSI panel driver

LG LH400WV3-SD04 is a color active matrix TFT (Thin Film Transistor)
liquid crystal display (LCD). The resolution of a 4" contains 480 x 800
pixels.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 months agovideo: panel: add Hitachi TX10D07VM0BAA MIPI DSI panel driver
Svyatoslav Ryhel [Fri, 4 Oct 2024 09:03:09 +0000 (12:03 +0300)] 
video: panel: add Hitachi TX10D07VM0BAA MIPI DSI panel driver

Hitachi TX10D07VM0BAA is a color active matrix TFT (Thin Film Transistor)
liquid crystal display (LCD). The resolution of a 4" contains 480 x 800
pixels.

Tested-by: Ion Agorria <ion@agorria.com>
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 months agovideo: tegra: add 8-bit CPU driven protocol
Svyatoslav Ryhel [Fri, 4 Oct 2024 08:54:46 +0000 (11:54 +0300)] 
video: tegra: add 8-bit CPU driven protocol

Add support for 8-bit CPU driven (primary and secondary) display signal
interface found in Tegra 2 and Tegra 3 SoC.

Tested-by: Ion Agorria <ion@agorria.com>
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 months agosysreset: implement MAX9807 sysreset functions
Svyatoslav Ryhel [Sun, 6 Oct 2024 13:51:21 +0000 (16:51 +0300)] 
sysreset: implement MAX9807 sysreset functions

MAX8907 PMIC has embedded poweroff function used by some device to initiane
device power off. Implement it as optional sysreset driver guarded by
kconfig option and system-power-controller device tree property.

Tested-by: Ion Agorria <ion@agorria.com>
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 months agopower: regulator: max9807: add regulator support
Svyatoslav Ryhel [Sun, 6 Oct 2024 11:59:54 +0000 (14:59 +0300)] 
power: regulator: max9807: add regulator support

Added a new regulator driver for the MAXIM MAX8907 PMIC, providing
essential regulator functionalities and incorporated the necessary binding
framework within the core PMIC driver.

Tested-by: Ion Agorria <ion@agorria.com>
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 months agopower: pmic: add the base MAX8907 PMIC support
Svyatoslav Ryhel [Sun, 6 Oct 2024 11:50:02 +0000 (14:50 +0300)] 
power: pmic: add the base MAX8907 PMIC support

Add basic i2c based read/write functions to access PMIC registers.

Tested-by: Ion Agorria <ion@agorria.com>
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 months agogpio: tegra_gpio: implement rfree operation
Svyatoslav Ryhel [Fri, 11 Apr 2025 05:49:12 +0000 (08:49 +0300)] 
gpio: tegra_gpio: implement rfree operation

Releasing a GPIO on Tegra necessitates changing its configuration to SFIO
to activate its special function. Without this reconfiguration, the special
function will be unavailable.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2 months agonet: gmac_rockchip: Add RMII support for rk3288
Christoph Fritz [Wed, 16 Apr 2025 11:45:35 +0000 (13:45 +0200)] 
net: gmac_rockchip: Add RMII support for rk3288

Add RMII-specific handling to rk3288_gmac_fix_mac_speed() so that it
properly sets the RMII clock (2.5 MHz vs. 25 MHz) and speed bits
(10 Mbps vs. 100 Mbps). Also define a new rk3288_gmac_set_to_rmii()
function to set the PHY interface field and RMII_MODE bit.

Signed-off-by: Christoph Fritz <chf.fritz@googlemail.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2 months agorockchip: rk3288: grf: Unify speed/flowctrl fields for clarity
Christoph Fritz [Wed, 16 Apr 2025 11:44:13 +0000 (13:44 +0200)] 
rockchip: rk3288: grf: Unify speed/flowctrl fields for clarity

Update GMAC speed and flow control fields in GRF_SOC_CON1 to use
RK3288_GMAC_* prefix, ensuring a consistent naming convention. It also
shifts each mask/bit definition to match the actual hardware bits, which
makes future usage easier.

Signed-off-by: Christoph Fritz <chf.fritz@googlemail.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2 months agoboard: rockchip: Add LCKFB TaishanPi RK3566 Board
Jiehui He [Tue, 15 Apr 2025 07:36:50 +0000 (03:36 -0400)] 
board: rockchip: Add LCKFB TaishanPi RK3566 Board

The LCKFB TaishanPi is a single-board computer based on the RK3566 SoC.

Specification:
- 1/2 Gib RAM
- Optinal EMMC
- SD-Card
- HDMI / MIPI CSI / MIPI DSI
- USB 2.0 Host (Type-A)
- USB 2.0 Host / OTG (Type-C)
- No Ethernet

This patch adds U-Boot support for the LCKFB TaishanPi RK3566 board, including:
- U-Boot device tree
- Default defconfig
- Board documentation
- MAINTAINERS entry

Changes in v2:
- Removed unused configs from `lckfb-tspi-rk3566_defconfig`
- Reordered TaishanPi entry in `doc/board/rockchip/rockchip.rst` alphabetically

Link to v1:
https://lore.kernel.org/u-boot/tencent_95ED0C0545D87B6A8C4B62EC045D53AD2406@qq.com/

Signed-off-by: Jiehui He <jiehui.he@foxmail.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2 months agoboard: rockchip: add Xunlong Orange Pi 5 Max
Ilya Katsnelson [Wed, 23 Apr 2025 15:36:40 +0000 (18:36 +0300)] 
board: rockchip: add Xunlong Orange Pi 5 Max

The 5 Max is another board in the Orange Pi 5 family.

It's overall similar to the 5 Plus, but in a smaller form factor,
which leads to some I/O being reshuffled, but nothing relevant
to u-boot.

So, just reuse the config for the 5 Plus and adjust the DT names.

Reviewed-by: Jonas Karlman <jonas@kwiboo.se>
Signed-off-by: Ilya Katsnelson <me@0upti.me>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2 months agoMerge patch series "include: env: phytec: k3_net: Remove net_apply_extensions"
Tom Rini [Wed, 7 May 2025 13:59:09 +0000 (07:59 -0600)] 
Merge patch series "include: env: phytec: k3_net: Remove net_apply_extensions"

This series from Daniel Schultz <d.schultz@phytec.de> cleans up the
environment further on the phytec am62ax platforms.

Link: https://lore.kernel.org/r/20250428144904.1058574-1-d.schultz@phytec.de
2 months agoboard: phytec: phycore_am62ax: Update Environment
Daniel Schultz [Mon, 28 Apr 2025 14:49:04 +0000 (07:49 -0700)] 
board: phytec: phycore_am62ax: Update Environment

Add fit_addr_r to the environment to allow us to boot from a FIT image.

Increase the maximum Image size from 23 MB to 26 MB by moving the
initramfs start address up. This gives us a bigger ranger to
provide kernel images which are not stripped down too much.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
2 months agoinclude: env: phytec: k3_net: Use get_cmd
Daniel Schultz [Mon, 28 Apr 2025 14:49:03 +0000 (07:49 -0700)] 
include: env: phytec: k3_net: Use get_cmd

'net_fetch_cmd' is not defined by the K3 board files. They
use the more common 'get_cmd' from NXP products.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2 months agoinclude: env: phytec: k3_net: Remove net_apply_extensions
Daniel Schultz [Mon, 28 Apr 2025 14:49:02 +0000 (07:49 -0700)] 
include: env: phytec: k3_net: Remove net_apply_extensions

Extensions are now handled by the board-code. Remove this non-existing
function to proper boot from network.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2 months agobootstd: Rework BLK dependency
Tom Rini [Wed, 23 Apr 2025 14:49:13 +0000 (08:49 -0600)] 
bootstd: Rework BLK dependency

The bootstd code itself does not have any dependency on BLK in order to
build. However, in order to minimize size growth of non-migrated
platforms, change this from being "default y" to "default y if BLK".
This will make it easier to begin migration of platforms which do not
have any BLK-class device but do want to use bootstd.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 months agomips: octeon: remove unused middle expression
Bryan Brattlof [Wed, 9 Apr 2025 17:26:20 +0000 (12:26 -0500)] 
mips: octeon: remove unused middle expression

!A || (A && B) is equivalent to !A || B

Drop the unused middle expression to simplify the statement.

Signed-off-by: Bryan Brattlof <bb@ti.com>
Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
2 months agomtd: spi-nor: Send write disable cmd after every write enable
Venkatesh Yadav Abbarapu [Tue, 19 Nov 2024 06:39:18 +0000 (12:09 +0530)] 
mtd: spi-nor: Send write disable cmd after every write enable

Write enable(06h) command will be sent to a flash device to
set the write enable latch bit before every program, erase,
write command. After that write disable command (04h) needs
to be sent to clear the write enable latch.

This write_disable() is missing at the majority of the places
in the driver, add it to clear write enable latch.

Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@xilinx.com>
Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://gist.github.com/PrasanthBabuMantena/c12f39744de188a9d08cd5ca51dc2a7b
Tested-by: Prasanth Babu Mantena <p-mantena@ti.com>
2 months agomtd: spi-nor-core: Fixup SNOR_F_IO_MODE_EN_VOLATILE for MT35X
Vaishnav Achath [Mon, 25 Nov 2024 10:49:47 +0000 (16:19 +0530)] 
mtd: spi-nor-core: Fixup SNOR_F_IO_MODE_EN_VOLATILE for MT35X

MT35XU512ABA has only BFPT and 4-Byte Address Instruction Table
in  SFDP. commit bebdc237507c ("mtd: spi-nor: Parse SFDP SCCR Map")
added checks in spi_nor_octal_dtr_enable() to bail out if the 22nd DWORD
in SCCR does not indicate DTR Octal Mode Enable, since MT35XU512ABA device
supports octal DTR mode, add this property in SFDP fixup.

Signed-off-by: Vaishnav Achath <vaishnav.a@ti.com>
Signed-off-by: Prasanth Babu Mantena <p-mantena@ti.com>
Reviewed-by: Udit Kumar <u-kumar1@ti.com>
2 months agoconfigs: rockchip: sync ENV_MEM_LAYOUT_SETTINGS for px30 to rk3308/etc
Heiko Stuebner [Tue, 6 May 2025 08:55:31 +0000 (10:55 +0200)] 
configs: rockchip: sync ENV_MEM_LAYOUT_SETTINGS for px30 to rk3308/etc

Loading a FIT image for kernel, initrd and rootfs on px30 can result in an
memory overlap, resulting in the not 100% helpful message of
"This will not be a case any time" from lmb_fix_over_lap_regions().

Adding a bit of debug info to lmb_fix_over_lap_regions() brings:
lmb_fix_over_lap_regions: base1 0x280000-0x6005ac > base2 0x600000-0x6000d1

So this is because the FIT image gets loaded to the kernel_addr_r at
0x280000 while the pxe-file is already living at 0x600000, only 3.5MB
behind.

In commit 4acc8bb044a4 ("configs: rockchip: sync ENV_MEM_LAYOUT_SETTINGS
for rk3308, rk3328, and rk3399") FUKAUMI Naoki already brought the memory
layouts for the mentioned socs in sync.

Adjusting the env-layout on px30 to this scheme, magically solves the
overlap issue and also brings px30 more in line with the other mentioned
SoCs.

Signed-off-by: Heiko Stuebner <heiko.stuebner@cherry.de>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2 months agorockchip: io-domain: Enable by default for all supported SoCs
Chen-Yu Tsai [Tue, 29 Apr 2025 13:28:40 +0000 (21:28 +0800)] 
rockchip: io-domain: Enable by default for all supported SoCs

The IO domain driver controls the I/O voltage for various pins,
MMC included.

Enable it by default for all supported Rockchip SoCs.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Paul Kocialkowski <paulk@sys-base.io>
Reviewed-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Anand Moon <linux.amoon@gmail.com>
2 months agopinctrl: rockchip: constify rockchip_pin_ctrl for RV1108
Quentin Schulz [Fri, 31 Jan 2025 10:31:41 +0000 (11:31 +0100)] 
pinctrl: rockchip: constify rockchip_pin_ctrl for RV1108

There's no need to modify private data from the controller, so let's
make that struct const.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2 months agopinctrl: rockchip: constify rockchip_pin_ctrl for RK3399
Quentin Schulz [Fri, 31 Jan 2025 10:31:40 +0000 (11:31 +0100)] 
pinctrl: rockchip: constify rockchip_pin_ctrl for RK3399

There's no need to modify private data from the controller, so let's
make that struct const.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2 months agopinctrl: rockchip: constify rockchip_pin_ctrl for RK3368
Quentin Schulz [Fri, 31 Jan 2025 10:31:39 +0000 (11:31 +0100)] 
pinctrl: rockchip: constify rockchip_pin_ctrl for RK3368

There's no need to modify private data from the controller, so let's
make that struct const.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2 months agopinctrl: rockchip: constify rockchip_pin_ctrl for RK3328
Quentin Schulz [Fri, 31 Jan 2025 10:31:38 +0000 (11:31 +0100)] 
pinctrl: rockchip: constify rockchip_pin_ctrl for RK3328

There's no need to modify private data from the controller, so let's
make that struct const.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2 months agopinctrl: rockchip: constify rockchip_pin_ctrl for RK3308
Quentin Schulz [Fri, 31 Jan 2025 10:31:37 +0000 (11:31 +0100)] 
pinctrl: rockchip: constify rockchip_pin_ctrl for RK3308

There's no need to modify private data from the controller, so let's
make that struct const.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2 months agopinctrl: rockchip: constify rockchip_pin_ctrl for RK3288
Quentin Schulz [Fri, 31 Jan 2025 10:31:36 +0000 (11:31 +0100)] 
pinctrl: rockchip: constify rockchip_pin_ctrl for RK3288

There's no need to modify private data from the controller, so let's
make that struct const.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2 months agopinctrl: rockchip: constify rockchip_pin_ctrl for RK3228
Quentin Schulz [Fri, 31 Jan 2025 10:31:35 +0000 (11:31 +0100)] 
pinctrl: rockchip: constify rockchip_pin_ctrl for RK3228

There's no need to modify private data from the controller, so let's
make that struct const.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2 months agopinctrl: rockchip: constify rockchip_pin_ctrl for RK3188
Quentin Schulz [Fri, 31 Jan 2025 10:31:34 +0000 (11:31 +0100)] 
pinctrl: rockchip: constify rockchip_pin_ctrl for RK3188

There's no need to modify private data from the controller, so let's
make that struct const.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>