100 Commits
Author SHA1 Message Date
Peng Fan 4f5f30e77c mmc: fix mmc_deinit regression when card is at 1.8V signaling
Commit 906ee6785b ("mmc: sd: Handle UHS-I voltage signaling without
power cycle") added detection of cards already operating at 1.8V
signaling via mmc_sd_card_using_v18(). This correctly handles the
warm-reboot scenario in mmc_startup().

However, mmc_deinit() strips ALL UHS capabilities from the card caps
and calls sd_select_mode_and_width() to downgrade the card before
kernel handoff. For a card that has switched to 1.8V, uhs_en is
already true (via OCR_S18R in mmc->ocr), so sd_select_mode_and_width()
attempts UHS mode selection -- but no UHS modes remain in the filtered
caps. The non-UHS fallbacks (SD_HS, MMC_LEGACY) are 3.3V speed modes
which, when selected while signaling at 1.8V, leave the card in an
inconsistent state it cannot recover from without a power cycle.

Per SD Physical Layer Specification: "Once the card enters 1.8V
signaling mode, the card cannot be switched to 3.3V signaling without
power cycle. If the card receives CMD0, card returns to Idle state but
still works with SDR12 timing."

Fix by using a UHS capability mask that preserves UHS_SDR12 when the
card is operating at 1.8V. SDR12 is the minimum valid UHS-I mode and
is always available at 1.8V signaling per the SD specification, so the
card is left in a consistent (1.8V) state at a low, safe speed.

Fixes: 906ee6785b ("mmc: sd: Handle UHS-I voltage signaling without power cycle")
Reviewed-by: Tanmay Kathpalia <tanmay.kathpalia@altera.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-07-29 11:15:55 +08:00
Peng Fan 648263b69c mmc: fix mmc_bwrite() ignoring host get_b_max() callback
mmc_bwrite() uses mmc->cfg->b_max directly to limit per-transfer block
count. The read path (mmc_bread()) correctly calls mmc_get_b_max()
which dispatches to the host driver get_b_max() callback. This callback
allows host drivers to enforce DMA boundary constraints based on the
buffer address.

Fix mmc_bwrite() to use mmc_get_b_max() to match the read path. This
requires removing the static qualifier from the non-DM mmc_get_b_max()
and adding its declaration to mmc_private.h.

Reviewed-by: Tanmay Kathpalia <tanmay.kathpalia@altera.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-07-29 11:15:55 +08:00
Peng Fan b95ce3f094 mmc: sdhci: fix align_buffer memory leak on re-initialization
sdhci_init() allocates a 512KB aligned bounce buffer for controllers
with SDHCI_QUIRK_32BIT_DMA_ADDR. In the non-DM code path, sdhci_init()
is registered as ops->init and called on every mmc_init(). Each call
allocates a new buffer without checking or freeing the previous one,
leaking 512KB per re-initialization.

Fix by guarding the allocation with !host->align_buffer so it only
allocates on the first call.

Reviewed-by: Tanmay Kathpalia <tanmay.kathpalia@altera.com>
Signed-off-by: Tanmay Kathpalia <tanmay.kathpalia@altera.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-07-29 11:15:55 +08:00
Peng Fan 67d06fe102 mmc: rpmb: fix tautological condition in RPMB_REQ_READ_DATA validation
In rpmb_route_frames(), the RPMB_REQ_READ_DATA case checks
"req_cnt != 1 || !req_cnt" which is tautological -- !req_cnt (req_cnt
== 0) is always a subset of req_cnt != 1. The second operand is dead
code.

Based on the pattern of all other cases in the switch (RPMB_REQ_KEY,
RPMB_REQ_WRITE_DATA, RPMB_REQ_WCOUNTER) which validate rsp_cnt, this
was meant to be "req_cnt != 1 || !rsp_cnt". Without this fix, a caller
could pass rsp_cnt=0 for a read request without validation.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-07-29 11:15:55 +08:00
Peng Fan f23b5e079a mmc: fix mmc_poll_for_busy() false timeout when card is ready
mmc_poll_for_busy() returns a false -ETIMEDOUT if the card becomes
ready on the exact iteration where timeout_ms reaches 0. The card-ready
check breaks out of the loop, but then the post-loop check
"if (timeout_ms <= 0)" fires and returns -ETIMEDOUT despite the card
being ready.

Fix by returning 0 directly when the card is ready instead of breaking
out of the loop. The only exit from the loop is now the timeout path,
so the post-loop code unconditionally returns -ETIMEDOUT.

Reviewed-by: Tanmay Kathpalia <tanmay.kathpalia@altera.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-07-29 11:15:55 +08:00
Peng FanandFabio Estevam ae31cc745b imx9: scmi: reset GPIO2 according its node status
Check the GPIO2 dts node status to determine reset it or not.
On iMX952 single SPL/U-Boot image is shared for both mx952evk
and mx952evkrpmsg SM configs. GPIO2 is assigned to M7 domain
in mx952evkrpmsg, and there is no active user of GPIO2 for
mx952evk and mx952evkrpmsg in SPL/U-Boot, so it is disabled in
DTS. Otherwise, reset GPIO2 will meet hang when working with
mx952evkrpmsg SM.

Signed-off-by: Ye Li <ye.li@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-07-27 11:25:30 -03:00
Peng FanandJerome Forissier afcd55654d net: Drop unnecessary device_set_name
When device was created, it already has a name assigned. There is
no need to alloc space for name and set it with same device name.

Cleanup the code to avoid unnecessary device_set_name.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Jerome Forissier <jerome.forissier@arm.com>
2026-07-23 17:05:20 +02:00
Peng FanandTom Rini e1f345abf4 dm: core: free old name in device_set_name to prevent leak
If device_set_name is called on a device that already has
DM_FLAG_NAME_ALLOCED set, the old dynamically-allocated name is leaked.
Free it before assigning the new name.

See: drivers/net/mdio_gpio.c:mdio_gpio_bind(). There is
device_set_name() here, however dm_mdio_post_bind() will also call
device_set_name() if "device-name" exists.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2026-07-16 12:03:05 -06:00
Peng FanandTom Rini 0af2ed57a3 dm: core: Correct calloc arguments
Every other calloc in drivers/core uses calloc(count, size) with count
first. Fix the two reversed calloc(sizeof, 1) calls for consistency.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Raphaël Gallais-Pou <raphael.gallais-pou@foss.st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2026-07-16 12:03:05 -06:00
Peng FanandTom Rini 65e1e66a3a dm: core: fix wrong strlen check in of_add_subnode
The duplicate-name check uses strlen on the search name instead of the
child name, so a child named "trevor" would falsely match a search
for "trev". Fix by checking strlen of child->name.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Raphaël Gallais-Pou <raphael.gallais-pou@foss.st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2026-07-16 12:03:05 -06:00
Peng FanandTom Rini e871bb2463 dm: core: free fdt when fdt_create_empty_tree failure
If fdt_create_empty_tree fails, the malloc-ed fdt buffer is never freed.
Add free before the error return.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Raphaël Gallais-Pou <raphael.gallais-pou@foss.st.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2026-07-16 12:03:05 -06:00
Peng FanandHeiko Schocher a8d40f922d i2c: nx: Add License
Add License information for nx_i2c driver.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Heiko Schocher <hs@nabladev.com>
2026-07-08 11:23:10 +02:00
Peng FanandHeiko Schocher f6ba7d26fe i2c: nx: Use dev_read_addr_ptr()
Use dev_read_addr_ptr() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Heiko Schocher <hs@nabladev.com>
2026-07-08 11:22:48 +02:00
Peng FanandNeil Armstrong 57abbbcc94 pci: layerscape: ep: Use dev APIs
Convert the Layerscape PCIe endpoint driver to use device and ofnode-based
APIs instead of legacy FDT interfaces.

Replace devfdt_get_addr_index_ptr(), fdt_get_named_resource(),
fdtdec_get_bool(), and fdtdec_get_int() with their modern counterparts such
as dev_read_addr_index_ptr(), dev_read_resource_byname(),
dev_read_bool(), and dev_read_s32_default().

Also remove the dependency on gd->fdt_blob and global data access.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://patch.msgid.link/20260526-devfdt-pci-v1-5-ed7f31d73938@nxp.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2026-07-01 11:42:52 +02:00
Peng FanandNeil Armstrong fc1016d683 pci: imx: Use dev_read_addr_index_ptr()
Use dev_read_addr_index_ptr() which support both live device tree and flat
DT backends, avoiding direct dependency on devfdt_* helpers.

No functional changes

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://patch.msgid.link/20260526-devfdt-pci-v1-4-ed7f31d73938@nxp.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2026-07-01 11:42:52 +02:00
Peng FanandNeil Armstrong 06fdccbcd8 pci: dw_mvebu: Use dev_read_addr_x APIs
Use dev_read_addr_x APIs which support both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Reviewed-by: Stefan Roese <stefan.roese@mailbox.org>
Link: https://patch.msgid.link/20260526-devfdt-pci-v1-3-ed7f31d73938@nxp.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2026-07-01 11:42:52 +02:00
Peng FanandNeil Armstrong 9b6f2786aa pci: mpc85xx: Simplfy code with dev_remap_addr()
devfdt_get_addr_ptr() + map_physmem() could be simplifed with
devfdt_remap_addr(). But to avoid direct dependency on devfdt_* helpers,
use dev_remap_addr().

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Reviewed-by: Heiko Schocher <hs@nabladev.com>
Link: https://patch.msgid.link/20260526-devfdt-pci-v1-2-ed7f31d73938@nxp.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2026-07-01 11:42:51 +02:00
Peng FanandNeil Armstrong f657eab9be pci: rcar: Use dev_read_addr_index()
Use dev_read_addr_index() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

While at here, correct the return value check.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://patch.msgid.link/20260526-devfdt-pci-v1-1-ed7f31d73938@nxp.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2026-07-01 11:42:51 +02:00
Peng FanandFabio Estevam bd4be85a4a imx952_evk: Correct CONFIG_DEFAULT_FDT_FILE
The device tree is not stored under freescale directory when booting
Linux, so drop vendor name.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 23:02:46 -03:00
Peng FanandFabio Estevam 8c751d4821 imx95/952/94_evk/: enable booting Image.gz
Add support for booting compressed kernel Image.gz by defining
kernel_comp_addr_r and kernel_comp_size in the default environment.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 23:02:46 -03:00
Peng FanandFabio Estevam 5c4a371c94 imx93_evk/qsb/frdm: enable booting Image.gz and avoid extra memcpy
Add support for booting compressed kernel Image.gz by defining
kernel_comp_addr_r and kernel_comp_size in the default environment.

While at here, set ip_dyn to yes to allow dhcp work properly.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 23:02:46 -03:00
Peng FanandFabio Estevam 2619f50f72 imx8mm/n_evk: enable booting Image.gz and avoid extra memcpy
Add support for booting compressed kernel Image.gz by defining
kernel_comp_addr_r and kernel_comp_size in the default environment.

Set kernel_comp_addr_r to a high memory region to provide a dedicated
decompression buffer, avoiding overlap between compressed
input and decompressed output.

Also adjust CONFIG_SYS_LOAD_ADDR from 0x40480000 to 0x40400000.

With TEXT_OFFSET=0, the kernel is relocated directly to loadaddr, so
separating decompression and execution regions is required to guarantee
safe decompression without additional copying.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 23:02:46 -03:00
Peng FanandFabio Estevam 77c8ba8826 imx8mq_evk: enable booting Image.gz and avoid extra memcpy
Add support for booting compressed kernel Image.gz by defining
kernel_comp_addr_r and kernel_comp_size in the default environment.

Set kernel_comp_addr_r to a high memory region to provide a dedicated
decompression buffer, avoiding overlap between compressed
input and decompressed output.

Also adjust CONFIG_SYS_LOAD_ADDR from 0x40480000 to 0x40400000.

With TEXT_OFFSET=0, the kernel is relocated directly to loadaddr, so
separating decompression and execution regions is required to guarantee
safe decompression without additional copying.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 23:02:46 -03:00
Peng FanandFabio Estevam c295bc7c15 imx8mp_evk: enable booting Image.gz and avoid extra memcpy
Add support for booting compressed kernel Image.gz by defining
kernel_comp_addr_r and kernel_comp_size in the default environment.

Set kernel_comp_addr_r to a high memory region (0x80000000) to provide
a dedicated decompression buffer, avoiding overlap between compressed
input and decompressed output.

Also adjust CONFIG_SYS_LOAD_ADDR from 0x40480000 to 0x40600000.

With TEXT_OFFSET=0, the kernel is relocated directly to loadaddr, so
separating decompression and execution regions is required to guarantee
safe decompression without additional copying.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 23:02:46 -03:00
Peng FanandFabio Estevam 6f14516278 imx9: Select OF_LIVE
Enable the live DT to reduce the DT parsing time.
Test data on i.MX95-EVK:

Before:
Accumulated time:
                26,205  dm_spl
               483,991  dm_f
                22,977  dm_r
After:
Accumulated time:
                26,229  dm_spl
               484,772  dm_f
                 2,667  of_live
                 1,003  dm_r

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 17:07:57 -03:00
Peng FanandFabio Estevam e0dc9f254f imx8m_evk: Select OF_LIVE
Enable the live DT to reduce the DT parsing time.

Test data on i.MX8MP shows that boot time is decreased by ~%6

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 17:07:32 -03:00
Peng FanandFabio Estevam 94b5e618c7 imx9: soc: Use livetree API for fdt access
Use livetree API, otherwise it will fail to read properties from the device
tree when OF_LIVE is enabled.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 17:07:18 -03:00
Peng FanandFabio Estevam 170291f042 misc: ele: Use dev_read_addr
Use dev_read_addr which supports livetree API, otherwise driver
will fail to get addr when OF_LIVE is enabled.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 17:07:06 -03:00
Peng FanandFabio Estevam 8db4311b4b gpio: imx_rgpio2p: Use dev_read_addr_index
Use dev_read_addr_index which supports livetree API, otherwise driver
will fail to get addr when OF_LIVE is enabled.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 17:06:54 -03:00
Peng FanandFabio Estevam b4610c7177 serial: lpuart: Use livetree API for fdt access
Use livetree API, otherwise driver will fail to read properties
from the device tree when OF_LIVE is enabled.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 17:06:39 -03:00
Peng FanandFabio Estevam fd1072d0d5 imx8m: dts: Update ddr firmware name
Update to latest ddr firmware name, otherwise user may use legacy ddr
firmware from linux-firmware-imx release.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 17:06:15 -03:00
Peng FanandFabio Estevam 902cf2bf67 imx: Guard print_cpuinfo with !CONFIG_IS_ENABLED(CPU)
When CONFIG_CPU is enabled, print_cpuinfo is defined in common/board_f.c
with static property. However in imx cpu.c, print_cpuinfo is not a local
function, so guard it with !CONFIG_IS_ENABLED(CPU).

And all i.MX8M boards has CONFIG_CPU and CONFIG_CPU_IMX set, so remove the
dead code.

However legacy print_cpuinfo also print reset reason, to keep reset
reason printed as before, export get_reset_reason() and invoke it
at arch_misc_init().

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 17:05:56 -03:00
Peng FanandFabio Estevam 2571e319c5 imx7ulp: cleanup get_imx_type
There is only one SoC and no external user of get_imx_type for i.MX7ULP,
so directly embed the string in print_cpuinfo and drop get_imx_type().

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 17:05:36 -03:00
Peng FanandFabio Estevam 0f09e834ac imx8ulp: cleanup get_imx_type
There is only one SoC and no external user of get_imx_type for i.MX8ULP,
so directly embed the string in print_cpuinfo and drop get_imx_type().

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 17:05:15 -03:00
Peng FanandFabio Estevam f59da150c9 imx952: Update gpio node regs
Same to 85319b2e67 ("board: toradex: smarc-imx95: remove gpio1 reg"),
there is no need to use dual base for i.MX952 gpio, so drop the U-Boot
specific reg changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 17:00:22 -03:00
Peng FanandFabio Estevam e0fa78b215 imx8m: Imply DM_THERMAL
CONFIG_IMX_TMU depends on CONFIG_DM_THERMAL, so when selecting IMX_TMU,
DM_THERMAL should also be selected.

Update i.MX8M based defconfigs.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Acked-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2026-06-26 17:00:22 -03:00
Peng FanandFabio Estevam 3232cd38b4 imx9: scmi: Correct shutdown checking
The shutdown checking should use shutdown flags, not bootflags.

Signed-off-by: Ye Li <ye.li@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-26 16:50:55 -03:00
Peng FanandMarek Vasut 78d5f8cb50 usb: tcpm: fix inverted poll condition in tcpm_pd_transmit()
The read_poll_timeout() macro breaks out of its loop when the condition
evaluates to true. The current code uses "!tx_complete" as the
condition, which means it exits immediately when tx_complete is false
(i.e., transmission has NOT completed yet), rather than waiting for
completion.

Fix the condition to "tx_complete" so that the poll loop waits until
the TCPC signals transmission success/failure/discard before
proceeding.

Without this fix, tcpm_pd_transmit() returns before the TCPC has
finished transmitting, causing the PD state machine to proceed with
stale tx_status values.

Fixes: 1db4c0ac77 ("usb: tcpm: add core framework")
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-18 16:48:16 +02:00
Peng FanandTom Rini 53e9c41847 dm: core: use DT region size when mapping device addresses
Update dev_read_addr_*_ptr() and dev_remap_addr_*() helpers to use
dev_read_addr_size_*() and pass the DT-provided region size to
map_sysmem() / map_physmem() instead of 0.

Ensure mappings are consistent with the size defined in the device tree
and avoids implicit or unbounded mappings. When the DT does not provide
a size, the behavior remains unchanged since size is initialized to 0.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-11 10:02:32 -06:00
Peng FanandStefan Roese eab66c3a90 timer: orion: Use dev_remap_addr_index()
Use dev_remap_addr_index() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-10 11:23:26 +02:00
Peng FanandTom Rini 8d1d86ff58 ata: dwc_ahci: Use dev_read_addr_index()
Use dev_read_addr_index() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 16:00:11 -06:00
Peng FanandTom Rini ffbfe1cec3 ata: mtk_ahci: Use dev_remap_addr_index() and ofnode API
Use dev_remap_addr_index() instead of devfdt_remap_addr_index() to map the
controller registers, removing the dependency on FDT-specific helpers.

Replace the direct fdt_get_property() lookup combined with dev_of_offset()
by dev_read_prop().

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 16:00:11 -06:00
Peng FanandTom Rini ebb9ee6ef4 rng: rproc_rng200: Use dev_remap_addr()
Use dev_remap_addr() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

And only mapping sizeof(void *) is wrong, RNG_FIFO_COUNT_OFFSET(0x24) is
accessed in this driver. So dev_remap_addr() could also fix the mapping
size.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:53:34 -06:00
Peng FanandTom Rini 8e4414d1a9 misc: k3_avs: Use dev_read_addr_index()
Use dev_read_addr_index() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:53:34 -06:00
Peng FanandTom Rini 8b5e2a25ab thermal: ti-bandgap: Use dev_read_addr_index()
Use dev_read_addr_index() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:53:34 -06:00
Peng FanandTom Rini 305c014fdb reset: ast: Use dev_read_addr_ptr()
Use dev_read_addr_ptr() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

While at here, correct error return value, when priv->scu is NULL,
PTR_ERR(priv->scu) is 0 which implies success. Change to return '-EINVAL'.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:53:34 -06:00
Peng FanandTom Rini d26cbf4667 ram: aspeed: Use dev_read_addr_x() API
Use dev_read_addr_ptr() and dev_read_addr_index_ptr() which support both
live device tree and flat DT backends, avoiding direct dependency on
devfdt_* helpers.

While at here, also use ofnode_read_s32_default() to replace
fdtdec_get_int().

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:53:34 -06:00
Peng FanandTom Rini f2479b58aa crypto: tegra: Use dev_read_addr_x()
Use dev_read_addr_size_name_ptr() which supports both live device tree and
flat DT backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Svyatoslav Ryhel <clamor95@gmail.com>
2026-06-09 14:53:34 -06:00
Peng FanandTom Rini c305b8ac86 crypto: aspeed: Use dev_read_addr_x()
Use dev_read_addr_x() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:53:34 -06:00
Peng FanandTom Rini 8e8e624abc remoteproc: ipu: Use dev_read_addr_x()
Use dev_read_addr_x() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:53:34 -06:00
Peng FanandTom Rini 8918af1c0c remoteproc: pru: Use dev_read_addr_size_index()
Use dev_read_addr_size_index() which supports both live device tree and
flat DT backends, avoiding direct dependency on devfdt_* helpers.

While at here, drop unused 'node'.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:53:34 -06:00
Peng FanandTom Rini a4e8d80c9d gpio: aspeed: Use dev_read_addr_ptr()
Use dev_read_addr_ptr() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:53:34 -06:00
Peng FanandTom Rini bc988983d2 gpio: nx: Use dev_remap_addr()
Use dev_remap_addr() to simplify code.

dev_remap_addr() does same thing as dev_read_addr() + map_physmem(). And
it supports both live device tree and flat DT backends, avoiding direct
dependency on devfdt_* helpers.

Also add error handling logic.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:53:34 -06:00
Peng FanandTom Rini b6d42b3fbf pinctrl: nexell: Use dev_read_addr()
Use dev_read_addr() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:53:34 -06:00
Peng FanandTom Rini ef6b3ccf59 pinctrl: at91: Use dev_read_addr_index()
Use dev_read_addr_index() which supports both live device tree and flat
DT backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:53:34 -06:00
Peng FanandTom Rini 55550b4292 clk: sophgo: Use dev_read_addr_ptr()
Replace devfdt_get_addr_ptr() with dev_read_addr_ptr() when retrieving the
register base address.

dev_read_addr_ptr() supports both live device tree and flat DT backends,
avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:48:33 -06:00
Peng FanandTom Rini f683a457b6 clk: hsdk-cgu: Use dev_read_addr_index_ptr()
Replace devfdt_get_addr_index_ptr() with dev_read_addr_index_ptr() when
retrieving the register base address.

dev_read_addr_index_ptr() supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:48:33 -06:00
Peng FanandTom Rini 48d74f433e clk: aspeed: Use dev_read_addr_ptr()
Replace devfdt_get_addr_ptr() with dev_read_addr_ptr() when retrieving the
register base address.

dev_read_addr_ptr() supports both live device tree and flat DT backends,
avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:48:33 -06:00
Peng FanandTom Rini 179022b8e1 clk: altera: Use dev_read_addr_ptr()
Replace devfdt_get_addr_ptr() with dev_read_addr_ptr() when retrieving the
register base address.

dev_read_addr_ptr() supports both live device tree and flat DT backends,
avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 14:48:33 -06:00
Peng FanandTom Rini 54ed5729a9 clk: at91: Use dev_read_addr_ptr()
Replace devfdt_get_addr_ptr() with dev_read_addr_ptr() when retrieving the
register base address.

dev_read_addr_ptr() supports both live device tree and flat DT backends,
avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Tested-by: Manikandan Muralidharan <manikandan.m@microchip.com>
2026-06-09 14:48:33 -06:00
Peng Fan 39dd6607cd power: regulator: scmi: convert ofnode API to dev_read API
Replace ofnode_find_subnode(dev_ofnode(dev), ...) with
dev_read_subnode(dev, ...).

No functional change.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 23:55:56 +08:00
Peng Fan fa3544f39f power: regulator: qcom-rpmh: convert ofnode API to dev_read API
Replace ofnode_read_u32(dev_ofnode(dev), ...) with
dev_read_u32(dev, ...), ofnode_read_string(dev_ofnode(dev), ...) with
dev_read_string(dev, ...), and ofnode_for_each_subnode(node,
dev_ofnode(dev)) with dev_for_each_subnode(node, dev).

No functional change.

Reviewed-by: Casey Connolly <casey.connolly@linaro.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 23:55:56 +08:00
Peng Fan 0c9b8e07fd power: regulator: anatop: convert ofnode API to dev_read API
Replace ofnode_read_string(dev_ofnode(dev), ...) with
dev_read_string(dev, ...).

No functional change.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 23:55:56 +08:00
Peng Fan 9be0477906 power: pmic: qcom: convert ofnode API to dev_read API
Replace ofnode_read_u32_index(dev_ofnode(dev), ...) with
dev_read_u32_index(dev, ...).

No functional change.

Reviewed-by: Casey Connolly <casey.connolly@linaro.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 23:55:56 +08:00
Peng Fan ddbfee1ec0 power: pmic: pca9450: convert ofnode API to dev_read API
Replace ofnode_read_bool(dev_ofnode(dev), ...) with
dev_read_bool(dev, ...).

No functional change.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 23:55:56 +08:00
Peng Fan 2d6b735f5a power: domain: imx8m: convert ofnode API to dev_read API
Replace ofnode_for_each_subnode(subnode, dev_ofnode(dev)) with
dev_for_each_subnode(subnode, dev) and ofnode_read_u32_default(
dev_ofnode(dev), ...) with dev_read_u32_default(dev, ...).

No functional change.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 23:55:56 +08:00
Peng Fan 788259b6c9 power: domain: meson-gx-pwrc-vpu: use dev_read_phandle_with_args for hhi-sysctrl
Replace the manual ofnode_read_u32() + ofnode_get_by_phandle() sequence
with a single dev_read_phandle_with_args() call to resolve the
amlogic,hhi-sysctrl phandle. This is cleaner and avoids the intermediate
phandle value and ofnode_valid() check.

No functional change.

Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 23:55:56 +08:00
Peng Fan 8e873d7ad3 power: domain: meson-ee-pwrc: use dev_read_phandle_with_args for ao-sysctrl
Replace the manual ofnode_read_u32() + ofnode_get_by_phandle() sequence
with a single dev_read_phandle_with_args() call to resolve the
amlogic,ao-sysctrl phandle. This is cleaner and avoids the intermediate
phandle value and ofnode_valid() check.

No functional change.

Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 23:55:56 +08:00
Peng Fan be9ded7803 power: regulator: tps6287x: Use dev_read_addr_index()
Use dev_read_addr_index() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 23:55:56 +08:00
Peng Fan 162772d59f mmc: octeontx_hsmmc: convert ofnode API to dev_read API
Replace all ofnode_read_*() / ofnode_read_bool() / ofnode_get_property()
calls with their dev_read_*() equivalents across
octeontx_mmc_get_valid(), octeontx_mmc_get_config(),
octeontx_mmc_host_probe() and octeontx_mmc_host_child_pre_probe().

Remove the intermediate 'ofnode node' local variables, the now-unused
'host->node' assignment in the probe function, and the corresponding
'ofnode node' field from struct octeontx_mmc_host.

No functional change.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 23:55:56 +08:00
Peng Fan 80aa5cbd55 mmc: msm_sdhci: convert ofnode API to dev_read API
Replace ofnode_read_u32(), ofnode_get_property() and
ofnode_read_string_index() with their dev_read_*() equivalents in
msm_sdc_clk_init(). Remove the intermediate 'ofnode node' local
variable.

No functional change.

Reviewed-by: Casey Connolly <casey.connolly@linaro.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 23:55:56 +08:00
Peng Fan cf3f7e03ff mmc: fsl_esdhc_imx: convert ofnode API to dev_read API
Replace ofnode_read_*() calls with their dev_read_*() equivalents in
fsl_esdhc_of_to_plat(). Remove the intermediate 'ofnode node' local
variable and the now-unnecessary <dm/ofnode.h> include.

No functional change.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 23:55:56 +08:00
Peng Fan 185e4f27c8 mmc: cv1800b_sdhci: Use dev_read_addr_ptr()
Use dev_read_addr_ptr() which supports both live device tree and flat
DT backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Reviewed-by: Stefan Roese <stefan.roese@mailbox.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 23:55:56 +08:00
Peng Fan b996053fcb mmc: xenon_sdhci: Use livetree API
Use livetree API which supports both live device tree and flat DT backends,
avoiding direct dependency on devfdt_* helpers.

No functional changes.

Reviewed-by: Stefan Roese <stefan.roese@mailbox.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-09 23:55:56 +08:00
Peng FanandStefan Roese 5843db9dad watchdog: mpc8xxx_wdt: Use dev_remap_addr()
Use dev_remap_addr() to replace devfdt_remap_addr which supports both live
device tree and flat DT backends, avoiding direct dependency on
devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Stefan Roese <stefan.roese@mailbox.org>
2026-06-09 11:51:19 +02:00
Peng FanandStefan Roese b9b27c875f watchdog: rti: Use dev_read_addr_ptr()
devfdt_get_addr() returns FDT_ADDR_T_NONE(-1UL) when fail, using
"!priv->regs" to check return value is wrong.

Replace devfdt_read_addr() with dev_read_addr_ptr() when retrieving the
register base address.

dev_read_addr_ptr() supports both live device tree and flat DT backends,
avoiding direct dependency on devfdt_* helpers.

Also use "void __iomem *" to replace "phys_addr_t" to avoid type
casting.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Stefan Roese <stefan.roese@mailbox.org>
2026-06-09 11:51:19 +02:00
Peng FanandStefan Roese 3c3ba75c85 watchdog: orion_wdt: use dev_read_addr_size_index()
Replace devfdt_read_addr_size_index() with dev_read_addr_size_index() when
retrieving the register base address.

dev_read_addr_size_index() supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Stefan Roese <stefan.roese@mailbox.org>
2026-06-09 11:51:19 +02:00
Peng FanandFabio Estevam 3782bf8a0a cpu: imx8_cpu: fix the mpidr check
The mpidr's type is u32, however dev_read_addr returns a value with type
fdt_addr_t(phys_addr_t) which is 64bit long. So the check never fail.

This patch we still keep mpidr as u32 type, because i.MX8 only has max
two cluster, the higher 32bit will always be 0. Use a variable addr
to do the check, if check pass, assign the lower 32 bit to plat->mpidr.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Ye Li <ye.li@nxp.com>
2026-06-05 12:57:02 -03:00
Peng FanandFabio Estevam c8bab9f6ba imx8mp: msc-sm2s: Switch to OF_UPSTREAM
In Upstream Linux, the board dts is imx8mp-msc-sm2s-ep1.dts which is
also showed in msc_sm2s_imx8mp_defconfig:CONFIG_DEFAULT_FDT_FILE.

Upstream file imx8mp-msc-sm2s.dtsi is almost same as U-Boot
imx8mp-msc-sm2s.dts, so directly use imx8mp-msc-sm2s-ep1.dts as U-Boot
device tree and rename the u-boot.dtsi to
imx8mp-msc-sm2s-ep1-u-boot.dtsi.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-05 08:57:29 -03:00
Peng FanandFabio Estevam 612d49cc8d imx8mm: pgh: Switch to OF_UPSTREAM
The U-Boot copy of the board device trees for this board is almost same as
the ones in dts/upstream except some differences in display which not
impact U-Boot as of now, so switch to the board to OF_UPSTREAM, by dropping
the U-Boot copies and selecting OF_UPSTREAM.

There are some changes in imx8mm-tqma8mqml.dtsi regarding sdhc2 supply,
select DM_PMIC_PCA9450, DM_REGULATOR_PCA9450 and SPL_DM_REGULATOR_PCA9450
to avoid breaking sd.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-05 08:57:29 -03:00
Peng FanandFabio Estevam 05a7b0c2a8 imx8mp: icore-mx8mp-edimm2.2: Switch to OF_UPSTREAM
The U-Boot copy of the board device trees for this board is same as the
ones in dts/upstream, so switch to the board to OF_UPSTREAM, by dropping
the U-Boot copies and selecting OF_UPSTREAM.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-05 08:57:29 -03:00
Peng FanandFabio Estevam 0ba428236e imx8mm: icore-mx8mm: Switch to OF_UPSTREAM
arch/arm/dts/imx8mm-icore-mx8mm[ctouch2.dts,edimm2.2.dts] are same as
the one in dts/upstream, so drop the copy and switch to OF_UPSTREAM by
updating config and selecting OF_UPSTREAM.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-05 08:57:29 -03:00
Peng FanandJerome Forissier dafa6a3603 net: mvpp2: convert FDT access to ofnode API
Convert mvpp2 driver from legacy fdtdec/fdt_* APIs to the ofnode-based
interfaces.

Replace usage of dev_of_offset(), fdtdec_lookup_phandle(),
fdtdec_get_int(), fdt_parent_offset(), and related helpers with their
ofnode equivalents, including dev_ofnode(), ofnode_parse_phandle(),
ofnode_read_s32_default(), ofnode_get_parent(), and
ofnode_for_each_subnode().

Remove direct dependencies on gd->fdt_blob.

Main changes:
- Use ofnode_valid() instead of integer checks for node presence
- Switch fixed-link detection to ofnode_find_subnode()
- Replace uclass_get_device_by_of_offset() with
  uclass_get_device_by_ofnode()
- Update subnode iteration and device binding to use ofnode

No functional changes.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-03 16:55:55 +02:00
Peng FanandJerome Forissier f603d10d72 net: mvpp2: Use dev_read_addr_index_ptr()
Use dev_read_addr_index_ptr() which supports both live device tree and
flat DT backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-03 16:55:55 +02:00
Peng FanandJerome Forissier 23532fcb7d net: dc2114x: Use dev_remap_addr()
Use dev_remap_addr() to simplify code.

dev_remap_addr() does same thing as dev_read_addr() + map_physmem(). And
it supports both live device tree and flat DT backends, avoiding direct
dependency on devfdt_* helpers.

No functional changes.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-03 16:55:55 +02:00
Peng FanandJerome Forissier 0e2ba59bc5 net: calxedaxgmac: Use dev_read_addr()
Use dev_read_addr() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-03 16:55:55 +02:00
Peng FanandJerome Forissier c174c1f7f1 net: qe: dm_qe_uec: Use dev_read_addr()
Use dev_read_addr() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Heiko Schocher <hs@nabladev.com>
2026-06-03 16:55:55 +02:00
Peng FanandJerome Forissier 45e5625d71 net: ethoc: Use dev_read_addr_index()
Use dev_read_addr_index() which supports both live device tree and flat DT
backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-06-03 16:55:55 +02:00
Peng FanandJerome Forissier b9469df60e phy: cadence: Use device API
Use dev_remap_addr_index() and dev_read_addr_size_index() which support
both live device tree and flat DT backends, avoiding direct dependency on
devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Stefan Roese <stefan.roese@mailbox.org>
2026-06-03 16:55:55 +02:00
Peng FanandJerome Forissier dde8b3b7e1 phy: marvell: comphy: Use dev_read_addr_index_ptr()
Use dev_read_addr_index_ptr() which supports both live device tree and flat
DT backends, avoiding direct dependency on devfdt_* helpers.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Stefan Roese <stefan.roese@mailbox.org>
2026-06-03 16:55:55 +02:00
Peng FanandJerome Forissier 6184a9b106 phy: ti-pipe3: Use device API for DT parsing
Replace legacy FDT parsing in get_reg() with the device API
dev_read_phandle_with_args() which removes direct access to gd->fdt_blob
and aligns the driver with modern U-Boot DT handling.

The offset is retrieved from the phandle argument instead of manually
parsing the property cells. Add validation for the argument
count to avoid out-of-bounds access on malformed DTs.

Also switch from devfdt_get_addr_size_index() to dev_read_addr_size_index()
for consistency with the DM API.

No functional changes.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Stefan Roese <stefan.roese@mailbox.org>
2026-06-03 16:55:55 +02:00
Peng FanandFabio Estevam cbd2dc2bdd arm: mx6: module_fuse: update node path for Linux 6.13
Update node path for 5.10 Kernel.
 - aips-bus renamed to bus
 - gpmi-nand renamed to nand-controller

cherry picked from https://github.com/nxp-imx/uboot-imx,
tag lf-6.12.3-1.0.0,
commit feb8178e97d4 ("LF-2637 mx6: fuse: update node path")

add changes node path for Linux 6.13

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Max Merchel <Max.Merchel@ew.tq-group.com>
2026-05-15 17:31:39 -03:00
Peng FanandFabio Estevam e1a7afcf92 imx8mm/n: Drop unused dtsi
imx8m[m,n]-beacon-baseboard.dtsi was missed to be deleted in
commit f5585124c9 ("arm64: imx: imx8mm-beacon: Migrate to OF_UPSTREAM")
commit a64feb974f ("arm64: imx: imx8mn-beacon: Migrate to OF_UPSTREAM")

arch/arm/dts/imx8mn-evk.dtsi was missed to be deleted in
commit 73d57e0aa4 ("imx: imx8mn-evk: convert to OF_UPSTREAM")

Drop them.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-05-15 17:31:39 -03:00
Peng FanandFabio Estevam d4817ba78e imx8mq: Drop arch/arm/dts/imx8mq.dtsi
scripts/Makefile.lib already handles the including path for imx8mq.dtsi
from dts/upstream. No need to keep a copy in arch/arm/dts/, and there
is very minimal changes compared with the one in dts/upstream, so remove
the copy.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-05-15 17:31:39 -03:00
Peng FanandFabio Estevam d91270ae82 imx8mq: kontron-pitx-imx8m: Switch OF_UPSTREAM
arch/arm/dts/imx8mq-kontron-pitx-imx8m.dts is almost same as upstream Linux
dts, so switch to OF_UPSTREAM by dropping the U-Boot copy of the dts,
enabling OF_UPSTREAM and updating CONFIG_DEFAULT_DEVICE_TREE.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-05-15 17:31:39 -03:00
Peng FanandFabio Estevam aef4690324 imx8mq: librem5: Switch to OF_UPSTREAM
arch/arm/dts/imx8mq-librem5-r[4,3].dts is almost same as upstream Linux dts,
and arch/arm/dts/imx8mq-librem5.dtsi is out of sync with upstream linux
dts, but it should not break U-Boot after using OF_UPSTREAM. So switch to
OF_UPSTREAM by dropping the U-Boot copy of the dts, enabling OF_UPSTREAM and
updating CONFIG_DEFAULT_DEVICE_TREE.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-05-15 17:31:39 -03:00
Peng FanandFabio Estevam 3893fdcf63 imx8mq: pico: Switch OF_UPSTREAM
arch/arm/dts/imx8mq-pico-pi.dts is almost same as upstream Linux dts,
so switch to OF_UPSTREAM by dropping the U-Boot copy of the dts,
enabling OF_UPSTREAM and updating CONFIG_DEFAULT_DEVICE_TREE.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-05-15 17:31:39 -03:00
Peng FanandFabio Estevam f80ec8cfd7 imx8mq: phanbell: Switch OF_UPSTREAM
arch/arm/dts/imx8mq-phanbell.dts is almost same as upstream Linux dts,
so switch to OF_UPSTREAM by dropping the U-Boot copy of the dts,
enabling OF_UPSTREAM and updating CONFIG_DEFAULT_DEVICE_TREE.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-05-15 17:31:39 -03:00
Peng FanandFabio Estevam 1eb024281f imx8mq: reform2: Switch to OF_UPSTREAM
arch/arm/dts/imx8mq-mnt-reform2.dts are almost same as upstream Linux
imx8mq-mnt-reform2.dts, so switch to OF_USPTREAM for this board, with
only updating imx8mq-mnt-reform2-u-boot.dtsi to keep "simple-panel"
compatible string for display panel.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-05-15 17:31:39 -03:00
Peng Fan b8124202d7 p2041rdb: remove NAND defconfig
The RDB doesn't support NAND boot at all, remove the config for it.
Apparently, it was introduced by commit dd84058d24 ("kconfig: add
board Kconfig and defconfig files") which ran some scripts. Maybe that
script was wrong or the source boards.cfg was wrong. In any case, there
is no NAND flash on the RDB.

Signed-off-by: Michael Walle <mwalle@kernel.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2026-05-15 19:28:31 +08:00