i.MX7 clock support broken
A.S. Dong
aisheng.dong at nxp.com
Wed Feb 8 08:47:06 PST 2017
Hi Sascha,
> -----Original Message-----
> From: Sascha Hauer [mailto:s.hauer at pengutronix.de]
> Sent: Tuesday, February 07, 2017 10:22 PM
> To: linux-arm-kernel at lists.infradead.org
> Cc: Shawn Guo; A.S. Dong; Fabio Estevam; kernel at pengutronix.de
> Subject: i.MX7 clock support broken
>
> Hi All,
>
> I recently adopted the i.MX7 clock tree from Linux to barebox and wondered
> why ethernet doesn't work.
I just reproduced the issue on MX7D SDB board with latest upstream kernel
That kernel NULL point crash during boot on
fec_enet_open->..->phy_attach_direct.
Not sure if the same as yours.
(Paste log at last)
Andy,
Can you help check it?
> I found out that the clock tree in Linux is
> quite different from what the reference manual describes and also quite
> different from the hardware I have on my desk. There are several clocks
> that only exist in the driver, but not in the actual hardware and also
> several clocks which are in hardware, but not in the driver.
>
> These clocks exist in the driver only, but not in the hardware:
>
Please refer to secion 5.2.5 in RM.
They're LPCG gates.
But I did notice some of them seem not find in RM.
e.g. IMX7D_ARM_A7_ROOT_CLK, IMX7D_ARM_M0_ROOT_CLK, IMX7D_SPDIF_ROOT_CLK ...
It might be true that not all listed in RM as I see a Note
" Not all CCGRs are mapped " right upon Table 5-19.
I will double check with our IC guys tomorrow if the RM missed something.
> clks[IMX7D_ARM_A7_ROOT_CLK] = imx_clk_gate4("arm_a7_root_clk",
> "arm_a7_div", base + 0x4000, 0); clks[IMX7D_ARM_M4_ROOT_CLK] =
> imx_clk_gate4("arm_m4_root_clk", "arm_m4_div", base + 0x4010, 0);
> clks[IMX7D_ARM_M0_ROOT_CLK] = imx_clk_gate4("arm_m0_root_clk",
> "arm_m0_div", base + 0x4020, 0); clks[IMX7D_USB_HSIC_ROOT_CLK] =
> imx_clk_gate4("usb_hsic_root_clk", "usb_hsic_post_div", base + 0x4420, 0);
> clks[IMX7D_PCIE_PHY_ROOT_CLK] = imx_clk_gate4("pcie_phy_root_clk",
> "pcie_phy_post_div", base + 0x4600, 0); clks[IMX7D_SPDIF_ROOT_CLK] =
> imx_clk_gate4("spdif_root_clk", "spdif_post_div", base + 0x44d0, 0);
> clks[IMX7D_ENET1_REF_ROOT_CLK] = imx_clk_gate4("enet1_ref_root_clk",
> "enet1_ref_post_div", base + 0x44e0, 0); clks[IMX7D_ENET1_TIME_ROOT_CLK] =
> imx_clk_gate4("enet1_time_root_clk", "enet1_time_post_div", base + 0x44f0,
> 0); clks[IMX7D_ENET2_REF_ROOT_CLK] = imx_clk_gate4("enet2_ref_root_clk",
> "enet2_ref_post_div", base + 0x4500, 0); clks[IMX7D_ENET2_TIME_ROOT_CLK] =
> imx_clk_gate4("enet2_time_root_clk", "enet2_time_post_div", base + 0x4510,
> 0); clks[IMX7D_ENET_PHY_REF_ROOT_CLK] =
> imx_clk_gate4("enet_phy_ref_root_clk", "enet_phy_ref_post_div", base +
> 0x4520, 0); clks[IMX7D_AUDIO_MCLK_ROOT_CLK] =
> imx_clk_gate4("audio_mclk_root_clk", "audio_mclk_post_div", base + 0x4790,
> 0); clks[IMX7D_WRCLK_ROOT_CLK] = imx_clk_gate4("wrclk_root_clk",
> "wrclk_post_div", base + 0x47a0, 0); clks[IMX7D_ADC_ROOT_CLK] =
> imx_clk_gate4("adc_root_clk", "ipg_root_clk", base + 0x4200, 0);
>
> And these clocks are described in the reference manual, but not handled in
> the driver:
>
Yes, some of they are missed.
> CCM_CCGR7 sim_m 0x4070
> CCM_CCGR8 sim_s 0x4080
> CCM_CCGR9 sim_wakeup 0x4090
> CCM_CCGR10 ipmux1 0x40A0
> CCM_CCGR11 ipmux2 0x40B0
> CCM_CCGR12 ipmux3 0x40C0
> CCM_CCGR16 rom 0x4100
> CCM_CCGR33 anatop 0x4210
> CCM_CCGR34 sctr 0x4220
> CCM_CCGR35 ocotp 0x4230
> CCM_CCGR36 caam 0x4240
> CCM_CCGR37 snvs 0x4250
> CCM_CCGR38 rdc 0x4260
> CCM_CCGR39 mu 0x4270
> CCM_CCGR40 hs 0x4280
> CCM_CCGR41 dvfs 0x4290
> CCM_CCGR42 qos 0x42A0
> CCM_CCGR43 qos_dispmix 0x42B0
> CCM_CCGR44 qos_megamix 0x42C0
> CCM_CCGR45 csu 0x42D0
> CCM_CCGR46 dbgmon 0x42E0
> CCM_CCGR47 debug 0x42F0
> CCM_CCGR49 sec_debug 0x4310
> CCM_CCGR64 sema1 0x4400
> CCM_CCGR65 sema2 0x4410
> CCM_CCGR68 perfmon1 0x4440
> CCM_CCGR69 perfmon2 0x4450
> CCM_CCGR76 pxp 0x44C0
> CCM_CCGR104 usb_ctrl 0x4680
> CCM_CCGR105 usb_hsic 0x4690
> CCM_CCGR106 usb_phy1 0x46A0
> CCM_CCGR107 usb_phy2 0x46B0
> CCM_CCGR112 enet1 0x4700
> CCM_CCGR113 enet2 0x4710
> CCM_CCGR160 gpio1 0x4A00
> CCM_CCGR161 gpio2 0x4A10
> CCM_CCGR162 gpio3 0x4A20
> CCM_CCGR163 gpio4 0x4A30
> CCM_CCGR164 gpio5 0x4A40
> CCM_CCGR165 gpio6 0x4A50
> CCM_CCGR166 gpio7 0x4A60
> CCM_CCGR168 iomux 0x4A80
> CCM_CCGR169 iomux_lpsr 0x4A90
> CCM_CCGR170 kpp 0x4AA0
>
> It seems most stuff works in the Kernel when the clocks are left enabled
> in the bootloader, but for example the real ethernet clocks are never
> handled in the kernel.
>
> Also I stumbled upon the gate at offset 0x4130. The same gate is
> registered as 5 different gates in the kernel without being handled as a
> shared gate:
>
> clks[IMX7D_NAND_USDHC_BUS_ROOT_CLK] = imx_clk_gate4("nand_usdhc_root_clk",
> "nand_usdhc_post_div", base + 0x4130, 0); clks[IMX7D_DRAM_ROOT_CLK] =
> imx_clk_gate4("dram_root_clk", "dram_post_div", base + 0x4130, 0);
> clks[IMX7D_DRAM_PHYM_ROOT_CLK] = imx_clk_gate4("dram_phym_root_clk",
> "dram_phym_cg", base + 0x4130, 0); clks[IMX7D_DRAM_PHYM_ALT_ROOT_CLK] =
> imx_clk_gate4("dram_phym_alt_root_clk", "dram_phym_alt_post_div", base +
> 0x4130, 0); clks[IMX7D_DRAM_ALT_ROOT_CLK] =
> imx_clk_gate4("dram_alt_root_clk", "dram_alt_post_div", base + 0x4130, 0);
>
Thanks for report.
Your concern seems reasonable.
Will double check it then.
> I don't have a patch for this, just hope that somebody @NXP has a better
> clue what's going on and maybe there already is a fix somewhere floating
> around.
>
Overally the current imx7d clk driver in upstream seems intend to be
an initial version and may miss many local fix patches.
You can also refer to:
http://git.freescale.com/git/cgit.cgi/imx/linux-imx.git/?h=imx_4.1.15_2.0.0_ga
It might help if there's local fixes.
> Sascha
>
> --
> Pengutronix e.K. | |
> Industrial Linux Solutions | http://www.pengutronix.de/ |
> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
> Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
Kernel Crash Log as follows:
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.10.0-rc7-00065-g926af627 (b29396 at b29396-OptiPlex-7040) (gcc version 4.9.1 (GCC) ) #1106 SMP Thu Feb 9 14:44:54 CST 2017
[ 0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[ 0.000000] CPU: div instructions available: patching division code
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] OF: fdt:Machine model: Freescale i.MX7 SabreSD Board
[ 0.000000] cma: Reserved 64 MiB at 0xbc000000
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] percpu: Embedded 14 pages/cpu @ef7c4000 s26816 r8192 d22336 u57344
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 260608
[ 0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/nfs ip=dhcp nfsroot=10.192.242.182:/data/rootfs_home/b29396/L4.1.X-2.0.0-RC4-mx6ul7d,v3,tcp printk.time=1 trace_event=clk
[ 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Memory: 951748K/1048576K available (9216K kernel code, 476K rwdata, 2868K rodata, 1024K init, 8236K bss, 31292K reserved, 65536K cma-reserved, 196608K highmem)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
[ 0.000000] vmalloc : 0xf0800000 - 0xff800000 ( 240 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xf0000000 ( 768 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .text : 0xc0008000 - 0xc0a00000 (10208 kB)
[ 0.000000] .init : 0xc0d00000 - 0xc0e00000 (1024 kB)
[ 0.000000] .data : 0xc0e00000 - 0xc0e77380 ( 477 kB)
[ 0.000000] .bss : 0xc0e79000 - 0xc16843c4 (8237 kB)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[ 0.000000] Running RCU self tests
[ 0.000000] Hierarchical RCU implementation.
[ 0.000000] RCU lockdep checking is enabled.
[ 0.000000] Build-time adjustment of leaf fanout to 32.
[ 0.000000] RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
[ 0.000000] RCU: Adjusting geometry for rcu_fanout_leaf=32, nr_cpu_ids=2
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000000] arm_arch_timer: Architected cp15 timer(s) running at 8.00MHz (virt).
[ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x1d854df40, max_idle_ns: 440795202120 ns
[ 0.000008] sched_clock: 56 bits at 8MHz, resolution 125ns, wraps every 2199023255500ns
[ 0.000024] Switching to timer-based delay loop, resolution 125ns
[ 0.000407] Switching to timer-based delay loop, resolution 41ns
[ 0.000428] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[ 0.000446] clocksource: mxc_timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[ 0.001792] Console: colour dummy device 80x30
[ 0.001823] Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar
[ 0.001833] ... MAX_LOCKDEP_SUBCLASSES: 8
[ 0.001842] ... MAX_LOCK_DEPTH: 48
[ 0.001851] ... MAX_LOCKDEP_KEYS: 8191
[ 0.001859] ... CLASSHASH_SIZE: 4096
[ 0.001868] ... MAX_LOCKDEP_ENTRIES: 32768
[ 0.001876] ... MAX_LOCKDEP_CHAINS: 65536
[ 0.001885] ... CHAINHASH_SIZE: 32768
[ 0.001894] memory used by lock dependency info: 5167 kB
[ 0.001902] per task-struct memory footprint: 1536 bytes
[ 0.001941] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000)
[ 0.001961] pid_max: default: 32768 minimum: 301
[ 0.002241] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.002260] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.004370] CPU: Testing write buffer coherency: ok
[ 0.005229] CPU0: update cpu_capacity 1024
[ 0.005246] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.006103] Setting up static identity map for 0x80100000 - 0x80100070
[ 0.008205] smp: Bringing up secondary CPUs ...
[ 0.010128] smp: Brought up 1 node, 1 CPU
[ 0.010144] SMP: Total of 1 processors activated (48.00 BogoMIPS).
[ 0.010154] CPU: All CPU(s) started in SVC mode.
[ 0.012158] devtmpfs: initialized
[ 0.024554] OF: Duplicate name in lcdif at 30730000, renamed to "display#1"
[ 0.035359] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[ 0.036252] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.039136] pinctrl core: initialized pinctrl subsystem
[ 0.042908] NET: Registered protocol family 16
[ 0.045638] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.049853] cpuidle: using governor menu
[ 0.050813] No ATAGs?
[ 0.050989] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[ 0.051008] hw-breakpoint: maximum watchpoint size is 8 bytes.
[ 0.061802] imx7d-pinctrl 302c0000.iomuxc-lpsr: no groups defined in /soc/aips-bus at 30000000/iomuxc-lpsr at 302c0000
[ 0.062123] imx7d-pinctrl 302c0000.iomuxc-lpsr: initialized IMX pinctrl driver
[ 0.064389] imx7d-pinctrl 30330000.iomuxc: initialized IMX pinctrl driver
[ 0.066365] vdd1p0d: Bringing 0uV into 800000-800000uV
[ 0.161012] vgaarb: loaded
[ 0.161950] SCSI subsystem initialized
[ 0.163192] usbcore: registered new interface driver usbfs
[ 0.163367] usbcore: registered new interface driver hub
[ 0.163633] usbcore: registered new device driver usb
[ 0.164069] 30800000.aips-bus:usbphynop1 supply vcc not found, using dummy regulator
[ 0.164552] 30800000.aips-bus:usbphynop3 supply vcc not found, using dummy regulator
[ 0.164999] 30800000.aips-bus:usbphynop2 supply vcc not found, using dummy regulator
[ 0.167606] i2c i2c-0: IMX I2C adapter registered
[ 0.167668] i2c i2c-0: can't use DMA, using PIO instead.
[ 0.169245] i2c i2c-1: IMX I2C adapter registered
[ 0.169274] i2c i2c-1: can't use DMA, using PIO instead.
[ 0.170155] i2c i2c-2: IMX I2C adapter registered
[ 0.170181] i2c i2c-2: can't use DMA, using PIO instead.
[ 0.171475] i2c i2c-3: IMX I2C adapter registered
[ 0.171503] i2c i2c-3: can't use DMA, using PIO instead.
[ 0.171767] Linux video capture interface: v2.00
[ 0.171998] pps_core: LinuxPPS API ver. 1 registered
[ 0.172010] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti at linux.it>
[ 0.172060] PTP clock support registered
[ 0.172933] Advanced Linux Sound Architecture Driver Initialized.
[ 0.175522] Bluetooth: Core ver 2.22
[ 0.175616] NET: Registered protocol family 31
[ 0.175628] Bluetooth: HCI device and connection manager initialized
[ 0.175686] Bluetooth: HCI socket layer initialized
[ 0.175715] Bluetooth: L2CAP socket layer initialized
[ 0.175842] Bluetooth: SCO socket layer initialized
[ 0.178541] clocksource: Switched to clocksource arch_sys_counter
[ 0.179127] VFS: Disk quotas dquot_6.6.0
[ 0.179258] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.207626] NET: Registered protocol family 2
[ 0.209530] TCP established hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.209708] TCP bind hash table entries: 8192 (order: 6, 294912 bytes)
[ 0.213338] TCP: Hash tables configured (established 8192 bind 8192)
[ 0.213552] UDP hash table entries: 512 (order: 3, 40960 bytes)
[ 0.214057] UDP-Lite hash table entries: 512 (order: 3, 40960 bytes)
[ 0.215330] NET: Registered protocol family 1
[ 0.216653] RPC: Registered named UNIX socket transport module.
[ 0.216671] RPC: Registered udp transport module.
[ 0.216682] RPC: Registered tcp transport module.
[ 0.216693] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.221439] futex hash table entries: 512 (order: 3, 32768 bytes)
[ 0.223370] workingset: timestamp_bits=30 max_order=18 bucket_order=0
[ 0.247614] NFS: Registering the id_resolver key type
[ 0.247812] Key type id_resolver registered
[ 0.247827] Key type id_legacy registered
[ 0.247952] jffs2: version 2.2. (NAND) c 2001-2006 Red Hat, Inc.
[ 0.249881] fuse init (API version 7.26)
[ 0.261344] bounce: pool size: 64 pages
[ 0.261432] io scheduler noop registered
[ 0.261446] io scheduler deadline registered
[ 0.261884] io scheduler cfq registered (default)
[ 0.267847] 30730000.lcdif supply lcd not found, using dummy regulator
[ 0.276818] Console: switching to colour frame buffer device 60x34
[ 0.281688] mxsfb 30730000.lcdif: initialized
[ 0.284648] imx-sdma 30bd0000.sdma: Direct firmware load for imx/sdma/sdma-imx7d.bin failed with error -2
[ 0.284677] imx-sdma 30bd0000.sdma: external firmware not found, using ROM firmware
[ 0.295696] pfuze100-regulator 0-0008: Full layer: 1, Metal layer: 1
[ 0.296512] pfuze100-regulator 0-0008: FAB: 0, FIN: 0
[ 0.296528] pfuze100-regulator 0-0008: pfuze3000 found.
[ 0.322500] 30860000.serial: ttymxc0 at MMIO 0x30860000 (irq = 48, base_baud = 15000000) is a IMX
[ 1.157051] console [ttymxc0] enabled
[ 1.163408] [drm] Initialized
[ 1.203254] brd: module loaded
[ 1.225488] loop: module loaded
[ 1.234534] spi_imx 30840000.ecspi: dma setup error -19, use pio
[ 1.242842] spi_imx 30840000.ecspi: probed
[ 1.248271] libphy: Fixed MDIO Bus: probed
[ 1.253553] CAN device driver interface
[ 1.261039] 30be0000.ethernet supply phy not found, using dummy regulator
[ 1.269705] pps pps0: new PPS source ptp0
[ 1.275905] libphy: fec_enet_mii_bus: probed
[ 1.286848] fec 30be0000.ethernet eth0: registered PHC device 0
[ 1.295568] 30bf0000.ethernet supply phy not found, using dummy regulator
[ 1.303732] pps pps1: new PPS source ptp1
[ 1.308667] fec 30bf0000.ethernet (unnamed net_device) (uninitialized): Invalid MAC address: 00:00:00:00:00:00
[ 1.318728] fec 30bf0000.ethernet (unnamed net_device) (uninitialized): Using random MAC address: 4a:b0:bf:d1:ea:95
[ 1.357434] libphy: fec_enet_mii_bus: probed
[ 1.364546] fec 30bf0000.ethernet eth1: registered PHC device 1
[ 1.372174] usbcore: registered new interface driver asix
[ 1.377707] usbcore: registered new interface driver ax88179_178a
[ 1.384040] usbcore: registered new interface driver cdc_ether
[ 1.390092] usbcore: registered new interface driver net1080
[ 1.395871] usbcore: registered new interface driver cdc_subset
[ 1.402009] usbcore: registered new interface driver zaurus
[ 1.407773] usbcore: registered new interface driver cdc_ncm
[ 1.413470] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 1.420028] ehci-pci: EHCI PCI platform driver
[ 1.424599] ehci-mxc: Freescale On-Chip EHCI Host driver
[ 1.430617] usbcore: registered new interface driver usb-storage
[ 1.450973] ci_hdrc ci_hdrc.1: EHCI Host Controller
[ 1.456066] ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 1
[ 1.488565] ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00
[ 1.497911] hub 1-0:1.0: USB hub found
[ 1.502000] hub 1-0:1.0: 1 port detected
[ 1.510167] mousedev: PS/2 mouse device common for all mice
[ 1.517757] input: 30370000.snvs:snvs-powerkey as /devices/platform/soc/30000000.aips-bus/30370000.snvs/30370000.snvs:snvs-powerkey/input/input0
[ 1.532589] spi2.0 supply vcc not found, using dummy regulator
[ 1.540513] ads7846 spi2.0: touchscreen, irq 125
[ 1.547256] input: ADS7846 Touchscreen as /devices/platform/soc/30800000.aips-bus/30840000.ecspi/spi_master/spi2/spi2.0/input/input1
[ 1.564931] snvs_rtc 30370000.snvs:snvs-rtc-lp: rtc core: registered 30370000.snvs:snvs- as rtc0
[ 1.574029] i2c /dev entries driver
[ 1.580631] IR NEC protocol handler initialized
[ 1.585179] IR RC5(x/sz) protocol handler initialized
[ 1.590283] IR RC6 protocol handler initialized
[ 1.594824] IR JVC protocol handler initialized
[ 1.599389] IR Sony protocol handler initialized
[ 1.604017] IR SANYO protocol handler initialized
[ 1.610600] IR Sharp protocol handler initialized
[ 1.615322] IR MCE Keyboard/mouse protocol handler initialized
[ 1.621201] IR XMP protocol handler initialized
[ 1.631500] imx2-wdt 30280000.wdog: timeout 60 sec (nowayout=0)
[ 1.637696] Bluetooth: HCI UART driver ver 2.3
[ 1.642202] Bluetooth: HCI UART protocol H4 registered
[ 1.647348] Bluetooth: HCI UART protocol LL registered
[ 1.653393] sdhci: Secure Digital Host Controller Interface driver
[ 1.659611] sdhci: Copyright(c) Pierre Ossman
[ 1.663976] sdhci-pltfm: SDHCI platform and OF driver helper
[ 1.670937] sdhci-esdhc-imx 30b40000.usdhc: could not get ultra high speed state, work on normal mode
[ 1.680273] sdhci-esdhc-imx 30b40000.usdhc: Got CD GPIO
[ 1.685545] sdhci-esdhc-imx 30b40000.usdhc: Got WP GPIO
[ 1.758947] mmc0: SDHCI controller on 30b40000.usdhc [30b40000.usdhc] using ADMA
[ 1.838569] mmc1: SDHCI controller on 30b60000.usdhc [30b60000.usdhc] using ADMA
[ 1.850293] mmc0: new high speed SDHC card at address e624
[ 1.860698] usbcore: registered new interface driver usbhid
[ 1.866286] usbhid: USB HID core driver
[ 1.877648] mmcblk0: mmc0:e624 SP32G 29.7 GiB
[ 1.913790] mmcblk0: p1 p2 p3
[ 1.939158] NET: Registered protocol family 10
[ 1.946884] Segment Routing with IPv6
[ 1.951100] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
[ 1.959268] NET: Registered protocol family 17
[ 1.963761] can: controller area network core (rev 20120528 abi 9)
[ 1.970659] NET: Registered protocol family 29
[ 1.975123] can: raw protocol (rev 20120528)
[ 1.979640] can: broadcast manager protocol (rev 20161123 t)
[ 1.985322] random: fast init done
[ 1.988865] can: netlink gateway (rev 20130117) max_hops=1
[ 1.996238] Key type dns_resolver registered
[ 2.000811] Registering SWP/SWPB emulation handler
[ 2.044154] mmc1: Tuning failed, falling back to fixed sampling clock
[ 2.280559] mmc1: new HS400 MMC card at address 0001
[ 2.288546] snvs_rtc 30370000.snvs:snvs-rtc-lp: setting system clock to 2016-09-17 01:55:14 UTC (1474077314)
[ 2.299217] mmcblk1: mmc1:0001 R1J55A 7.28 GiB
[ 2.304478] mmcblk1boot0: mmc1:0001 R1J55A partition 1 2.00 MiB
[ 2.317943] Unable to handle kernel NULL pointer dereference at virtual address 00000008
[ 2.326160] pgd = c0004000
[ 2.328925] [00000008] *pgd=00000000
[ 2.332523] Internal error: Oops: 5 [#1] SMP ARM
[ 2.337148] Modules linked in:
[ 2.340219] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.10.0-rc7-00065-g926af627 #1106
[ 2.348140] Hardware name: Freescale i.MX7 Dual (Device Tree)
[ 2.353893] task: ef078000 task.stack: ef06a000
[ 2.358439] PC is at phy_attach_direct+0x48/0x1a0
[ 2.363152] LR is at phy_connect_direct+0x1c/0x54
[ 2.367865] pc : [<c05dc10c>] lr : [<c05dc34c>] psr: 60000013
[ 2.367865] sp : ef06bcd8 ip : ef06bd08 fp : ef06bd04
[ 2.379349] r10: 00000000 r9 : 00000007 r8 : ee92d000
[ 2.384581] r7 : 00000000 r6 : ef047000 r5 : c05e4ef8 r4 : ee92d400
[ 2.391115] r3 : 00000000 r2 : c0e42694 r1 : ef154810 r0 : 00000000
[ 2.397650] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none
[ 2.404792] Control: 10c5387d Table: 8000406a DAC: 00000051
[ 2.410544] Process swapper/0 (pid: 1, stack limit = 0xef06a210)
[ 2.416557] Stack: (0xef06bcd8 to 0xef06c000)
[ 2.420923] bcc0: 00000007 ee92d400
[ 2.429111] bce0: c05e4ef8 c05e4ef8 00000000 ef038818 00000200 ef038000 ef06bd24 ef06bd08
[ 2.437300] bd00: c05dc34c c05dc0d0 00000007 ee92d400 c05e4ef8 ef047000 ef06bd44 ef06bd28
[ 2.445489] bd20: c0703764 c05dc33c f0e9bfe0 ef047000 00000000 c164bc1c ef06bdac ef06bd48
[ 2.453678] bd40: c05e6be8 c0703730 00000007 c07828dc 00000003 ef047634 0000000d ef047000
[ 2.461867] bd60: 00001002 00000000 ef06bd8c ef06bd78 c0149490 c014930c 00000000 c0171868
[ 2.470055] bd80: ef06bdac ef047000 00000000 c0a67700 ef047030 00000000 c0d6bb54 c0d6bb54
[ 2.478244] bda0: ef06bdd4 ef06bdb0 c0779550 c05e694c ef06bdd4 ef047000 ef047000 00000001
[ 2.486433] bdc0: 00001003 00001002 ef06bdfc ef06bdd8 c0779808 c07794ac 00000000 ef047000
[ 2.494621] bde0: ef047138 00001002 c0d6bb64 00000000 ef06be24 ef06be00 c07798ec c0779784
[ 2.502810] be00: 00000000 ef047000 00000001 00001002 c0d6bb64 c0d6bb54 ef06bedc ef06be28
[ 2.510998] be20: c0d54e5c c07798d8 00000000 00000000 00000000 00000000 ef078000 c0e6fdd0
[ 2.519186] be40: ef06be9c ef06be50 c0173c68 00000002 c0e6d240 c0171dc0 00000001 00000000
[ 2.527375] be60: 00000000 c07dded4 c07ddf20 60000013 00000000 c0e6fdc0 00000000 00000000
[ 2.535564] be80: c0e79000 c0d5f854 60000013 c0e6fdc0 ef06beb4 ef06bea0 c0983ce0 c017694c
[ 2.543753] bea0: c0e09cf0 c0e6fdc0 ef06becc ef06beb8 c07ddf20 00000007 c0d54c9c 00000000
[ 2.551941] bec0: c0e79000 c0d5f854 c0d5f858 c0d00608 ef06bf4c ef06bee0 c010194c c0d54ca8
[ 2.560130] bee0: c0d00624 c04056e0 00000000 c0cccac4 c0a2214c 000000ed ef06bf4c ef06bf08
[ 2.568318] bf00: c01472b8 c0d00614 00000007 00000007 00000000 c0ccb840 c0bcda7c 00000000
[ 2.576507] bf20: 600000d3 00000007 c0e79000 00000007 c0e79000 c0d72d50 c0d5f854 c0d5f858
[ 2.584695] bf40: ef06bf94 ef06bf50 c0d00e48 c0101914 00000007 00000007 00000000 c0d00608
[ 2.592884] bf60: 7d7f9eeb 000000ed c097adfc 00000000 c097adfc 00000000 00000000 00000000
[ 2.601072] bf80: 00000000 00000000 ef06bfac ef06bf98 c097ae0c c0d00d24 ef06a000 00000000
[ 2.609260] bfa0: 00000000 ef06bfb0 c0107f30 c097ae08 00000000 00000000 00000000 00000000
[ 2.617448] bfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 2.625636] bfe0: 00000000 00000000 00000000 00000000 00000013 00000000 7bffaa1f ffdbaebe
[ 2.633816] Backtrace:
[ 2.636282] [<c05dc0c4>] (phy_attach_direct) from [<c05dc34c>] (phy_connect_direct+0x1c/0x54)
[ 2.644819] r10:ef038000 r9:00000200 r8:ef038818 r7:00000000 r6:c05e4ef8 r5:c05e4ef8
[ 2.652656] r4:ee92d400 r3:00000007
[ 2.656246] [<c05dc330>] (phy_connect_direct) from [<c0703764>] (of_phy_connect+0x40/0x64)
[ 2.664519] r6:ef047000 r5:c05e4ef8 r4:ee92d400 r3:00000007
[ 2.670193] [<c0703724>] (of_phy_connect) from [<c05e6be8>] (fec_enet_open+0x2a8/0x49c)
[ 2.678207] r7:c164bc1c r6:00000000 r5:ef047000 r4:f0e9bfe0
[ 2.683882] [<c05e6940>] (fec_enet_open) from [<c0779550>] (__dev_open+0xb0/0x118)
[ 2.691464] r10:c0d6bb54 r9:c0d6bb54 r8:00000000 r7:ef047030 r6:c0a67700 r5:00000000
[ 2.699298] r4:ef047000
[ 2.701844] [<c07794a0>] (__dev_open) from [<c0779808>] (__dev_change_flags+0x90/0x154)
[ 2.709858] r7:00001002 r6:00001003 r5:00000001 r4:ef047000
[ 2.715529] [<c0779778>] (__dev_change_flags) from [<c07798ec>] (dev_change_flags+0x20/0x50)
[ 2.723979] r8:00000000 r7:c0d6bb64 r6:00001002 r5:ef047138 r4:ef047000 r3:00000000
[ 2.731737] [<c07798cc>] (dev_change_flags) from [<c0d54e5c>] (ip_auto_config+0x1c0/0x1038)
[ 2.740100] r8:c0d6bb54 r7:c0d6bb64 r6:00001002 r5:00000001 r4:ef047000 r3:00000000
[ 2.747857] [<c0d54c9c>] (ip_auto_config) from [<c010194c>] (do_one_initcall+0x44/0x17c)
[ 2.755960] r10:c0d00608 r9:c0d5f858 r8:c0d5f854 r7:c0e79000 r6:00000000 r5:c0d54c9c
[ 2.763795] r4:00000007
[ 2.766344] [<c0101908>] (do_one_initcall) from [<c0d00e48>] (kernel_init_freeable+0x130/0x1f8)
[ 2.775053] r9:c0d5f858 r8:c0d5f854 r6:c0d72d50 r5:c0e79000 r4:00000007
[ 2.781769] [<c0d00d18>] (kernel_init_freeable) from [<c097ae0c>] (kernel_init+0x10/0x120)
[ 2.790044] r10:00000000 r9:00000000 r8:00000000 r7:00000000 r6:00000000 r5:c097adfc
[ 2.797879] r4:00000000
[ 2.800428] [<c097adfc>] (kernel_init) from [<c0107f30>] (ret_from_fork+0x14/0x24)
[ 2.808005] r4:00000000 r3:ef06a000
[ 2.811592] Code: ebef38e7 e3500000 0a00004c e594307c (e5930008)
[ 2.817775] ---[ end trace dc93a7888190508a ]---
[ 2.822872] mmcblk1boot1: mmc1:0001 R1J55A partition 2 2.00 MiB
[ 2.829281] mmcblk1rpmb: mmc1:0001 R1J55A partition 3 128 KiB
[ 2.839166] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
[ 2.839166]
[ 2.848329] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
Regards
Dong Aisheng
More information about the linux-arm-kernel
mailing list