Port-arm archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: 10.0 boot hangs on RIoTboard



On Wed, Aug 28, 2024 at 02:46:42PM +1200, Lloyd Parkes wrote:
> On Tue, 2024-08-27 at 10:33 +0800, Rui-Xiang Guo wrote:
> > Hi,
> > It needs a patch to fix the FDT matching issue:
> > https://github.com/picohive/netbsd-riotboard/blob/main/imx6_clk.c.diff
> 
> That diff looks shouldn't be needed if you are using the DTB file from
> NetBSD. Maybe??? 

That is according to
https://github.com/NetBSD/src/blob/netbsd-10/sys/external/gpl2/dts/dist/arch/arm/boot/dts/imx6qdl.dtsi
which is included by
https://github.com/NetBSD/src/blob/netbsd-10/sys/external/gpl2/dts/dist/arch/arm/boot/dts/imx6dl-riotboard.dts

If it boots from original GENERIC, I get many "couldn't get clock" errors:

[   1.0000000] NetBSD/evbarm (fdt) booting ...
[   1.0000000] [ Kernel symbol table missing! ]
PSCI: no /psci node found
arm_fdt_cpu_mpstart: failed to enable CPU 0x1
[   1.0000000] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
[   1.0000000]     2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013,
[   1.0000000]     2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023,
[   1.0000000]     2024
[   1.0000000]     The NetBSD Foundation, Inc.  All rights reserved.
[   1.0000000] Copyright (c) 1982, 1986, 1989, 1991, 1993
[   1.0000000]     The Regents of the University of California.  All rights reserved.

[   1.0000000] NetBSD 10.0 (GENERIC) #0: Thu Mar 28 08:33:33 UTC 2024
[   1.0000000]  mkrepro%mkrepro.NetBSD.org@localhost:/usr/src/sys/arch/evbarm/compile/GENERIC
[   1.0000000] total memory = 1024 MB
[   1.0000000] avail memory = 988 MB
[   1.0000000] armfdt0 (root)
[   1.0000000] simplebus0 at armfdt0: RIoTboard i.MX6S
[   1.0000000] simplebus1 at simplebus0
[   1.0000000] cpus0 at simplebus0
[   1.0000000] simplebus2 at simplebus0
[   1.0000000] simplebus3 at simplebus0
[   1.0000000] cpu0 at cpus0: Cortex-A9 r2p10 (Cortex V7A core)
[   1.0000000] cpu0: DC enabled IC enabled WB enabled LABT branch prediction enabled
[   1.0000000] cpu0: L1 32KB/32B 4-way (256 set) VIPT Instruction cache
[   1.0000000] cpu0: L1 32KB/32B 4-way (256 set) write-back-locking-C PIPT Data cache
[   1.0000000] cpu0: L2 512KB/32B 16-way (1024 set) write-back-locking-D PIPT Unified cache
[   1.0000000] vfp0 at cpu0: NEON MPE (VFP 3.0+), rounding, NaN propagation, denormals
[   1.0000000] cpufreqdt0 at cpu0
[   1.0000000] cpu1 at cpus0: disabled (unresponsive)
[   1.0000000] cpufreqdt1 at cpu1
[   1.0000000] simplebus4 at simplebus1
[   1.0000000] simplebus5 at simplebus1
[   1.0000000] simplebus6 at simplebus4
[   1.0000000] syscon0 at simplebus4: System Controller Registers
[   1.0000000] imx6ccm0 at simplebus4: can't find anatop device
[   1.0000000] gic0 at simplebus1: GIC
[   1.0000000] armgic0 at gic0: Generic Interrupt Controller, 160 sources (149 valid)
[   1.0000000] armgic0: 32 Priorities, 128 SPIs, 5 PPIs, 16 SGIs
[   1.0000000] syscon1 at simplebus4: System Controller Registers
[   1.0000000] imxsnvs0 at simplebus4: Secure Non-Volatile Storage
[   1.0000000] fclock0 at simplebus3: 32768 Hz fixed clock (ckil)
[   1.0000000] fclock1 at simplebus3: 0 Hz fixed clock (ckih1)
[   1.0000000] fclock2 at simplebus3: 24000000 Hz fixed clock (osc)
[   1.0000000] imxgpc0 at simplebus4: General Power Controller
[   1.0000000] imxocotp0 at simplebus5: couldn't get clock
[   1.0000000] l2cc0 at simplebus1
[   1.0000000] arml2cc0 at l2cc0: ARM PL310 r3p2 L2 Cache Controller (disabled)
[   1.0000000] arml2cc0: cache enabled
[   1.0000000] a9ptmr0 at simplebus1: couldn't get clock
[   1.0000000] imxgpio0 at simplebus4: GPIO (gpio@209c000)
[   1.0000000] imxgpio0: interrupting on irq 98
[   1.0000000] imxgpio0: interrupting on irq 99
[   1.0000000] imxgpio0: interrupts 160..191
[   1.0000000] gpio0 at imxgpio0: 32 pins
[   1.0000000] imxgpio1 at simplebus4: GPIO (gpio@20a4000)
[   1.0000000] imxgpio1: interrupting on irq 102
[   1.0000000] imxgpio1: interrupting on irq 103
[   1.0000000] imxgpio1: interrupts 192..223
[   1.0000000] gpio1 at imxgpio1: 32 pins
[   1.0000000] imxgpio2 at simplebus4: GPIO (gpio@20b4000)
[   1.0000000] imxgpio2: interrupting on irq 110
[   1.0000000] imxgpio2: interrupting on irq 111
[   1.0000000] imxgpio2: interrupts 224..255
[   1.0000000] gpio2 at imxgpio2: 32 pins
[   1.0000000] imxgpio3 at simplebus4: GPIO (gpio@20ac000)
[   1.0000000] imxgpio3: interrupting on irq 106
[   1.0000000] imxgpio3: interrupting on irq 107
[   1.0000000] imxgpio3: interrupts 256..287
[   1.0000000] gpio3 at imxgpio3: 32 pins
[   1.0000000] imxgpio4 at simplebus4: GPIO (gpio@20a0000)
[   1.0000000] imxgpio4: interrupting on irq 100
[   1.0000000] imxgpio4: interrupting on irq 101
[   1.0000000] imxgpio4: interrupts 288..319
[   1.0000000] gpio4 at imxgpio4: 32 pins
[   1.0000000] imxgpio5 at simplebus4: GPIO (gpio@20a8000)
[   1.0000000] imxgpio5: interrupting on irq 104
[   1.0000000] imxgpio5: interrupting on irq 105
[   1.0000000] imxgpio5: interrupts 320..351
[   1.0000000] gpio5 at imxgpio5: 32 pins
[   1.0000000] imxgpio6 at simplebus4: GPIO (gpio@20b0000)
[   1.0000000] imxgpio6: interrupting on irq 108
[   1.0000000] imxgpio6: interrupting on irq 109
[   1.0000000] imxgpio6: interrupts 352..383
[   1.0000000] gpio6 at imxgpio6: 32 pins
[   1.0000000] imxi2c0 at simplebus5: couldn't get clock
[   1.0000000] imxi2c1 at simplebus5: couldn't get clock
[   1.0000000] imxuart0 at simplebus6
[   1.0000000] imxuart0: interrupting on irq 58
[   1.0000000] imxuart1 at simplebus5
[   1.0000000] imxuart1: interrupting on irq 59
[   1.0000000] imxuart1: console
[   1.0000000] imxuart2 at simplebus5
[   1.0000000] imxuart2: interrupting on irq 60
[   1.0000000] imxuart3 at simplebus5
[   1.0000000] imxuart3: interrupting on irq 61
[   1.0000000] imxuart4 at simplebus5
[   1.0000000] imxuart4: interrupting on irq 62
[   1.0000000] imxi2c2 at simplebus5: couldn't get clock
[   1.0000000] fregulator0 at simplebus0: usb_otg_vbus
[   1.0000000] fregulator1 at simplebus0: 3P3V
[   1.0000000] fregulator2 at simplebus0: 2P5V
[   1.0000000] imxusbphy0 at simplebus4: couldn't get clock
[   1.0000000] imxusbphy1 at simplebus4: couldn't get clock
[   1.0000000] usbnopphy0 at simplebus0: USB PHY
[   1.0000000] usbnopphy1 at simplebus0: USB PHY
[   1.0000000] /soc/ipu@2400000 at simplebus1 not configured
[   1.0000000] /soc/dma-apbh@110000 at simplebus1 not configured
[   1.0000000] /soc/bus@2000000/sdma@20ec000 at simplebus4 not configured
[   1.0000000] /soc/bus@2000000/pinctrl@20e0000 at simplebus4 not configured
[   1.0000000] /soc/bus@2000000/reset-controller@20d8000 at simplebus4 not configured
[   1.0000000] /soc/sram@900000 at simplebus1 not configured
[   1.0000000] /soc/bus@2000000/anatop@20c8000/regulator-vddpu at syscon1 not configured
[   1.0000000] /soc/bus@2000000/iomuxc-gpr@20e0000/mux-controller at syscon0 not configured
[   1.0000000] /soc/bus@2100000/usbmisc@2184800 at simplebus5 not configured
[   1.0000000] enet0 at simplebus5: couldn't get clock ipg
[   1.0000000] /soc/bus@2000000/iomuxc-gpr@20e0000/ipu1_csi0_mux at syscon0 not configured
[   1.0000000] /soc/bus@2000000/iomuxc-gpr@20e0000/ipu1_csi1_mux at syscon0 not configured
[   1.0000000] dwhdmi0 at simplebus1: couldn't enable iahb clock
[   1.0000000] /soc/bus@2000000/anatop@20c8000/regulator-vddcore at syscon1 not configured
[   1.0000000] /soc/bus@2000000/anatop@20c8000/regulator-vddsoc at syscon1 not configured
[   1.0000000] /soc/bus@2000000/spba-bus@2000000/ssi@2028000 at simplebus6 not configured
[   1.0000000] armpmu0 at simplebus0: Performance Monitor Unit
[   1.0000000] /soc/gpu@130000 at simplebus1 not configured
[   1.0000000] /soc/gpu@134000 at simplebus1 not configured
[   1.0000000] /soc/bus@2000000/spba-bus@2000000/asrc@2034000 at simplebus6 not configured
[   1.0000000] /soc/bus@2000000/vpu@2040000 at simplebus4 not configured
[   1.0000000] imxpwm0 at simplebus4imxpwm0: interrupting on irq 115
: couldn't get clk
[   1.0000000] imxpwm1 at simplebus4imxpwm1: interrupting on irq 116
: couldn't get clk
[   1.0000000] imxpwm2 at simplebus4imxpwm2: interrupting on irq 117
: couldn't get clk
[   1.0000000] imxpwm3 at simplebus4imxpwm3: interrupting on irq 118
: couldn't get clk
[   1.0000000] /soc/bus@2000000/timer@2098000 at simplebus4 not configured
[   1.0000000] imxwdog0 at simplebus4: i.MX Watchdog Timer, default period is 10 seconds
[   1.0000000] /soc/bus@2000000/anatop@20c8000/regulator-1p1 at syscon1 not configured
[   1.0000000] /soc/bus@2000000/anatop@20c8000/regulator-3p0 at syscon1 not configured
[   1.0000000] /soc/bus@2000000/anatop@20c8000/regulator-2p5 at syscon1 not configured
[   1.0000000] /soc/bus@2000000/anatop@20c8000/tempmon at syscon1 not configured
[   1.0000000] /soc/bus@2100000/crypto@2100000 at simplebus5 not configured
[   1.0000000] imxusbc0 at simplebus5
: couldn't get clock
[   1.0000000] imxusbc1 at simplebus5
: couldn't get clock
[   1.0000000] sdhc0 at simplebus5: couldn't get clock
[   1.0000000] sdhc1 at simplebus5: couldn't get clock
[   1.0000000] sdhc2 at simplebus5: couldn't get clock
[   1.0000000] /soc/bus@2100000/memory-controller@21b0000 at simplebus5 not configured
[   1.0000000] /soc/bus@2100000/audmux@21d8000 at simplebus5 not configured
[   1.0000000] gpioleds0 at simplebus0: user1 user2
[   1.0000000] /capture-subsystem at simplebus0 not configured
[   1.0000000] /display-subsystem at simplebus0 not configured
[   1.0000000] /sound at simplebus0 not configured
[   1.0000000] /soc/bus@2100000/vdoa@21e4000 at simplebus5 not configured
[   1.0000000] panic: cpu_initclocks: no timer registered
[   1.0000000] cpu0: Begin traceback...
[   1.0000000] 0x80b58e74: netbsd:db_panic+0x14
[   1.0000000] 0x80b58e94: netbsd:vpanic+0x114
[   1.0000000] 0x80b58eac: netbsd:panic+0x24
[   1.0000000] 0x80b58ecc: netbsd:cpu_initclocks+0x38
[   1.0000000] 0x80b58f34: netbsd:initclocks+0x30
[   1.0000000] 0x80b58f9c: netbsd:main+0x29c
[   1.0000000] 0x80b58fac: netbsd:kernel_text+0x54
[   1.0000000] cpu0: End traceback...
Stopped in pid 0.0 (system) at  netbsd:cpu_Debugger+0x4:        bx      r14
db{0}>

> Every time someone has a problem with the FDT I learn more.  
> 
> I'm looking at what needs to be done to import the latest Linux
> devicetrees into NetBSD and I'll see if I can find a way to report this
> sort of problem usefully.

I am not sure if other imx6qdl series boards have the similar issue.

-rxg



Home | Main Index | Thread Index | Old Index