cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Adventurer
Adventurer
1,339 Views
Registered: ‎01-01-2019

UltraScale+ kernel panic

Jump to solution

Hi,

Based on the Zynq UltraScale+ MPSoC version, I have a problem in boot.

Kernel panic occurs when executing to xiic_i2c_probe.

It is known to stop at xiic_setreg32(i2c, XIIC_CR_REG_OFFSET, XIIC_CR_TX_FIFO_RESET_MASK)

i2c->endianness = LITTLE;
xiic_setreg32(i2c, XIIC_CR_REG_OFFSET, XIIC_CR_TX_FIFO_RESET_MASK);

 

i2c device tree configuration is as follows

 

i2c@80020000 {
	#address-cells = <0x1>;
	#size-cells = <0x0>;
	clocks = <0x34>;
	compatible = "xlnx,xps-iic-2.00.a";
	interrupt-parent = <0x4>;
	interrupts = <0x0 0x5c 0x4>;
	reg = <0x0 0x80020000 0x0 0x1000>;
};

 

 

Boot message is as follows

 

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.9.0-00005-g14696a963234 (soce@soce-VirtualBox) (gcc version 6.2.1 20161114 (Linaro GCC Snapshot 6.2-2016.11) ) #1 SMP Thu Feb 14 09:27:54 CET 2019
[    0.000000] Boot CPU: AArch64 Processor [410fd034]
[    0.000000] efi: Getting EFI parameters from FDT:
[    0.000000] efi: UEFI not found.
[    0.000000] cma: Reserved 256 MiB at 0x0000000070000000
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.0 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] percpu: Embedded 21 pages/cpu @ffffffc06ff78000 s47384 r8192 d30440 u86016
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] CPU features: enabling workaround for ARM erratum 845719
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 517120
[    0.000000] Kernel command line: console=ttyPS0,115200 oot=/dev/mmcblk0p2 rw earlyprintk rootfstype=ext4 rootwait devtmpfs.mount=0 cpuidle.off=1
[    0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[    0.000000] Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes)
[    0.000000] Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes)
[    0.000000] Memory: 1789380K/2097152K available (8956K kernel code, 582K rwdata, 2740K rodata, 512K init, 387K bss, 45628K reserved, 262144K cma-reserved)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     modules : 0xffffff8000000000 - 0xffffff8008000000   (   128 MB)
[    0.000000]     vmalloc : 0xffffff8008000000 - 0xffffffbebfff0000   (   250 GB)
[    0.000000]       .text : 0xffffff8008080000 - 0xffffff8008940000   (  8960 KB)
[    0.000000]     .rodata : 0xffffff8008940000 - 0xffffff8008c00000   (  2816 KB)
[    0.000000]       .init : 0xffffff8008c00000 - 0xffffff8008c80000   (   512 KB)
[    0.000000]       .data : 0xffffff8008c80000 - 0xffffff8008d11a00   (   583 KB)
[    0.000000]        .bss : 0xffffff8008d11a00 - 0xffffff8008d72644   (   388 KB)
[    0.000000]     fixed   : 0xffffffbefe7fd000 - 0xffffffbefec00000   (  4108 KB)
[    0.000000]     PCI I/O : 0xffffffbefee00000 - 0xffffffbeffe00000   (    16 MB)
[    0.000000]     vmemmap : 0xffffffbf00000000 - 0xffffffc000000000   (     4 GB maximum)
[    0.000000]               0xffffffbf00000000 - 0xffffffbf01c00000   (    28 MB actual)
[    0.000000]     memory  : 0xffffffc000000000 - 0xffffffc080000000   (  2048 MB)
[    0.000000] Hierarchical RCU implementation.
[    0.000000]  Build-time adjustment of leaf fanout to 64.
[    0.000000]  RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=4.
[    0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=64, nr_cpu_ids=4
[    0.000000] NR_IRQS:64 nr_irqs:64 0
[    0.000000] GIC: Adjusting CPU interface base to 0x00000000f902f000
[    0.000000] GIC: Using split EOI/Deactivate mode
[    0.000000] arm_arch_timer: Architected cp15 timer(s) running at 99.99MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x171015c90f, max_idle_ns: 440795203080 ns
[    0.000003] sched_clock: 56 bits at 99MHz, resolution 10ns, wraps every 4398046511101ns
[    0.000249] Console: colour dummy device 80x25
[    0.000267] Calibrating delay loop (skipped), value calculated using timer frequency.. 199.99 BogoMIPS (lpj=399996)
[    0.000274] pid_max: default: 32768 minimum: 301
[    0.000371] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes)
[    0.000377] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes)
[    0.000893] ASID allocator initialised with 65536 entries
[    0.001354] zynqmp_plat_init Power management API v0.3
[    0.001428] EFI services will not be available.
[    0.259248] Detected VIPT I-cache on CPU1
[    0.259275] CPU1: Booted secondary processor [410fd034]
[    0.449425] Detected VIPT I-cache on CPU2
[    0.449442] CPU2: Booted secondary processor [410fd034]
[    0.646673] Detected VIPT I-cache on CPU3
[    0.646690] CPU3: Booted secondary processor [410fd034]
[    0.646725] Brought up 4 CPUs
[    0.646739] SMP: Total of 4 processors activated.
[    0.646744] CPU features: detected feature: 32-bit EL0 Support
[    0.646751] CPU: All CPU(s) started at EL2
[    0.646765] alternatives: patching kernel code
[    0.647479] devtmpfs: initialized
[    0.651931] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.657012] xor: measuring software checksum speed
[    0.696417]    8regs     :  2302.000 MB/sec
[    0.736447]    8regs_prefetch:  2052.000 MB/sec
[    0.776477]    32regs    :  2830.000 MB/sec
[    0.816509]    32regs_prefetch:  2381.000 MB/sec
[    0.816512] xor: using function: 32regs (2830.000 MB/sec)
[    0.816587] pinctrl core: initialized pinctrl subsystem
[    0.817183] NET: Registered protocol family 16
[    0.818002] Failed to initialise IOMMU /amba/smmu@fd800000
[    0.818213] vdso: 2 pages (1 code @ ffffff8008947000, 1 data @ ffffff8008c84000)
[    0.818223] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.818748] DMA: preallocated 256 KiB pool for atomic allocations
[    0.831670] reset_zynqmp reset-controller: Xilinx zynqmp reset driver probed
[    0.832175] ARM CCI_400_r1 PMU driver probed
[    0.835169] zynqmp-pinctrl ff180000.pinctrl: zynqmp pinctrl initialized
[    0.863116] HugeTLB registered 2 MB page size, pre-allocated 0 pages
[    0.928630] raid6: int64x1  gen()   405 MB/s
[    0.996736] raid6: int64x1  xor()   443 MB/s
[    1.064720] raid6: int64x2  gen()   672 MB/s
[    1.132790] raid6: int64x2  xor()   599 MB/s
[    1.200832] raid6: int64x4  gen()   983 MB/s
[    1.268892] raid6: int64x4  xor()   739 MB/s
[    1.336947] raid6: int64x8  gen()  1146 MB/s
[    1.404966] raid6: int64x8  xor()   746 MB/s
[    1.473067] raid6: neonx1   gen()   722 MB/s
[    1.541055] raid6: neonx1   xor()   758 MB/s
[    1.609089] raid6: neonx2   gen()  1166 MB/s
[    1.677149] raid6: neonx2   xor()  1035 MB/s
[    1.745204] raid6: neonx4   gen()  1506 MB/s
[    1.813228] raid6: neonx4   xor()  1182 MB/s
[    1.881273] raid6: neonx8   gen()  1585 MB/s
[    1.949321] raid6: neonx8   xor()  1221 MB/s
[    1.949325] raid6: using algorithm neonx8 gen() 1585 MB/s
[    1.949328] raid6: .... xor() 1221 MB/s, rmw enabled
[    1.949332] raid6: using intx1 recovery algorithm
[    1.950116] SCSI subsystem initialized
[    1.950310] usbcore: registered new interface driver usbfs
[    1.950344] usbcore: registered new interface driver hub
[    1.950381] usbcore: registered new device driver usb
[    1.950450] media: Linux media interface: v0.10
[    1.950480] Linux video capture interface: v2.00
[    1.950505] pps_core: LinuxPPS API ver. 1 registered
[    1.950509] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    1.950525] PTP clock support registered
[    1.950550] EDAC MC: Ver: 3.0.0
[    1.950818] FPGA manager framework
[    1.950948] fpga-region fpga-full: FPGA Region probed
[    1.951033] Advanced Linux Sound Architecture Driver Initialized.
[    1.951328] Bluetooth: Core ver 2.22
[    1.951350] NET: Registered protocol family 31
[    1.951354] Bluetooth: HCI device and connection manager initialized
[    1.951363] Bluetooth: HCI socket layer initialized
[    1.951369] Bluetooth: L2CAP socket layer initialized
[    1.951388] Bluetooth: SCO socket layer initialized
[    1.951977] clocksource: Switched to clocksource arch_sys_counter
[    1.952054] VFS: Disk quotas dquot_6.6.0
[    1.952096] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    1.956819] NET: Registered protocol family 2
[    1.957159] TCP established hash table entries: 16384 (order: 5, 131072 bytes)
[    1.957266] TCP bind hash table entries: 16384 (order: 6, 262144 bytes)
[    1.957498] TCP: Hash tables configured (established 16384 bind 16384)
[    1.957548] UDP hash table entries: 1024 (order: 3, 32768 bytes)
[    1.957588] UDP-Lite hash table entries: 1024 (order: 3, 32768 bytes)
[    1.957717] NET: Registered protocol family 1
[    1.957936] RPC: Registered named UNIX socket transport module.
[    1.957940] RPC: Registered udp transport module.
[    1.957944] RPC: Registered tcp transport module.
[    1.957947] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    1.958372] hw perfevents: enabled with armv8_pmuv3 PMU driver, 7 counters available
[    1.959042] futex hash table entries: 1024 (order: 5, 131072 bytes)
[    1.959105] audit: initializing netlink subsys (disabled)
[    1.959126] audit: type=2000 audit(1.952:1): initialized
[    1.959568] workingset: timestamp_bits=62 max_order=19 bucket_order=0
[    1.960216] NFS: Registering the id_resolver key type
[    1.960231] Key type id_resolver registered
[    1.960235] Key type id_legacy registered
[    1.960244] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    1.960262] jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
[    1.964547] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 246)
[    1.964554] io scheduler noop registered
[    1.964558] io scheduler deadline registered
[    1.964568] io scheduler cfq registered (default)
[    1.965512] Write failed gate address:1000f02
[    1.965626] xilinx-zynqmp-dma fd500000.dma: ZynqMP DMA driver Probe success
[    1.965758] xilinx-zynqmp-dma fd510000.dma: ZynqMP DMA driver Probe success
[    1.965878] xilinx-zynqmp-dma fd520000.dma: ZynqMP DMA driver Probe success
[    1.965996] xilinx-zynqmp-dma fd530000.dma: ZynqMP DMA driver Probe success
[    1.966115] xilinx-zynqmp-dma fd540000.dma: ZynqMP DMA driver Probe success
[    1.966237] xilinx-zynqmp-dma fd550000.dma: ZynqMP DMA driver Probe success
[    1.966357] xilinx-zynqmp-dma fd560000.dma: ZynqMP DMA driver Probe success
[    1.966478] xilinx-zynqmp-dma fd570000.dma: ZynqMP DMA driver Probe success
[    1.966669] xilinx-zynqmp-dma ffa80000.dma: ZynqMP DMA driver Probe success
[    1.966792] xilinx-zynqmp-dma ffa90000.dma: ZynqMP DMA driver Probe success
[    1.966914] xilinx-zynqmp-dma ffaa0000.dma: ZynqMP DMA driver Probe success
[    1.967039] xilinx-zynqmp-dma ffab0000.dma: ZynqMP DMA driver Probe success
[    1.967160] xilinx-zynqmp-dma ffac0000.dma: ZynqMP DMA driver Probe success
[    1.967280] xilinx-zynqmp-dma ffad0000.dma: ZynqMP DMA driver Probe success
[    1.967402] xilinx-zynqmp-dma ffae0000.dma: ZynqMP DMA driver Probe success
[    1.967521] xilinx-zynqmp-dma ffaf0000.dma: ZynqMP DMA driver Probe success
[    1.967679] zynqmp_pm firmware: Power management API v0.3
[    2.000451] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    2.001727] ff000000.serial: ttyPS0 at MMIO 0xff000000 (irq = 40, base_baud = 6249999) is a xuartps
[    2.956578] console [ttyPS0] enabled
[    2.960535] [drm] Initialized
[    2.963721] Unable to detect cache hierarchy from DT for CPU 0
[    2.974148] brd: module loaded
[    2.979995] loop: module loaded
[    2.983700] mtdoops: mtd device (mtddev=name/number) must be supplied
[    2.992231] libphy: Fixed MDIO Bus: probed
[    2.997298] tun: Universal TUN/TAP device driver, 1.6
[    3.002268] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
[    3.008558] CAN device driver interface
[    3.012468] libphy: mdio_driver_register: mv88e6085
[    3.017617] macb ff0b0000.ethernet: Not enabling partial store and forward
[    3.024850] macb ff0b0000.ethernet eth0: Cadence GEM rev 0x50070106 at 0xff0b0000 irq 30 (aa:64:d7:3d:be:9a)
[    3.034787] macb ff0e0000.ethernet: Not enabling partial store and forward
[    3.041925] macb ff0e0000.ethernet eth1: Cadence GEM rev 0x50070106 at 0xff0e0000 irq 31 (16:3b:2e:91:63:f5)
[    3.051994] soce_tsn_mod 80010000.multiport_tsn_switch: soce_tsn at 0x80010000 mapped to 0x08f20000, irq=47 alarm irq=48 config_change irq=46
[    3.065227] usbcore: registered new interface driver asix
[    3.070582] usbcore: registered new interface driver ax88179_178a
[    3.076639] usbcore: registered new interface driver cdc_ether
[    3.082449] usbcore: registered new interface driver net1080
[    3.088093] usbcore: registered new interface driver cdc_subset
[    3.093993] usbcore: registered new interface driver zaurus
[    3.099559] usbcore: registered new interface driver cdc_ncm
[    3.105737] usbcore: registered new interface driver uas
[    3.110993] usbcore: registered new interface driver usb-storage
[    3.117219] mousedev: PS/2 mouse device common for all mice
[    3.123080] rtc_zynqmp ffa60000.rtc: rtc core: registered ffa60000.rtc as rtc0
[    3.130240] i2c /dev entries driver
[    3.133904] cdns-i2c ff030000.i2c: 400 kHz mmio ff030000 irq 33
[    3.140169] Unhandled fault: synchronous external abort (0x96000010) at 0xffffff8008ef9104
[    3.148352] Internal error: : 96000010 [#1] SMP
[    3.152852] Modules linked in:
[    3.155892] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.9.0-00005-g14696a963234 #1
[    3.163441] Hardware name: xlnx,zynqmp (DT)
[    3.167608] task: ffffffc06d866c00 task.stack: ffffffc06d868000
[    3.173517] PC is at xiic_i2c_probe+0x1d0/0x308
[    3.178025] LR is at xiic_i2c_probe+0x1a0/0x308
[    3.182537] pc : [<ffffff8008641880>] lr : [<ffffff8008641850>] pstate: 60000045
[    3.189914] sp : ffffffc06d86bc10
[    3.193213] x29: ffffffc06d86bc10 x28: 0000000000000000
[    3.198508] x27: ffffff8008c4c4a8 x26: 0000000000000000
[    3.203803] x25: ffffffc06cc10200 x24: ffffffc06ce15840
[    3.209097] x23: 0000000000000000 x22: ffffffc06d065c00
[    3.214393] x21: ffffffc06d065c10 x20: 0000000000000000
[    3.219687] x19: ffffffc06ce15818 x18: 0000000000000001
[    3.224982] x17: 0000000000000000 x16: 0000000000000000
[    3.230277] x15: ffffffffffffffff x14: ffffffc0ed86badf
[    3.235572] x13: ff00000000000000 x12: 0000000000000001
[    3.240867] x11: 0000000000000029 x10: 0000000000000008
[    3.246162] x9 : 000000ffffffffff x8 : ffffffc06db52340
[    3.251456] x7 : ffffffc06db52340 x6 : ffffffc06db52341
[    3.256751] x5 : ffffffc06db52440 x4 : ffffffc06cc10180
[    3.262046] x3 : ffffffc06cc10280 x2 : 0000000000000007
[    3.267341] x1 : 0000000000000002 x0 : ffffff8008ef9104
[    3.272635]
[    3.274112] Process swapper/0 (pid: 1, stack limit = 0xffffffc06d868020)
[    3.280796] Stack: (0xffffffc06d86bc10 to 0xffffffc06d86c000)
[    3.286526] bc00:                                   ffffffc06d86bc60 ffffff80084f4168
[    3.294338] bc20: 00000000fffffffe ffffffc06d065c10 ffffff8008cedea0 ffffff8008cedec8
[    3.302150] bc40: 0000000000000000 ffffff8008c3f728 ffffff8008c00458 ffffff8008d15000
[    3.309962] bc60: ffffffc06d86bc90 ffffff80084f260c ffffffc06d065c10 ffffff8008d54000
[    3.317774] bc80: 0000000000000000 ffffff8008d54000 ffffffc06d86bcd0 ffffff80084f2764
[    3.325587] bca0: ffffffc06d065c10 ffffff8008cedec8 ffffffc06d065c70 ffffff8008cd06b8
[    3.333399] bcc0: ffffff8008cd0000 ffffff80080830a0 ffffffc06d86bd00 ffffff80084f065c
[    3.341211] bce0: 0000000000000000 ffffff8008cedec8 ffffff80084f26b8 ffffff8008cd06b8
[    3.349023] bd00: ffffffc06d86bd40 ffffff80084f1df8 ffffff8008cedec8 ffffffc06d11f900
[    3.356835] bd20: 0000000000000000 00000000ffffffe0 ffffffc06d8330a8 ffffffc06d056068
[    3.364647] bd40: ffffffc06d86bd50 ffffff80084f1948 ffffffc06d86bd90 ffffff80084f2f48
[    3.372459] bd60: ffffff8008cedec8 ffffffc06d868000 0000000000000000 ffffff8008c3f738
[    3.380271] bd80: ffffff8008be9610 ffffff80084f2f80 ffffffc06d86bdb0 ffffff80084f40a0
[    3.388083] bda0: ffffff8008c2937c ffffffc06d868000 ffffffc06d86bdc0 ffffff8008c29394
[    3.395895] bdc0: ffffffc06d86bdd0 ffffff80080830b8 ffffffc06d86be40 ffffff8008c00c94
[    3.403707] bde0: 000000000000012a ffffff8008d15000 0000000000000006 ffffff8008c3f738
[    3.411519] be00: ffffff8008c4bd00 0000000000000000 0000000000000000 ffffff8008ac7290
[    3.419331] be20: 0000000600000006 ffffff8008c00458 0000000000000000 ffffff8008be9610
[    3.427143] be40: ffffffc06d86bea0 ffffff8008930a90 ffffff8008930a80 0000000000000000
[    3.434955] be60: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
[    3.442767] be80: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
[    3.450580] bea0: 0000000000000000 ffffff8008082e80 ffffff8008930a80 0000000000000000
[    3.458391] bec0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
[    3.466204] bee0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
[    3.474016] bf00: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
[    3.481828] bf20: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
[    3.489640] bf40: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
[    3.497452] bf60: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
[    3.505264] bf80: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
[    3.513076] bfa0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000
[    3.520888] bfc0: 0000000000000000 0000000000000005 0000000000000000 0000000000000000
[    3.528700] bfe0: 0000000000000000 0000000000000000 ffffffffffffffff ffffffffffffffff
[    3.536510] Call trace:
[    3.538943] Exception stack(0xffffffc06d86ba40 to 0xffffffc06d86bb70)
[    3.545366] ba40: ffffffc06ce15818 0000008000000000 ffffffc06d86bc10 ffffff8008641880
[    3.553178] ba60: 0000000000000007 ffffffc000000000 ffffff8008ef9104 ffffff80080e1b30
[    3.560990] ba80: 3030303032303038 ffffff006332692e 000000000000002b ffffffc06d89aa00
[    3.568803] baa0: ffffffc06d86bab0 ffffffc06d11f800 ffffffc06d86baf0 ffffff80080e1cdc
[    3.576615] bac0: ffffffc06cc10380 ffffffc06d05a400 000000000000002b ffffffc06d05a49c
[    3.584427] bae0: ffffff8008ef9104 0000000000000002 0000000000000007 ffffffc06cc10280
[    3.592239] bb00: ffffffc06cc10180 ffffffc06db52440 ffffffc06db52341 ffffffc06db52340
[    3.600051] bb20: ffffffc06db52340 000000ffffffffff 0000000000000008 0000000000000029
[    3.607863] bb40: 0000000000000001 ff00000000000000 ffffffc0ed86badf ffffffffffffffff
[    3.615674] bb60: 0000000000000000 0000000000000000
[    3.620537] [<ffffff8008641880>] xiic_i2c_probe+0x1d0/0x308
[    3.626093] [<ffffff80084f4168>] platform_drv_probe+0x58/0xc0
[    3.631821] [<ffffff80084f260c>] driver_probe_device+0x1fc/0x2a8
[    3.637809] [<ffffff80084f2764>] __driver_attach+0xac/0xb0
[    3.643277] [<ffffff80084f065c>] bus_for_each_dev+0x64/0xa0
[    3.648833] [<ffffff80084f1df8>] driver_attach+0x20/0x28
[    3.654127] [<ffffff80084f1948>] bus_add_driver+0x110/0x230
[    3.659683] [<ffffff80084f2f48>] driver_register+0x60/0xf8
[    3.665152] [<ffffff80084f40a0>] __platform_driver_register+0x40/0x48
[    3.671576] [<ffffff8008c29394>] xiic_i2c_driver_init+0x18/0x20
[    3.677479] [<ffffff80080830b8>] do_one_initcall+0x38/0x128
[    3.683033] [<ffffff8008c00c94>] kernel_init_freeable+0x140/0x1e0
[    3.689109] [<ffffff8008930a90>] kernel_init+0x10/0x100
[    3.694316] [<ffffff8008082e80>] ret_from_fork+0x10/0x50
[    3.699613] Code: b9444e60 35000460 f9400660 91041000 (b9400000)
[    3.705701] ---[ end trace e34eb41683f671d8 ]---
[    3.710300] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
[    3.710300]
[    3.719400] SMP: stopping secondary CPUs
[    3.723308] Kernel Offset: disabled
[    3.726778] Memory Limit: none
[    3.729817] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
[    3.729817]

 

 

Does anyone know where the problem is?

Thanks.

0 Kudos
1 Solution

Accepted Solutions
Highlighted
Adventurer
Adventurer
1,243 Views
Registered: ‎01-01-2019

Hi @stephenm ,

I found the cause of the kernel panic.

In the Vivado IPI, i editor the offset address of axi_iic_0 at 0x80040000

but i use old device tree configuration that the address of axi i2c is 0x80020000

So when xiic_i2c_probe is read/write register, the kernel panic will occur.

Thank you for your help.

View solution in original post

0 Kudos
9 Replies
Highlighted
Moderator
Moderator
1,317 Views
Registered: ‎09-12-2007

Can you stop in uboot, and do a read (md 0x80020000) at this address to make sure it can be accessed?

 

0 Kudos
Highlighted
Adventurer
Adventurer
1,312 Views
Registered: ‎01-01-2019
Can not access

ZynqMP> md 0x80020000
80020000:"Synchronous Abort" handler, esr 0x96000010
ELR: 7ff62574
LR: 7ff62530
x0 : 0000000000000009 x1 : 0000000000000000
x2 : 000000000000080a x3 : 0000000000000000
x4 : 0000000080020000 x5 : 000000007ff79429
x6 : 0000000000000004 x7 : 000000000000000f
x8 : 000000007deef910 x9 : 0000000000000008
x10: 000000007deef179 x11: 0000000000000021
x12: 0000000000000008 x13: 00000000ffffffff
x14: 000000007deefccc x15: 000000007ff819a0
x16: 0000000000000000 x17: 0000000000000000
x18: 000000007deefdf0 x19: 0000000000000040
x20: 0000000000000004 x21: 0000000080020000
x22: 0000000080020000 x23: 000000007ff78ba0
x24: 0000000000000008 x25: 0000000000000009
x26: 0000000000000004 x27: 0000000000000004
x28: 000000007deefad8 x29: 000000007deefa50

Resetting CPU ...

### ERROR ### Please RESET the board ###
0 Kudos
Highlighted
Moderator
Moderator
1,310 Views
Registered: ‎09-12-2007

so the issue isnt in the linux. It is your HW.

 

Is your PL configured? ie when you packaged the image in petalinux, did you select the -fpga

  • cd images/linux
  • petalinux-package --boot --fpga system.bit --u-boot

 

Assuming that you have done this. Have you set up your clocks and reset correctly in Vivado IPI?

 

0 Kudos
Highlighted
Adventurer
Adventurer
1,285 Views
Registered: ‎01-01-2019

Hi @stephenm ,

I want to understand the difference between these two i2c controllers

drivers/i2c/busses/i2c-cadence.c and drivers/i2c/busses/i2c-xiic.c

And, can I change i2c@80020000 to i2c@80040000? (example below)

 

Change
i2c@80020000 {
	#address-cells = <0x1>;
	#size-cells = <0x0>;
	clocks = <0x34>;
	compatible = "xlnx,xps-iic-2.00.a";
	interrupt-parent = <0x4>;
	interrupts = <0x0 0x5c 0x4>;
	reg = <0x0 0x80020000 0x0 0x1000>;
};

to
i2c@80040000 {
	#address-cells = <0x1>;
	#size-cells = <0x0>;
	clocks = <0x34>;
	compatible = "xlnx,xps-iic-2.00.a";
	interrupt-parent = <0x4>;
	interrupts = <0x0 0x5c 0x4>;
	reg = <0x0 0x80040000 0x0 0x10000>;
};

 

Thanks.

0 Kudos
Highlighted
Moderator
Moderator
1,282 Views
Registered: ‎09-12-2007

If you want to change the address, then you would need to do this in the Vivado IPI, then re-export to SDK to regnerate the HDF.

Then use the updated HDF to regenerate the DT

0 Kudos
Highlighted
Adventurer
Adventurer
1,278 Views
Registered: ‎01-01-2019

ok i see.

but i still want to understand the difference between these two i2c controllers.

drivers/i2c/busses/i2c-cadence.c and drivers/i2c/busses/i2c-xiic.c

0 Kudos
Highlighted
Moderator
Moderator
1,267 Views
Registered: ‎09-12-2007

Im assuming the cadence iic is the PS i2c, and the xiic is the axi i2c?

0 Kudos
Highlighted
Adventurer
Adventurer
1,244 Views
Registered: ‎01-01-2019

Hi @stephenm ,

I found the cause of the kernel panic.

In the Vivado IPI, i editor the offset address of axi_iic_0 at 0x80040000

but i use old device tree configuration that the address of axi i2c is 0x80020000

So when xiic_i2c_probe is read/write register, the kernel panic will occur.

Thank you for your help.

View solution in original post

0 Kudos
Highlighted
Moderator
Moderator
1,240 Views
Registered: ‎09-12-2007

Ok, great. Can you mark this issue as solved then. This may help other users

0 Kudos