Commit Graph
103852 Commits
Author SHA1 Message Date
Patrice Chotard 9e8bc1c6be spi: stm32-ospi: Increase read throughput in indirect mode
Schedule() is called every u8/u16 or u32 read accesses which is overkill.
Move schedule() from stm32_ospi_read_fifo() to stm32_ospi_tx_poll()
and call schedule() only every 1MB chunk of data.

Test performed by reading 64MB on sNOR on stm32mp257f-ev1 board:

          before      after    ratio
Read  :  10.6MB/s    14.2MB/s   +34%

Reviewed-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com>
2026-01-29 10:47:57 +01:00
Tom Rini 6a1bdb7e95 Merge tag 'doc-2026-04-rc2' of https://source.denx.de/u-boot/custodians/u-boot-efi
Pull request doc-2026-04-rc2

Documentation:

* describe QEMU VGA emulation
* development process
  - Move the existing block about patch application
  - Rework the custodian feedback section
  - Explain when/how Custodians may edit patches
  - Move Custodians section
  - Make "Work flow of a Custodian" a subsection
  - Document using b4 and patchwork for custodians
* develop: codingstyle: Update b4 external link
* develop: sending_patches: Update link to patchwork
2026-01-28 17:04:34 -06:00
Tom Rini fcd28a598d Merge patch series "board: ti: Add 32k crystal initialization"
Vishal Mahaveer <vishalm@ti.com> says:

Add 32k crystal initialization support for am62x, am62ax and am62px TI boards.

Link: https://lore.kernel.org/r/20260121195340.3041549-1-vishalm@ti.com
2026-01-28 15:54:50 -06:00
Vishal MahaveerandTom Rini de6b11e27b board: ti: am62px: Enable 32k crystal on the board
Enable 32k crystal on the board. If external 32k source is not
used, 32k rc-osc comes into play, which is accurate to +-20%.

Signed-off-by: Vishal Mahaveer <vishalm@ti.com>
2026-01-28 15:54:41 -06:00
Vishal MahaveerandTom Rini b259574e47 board: ti: am62ax/am62dx: Enable 32k crystal on the board
Enable 32k crystal on the board. If external 32k source is not
used, 32k rc-osc comes into play, which is accurate to +-20%.

Signed-off-by: Vishal Mahaveer <vishalm@ti.com>
2026-01-28 15:54:41 -06:00
Vishal MahaveerandTom Rini d7550d0105 board: ti: am62x: Enable 32k crystal on the board
Enable 32k crystal on the board. If external 32k source is not
used, 32k rc-osc comes into play, which is accurate to +-20%.

Signed-off-by: Vishal Mahaveer <vishalm@ti.com>
2026-01-28 15:54:41 -06:00
Vishal MahaveerandTom Rini c927eefd96 board: ti: common: Add function for initialization of 32k crystal
Add a common helper function for doing the basic configuration
required for enabling the 32k crystal on some of the TI boards.

Signed-off-by: Vishal Mahaveer <vishalm@ti.com>
2026-01-28 15:54:41 -06:00
Francois BerderandTom Rini 3a53a03f50 tools: Handle realloc failure in strlist_add
If realloc fails, list->strings was set to NULL and
it would create a leak. This commit ensures that if we cannot
add a string to the list, the list stays in a good state.

Signed-off-by: Francois Berder <fberder@outlook.fr>
2026-01-28 14:41:21 -06:00
Jonas KarlmanandTom Rini b8a820ac98 armv8: u-boot-spl.lds: Place binman symbols at end of binary
It can be useful in xPL to access symbols from binman, such as the
offset/position and size of a binman entry.

Place these binman symbols together at the end of the xPL binary for
ARMv8, similar to ARM and RISC-V.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Simon Glass <simon.glass@canonical.com>
2026-01-28 14:41:21 -06:00
Tom Rini ac70eaf071 Merge patch series "Add pinctrl driver for mt8188"
Julien Stephan <jstephan@baylibre.com> says:

The driver is based on the kernel driver for mt8188.

While at it, also add pinmux_property_set ops for mediatek pinctrl framework.

Link: https://lore.kernel.org/r/20260122-add-mt8188-pinctrl-support-v2-0-324b4c8f2b64@baylibre.com
2026-01-28 14:28:55 -06:00
Vitor Sato EschholzandTom Rini 15999c22f5 pinctrl: mediatek: add pinmux_property_set ops support
Add pinmux_property_set ops for mediatek pinctrl framework

Signed-off-by: Julien Masson <jmasson@baylibre.com>
Signed-off-by: Vitor Sato Eschholz <vsatoes@baylibre.com>
Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Reviewed-by: Macpaul Lin <macpaul.lin@mediatek.com>
Tested-by: David Lechner <dlechner@baylibre.com>
2026-01-28 14:28:48 -06:00
Chris-QJ ChenandTom Rini aa6eb2a589 pinctrl: mediatek: Add pinctrl driver for MT8188 SoC
Add pinctrl driver for mt8188. The driver is based on the kernel driver.

Signed-off-by: Chris-QJ Chen <chris-qj.chen@mediatek.com>
Signed-off-by: Jill.Wu <shu-yun.wu@mediatek.com>
Signed-off-by: Vitor Sato Eschholz <vsatoes@baylibre.com>
Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Reviewed-by: Macpaul Lin <macpaul.lin@mediatek.com>
2026-01-28 14:28:48 -06:00
Tom RiniandHeinrich Schuchardt 302c054d64 doc: develop: process: Document using b4 and patchwork for custodians
- We already have good custodian documentation for patchwork, add a
  reference and then link to it here.
- Add a reference to the existing b4 documentation, and reference it
  here.
- Note and link to patchwork integration, am/shazam and ty features of
  b4 as these are the most likely useful portions. Be specific about
  keeping the default ${summary} as that includes important information.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
2026-01-28 21:20:07 +01:00
Tom RiniandHeinrich Schuchardt e41a8f3f35 doc: develop: sending_patches: Update link to patchwork
Make use of an anonymous reference for the external link here, per rST
best practices.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
2026-01-28 21:20:07 +01:00
Tom RiniandHeinrich Schuchardt 385005732c doc: develop: codingstyle: Update b4 external link
Rather than pointing at the source code for b4, point the the official
documentation. Also, use an anonymous reference for the link, per rST
best practices.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
2026-01-28 21:20:07 +01:00
Tom RiniandHeinrich Schuchardt 05609eebdb doc: develop: process: Make "Work flow of a Custodian" a subsection
Make the "Work flow of a Custodian" section be a subsection of the
Custodians section.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Michael Trimarchi <michael@amarulasolutions.com>
2026-01-28 21:19:59 +01:00
Tom RiniandHeinrich Schuchardt 8449e5c234 doc: develop: process: Move Custodians section
Move the "Custodians" section to be after the "Review Process, Git Tags"
section, in preparation for more re-organization.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
2026-01-28 21:13:45 +01:00
Tom RiniandHeinrich Schuchardt 7db33677c2 doc: develop: process: Explain when/how Custodians may edit patches
As seen with commit d503633a36 ("Revert "doc: board: starfive: update
jh7110 common description""), it has not always been clear what is and
isn't allowed by custodians, and what the expectations are. To prevent
further unintentional conflicts, document the limited cases where
custodians are allowed to modify patches directly, and how to do that.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
2026-01-28 21:12:04 +01:00
Tom RiniandHeinrich Schuchardt 78e100db5b doc: develop: process: Rework the custodian feedback section
Now that we have two items here, rework this slightly to be using bullet
points, and so easier to expand on.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
2026-01-28 21:12:04 +01:00
Tom RiniandHeinrich Schuchardt 5f6776883c doc: develop: process: Move the existing block about patch application
We have a long block about the expectations and feedback about a patch
applying, or not, as part of the Custodian workflow. Move this to the
Custodians section from the Workflow of a custodian section.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
2026-01-28 21:12:04 +01:00
Heinrich Schuchardt 86455a8e4b doc: describe QEMU VGA emulation
Describe how the QEMU defconfigs can be used with an emulated GPU.

Reviewed-by: Simon Glass <simon.glass@canonical.com>
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2026-01-28 21:08:41 +01:00
Tom Rini 5ffc1dcc26 arm: Remove rel.dyn from SPL linker scripts
As of v2026.01, no platforms contain any rel.dyn sections in their xPL
phase images. Their inclusion in linker scripts initially was an
oversight as part of taking the full U-Boot linker scripts and modifying
them down. Then in commit 8b0ebe054b ("arm: Update linker scripts to
ensure appended device tree is aligned") these sections were used to
force correct alignment for the device tree. This however, lead to a
different problem.

That problem is that when we do not have a separate BSS section in SPL
we instead would overlay the BSS with the rel.dyn section, in the common
linker script case. This in turn lead to creating an incorrectly sized
BSS "pad" file sometimes (depending on arbitrary changes within the rest
of the binary itself). This in turn lead to the dtb being in the wrong
location in the binary and not found at run time.

This commit fixes a few things:
- Remove the rel.dyn section from all ARM SPL linker scripts.
- In turn, this moves the dtb alignment statement in to another section.
- For ast2600 which uses CONFIG_POSITION_INDEPENDENT we need to keep the
  symbols however.

Tested-by: Fabio Estevam <festevam@gmail.com>
Reported-by: Fabio Estevam <festevam@gmail.com>
Co-developed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Chia-Wei, Wang <chiawei_wang@aspeedtech.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
2026-01-28 12:57:01 -06:00
Tom Rini 8e263e3a76 .b4-config: Add some patchwork related settings
To make it easier for custodians to use b4 with patchwork, add some
defaults to the in-tree .b4-config. The API key will still have to be
configured.

Suggested-by: Quentin Schulz <quentin.schulz@cherry.de>
Acked-by: Quentin Schulz <quentin.schulz@cherry.de>
Signed-off-by: Tom Rini <trini@konsulko.com>
2026-01-28 12:56:51 -06:00
Tom Rini e8ec8d980a Merge patch series "dm: core: Support same compatible in host/gadget musb drivers"
Markus Schneider-Pargmann (TI.com) <msp@baylibre.com> says:

musb currently uses a wrapper driver that binds on the parent device of
the actual musb devices to manage the differentiation between gadget and
host modes. However in the upstream devicetree this parent devicetree
node can not be used to match the wrapper driver.

To be able to probe the musb devices in host/gadget mode directly, this
series introduces support for returning -ENODEV in bind functions
resulting in iterating the remaining drivers potentially binding to
other drivers that match the compatible.

Link: https://lore.kernel.org/r/20260127-topic-musb-probing-v2026-01-v4-0-ea3201e0f809@baylibre.com
2026-01-28 09:21:17 -06:00
Markus Schneider-Pargmann (TI.com)andTom Rini c7e0e3fd33 test: dm: Add compatible multimatch test
Add a test for binding of multiple drivers with the same compatible. If
one of the drivers returns -ENODEV the other one needs to be bound.

Reviewed-by: Simon Glass <simon.glass@canonical.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
Signed-off-by: Markus Schneider-Pargmann (TI.com) <msp@baylibre.com>
2026-01-28 09:20:59 -06:00
Markus Schneider-Pargmann (TI)andTom Rini 87d7d8190f dm: core: lists_bind_fdt: Indent continuation debug log message
The loop in lists_bind_fdt uses an indented style for log messages
within the loop and normal messages for errors that lead to the exit of
the function. Due to the change of the previous patch that adds support
for continuation on -ENODEV returned by bind, the log message should be
indented.

Signed-off-by: Markus Schneider-Pargmann (TI) <msp@baylibre.com>
2026-01-28 09:20:59 -06:00
Markus Schneider-Pargmann (TI.com)andTom Rini 6668b8e7cc dm: core: Support multiple drivers with same compatibles
Currently once a driver matched the compatible string of a device, other
drivers are ignored. If the first matching driver returns -ENODEV, no
other possibly matching drivers are iterated with that compatible of the
device. Instead the next compatible in the list of compatibles is
selected, assuming only one driver matches one compatible at a time.

To be able to use the bind function to return -ENODEV and continue
matching other drivers with the same compatible, move the for loop a bit
to continue the for loop after -ENODEV was returned. The loop had to be
adjusted a bit to still support the 'drv' argument properly. Some
simplifications were done as well.

The modification will only add additional loop iterations if -ENODEV is
returned. Otherwise the exit and continue conditions for the loop stay
the same and do not cause any additional iterations and should not
impact performance.

This is required for ti-musb-host and ti-musb-peripheral which both
match on the same device but differ based on the dr_mode DT property.
Depending on this property, the driver is either UCLASS_USB or
UCLASS_USB_GADGET_GENERIC. By checking the DT property in the bind
function and returning -ENODEV the other driver can probe instead.

Reviewed-by: Simon Glass <simon.glass@canonical.com>
Acked-by: Dinesh Maniyam <dinesh.maniyam@altera.com>
Signed-off-by: Markus Schneider-Pargmann (TI.com) <msp@baylibre.com>
2026-01-28 09:20:59 -06:00
Markus Schneider-Pargmann (TI.com)andTom Rini 41cf66011f dm: core: lists_bind_fdt: Replace found variable
'found' is only used at the end of the function to print a debug
message. No need to maintain a variable if we can just return 0
immediately when a driver was bound successfully.

Reviewed-by: Simon Glass <simon.glass@canonical.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
Signed-off-by: Markus Schneider-Pargmann (TI.com) <msp@baylibre.com>
2026-01-28 09:20:59 -06:00
Markus Schneider-Pargmann (TI.com)andTom Rini 6f3e63b4de dm: core: lists_bind_fdt: Remove unused variable
'result' is unused in this function, remove it.

Reviewed-by: Simon Glass <simon.glass@canonical.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@kernel.org>
Signed-off-by: Markus Schneider-Pargmann (TI.com) <msp@baylibre.com>
2026-01-28 09:20:59 -06:00
Tom Rini cd4f4f7421 Merge tag 'fsl-qoriq-for-2026.04-rc2' of https://source.denx.de/u-boot/custodians/u-boot-fsl-qoriq
- Rename freescale to nxp
- Add CPLD support via IFC to the ls1021a-iot board
- Use scmi_clk_state_in_v2 in sandbox
2026-01-28 08:39:52 -06:00
Peng Fan 8e918cbe7a firmware: scmi: sandbox: Use scmi_clk_state_in_v2
The sandbox scmi clock protocol use version 3.0, so need to use
scmi_clk_state_in_v2.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2026-01-28 14:28:01 +08:00
Alice GuoandPeng Fan add12cb688 board: nxp: Rename board directory from board/freescale to board/nxp
This patch renames the board directory from board/freescale to
board/nxp because NXP now provides Board Support Packages (BSPs) and
tools for the former Freescale i.MX and other i.MX products.

All relevant references have been updated accordingly. This change does
not affect functionality.

Signed-off-by: Alice Guo <alice.guo@nxp.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
2026-01-28 14:26:50 +08:00
Mateus Lima AlvesandPeng Fan 424b324165 armv7: Add CPLD support via IFC to the ls1021a-iot board.
This patch adds CPLD support via IFC to the ls1021a-iot board.

Signed-off-by: Mateus Lima Alves <mateuslima.ti@gmail.com>
2026-01-28 14:26:50 +08:00
Simon GlassandTom Rini 4234f4d432 binman: Regenerate expired test certificate
The test certificate expired on Feb 13, 2024. This just used for
testing, so regenerate it with a 100-year validity period.

Suggested-by: Quentin Schulz <quentin.schulz@cherry.de>
Signed-off-by: Simon Glass <simon.glass@canonical.com>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
2026-01-27 16:20:33 -06:00
Janne GrunauandTom Rini b0c6b5f421 configs: apple: Enable SMBIOS / sysinfo
Enable verbose SMBIOS table generation so that user space applications
can use the SMBIOS table to provide details about the system. The
desired information is chassis-type to determine whether the system is
laptop.
Adding the chassis-type property is proposed for the upstream device
trees in the Linux kernel in [1].
Enable CMD_SMBIOS as debugging aid as the platform can easily deal with
large u-boot binaries.

Link: https://lore.kernel.org/asahi/20260109-apple-dt-usb-c-atc-dwc3-v1-0-ce0e92c1a016@jannau.net/ [1]
Reviewed-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Janne Grunau <j@jannau.net>
Reviewed-by: Neal Gompa <neal@gompa.dev>
Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
2026-01-27 16:20:07 -06:00
Frank WunderlichandTom Rini 09cc678868 boot/fit: print name of config node not found
Show name of configuration node which was not found.

current state gives no hint if fit image is wrong or the requested name.

Could not find configuration node
load of <NULL> failed

After this patch we see name like this:

Could not find configuration node '#ov-test'
load of <NULL> failed

Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
2026-01-27 16:19:54 -06:00
Tom Rini 272b8784fa fit: Rework SPL_LOAD_FIT_ADDRESS slightly
Options which deal with memory locations and have a default value of 0x0
are dangerous, as that is often not a valid memory location. Rework
SPL_LOAD_FIT_ADDRESS as follows:
- Add SPL_HAS_LOAD_FIT_ADDRESS to guard prompting the question as the
  case of loading a FIT image does not strictly require setting an
  address and allows for a malloc()'d area to be used.
- For SPL_RAM_SUPPORT, select the new guard symbol if SPL_LOAD_FIT is
  enabled because in that case an address must be provided.
- Update defconfigs for these new changes. Largely this means some
  defconfigs need to enable SPL_HAS_LOAD_FIT_ADDRESS to maintain their
  current status. In the case of sandbox, we also need to set
  SPL_LOAD_FIT_ADDRESS to 0x0.

Signed-off-by: Tom Rini <trini@konsulko.com>
2026-01-27 16:19:11 -06:00
Anshul DalalandTom Rini cfce859b16 Kconfig: select SPL_USE_TINY_PRINTF_POINTER_SUPPORT for K3
Since the commit 1e24e84db4 ("tiny-printf: Handle formatting of %p
with an extra Kconfig"), SPL_USE_TINY_PRINTF_POINTER_SUPPORT has been
made mandatory in order to use %p which would earlier have defaulted to
a 'long' print.

Without this config symbol, k3_sysfw_dfu_download fails to set the
correct value for the DFU string with:

 sprintf(dfu_str, "sysfw.itb ram 0x%p 0x%x", addr,
   CONFIG_K3_SYSFW_IMAGE_SIZE_MAX);

The value we get "sysfw.itb ram 0x? 0x41c29d40" causes a boot failure.

Therefore this patch sets SPL_USE_TINY_PRINTF_POINTER_SUPPORT for all K3
devices since the size impact is less than 100 bytes.

Signed-off-by: Anshul Dalal <anshuld@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
2026-01-27 16:11:58 -06:00
Tom Rini 04854a24ac Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh
- Updated UFS support for Renesas platforms
2026-01-27 16:05:55 -06:00
Tom Rini 0fcd154859 bootm: Remove BOOTM_NETBSD from defaults
After talking with someone from the NetBSD project, platforms that do
not boot with a device tree (and so would be using our BOOTM_NETBSD
support) a very few in number. So we can remove this option from being
enabled by default and save a little space in most places with platforms
that need it still being able to re-enable it, if needed. Ideally, in a
few years we can instead just remove the code entirely.

Link: https://lore.kernel.org/r/aWKQOW_ajq0DsbYA@big-apple.aprisoft.de/
Signed-off-by: Tom Rini <trini@konsulko.com>
2026-01-27 15:52:03 -06:00
Yoshihiro ShimodaandMarek Vasut bd07aa1aa6 scsi: ufs: renesas: Add reusable functions
Since some settings can be reused on other UFS controller (R-Car S4-8
ES1.2), add reusable functions.

Ported from Linux kernel commit
44ca16f4970e ("scsi: ufs: renesas: Add reusable functions")

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/446d67b751a96645799de3aeefec539735aa78c8.1741179611.git.geert+renesas@glider.be
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
2026-01-27 21:46:44 +01:00
Yoshihiro ShimodaandMarek Vasut 8bf3dc99af scsi: ufs: renesas: Refactor 0x10ad/0x10af PHY settings
Extract specific PHY setting of the 0x10a[df] registers into a new
function.

Ported from Linux kernel commit
cca2b807c227 ("scsi: ufs: renesas: Refactor 0x10ad/0x10af PHY settings")

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/110eafd1ee24f9db0285a5e2bca224e35962268a.1741179611.git.geert+renesas@glider.be
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
2026-01-27 21:46:44 +01:00
Yoshihiro ShimodaandMarek Vasut 4e27f44184 scsi: ufs: renesas: Remove register control helper function
After refactoring the code, ufs_renesas_reg_control() is no longer needed,
because all operations are simple and can be called directly.  Remove the
ufs_renesas_reg_control() helper function, and call udelay() directly.

Ported from Linux kernel commit
855bde8ce5bc ("scsi: ufs: renesas: Remove register control helper function")
with replaced readl_poll_timeout_atomic() with readl_poll_sleep_timeout().

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/69500e4c18be1ca1de360f9e797e282ffef04004.1741179611.git.geert+renesas@glider.be
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
2026-01-27 21:46:44 +01:00
Yoshihiro ShimodaandMarek Vasut a7bec98ef8 scsi: ufs: renesas: Add register read to remove save/set/restore
Add support for returning read register values from
ufs_renesas_reg_control(), so ufs_renesas_set_phy() can use the existing
ufs_renesas_write_phy() helper.  Remove the now unused code to save to,
set, and restore from a static array inside ufs_renesas_reg_control().

Ported from Linux kernel commit
5129aa627599 ("scsi: ufs: renesas: Add register read to remove save/set/restore")

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/9fa240a9dc0308d6675138f8434eccb77f051650.1741179611.git.geert+renesas@glider.be
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
2026-01-27 21:46:44 +01:00
Yoshihiro ShimodaandMarek Vasut 3ffda58597 scsi: ufs: renesas: Replace init data by init code
Since initialization of the UFS controller on R-Car S4-8 ES1.0 requires
only static values, the driver uses initialization data stored in the const
ufs_param[] array.  However, other UFS controller variants (R-Car S4-8
ES1.2) require dynamic values, like those obtained from E-FUSE.  Refactor
the initialization code to prepare for this.

This also reduces kernel size by almost 30 KiB.

Ported from Linux kernel commit
c4e83573c3d0 ("scsi: ufs: renesas: Replace init data by init code")

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/3520e27ac7ff512de6508f630eee3c1689a7c73d.1741179611.git.geert+renesas@glider.be
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
2026-01-27 21:46:44 +01:00
Tom Rini 431f1ce46b Revert a number of incorrect commits
As part of debugging the appended device tree failure, I inadvertently
committed some changes as I was debugging to master, and not a private
branch, and pushed them as part of the release.

This reverts commit dc2d8423b1 through
380ddb473c.

Signed-off-by: Tom Rini <trini@konsulko.com>
2026-01-27 09:29:59 -06:00
Tom Rini aa4f687977 Prepare v2026.04-rc1
Signed-off-by: Tom Rini <trini@konsulko.com>
2026-01-26 14:44:52 -06:00
Tom Rini dc2d8423b1 count rel_dyn
Signed-off-by: Tom Rini <trini@konsulko.com>
2026-01-26 11:19:22 -06:00
Tom Rini f4dfa5d3c2 Revert "arm: spl: Correct alignment of .rel.dyn section"
This reverts commit 380ddb473c.

Signed-off-by: Tom Rini <trini@konsulko.com>
2026-01-26 11:00:02 -06:00
Tom Rini 380ddb473c arm: spl: Correct alignment of .rel.dyn section
With commit 0535e46d55 ("scripts/dtc: Update to upstream version
v1.7.2-35-g52f07dcca47c") we now require the correct, 8 byte alignment
of a device tree in order to work with it ourselves. This has exposed a
number of issues. In the case of using arch/arm/cpu/u-boot-spl.lds for
an xPL phase and having the BSS be overlayed with the dynamic
relocations sections (here, .rel.dyn) we had missed adding the comment
about our asm memset requirements. Then, when adjusting ALIGN statements
we later missed this one. In turn, when we use objcopy to create our
binary image we end up in the situation where

where the BSS must start out 8 byte aligned as
well as end 8 byte aligned because for appended device tree the
requirement is that the whole BSS (which we add as padding to the
binary) must be 8 byte aligned. Otherwise we end up with the situation
where __bss_end (where we look for the device tree at run time) is
aligned but the size of the BSS we add

Fixes: 7828a1eeb2 ("arm: remove redundant section alignments")
Fixes: 52caad0d14 ("ARM: Align image end to 8 bytes to fit DT alignment")
Reported-by: Fabio Estevam <festevam@gmail.com>
Tested-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
---
Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Cc: Marek Vasut <marek.vasut@mailbox.org>
2026-01-26 10:46:23 -06:00