[PATCH v4 2/2] arm64: dts: freescale: add support for NXP i.MX93 FRDM

Thomas Petazzoni thomas.petazzoni at bootlin.com
Tue Dec 30 08:15:48 PST 2025


Hello Fabian,

On Thu, 18 Dec 2025 12:39:22 +0100
Fabian Pflug <f.pflug at pengutronix.de> wrote:

> The FRDM i.MX 93 development board is a low-cost and compact development
> board featuring the i.MX93 applications processor.
> 
> It features:
> - Dual Cortex-A55
> - 2 GB LPDDR4X / LPDDR4
> - 32 GB eMMC5.1
> - MicroSD slot
> - GbE RJ45 x 2
> - USB2.0 1x Type C, 1x Type A
> 
> This file is based upon the one provided by nxp in their own kernel and
> yocto meta layer for the device, but adapted for mainline.
> 
> Signed-off-by: Haidong Zheng <haidong.zheng at nxp.com>
> Signed-off-by: Danwei Luo <danwei.luo at nxp.com>
> Signed-off-by: Lei Xu <lei.xu at nxp.com>
> Signed-off-by: Fabian Pflug <f.pflug at pengutronix.de>

Thanks for your patch! I tested it on top of Linux 6.18.2, using
upstream U-Boot 2025.10, and a few seconds after boot I get the
following kernel splat:

[   28.754128] irq 100: nobody cared (try booting with the "irqpoll" option)
[   28.760922] CPU: 0 UID: 0 PID: 0 Comm: swapper/0 Not tainted 6.18.2-00001-g05c40156cdc2 #4 PREEMPT 
[   28.760931] Hardware name: NXP i.MX93 11X11 FRDM board (DT)
[   28.760935] Call trace:
[   28.760938]  show_stack+0x18/0x30 (C)
[   28.760953]  dump_stack_lvl+0x60/0x80
[   28.760959]  dump_stack+0x18/0x24
[   28.760964]  __report_bad_irq+0x4c/0xec
[   28.760971]  note_interrupt+0x328/0x370
[   28.760978]  handle_irq_event+0x9c/0xb0
[   28.760987]  handle_level_irq+0xe4/0x180
[   28.760992]  handle_irq_desc+0x34/0x60
[   28.760999]  generic_handle_domain_irq+0x1c/0x30
[   28.761005]  vf610_gpio_irq_handler+0x78/0x110
[   28.761014]  handle_irq_desc+0x34/0x60
[   28.761020]  generic_handle_domain_irq+0x1c/0x30
[   28.761027]  gic_handle_irq+0x4c/0x120
[   28.761031]  call_on_irq_stack+0x30/0x48
[   28.761036]  do_interrupt_handler+0x80/0x90
[   28.761042]  el1_interrupt+0x3c/0x60
[   28.761049]  el1h_64_irq_handler+0x18/0x30
[   28.761054]  el1h_64_irq+0x6c/0x70
[   28.761059]  cpuidle_enter_state+0xa8/0x300 (P)
[   28.761065]  cpuidle_enter+0x38/0x50
[   28.761072]  do_idle+0x1e4/0x260
[   28.761080]  cpu_startup_entry+0x34/0x40
[   28.761086]  rest_init+0xdc/0xe0
[   28.761092]  console_on_rootfs+0x0/0x6c
[   28.761100]  __primary_switched+0x88/0x90
[   28.761107] handlers:
[   28.876539] [<0000000028c5c2d1>] irq_default_primary_handler threaded [<0000000024992bf8>] pca953x_irq_handler
[   28.886532] Disabling IRQ #100

I'm using a stripped-down arm64 defconfig file, which I have attached.

IRQ 100 is:

100:     100001          0 gpio-vf610  27 Level     1-0022

I see the PMIC interrupt and the RTC interrupts are routed to the I2C
GPIO expander at 1-0022, so I imagine either the PMIC or the RTC are
triggering an interrupt (left enabled by U-Boot), and the kernel isn't
compiled with the driver for either the PMIC or the RTC, and therefore
there's no IRQ handler?

(I confess I didn't investigate more than that at this point.)

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: defconfig
Type: application/octet-stream
Size: 22430 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20251230/817214ae/attachment-0001.obj>


More information about the linux-arm-kernel mailing list