devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* linux 3.13-rc1 make dw_mmc-exynos more worse
@ 2013-11-24 12:07 randy
  2013-11-25  6:18 ` Olof Johansson
  0 siblings, 1 reply; 10+ messages in thread
From: randy @ 2013-11-24 12:07 UTC (permalink / raw)
  To: linux-samsung-soc; +Cc: tgih.jun, jh80.chung, kgene.kim, devicetree

[-- Attachment #1: Type: text/plain, Size: 18798 bytes --]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

After pull the merge of 3.13-rc1, the dw_mmc-exynos will make the boot
stock.In 3.13, it is just stocked udev in 3.13 and makse udev timeout
but kernel report the emmc device is found.

And in the Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt I
saw that it is need to define which gpio ports that a emmc slot use,
but when I watched others dts, they use pinctrl, which is correct?
Here is the log and dts
=======================log begin =============================
Uncompressing Linux... done, booting the kernel.
[    0.000000] Booting Linux on physical CPU 0xa00
[    0.000000] Linux version 3.13.0-rc1-00008-g584fa45-dirty
(ayaka@kotomi) (gcc version 4.7.3 (crosstool-NG 1.19.0) ) #3 SMP
PREEMPT Sun Nov 24 19
:30:28 CST 2013
[    0.000000] CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7),
cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing
instruction cache
[    0.000000] Machine model: Friendly Arm Tiny4412 1306 board based
on Exynos4412
[    0.000000] bootconsole [earlycon0] enabled
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] CPU EXYNOS4412 (id 0xe4412011)
[    0.000000] PERCPU: Embedded 8 pages/cpu @c083c000 s8448 r8192
d16128 u32768
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.
 Total pages: 256272
[    0.000000] Kernel command line: earlyprintk=ttySAC0,115200
console=ttySAC0,115200 root=/dev/mmcblk0p1 rootfstype=ext4 rw
[    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: 1015592K/1031168K available (4266K kernel code,
229K rwdata, 1272K rodata, 208K init, 270K bss, 15576K reserved,
269312K hig
hmem)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xf0000000 - 0xff000000   ( 240 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xef800000   ( 760 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0008000 - 0xc0570cf4   (5540 kB)
[    0.000000]       .init : 0xc0571000 - 0xc05a5100   ( 209 kB)
[    0.000000]       .data : 0xc05a6000 - 0xc05df540   ( 230 kB)
[    0.000000]        .bss : 0xc05df54c - 0xc06230c0   ( 271 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000]  RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=4.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] Exynos4x12 clocks: sclk_apll = 466666666, sclk_mpll =
800000000
[    0.000000]  sclk_epll = 96000000, sclk_vpll = 108000000, arm_clk =
1400000000
[    0.000000] sched_clock: 32 bits at 200 Hz, resolution 5000000ns,
wraps every 10737418240000000ns
[    0.000000] Console: colour dummy device 80x30
[    0.010000] Calibrating delay loop... 2795.11 BogoMIPS (lpj=6987776)
[    0.060000] pid_max: default: 32768 minimum: 301
[    0.065000] Mount-cache hash table entries: 512
[    0.075000] CPU: Testing write buffer coherency: ok
[    0.080000] missing device node for CPU 0
[    0.085000] missing device node for CPU 1
[    0.085000] missing device node for CPU 2
[    0.090000] missing device node for CPU 3
[    0.095000] CPU0: thread -1, cpu 0, socket 10, mpidr 80000a00
[    0.100000] Setting up static identity map for 0x4040bfc0 - 0x4040c018
[    0.135000] CPU1: Booted secondary processor
[    0.180000] CPU1: thread -1, cpu 1, socket 10, mpidr 80000a01
[    0.190000] CPU2: Booted secondary processor
[    0.235000] CPU2: thread -1, cpu 2, socket 10, mpidr 80000a02
[    0.245000] CPU3: Booted secondary processor
[    0.290000] CPU3: thread -1, cpu 3, socket 10, mpidr 80000a03
[    0.290000] Brought up 4 CPUs
[    0.295000] SMP: Total of 4 processors activated.
[    0.300000] CPU: All CPU(s) started in SVC mode.
[    0.305000] devtmpfs: initialized
[    0.315000] VFP support v0.3: implementor 41 architecture 3 part 30
variant 9 rev 4
[    0.325000] pinctrl core: initialized pinctrl subsystem
[    0.330000] regulator-dummy: no parameters
[    0.335000] NET: Registered protocol family 16
[    0.340000] DMA: preallocated 256 KiB pool for atomic coherent
allocations
[    0.350000] cpuidle: using governor ladder
[    0.350000] cpuidle: using governor menu
[    0.370000] S3C Power Management, Copyright 2004 Simtec Electronics
[    0.375000] EXYNOS4x12 PMU Initialize
[    0.380000] EXYNOS: Initializing architecture
[    0.410000] bio: create slab <bio-0> at 0
[    0.415000] VMEM_VDD_2.8V: 2800 mV
[    0.420000] SCSI subsystem initialized
[    0.425000] usbcore: registered new interface driver usbfs
[    0.435000] usbcore: registered new interface driver hub
[    0.440000] usbcore: registered new device driver usb
[    0.445000] s3c-i2c 13860000.i2c: slave address 0x00
[    0.450000] s3c-i2c 13860000.i2c: bus frequency set to 195 KHz
[    0.455000] s3c-i2c 13860000.i2c: i2c-0: S3C I2C adapter
[    0.465000] Switched to clocksource mct-frc
[    0.495000] NET: Registered protocol family 2
[    0.500000] TCP established hash table entries: 8192 (order: 3,
32768 bytes)
[    0.505000] TCP bind hash table entries: 8192 (order: 5, 163840 bytes)
[    0.510000] TCP: Hash tables configured (established 8192 bind 8192)
[    0.520000] TCP: reno registered
[    0.520000] UDP hash table entries: 512 (order: 2, 24576 bytes)
[    0.530000] UDP-Lite hash table entries: 512 (order: 2, 24576 bytes)
[    0.535000] NET: Registered protocol family 1
[    0.540000] RPC: Registered named UNIX socket transport module.
[    0.545000] RPC: Registered udp transport module.
[    0.550000] RPC: Registered tcp transport module.
[    0.555000] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.565000] bounce pool size: 64 pages
[    0.585000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.595000] NFS: Registering the id_resolver key type
[    0.600000] Key type id_resolver registered
[    0.605000] Key type id_legacy registered
[    0.610000] fuse init (API version 7.22)
[    0.615000] msgmni has been set to 1457
[    0.615000] io scheduler noop registered
[    0.620000] io scheduler deadline registered
[    0.625000] io scheduler cfq registered (default)
[    0.645000] dma-pl330 12680000.pdma: unable to set the seg size
[    0.650000] dma-pl330 12680000.pdma: Loaded driver for PL330
DMAC-1315632
[    0.660000] dma-pl330 12680000.pdma:         DBUFF-32x4bytes
Num_Chans-8 Num_Peri-32 Num_Events-32
[    0.675000] dma-pl330 12690000.pdma: unable to set the seg size
[    0.680000] dma-pl330 12690000.pdma: Loaded driver for PL330
DMAC-1315632
[    0.685000] dma-pl330 12690000.pdma:         DBUFF-32x4bytes
Num_Chans-8 Num_Peri-32 Num_Events-32
[    0.700000] dma-pl330 12850000.mdma: unable to set the seg size
[    0.705000] dma-pl330 12850000.mdma: Loaded driver for PL330
DMAC-1315632
[    0.710000] dma-pl330 12850000.mdma:         DBUFF-64x8bytes
Num_Chans-8 Num_Peri-1 Num_Events-32
[    0.890000] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    0.900000] console [ttySAC0] enabled
[    0.900000] console [ttySAC0] enabled
[    0.905000] bootconsole [earlycon0] disabled
[    0.905000] bootconsole [earlycon0] disabled
[    0.915000] 13810000.serial: ttySAC1 at MMIO 0x13810000 (irq = 85,
base_baud = 0) is a S3C6400/10
[    0.915000] 13820000.serial: ttySAC2 at MMIO 0x13820000 (irq = 86,
base_baud = 0) is a S3C6400/10
[    0.920000] 13830000.serial: ttySAC3 at MMIO 0x13830000 (irq = 87,
base_baud = 0) is a S3C6400/10
[    0.935000] brd: module loaded
[    0.940000] loop: module loaded
[    0.940000] usbcore: registered new interface driver asix
[    0.940000] usbcore: registered new interface driver ax88179_178a
[    0.940000] usbcore: registered new interface driver cdc_ether
[    0.945000] usbcore: registered new interface driver r815x
[    0.950000] usbcore: registered new interface driver smsc75xx
[    0.955000] usbcore: registered new interface driver smsc95xx
[    0.960000] usbcore: registered new interface driver net1080
[    0.965000] usbcore: registered new interface driver cdc_subset
[    0.975000] usbcore: registered new interface driver zaurus
[    0.980000] usbcore: registered new interface driver cdc_ncm
[    0.985000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    0.990000] ehci-exynos: EHCI EXYNOS driver
[    0.995000] unable to find transceiver of type USB2 PHY
[    1.000000] exynos-ehci 12580000.ehci: no platform data or
transceiver defined
[    1.005000] platform 12580000.ehci: Driver exynos-ehci requests
probe deferral
[    1.015000] usbcore: registered new interface driver usb-storage
[    1.020000] usbcore: registered new interface driver usbserial
[    1.025000] usbcore: registered new interface driver ch341
[    1.030000] usbserial: USB Serial support registered for ch341-uart
[    1.040000] mousedev: PS/2 mouse device common for all mice
[    1.045000] s3c-rtc 10070000.rtc: rtc disabled, re-enabling
[    1.050000] s3c-rtc 10070000.rtc: rtc core: registered s3c as rtc0
[    1.055000] device-mapper: ioctl: 4.27.0-ioctl (2013-10-30)
initialised: dm-devel@redhat.com
[    1.065000] sdhci: Secure Digital Host Controller Interface driver
[    1.070000] sdhci: Copyright(c) Pierre Ossman
[    1.075000] s3c-sdhci 12530000.sdhci: clock source 2: mmc_busclk.2
(100000000 Hz)
[    1.080000] s3c-sdhci 12530000.sdhci: dummy supplies not allowed
[    1.085000] mmc0: no vqmmc regulator found
[    1.090000] s3c-sdhci 12530000.sdhci: dummy supplies not allowed
[    1.095000] mmc0: no vmmc regulator found
[    1.130000] mmc0: SDHCI controller on samsung-hsmmc
[12530000.sdhci] using ADMA
[    1.130000] Synopsys Designware Multimedia Card Interface Driver
[    1.130000] Unable to handle kernel NULL pointer dereference at
virtual address 0000002a
[    1.130000] pgd = c0004000
[    1.130000] [0000002a] *pgd=00000000
[    1.135000] Internal error: Oops: 5 [#1] PREEMPT SMP ARM
[    1.140000] Modules linked in:
[    1.140000] CPU: 0 PID: 1 Comm: swapper/0 Not tainted
3.13.0-rc1-00008-g584fa45-dirty #3
[    1.150000] task: ef0a4000 ti: ef0a8000 task.ti: ef0a8000
[    1.155000] PC is at clk_get_rate+0x18/0x5c
[    1.160000] LR is at clk_prepare_lock+0xc/0xd8
[    1.165000] pc : [<c0319400>]    lr : [<c0318864>]    psr: a0000113
[    1.165000] sp : ef0a9e20  ip : ee94eb40  fp : 00000000
[    1.175000] r10: c0571510  r9 : ef0a8000  r8 : ef227a10
[    1.180000] r7 : c043544c  r6 : fffffffe  r5 : ee94ead0  r4 : fffffffe
[    1.185000] r3 : ef0a4000  r2 : 00000001  r1 : 000002b9  r0 : 00000001
[    1.195000] Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM
Segment kernel
[    1.200000] Control: 10c5387d  Table: 4000404a  DAC: 00000015
[    1.205000] Process swapper/0 (pid: 1, stack limit = 0xef0a8240)
[    1.210000] Stack: (0xef0a9e20 to 0xef0aa000)
[    1.215000] 9e20: c0308474 ee9ea610 ee94ead0 c0308488 c0308474
ee9ea610 00000000 c030592c
[    1.225000] 9e40: ef227a10 00001000 c043544c c020a920 c0838b04
17d78400 ee9ea610 ef227a00
[    1.235000] 9e60: ef227a10 c05d6b1c 00000000 c05d6b1c c05890b0
ef0a8000 c0571510 c0269448
[    1.240000] 9e80: c0269430 ef227a10 c061291c c0268088 00000000
ef227a10 c05d6b1c ef227a44
[    1.250000] 9ea0: 00000000 c026822c 00000000 c05d6b1c c02681a0
c02668a8 ef005478 ef212740
[    1.255000] 9ec0: c05d6b1c ef2c7900 c05cf438 c0267864 c0511e38
c05d6b1c 00000006 c05d6b1c
[    1.265000] 9ee0: 00000006 c059575c c05df580 c026884c 00000000
c05a2e14 00000006 c00088dc
[    1.275000] 9f00: c0603f70 ef163e00 c040e334 60000113 c05b5000
a0000113 c05b5054 c05b5050
[    1.280000] 9f20: c05df580 c054ad68 c0839c96 c04247b4 00000093
c0035158 c05b5054 c05a2a20
[    1.290000] 9f40: c050ae2c c054a438 00000006 00000006 00000000
c05a2e14 00000006 c059575c
[    1.300000] 9f60: c05df580 00000093 c0595768 c0571510 00000000
c0571c48 00000006 00000006
[    1.305000] 9f80: c0571510 c003df68 00000000 c0403544 00000000
00000000 00000000 00000000
[    1.315000] 9fa0: 00000000 c040354c 00000000 c000e738 00000000
00000000 00000000 00000000
[    1.320000] 9fc0: 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000
[    1.330000] 9fe0: 00000000 00000000 00000000 00000000 00000013
00000000 be73efa4 ffffbffd
[    1.340000] [<c0319400>] (clk_get_rate+0x18/0x5c) from [<c0308488>]
(dw_mci_exynos_setup_clock+0x14/0x2c)
[    1.350000] [<c0308488>] (dw_mci_exynos_setup_clock+0x14/0x2c) from
[<c030592c>] (dw_mci_probe+0x15c/0xca4)
[    1.360000] [<c030592c>] (dw_mci_probe+0x15c/0xca4) from
[<c0269448>] (platform_drv_probe+0x18/0x48)
[    1.365000] [<c0269448>] (platform_drv_probe+0x18/0x48) from
[<c0268088>] (driver_probe_device+0x100/0x218)
[    1.375000] [<c0268088>] (driver_probe_device+0x100/0x218) from
[<c026822c>] (__driver_attach+0x8c/0x90)
[    1.385000] [<c026822c>] (__driver_attach+0x8c/0x90) from
[<c02668a8>] (bus_for_each_dev+0x54/0x88)
[    1.395000] [<c02668a8>] (bus_for_each_dev+0x54/0x88) from
[<c0267864>] (bus_add_driver+0xd4/0x1d0)
[    1.405000] [<c0267864>] (bus_add_driver+0xd4/0x1d0) from
[<c026884c>] (driver_register+0x78/0xf4)
[    1.415000] [<c026884c>] (driver_register+0x78/0xf4) from
[<c00088dc>] (do_one_initcall+0xec/0x148)
[    1.420000] [<c00088dc>] (do_one_initcall+0xec/0x148) from
[<c0571c48>] (kernel_init_freeable+0xfc/0x1c8)
[    1.430000] [<c0571c48>] (kernel_init_freeable+0xfc/0x1c8) from
[<c040354c>] (kernel_init+0x8/0x110)
[    1.440000] [<c040354c>] (kernel_init+0x8/0x110) from [<c000e738>]
(ret_from_fork+0x14/0x3c)
[    1.450000] Code: ebfffd18 e3540000 01a05004 0a000008 (e594302c)
[    1.455000] ---[ end trace ce9389a41a758ebf ]---
[    1.460000] Kernel panic - not syncing: Attempted to kill init!
exitcode=0x0000000b
[    1.460000]
[    1.470000] CPU3: stopping
[    1.470000] CPU: 3 PID: 0 Comm: swapper/3 Tainted: G      D
3.13.0-rc1-00008-g584fa45-dirty #3
[    1.470000] [<c001410c>] (unwind_backtrace+0x0/0xf8) from
[<c0011474>] (show_stack+0x10/0x14)
[    1.470000] [<c0011474>] (show_stack+0x10/0x14) from [<c0406d74>]
(dump_stack+0x6c/0xac)
[    1.470000] [<c0406d74>] (dump_stack+0x6c/0xac) from [<c00134a0>]
(handle_IPI+0x130/0x15c)
[    1.470000] [<c00134a0>] (handle_IPI+0x130/0x15c) from [<c000859c>]
(gic_handle_irq+0x60/0x68)
[    1.470000] [<c000859c>] (gic_handle_irq+0x60/0x68) from
[<c0011f40>] (__irq_svc+0x40/0x70)
[    1.470000] Exception stack(0xef0d1f58 to 0xef0d1fa0)
[    1.470000] 1f40:
     ef0d1fa0 3b9aca00
[    1.470000] 1f60: 57b79083 00000000 3b4f2edb 00000000 c0854160
00000000 00000000 00000001
[    1.470000] 1f80: c05df428 ef0d0000 00000018 ef0d1fa0 c006138c
c02ed564 60000113 ffffffff
[    1.470000] [<c0011f40>] (__irq_svc+0x40/0x70) from [<c02ed564>]
(cpuidle_enter_state+0x50/0xf0)
[    1.470000] [<c02ed564>] (cpuidle_enter_state+0x50/0xf0) from
[<c02ed6ac>] (cpuidle_idle_call+0xa8/0x15c)
[    1.470000] [<c02ed6ac>] (cpuidle_idle_call+0xa8/0x15c) from
[<c000f23c>] (arch_cpu_idle+0x8/0x38)
[    1.470000] [<c000f23c>] (arch_cpu_idle+0x8/0x38) from [<c0055e0c>]
(cpu_startup_entry+0x58/0x154)
[    1.470000] [<c0055e0c>] (cpu_startup_entry+0x58/0x154) from
[<40008644>] (0x40008644)
[    1.470000] CPU2: stopping
[    1.470000] CPU: 2 PID: 0 Comm: swapper/2 Tainted: G      D
3.13.0-rc1-00008-g584fa45-dirty #3
[    1.470000] [<c001410c>] (unwind_backtrace+0x0/0xf8) from
[<c0011474>] (show_stack+0x10/0x14)
[    1.470000] [<c0011474>] (show_stack+0x10/0x14) from [<c0406d74>]
(dump_stack+0x6c/0xac)
[    1.470000] [<c0406d74>] (dump_stack+0x6c/0xac) from [<c00134a0>]
(handle_IPI+0x130/0x15c)
[    1.470000] [<c00134a0>] (handle_IPI+0x130/0x15c) from [<c000859c>]
(gic_handle_irq+0x60/0x68)
[    1.470000] [<c000859c>] (gic_handle_irq+0x60/0x68) from
[<c0011f40>] (__irq_svc+0x40/0x70)
[    1.470000] Exception stack(0xef0cff58 to 0xef0cffa0)
[    1.470000] ff40:
     ef0cffa0 3b9aca00
[    1.470000] ff60: 57b78fb3 00000000 579f7861 00000000 c084c160
00000000 00000000 00000001
[    1.470000] ff80: c05df428 ef0ce000 00000018 ef0cffa0 c006138c
c02ed564 60000113 ffffffff
[    1.470000] [<c0011f40>] (__irq_svc+0x40/0x70) from [<c02ed564>]
(cpuidle_enter_state+0x50/0xf0)
[    1.470000] [<c02ed564>] (cpuidle_enter_state+0x50/0xf0) from
[<c02ed6ac>] (cpuidle_idle_call+0xa8/0x15c)
[    1.470000] [<c02ed6ac>] (cpuidle_idle_call+0xa8/0x15c) from
[<c000f23c>] (arch_cpu_idle+0x8/0x38)
[    1.470000] [<c000f23c>] (arch_cpu_idle+0x8/0x38) from [<c0055e0c>]
(cpu_startup_entry+0x58/0x154)
[    1.470000] [<c0055e0c>] (cpu_startup_entry+0x58/0x154) from
[<40008644>] (0x40008644)
[    1.470000] CPU1: stopping
[    1.470000] CPU: 1 PID: 0 Comm: swapper/1 Tainted: G      D
3.13.0-rc1-00008-g584fa45-dirty #3
[    1.470000] [<c001410c>] (unwind_backtrace+0x0/0xf8) from
[<c0011474>] (show_stack+0x10/0x14)
[    1.470000] [<c0011474>] (show_stack+0x10/0x14) from [<c0406d74>]
(dump_stack+0x6c/0xac)
[    1.470000] [<c0406d74>] (dump_stack+0x6c/0xac) from [<c00134a0>]
(handle_IPI+0x130/0x15c)
[    1.470000] [<c00134a0>] (handle_IPI+0x130/0x15c) from [<c000859c>]
(gic_handle_irq+0x60/0x68)
[    1.470000] [<c000859c>] (gic_handle_irq+0x60/0x68) from
[<c0011f40>] (__irq_svc+0x40/0x70)
[    1.470000] Exception stack(0xef0cdf58 to 0xef0cdfa0)
[    1.470000] df40:
     ef0cdfa0 3b9aca00
[    1.470000] df60: 57b7912a 00000000 437b4f54 00000000 c0844160
00000000 00000000 00000001
[    1.470000] df80: c05df428 ef0cc000 00000018 ef0cdfa0 c006138c
c02ed564 60000113 ffffffff
[    1.470000] [<c0011f40>] (__irq_svc+0x40/0x70) from [<c02ed564>]
(cpuidle_enter_state+0x50/0xf0)
[    1.470000] [<c02ed564>] (cpuidle_enter_state+0x50/0xf0) from
[<c02ed6ac>] (cpuidle_idle_call+0xa8/0x15c)
[    1.470000] [<c02ed6ac>] (cpuidle_idle_call+0xa8/0x15c) from
[<c000f23c>] (arch_cpu_idle+0x8/0x38)
[    1.470000] [<c000f23c>] (arch_cpu_idle+0x8/0x38) from [<c0055e0c>]
(cpu_startup_entry+0x58/0x154)
[    1.470000] [<c0055e0c>] (cpu_startup_entry+0x58/0x154) from
[<40008644>] (0x40008644)
===============================log end =================================
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJSkev2AAoJEPb4VsMIzTziQMIH/RlnT/P/mjz/15F3BgZPD0jb
gW8ULDNacgjuM+7gAM+4XbfLb3V6PAeu/nI3N8JRV6JwewOhM0d2PE2Olg7BFydI
hutGPD3PG7lwJEFz7HuOFN4yPrk7nIdpZEIfLqCNpLnxUJ+WlCqIt6ZmHuWr1vcU
A77ZDKz9OVC3beGIVqTm2zhudc6PdQY9tQ2M8lUQ/2JlZGy1N6gJxEuysGDseXTU
iVn5T+zJDLaFG0sthimXvU9fgoa3WxmwvNPlMUQuBvMrRY/dTOYBuV4CkJD7aSyC
KvD2v+lHawqWStylSJaFVrGrNv9V4b/O7hR0MqRk69/6a9chAnyJr/38zuabopY=
=bob6
-----END PGP SIGNATURE-----

[-- Attachment #2: exynos4412-tiny4412.dts --]
[-- Type: text/plain, Size: 4023 bytes --]

/*
 * Hardkernel's Exynos4412 based tiny4412 1306 board device tree source
 *
 * Copyright (c) 2013 Tomoya Gitsufuki <ayaka@mail.soulik.info>
 *
 * Device tree source file for Friendyarm tiny4412 1306 board which is based on
 * Samsung's Exynos4412 SoC.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
*/

/dts-v1/;
#include "exynos4412.dtsi"

/ {
	model = "Friendly Arm Tiny4412 1306 board based on Exynos4412";
	compatible = "friendlyarm,tiny4412-1306", "samsung,exynos4412";

	memory {
		reg = <0x40000000 0x40000000>;
	};

	chosen {
		bootargs ="root=/dev/mmcblk0p1 rootfstype=ext4 rw console=ttySAC0,115200 init=/sbin/init";
	};

	leds {
		compatible = "gpio-leds";
		led1 {
			label = "led1:heart";
			gpios = <&gpm4 0 1>;
			default-state = "on";
			linux,default-trigger = "heartbeat";
		};
		led2 {
			label = "led2:mmc0";
			gpios = <&gpm4 1 1>;
			default-state = "on";
			linux,default-trigger = "mmc0";
		};

	};

	regulators {
		compatible = "simple-bus";
		#address-cells = <1>;

		vemmc_reg: regulator-0 {
			compatible = "regulator-fixed";
			regulator-name = "VMEM_VDD_2.8V";
			regulator-min-microvolt = <2800000>;
			regulator-max-microvolt = <2800000>;
			gpio = <&gpk0 2 0>;
			enable-active-high;
		};

	};

	mshc@12550000 {
		#address-cells = <1>;
		#size-cells = <0>;
		pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
		pinctrl-names = "default";
		status = "okay";

		vmmc-supply = <&vemmc_reg>;
		clocks = <&clock 301>, <&clock 149>;
		clocks-name = "dwmci", "sclk_dwmci";
		clock-frequency = <400000000>;

		num-slots = <1>;
		supports-highspeed;
		broken-cd;
		fifo-depth = <0x80>;
		card-detect-delay = <200>;
		samsung,dw-mshc-sdr-timing = <2 3>;
		samsung,dw-mshc-ddr-timing = <1 2>;

		slot@0 {
			reg = <0>;
			bus-width = <8>;
				
		};
	};

	rtc@10070000 {
		status = "okay";
	};

	sdhci@12530000 {
		bus-width = <4>;
		pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
		pinctrl-names = "default";
		status = "okay";
	};
	sdhci@1254000 {
		bus-width = <4>;
		pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4 &sd3_cd>;
		pinctrl-names = "default";
		status = "okay";
	};

	usb_host0: usbphy1@12580000 {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "samsung,exynos4210-usbphy";
		reg = <0x12580000 0x100>;
		ranges;

		clocks = <&clock 2>, <&clock 304>;
		clock-names = "xusbxti", "usbhost";
		usbphy-sys {
			/* USB device and host PHY_CONTROL registers */
			reg = <0x10020708 0x4>;
		};
	};

	usb_host1: usbphy2@12580000 {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "samsung,exynos4210-usbphy";
		reg = <0x12580000 0x100>;
		ranges;

		clocks = <&clock 2>, <&clock 304>;
		clock-names = "xusbxti", "usbhost";
		usbphy-sys {
			/* USB device and host PHY_CONTROL registers */
			reg = <0x1002070c 0x4>;
		};
	};


	otg@125B0000 {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "samsung,exynos4210-usbphy";
		reg = <0x12B0000 0x100>;
		ranges;

		clocks = <&clock 2>, <&clock 305>;
		clock-names = "xusbxti", "otg";
		usbphy-sys {
			/* USB device and host PHY_CONTROL registers */
			reg = <0x10020704 0x4>;
		};
	};

	ehci@12580000 {
		usb-phy = <&usb_host0>;
		status = "okay";
	};
	
	ohci@12590000 {
		status = "okay";
	};


	codec@13400000 {
		samsung,mfc-r = <0x43000000 0x800000>;
		samsung,mfc-l = <0x51000000 0x800000>;
		status = "okay";
	};

	serial@13800000 {
		status = "okay";
	};

	serial@13810000 {
		status = "okay";
	};

	serial@13820000 {
		status = "okay";
	};

	serial@13830000 {
		status = "okay";
	};

	fixed-rate-clocks {
		xxti {
			compatible = "samsung,clock-xxti";
			clock-frequency = <0>;
		};

		xusbxti {
			compatible = "samsung,clock-xusbxti";
			clock-frequency = <24000000>;
		};
	};

	i2c@13860000 {
		status = "okay";
		samsung,i2c-sda-delay = <100>;
		samsung,i2c-max-bus-freq = <200000>;

		wm8960@10 {
			compatible = "wlf,wm8960";
			reg = <0x10>;
		};
	};
};

[-- Attachment #3: exynos4412-tiny4412.dts.sig --]
[-- Type: application/pgp-signature, Size: 287 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: linux 3.13-rc1 make dw_mmc-exynos more worse
  2013-11-24 12:07 linux 3.13-rc1 make dw_mmc-exynos more worse randy
@ 2013-11-25  6:18 ` Olof Johansson
  2013-11-25  8:33   ` Seungwon Jeon
  2013-11-26  0:41   ` Tomasz Figa
  0 siblings, 2 replies; 10+ messages in thread
From: Olof Johansson @ 2013-11-25  6:18 UTC (permalink / raw)
  To: randy
  Cc: linux-samsung-soc@vger.kernel.org, Seungwon Jeon, Jaehoon Chung,
	Kukjin Kim, devicetree@vger.kernel.org, Tomasz Figa

Hi,

On Sun, Nov 24, 2013 at 4:07 AM, randy <lxr1234@hotmail.com> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> After pull the merge of 3.13-rc1, the dw_mmc-exynos will make the boot
> stock.In 3.13, it is just stocked udev in 3.13 and makse udev timeout
> but kernel report the emmc device is found.
>
> And in the Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt I
> saw that it is need to define which gpio ports that a emmc slot use,
> but when I watched others dts, they use pinctrl, which is correct?
> Here is the log and dts

[..]

> =======================log begin =============================
[..]
> [    0.000000] CPU EXYNOS4412 (id 0xe4412011)

[..]

> [    1.095000] mmc0: no vmmc regulator found
> [    1.130000] mmc0: SDHCI controller on samsung-hsmmc
> [12530000.sdhci] using ADMA
> [    1.130000] Synopsys Designware Multimedia Card Interface Driver
> [    1.130000] Unable to handle kernel NULL pointer dereference at
> virtual address 0000002a
> [    1.130000] pgd = c0004000
> [    1.130000] [0000002a] *pgd=00000000
> [    1.135000] Internal error: Oops: 5 [#1] PREEMPT SMP ARM
> [    1.140000] Modules linked in:
> [    1.140000] CPU: 0 PID: 1 Comm: swapper/0 Not tainted
> 3.13.0-rc1-00008-g584fa45-dirty #3
> [    1.150000] task: ef0a4000 ti: ef0a8000 task.ti: ef0a8000
> [    1.155000] PC is at clk_get_rate+0x18/0x5c
> [    1.160000] LR is at clk_prepare_lock+0xc/0xd8
> [    1.165000] pc : [<c0319400>]    lr : [<c0318864>]    psr: a0000113
> [    1.165000] sp : ef0a9e20  ip : ee94eb40  fp : 00000000
> [    1.175000] r10: c0571510  r9 : ef0a8000  r8 : ef227a10
> [    1.180000] r7 : c043544c  r6 : fffffffe  r5 : ee94ead0  r4 : fffffffe
> [    1.185000] r3 : ef0a4000  r2 : 00000001  r1 : 000002b9  r0 : 00000001
> [    1.195000] Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM
> Segment kernel
> [    1.200000] Control: 10c5387d  Table: 4000404a  DAC: 00000015
> [    1.205000] Process swapper/0 (pid: 1, stack limit = 0xef0a8240)
> [    1.210000] Stack: (0xef0a9e20 to 0xef0aa000)
> [    1.215000] 9e20: c0308474 ee9ea610 ee94ead0 c0308488 c0308474
> ee9ea610 00000000 c030592c
> [    1.225000] 9e40: ef227a10 00001000 c043544c c020a920 c0838b04
> 17d78400 ee9ea610 ef227a00
> [    1.235000] 9e60: ef227a10 c05d6b1c 00000000 c05d6b1c c05890b0
> ef0a8000 c0571510 c0269448
> [    1.240000] 9e80: c0269430 ef227a10 c061291c c0268088 00000000
> ef227a10 c05d6b1c ef227a44
> [    1.250000] 9ea0: 00000000 c026822c 00000000 c05d6b1c c02681a0
> c02668a8 ef005478 ef212740
> [    1.255000] 9ec0: c05d6b1c ef2c7900 c05cf438 c0267864 c0511e38
> c05d6b1c 00000006 c05d6b1c
> [    1.265000] 9ee0: 00000006 c059575c c05df580 c026884c 00000000
> c05a2e14 00000006 c00088dc
> [    1.275000] 9f00: c0603f70 ef163e00 c040e334 60000113 c05b5000
> a0000113 c05b5054 c05b5050
> [    1.280000] 9f20: c05df580 c054ad68 c0839c96 c04247b4 00000093
> c0035158 c05b5054 c05a2a20
> [    1.290000] 9f40: c050ae2c c054a438 00000006 00000006 00000000
> c05a2e14 00000006 c059575c
> [    1.300000] 9f60: c05df580 00000093 c0595768 c0571510 00000000
> c0571c48 00000006 00000006
> [    1.305000] 9f80: c0571510 c003df68 00000000 c0403544 00000000
> 00000000 00000000 00000000
> [    1.315000] 9fa0: 00000000 c040354c 00000000 c000e738 00000000
> 00000000 00000000 00000000
> [    1.320000] 9fc0: 00000000 00000000 00000000 00000000 00000000
> 00000000 00000000 00000000
> [    1.330000] 9fe0: 00000000 00000000 00000000 00000000 00000013
> 00000000 be73efa4 ffffbffd
> [    1.340000] [<c0319400>] (clk_get_rate+0x18/0x5c) from [<c0308488>]
> (dw_mci_exynos_setup_clock+0x14/0x2c)
> [    1.350000] [<c0308488>] (dw_mci_exynos_setup_clock+0x14/0x2c) from
> [<c030592c>] (dw_mci_probe+0x15c/0xca4)
> [    1.360000] [<c030592c>] (dw_mci_probe+0x15c/0xca4) from
> [<c0269448>] (platform_drv_probe+0x18/0x48)
> [    1.365000] [<c0269448>] (platform_drv_probe+0x18/0x48) from
> [<c0268088>] (driver_probe_device+0x100/0x218)
> [    1.375000] [<c0268088>] (driver_probe_device+0x100/0x218) from
> [<c026822c>] (__driver_attach+0x8c/0x90)
> [    1.385000] [<c026822c>] (__driver_attach+0x8c/0x90) from
> [<c02668a8>] (bus_for_each_dev+0x54/0x88)
> [    1.395000] [<c02668a8>] (bus_for_each_dev+0x54/0x88) from
> [<c0267864>] (bus_add_driver+0xd4/0x1d0)
> [    1.405000] [<c0267864>] (bus_add_driver+0xd4/0x1d0) from
> [<c026884c>] (driver_register+0x78/0xf4)
> [    1.415000] [<c026884c>] (driver_register+0x78/0xf4) from
> [<c00088dc>] (do_one_initcall+0xec/0x148)
> [    1.420000] [<c00088dc>] (do_one_initcall+0xec/0x148) from
> [<c0571c48>] (kernel_init_freeable+0xfc/0x1c8)
> [    1.430000] [<c0571c48>] (kernel_init_freeable+0xfc/0x1c8) from
> [<c040354c>] (kernel_init+0x8/0x110)
> [    1.440000] [<c040354c>] (kernel_init+0x8/0x110) from [<c000e738>]
> (ret_from_fork+0x14/0x3c)
> [    1.450000] Code: ebfffd18 e3540000 01a05004 0a000008 (e594302c)


Looks like a clock issue on 4412? I only have 5250 that I boot test
on, no EXYNOS4 coverage at all (I had an Odroid-X but it wasn't useful
due to the very old u-boot it came with so I gave it away).

Tomasz, is this something you can reproduce on 4210/4412?


-Olof

^ permalink raw reply	[flat|nested] 10+ messages in thread

* RE: linux 3.13-rc1 make dw_mmc-exynos more worse
  2013-11-25  6:18 ` Olof Johansson
@ 2013-11-25  8:33   ` Seungwon Jeon
  2013-11-25 12:42     ` randy
  2013-11-26  0:41   ` Tomasz Figa
  1 sibling, 1 reply; 10+ messages in thread
From: Seungwon Jeon @ 2013-11-25  8:33 UTC (permalink / raw)
  To: 'Olof Johansson', 'randy'
  Cc: linux-samsung-soc, 'Jaehoon Chung', 'Kukjin Kim',
	devicetree, 'Tomasz Figa'

On Mon, November 25, 2013, Olof Johansson wrote:
> Hi,
> 
> On Sun, Nov 24, 2013 at 4:07 AM, randy <lxr1234@hotmail.com> wrote:
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> >
> > After pull the merge of 3.13-rc1, the dw_mmc-exynos will make the boot
> > stock.In 3.13, it is just stocked udev in 3.13 and makse udev timeout
> > but kernel report the emmc device is found.
> >
> > And in the Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt I
> > saw that it is need to define which gpio ports that a emmc slot use,
> > but when I watched others dts, they use pinctrl, which is correct?
> > Here is the log and dts
> 
> [..]
> 
> > =======================log begin =============================
> [..]
> > [    0.000000] CPU EXYNOS4412 (id 0xe4412011)
> 
> [..]
> 
> > [    1.095000] mmc0: no vmmc regulator found
> > [    1.130000] mmc0: SDHCI controller on samsung-hsmmc
> > [12530000.sdhci] using ADMA
> > [    1.130000] Synopsys Designware Multimedia Card Interface Driver
> > [    1.130000] Unable to handle kernel NULL pointer dereference at
> > virtual address 0000002a
> > [    1.130000] pgd = c0004000
> > [    1.130000] [0000002a] *pgd=00000000
> > [    1.135000] Internal error: Oops: 5 [#1] PREEMPT SMP ARM
> > [    1.140000] Modules linked in:
> > [    1.140000] CPU: 0 PID: 1 Comm: swapper/0 Not tainted
> > 3.13.0-rc1-00008-g584fa45-dirty #3
> > [    1.150000] task: ef0a4000 ti: ef0a8000 task.ti: ef0a8000
> > [    1.155000] PC is at clk_get_rate+0x18/0x5c
> > [    1.160000] LR is at clk_prepare_lock+0xc/0xd8
> > [    1.165000] pc : [<c0319400>]    lr : [<c0318864>]    psr: a0000113
> > [    1.165000] sp : ef0a9e20  ip : ee94eb40  fp : 00000000
> > [    1.175000] r10: c0571510  r9 : ef0a8000  r8 : ef227a10
> > [    1.180000] r7 : c043544c  r6 : fffffffe  r5 : ee94ead0  r4 : fffffffe
> > [    1.185000] r3 : ef0a4000  r2 : 00000001  r1 : 000002b9  r0 : 00000001
> > [    1.195000] Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM
> > Segment kernel
> > [    1.200000] Control: 10c5387d  Table: 4000404a  DAC: 00000015
> > [    1.205000] Process swapper/0 (pid: 1, stack limit = 0xef0a8240)
> > [    1.210000] Stack: (0xef0a9e20 to 0xef0aa000)
> > [    1.215000] 9e20: c0308474 ee9ea610 ee94ead0 c0308488 c0308474
> > ee9ea610 00000000 c030592c
> > [    1.225000] 9e40: ef227a10 00001000 c043544c c020a920 c0838b04
> > 17d78400 ee9ea610 ef227a00
> > [    1.235000] 9e60: ef227a10 c05d6b1c 00000000 c05d6b1c c05890b0
> > ef0a8000 c0571510 c0269448
> > [    1.240000] 9e80: c0269430 ef227a10 c061291c c0268088 00000000
> > ef227a10 c05d6b1c ef227a44
> > [    1.250000] 9ea0: 00000000 c026822c 00000000 c05d6b1c c02681a0
> > c02668a8 ef005478 ef212740
> > [    1.255000] 9ec0: c05d6b1c ef2c7900 c05cf438 c0267864 c0511e38
> > c05d6b1c 00000006 c05d6b1c
> > [    1.265000] 9ee0: 00000006 c059575c c05df580 c026884c 00000000
> > c05a2e14 00000006 c00088dc
> > [    1.275000] 9f00: c0603f70 ef163e00 c040e334 60000113 c05b5000
> > a0000113 c05b5054 c05b5050
> > [    1.280000] 9f20: c05df580 c054ad68 c0839c96 c04247b4 00000093
> > c0035158 c05b5054 c05a2a20
> > [    1.290000] 9f40: c050ae2c c054a438 00000006 00000006 00000000
> > c05a2e14 00000006 c059575c
> > [    1.300000] 9f60: c05df580 00000093 c0595768 c0571510 00000000
> > c0571c48 00000006 00000006
> > [    1.305000] 9f80: c0571510 c003df68 00000000 c0403544 00000000
> > 00000000 00000000 00000000
> > [    1.315000] 9fa0: 00000000 c040354c 00000000 c000e738 00000000
> > 00000000 00000000 00000000
> > [    1.320000] 9fc0: 00000000 00000000 00000000 00000000 00000000
> > 00000000 00000000 00000000
> > [    1.330000] 9fe0: 00000000 00000000 00000000 00000000 00000013
> > 00000000 be73efa4 ffffbffd
> > [    1.340000] [<c0319400>] (clk_get_rate+0x18/0x5c) from [<c0308488>]
> > (dw_mci_exynos_setup_clock+0x14/0x2c)
> > [    1.350000] [<c0308488>] (dw_mci_exynos_setup_clock+0x14/0x2c) from
> > [<c030592c>] (dw_mci_probe+0x15c/0xca4)
> > [    1.360000] [<c030592c>] (dw_mci_probe+0x15c/0xca4) from
> > [<c0269448>] (platform_drv_probe+0x18/0x48)
> > [    1.365000] [<c0269448>] (platform_drv_probe+0x18/0x48) from
> > [<c0268088>] (driver_probe_device+0x100/0x218)
> > [    1.375000] [<c0268088>] (driver_probe_device+0x100/0x218) from
> > [<c026822c>] (__driver_attach+0x8c/0x90)
> > [    1.385000] [<c026822c>] (__driver_attach+0x8c/0x90) from
> > [<c02668a8>] (bus_for_each_dev+0x54/0x88)
> > [    1.395000] [<c02668a8>] (bus_for_each_dev+0x54/0x88) from
> > [<c0267864>] (bus_add_driver+0xd4/0x1d0)
> > [    1.405000] [<c0267864>] (bus_add_driver+0xd4/0x1d0) from
> > [<c026884c>] (driver_register+0x78/0xf4)
> > [    1.415000] [<c026884c>] (driver_register+0x78/0xf4) from
> > [<c00088dc>] (do_one_initcall+0xec/0x148)
> > [    1.420000] [<c00088dc>] (do_one_initcall+0xec/0x148) from
> > [<c0571c48>] (kernel_init_freeable+0xfc/0x1c8)
> > [    1.430000] [<c0571c48>] (kernel_init_freeable+0xfc/0x1c8) from
> > [<c040354c>] (kernel_init+0x8/0x110)
> > [    1.440000] [<c040354c>] (kernel_init+0x8/0x110) from [<c000e738>]
> > (ret_from_fork+0x14/0x3c)
> > [    1.450000] Code: ebfffd18 e3540000 01a05004 0a000008 (e594302c)
> 
> 
> Looks like a clock issue on 4412? I only have 5250 that I boot test
> on, no EXYNOS4 coverage at all (I had an Odroid-X but it wasn't useful
> due to the very old u-boot it came with so I gave it away).
> 
> Tomasz, is this something you can reproduce on 4210/4412?

Thank you for detect.
Clock adaptation has been added for upper host including EXYNOS 5250 
since c6d9d(mmc: dw_mmc: exynos: adjust the clock rate with speed mode)
It should have been considered for all EXYNOS.
I could send a fix.

Thanks,
Seungwon

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: linux 3.13-rc1 make dw_mmc-exynos more worse
  2013-11-25  8:33   ` Seungwon Jeon
@ 2013-11-25 12:42     ` randy
  0 siblings, 0 replies; 10+ messages in thread
From: randy @ 2013-11-25 12:42 UTC (permalink / raw)
  To: linux-samsung-soc; +Cc: Seungwon Jeon, olof, devicetree, jh80.chung, kgene.kim

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

于 2013年11月25日 16:33, Seungwon Jeon 写道:
> On Mon, November 25, 2013, Olof Johansson wrote:
>> Hi,
>> 
>> On Sun, Nov 24, 2013 at 4:07 AM, randy <lxr1234@hotmail.com> 
>> wrote:
>>> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
>>> 
>>> After pull the merge of 3.13-rc1, the dw_mmc-exynos will make 
>>> the boot stock.In 3.13, it is just stocked udev in 3.13 and 
>>> makse udev timeout but kernel report the emmc device is found.
>>> 
>>> And in the 
>>> Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt I saw 
>>> that it is need to define which gpio ports that a emmc slot 
>>> use, but when I watched others dts, they use pinctrl, which is 
>>> correct? Here is the log and dts
>> 
>> [..]
>> 
>>> =======================log begin =============================
>> [..]
>>> [    0.000000] CPU EXYNOS4412 (id 0xe4412011)
>> 
>> [..]
>> 
>>> [    1.095000] mmc0: no vmmc regulator found [    1.130000] 
>>> mmc0: SDHCI controller on samsung-hsmmc [12530000.sdhci] using 
>>> ADMA [    1.130000] Synopsys Designware Multimedia Card 
>>> Interface Driver [    1.130000] Unable to handle kernel NULL 
>>> pointer dereference at virtual address 0000002a [    1.130000] 
>>> pgd = c0004000 [    1.130000] [0000002a] *pgd=00000000 [ 
>>> 1.135000] Internal error: Oops: 5 [#1] PREEMPT SMP ARM [ 
>>> 1.140000] Modules linked in: [    1.140000] CPU: 0 PID: 1
>>> Comm: swapper/0 Not tainted 3.13.0-rc1-00008-g584fa45-dirty #3
>>> [ 1.150000] task: ef0a4000 ti: ef0a8000 task.ti: ef0a8000 [ 
>>> 1.155000] PC is at clk_get_rate+0x18/0x5c [    1.160000] LR is 
>>> at clk_prepare_lock+0xc/0xd8 [    1.165000] pc : [<c0319400>] 
>>> lr : [<c0318864>]    psr: a0000113 [    1.165000] sp :
>>> ef0a9e20 ip : ee94eb40  fp : 00000000 [    1.175000] r10:
>>> c0571510  r9 : ef0a8000  r8 : ef227a10 [    1.180000] r7 :
>>> c043544c  r6 : fffffffe  r5 : ee94ead0  r4 : fffffffe [
>>> 1.185000] r3 : ef0a4000  r2 : 00000001  r1 : 000002b9  r0 :
>>> 00000001 [ 1.195000] Flags: NzCv  IRQs on  FIQs on  Mode SVC_32
>>> ISA ARM Segment kernel [    1.200000] Control: 10c5387d
>>> Table: 4000404a  DAC: 00000015 [    1.205000] Process swapper/0
>>> (pid: 1, stack limit = 0xef0a8240) [    1.210000] Stack:
>>> (0xef0a9e20 to 0xef0aa000) [    1.215000] 9e20: c0308474
>>> ee9ea610 ee94ead0 c0308488 c0308474 ee9ea610 00000000 c030592c
>>> [    1.225000] 9e40: ef227a10 00001000 c043544c c020a920
>>> c0838b04 17d78400 ee9ea610 ef227a00 [    1.235000] 9e60:
>>> ef227a10 c05d6b1c 00000000 c05d6b1c c05890b0 ef0a8000 c0571510
>>> c0269448 [ 1.240000] 9e80: c0269430 ef227a10 c061291c c0268088
>>> 00000000 ef227a10 c05d6b1c ef227a44 [    1.250000] 9ea0:
>>> 00000000 c026822c 00000000 c05d6b1c c02681a0 c02668a8 ef005478
>>> ef212740 [    1.255000] 9ec0: c05d6b1c ef2c7900 c05cf438
>>> c0267864 c0511e38 c05d6b1c 00000006 c05d6b1c [    1.265000]
>>> 9ee0: 00000006 c059575c c05df580 c026884c 00000000 c05a2e14
>>> 00000006 c00088dc [    1.275000] 9f00: c0603f70 ef163e00
>>> c040e334 60000113 c05b5000 a0000113 c05b5054 c05b5050 [
>>> 1.280000] 9f20: c05df580 c054ad68 c0839c96 c04247b4 00000093
>>> c0035158 c05b5054 c05a2a20 [    1.290000] 9f40: c050ae2c
>>> c054a438 00000006 00000006 00000000 c05a2e14 00000006 c059575c
>>> [ 1.300000] 9f60: c05df580 00000093 c0595768 c0571510 00000000
>>>  c0571c48 00000006 00000006 [    1.305000] 9f80: c0571510 
>>> c003df68 00000000 c0403544 00000000 00000000 00000000 00000000
>>>  [    1.315000] 9fa0: 00000000 c040354c 00000000 c000e738 
>>> 00000000 00000000 00000000 00000000 [    1.320000] 9fc0: 
>>> 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
>>> 00000000 [    1.330000] 9fe0: 00000000 00000000 00000000 
>>> 00000000 00000013 00000000 be73efa4 ffffbffd [    1.340000] 
>>> [<c0319400>] (clk_get_rate+0x18/0x5c) from [<c0308488>] 
>>> (dw_mci_exynos_setup_clock+0x14/0x2c) [    1.350000] 
>>> [<c0308488>] (dw_mci_exynos_setup_clock+0x14/0x2c) from 
>>> [<c030592c>] (dw_mci_probe+0x15c/0xca4) [    1.360000] 
>>> [<c030592c>] (dw_mci_probe+0x15c/0xca4) from [<c0269448>] 
>>> (platform_drv_probe+0x18/0x48) [    1.365000] [<c0269448>] 
>>> (platform_drv_probe+0x18/0x48) from [<c0268088>] 
>>> (driver_probe_device+0x100/0x218) [    1.375000] [<c0268088>] 
>>> (driver_probe_device+0x100/0x218) from [<c026822c>] 
>>> (__driver_attach+0x8c/0x90) [    1.385000] [<c026822c>] 
>>> (__driver_attach+0x8c/0x90) from [<c02668a8>] 
>>> (bus_for_each_dev+0x54/0x88) [    1.395000] [<c02668a8>] 
>>> (bus_for_each_dev+0x54/0x88) from [<c0267864>] 
>>> (bus_add_driver+0xd4/0x1d0) [    1.405000] [<c0267864>] 
>>> (bus_add_driver+0xd4/0x1d0) from [<c026884c>] 
>>> (driver_register+0x78/0xf4) [    1.415000] [<c026884c>] 
>>> (driver_register+0x78/0xf4) from [<c00088dc>] 
>>> (do_one_initcall+0xec/0x148) [    1.420000] [<c00088dc>] 
>>> (do_one_initcall+0xec/0x148) from [<c0571c48>] 
>>> (kernel_init_freeable+0xfc/0x1c8) [    1.430000] [<c0571c48>] 
>>> (kernel_init_freeable+0xfc/0x1c8) from [<c040354c>] 
>>> (kernel_init+0x8/0x110) [    1.440000] [<c040354c>] 
>>> (kernel_init+0x8/0x110) from [<c000e738>] 
>>> (ret_from_fork+0x14/0x3c) [    1.450000] Code: ebfffd18 
>>> e3540000 01a05004 0a000008 (e594302c)
>> 
>> 
>> Looks like a clock issue on 4412? I only have 5250 that I boot 
>> test on, no EXYNOS4 coverage at all (I had an Odroid-X but it 
>> wasn't useful due to the very old u-boot it came with so I gave 
>> it away).
>> 
>> Tomasz, is this something you can reproduce on 4210/4412?
> 
> Thank you for detect. Clock adaptation has been added for upper 
> host including EXYNOS 5250 since c6d9d(mmc: dw_mmc: exynos: adjust 
> the clock rate with speed mode) It should have been considered for 
> all EXYNOS. I could send a fix.
> 
> Thanks, Seungwon
> 
> -- To unsubscribe from this list: send the line "unsubscribe 
> linux-samsung-soc" in the body of a message to 
> majordomo@vger.kernel.org More majordomo info at 
> http://vger.kernel.org/majordomo-info.html
> 
> 
yes, may c6d9deda64d426a25aafeb179962c9cf3c834e2f cause problem.
Actually, my u-boot is old too(modified from samsung BSP, it is
2010.12), I use CONFIG_ARM_APPENDED_DTB to use dts.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJSk0XRAAoJEPb4VsMIzTzitvAH/0t0JuVTWOOMkRCD3Zph9wMP
HryLvSDgsOUW0nPVsIwyrIAtjiSoAtQgKN9wiMTvrHM2yj3E6Rk0SNT04zdr1kRm
cuVh+MWrWYXWNDVKpnHl/SnzSi/RfFfXrlT69VcVocKH4boZOqqwwHtHiof8kPag
JFwFSLIOoeTRKluGEyAIBsNkz/Zgmbng5boScIe95y58iYw+hBZ4NQQLAo+nyPfa
JPaicc2umjlI1r7Gbu6vabjVjaqyNEd/EibyxqWeZgCGXnFRY230BV09ULn5uIko
n7xiQk6s5wXBWxY4tcFJF8jj8gdbXd1Aad++0v1Jv2cnZp3xGtUJmgz+dNLv4ng=
=0pZ1
-----END PGP SIGNATURE-----

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: linux 3.13-rc1 make dw_mmc-exynos more worse
  2013-11-25  6:18 ` Olof Johansson
  2013-11-25  8:33   ` Seungwon Jeon
@ 2013-11-26  0:41   ` Tomasz Figa
  2013-11-26  1:47     ` randy
  1 sibling, 1 reply; 10+ messages in thread
From: Tomasz Figa @ 2013-11-26  0:41 UTC (permalink / raw)
  To: Olof Johansson
  Cc: randy, linux-samsung-soc@vger.kernel.org, Seungwon Jeon,
	Jaehoon Chung, Kukjin Kim, devicetree@vger.kernel.org,
	Tomasz Figa

On Sunday 24 of November 2013 22:18:46 Olof Johansson wrote:
> Hi,
> 
> On Sun, Nov 24, 2013 at 4:07 AM, randy <lxr1234@hotmail.com> wrote:
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> >
> > After pull the merge of 3.13-rc1, the dw_mmc-exynos will make the boot
> > stock.In 3.13, it is just stocked udev in 3.13 and makse udev timeout
> > but kernel report the emmc device is found.
> >
> > And in the Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt I
> > saw that it is need to define which gpio ports that a emmc slot use,
> > but when I watched others dts, they use pinctrl, which is correct?
> > Here is the log and dts
> 
> [..]
> 
> > =======================log begin =============================
> [..]
> > [    0.000000] CPU EXYNOS4412 (id 0xe4412011)
> 
> [..]
> 
> > [    1.095000] mmc0: no vmmc regulator found
> > [    1.130000] mmc0: SDHCI controller on samsung-hsmmc
> > [12530000.sdhci] using ADMA
> > [    1.130000] Synopsys Designware Multimedia Card Interface Driver
> > [    1.130000] Unable to handle kernel NULL pointer dereference at
> > virtual address 0000002a
> > [    1.130000] pgd = c0004000
> > [    1.130000] [0000002a] *pgd=00000000
> > [    1.135000] Internal error: Oops: 5 [#1] PREEMPT SMP ARM
> > [    1.140000] Modules linked in:
> > [    1.140000] CPU: 0 PID: 1 Comm: swapper/0 Not tainted
> > 3.13.0-rc1-00008-g584fa45-dirty #3
> > [    1.150000] task: ef0a4000 ti: ef0a8000 task.ti: ef0a8000
> > [    1.155000] PC is at clk_get_rate+0x18/0x5c
> > [    1.160000] LR is at clk_prepare_lock+0xc/0xd8
> > [    1.165000] pc : [<c0319400>]    lr : [<c0318864>]    psr: a0000113
> > [    1.165000] sp : ef0a9e20  ip : ee94eb40  fp : 00000000
> > [    1.175000] r10: c0571510  r9 : ef0a8000  r8 : ef227a10
> > [    1.180000] r7 : c043544c  r6 : fffffffe  r5 : ee94ead0  r4 : fffffffe
> > [    1.185000] r3 : ef0a4000  r2 : 00000001  r1 : 000002b9  r0 : 00000001
> > [    1.195000] Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM
> > Segment kernel
> > [    1.200000] Control: 10c5387d  Table: 4000404a  DAC: 00000015
> > [    1.205000] Process swapper/0 (pid: 1, stack limit = 0xef0a8240)
> > [    1.210000] Stack: (0xef0a9e20 to 0xef0aa000)
> > [    1.215000] 9e20: c0308474 ee9ea610 ee94ead0 c0308488 c0308474
> > ee9ea610 00000000 c030592c
> > [    1.225000] 9e40: ef227a10 00001000 c043544c c020a920 c0838b04
> > 17d78400 ee9ea610 ef227a00
> > [    1.235000] 9e60: ef227a10 c05d6b1c 00000000 c05d6b1c c05890b0
> > ef0a8000 c0571510 c0269448
> > [    1.240000] 9e80: c0269430 ef227a10 c061291c c0268088 00000000
> > ef227a10 c05d6b1c ef227a44
> > [    1.250000] 9ea0: 00000000 c026822c 00000000 c05d6b1c c02681a0
> > c02668a8 ef005478 ef212740
> > [    1.255000] 9ec0: c05d6b1c ef2c7900 c05cf438 c0267864 c0511e38
> > c05d6b1c 00000006 c05d6b1c
> > [    1.265000] 9ee0: 00000006 c059575c c05df580 c026884c 00000000
> > c05a2e14 00000006 c00088dc
> > [    1.275000] 9f00: c0603f70 ef163e00 c040e334 60000113 c05b5000
> > a0000113 c05b5054 c05b5050
> > [    1.280000] 9f20: c05df580 c054ad68 c0839c96 c04247b4 00000093
> > c0035158 c05b5054 c05a2a20
> > [    1.290000] 9f40: c050ae2c c054a438 00000006 00000006 00000000
> > c05a2e14 00000006 c059575c
> > [    1.300000] 9f60: c05df580 00000093 c0595768 c0571510 00000000
> > c0571c48 00000006 00000006
> > [    1.305000] 9f80: c0571510 c003df68 00000000 c0403544 00000000
> > 00000000 00000000 00000000
> > [    1.315000] 9fa0: 00000000 c040354c 00000000 c000e738 00000000
> > 00000000 00000000 00000000
> > [    1.320000] 9fc0: 00000000 00000000 00000000 00000000 00000000
> > 00000000 00000000 00000000
> > [    1.330000] 9fe0: 00000000 00000000 00000000 00000000 00000013
> > 00000000 be73efa4 ffffbffd
> > [    1.340000] [<c0319400>] (clk_get_rate+0x18/0x5c) from [<c0308488>]
> > (dw_mci_exynos_setup_clock+0x14/0x2c)
> > [    1.350000] [<c0308488>] (dw_mci_exynos_setup_clock+0x14/0x2c) from
> > [<c030592c>] (dw_mci_probe+0x15c/0xca4)
> > [    1.360000] [<c030592c>] (dw_mci_probe+0x15c/0xca4) from
> > [<c0269448>] (platform_drv_probe+0x18/0x48)
> > [    1.365000] [<c0269448>] (platform_drv_probe+0x18/0x48) from
> > [<c0268088>] (driver_probe_device+0x100/0x218)
> > [    1.375000] [<c0268088>] (driver_probe_device+0x100/0x218) from
> > [<c026822c>] (__driver_attach+0x8c/0x90)
> > [    1.385000] [<c026822c>] (__driver_attach+0x8c/0x90) from
> > [<c02668a8>] (bus_for_each_dev+0x54/0x88)
> > [    1.395000] [<c02668a8>] (bus_for_each_dev+0x54/0x88) from
> > [<c0267864>] (bus_add_driver+0xd4/0x1d0)
> > [    1.405000] [<c0267864>] (bus_add_driver+0xd4/0x1d0) from
> > [<c026884c>] (driver_register+0x78/0xf4)
> > [    1.415000] [<c026884c>] (driver_register+0x78/0xf4) from
> > [<c00088dc>] (do_one_initcall+0xec/0x148)
> > [    1.420000] [<c00088dc>] (do_one_initcall+0xec/0x148) from
> > [<c0571c48>] (kernel_init_freeable+0xfc/0x1c8)
> > [    1.430000] [<c0571c48>] (kernel_init_freeable+0xfc/0x1c8) from
> > [<c040354c>] (kernel_init+0x8/0x110)
> > [    1.440000] [<c040354c>] (kernel_init+0x8/0x110) from [<c000e738>]
> > (ret_from_fork+0x14/0x3c)
> > [    1.450000] Code: ebfffd18 e3540000 01a05004 0a000008 (e594302c)
> 
> 
> Looks like a clock issue on 4412? I only have 5250 that I boot test
> on, no EXYNOS4 coverage at all (I had an Odroid-X but it wasn't useful
> due to the very old u-boot it came with so I gave it away).
> 
> Tomasz, is this something you can reproduce on 4210/4412?

Nope. All of our boards (exynos4210-trats, exynos4412-trats2) are
configured to use sdhci-s3c for all MMC slots[1], as at the time they got
submitted to mainline, this driver was considered more reliable than
dw-mmc. Not sure about today, though.

[1] On Exynos4 there is one dw-mmc block and four sdhci-s3c blocks,
while there are just four physical busses. Using pin control you can
configure any of the four sets of pins to work either using its dedicated
sdhci-s3c or the only one dw-mmc.

Best regards,
Tomasz

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: linux 3.13-rc1 make dw_mmc-exynos more worse
  2013-11-26  0:41   ` Tomasz Figa
@ 2013-11-26  1:47     ` randy
  2013-11-26  4:32       ` Jaehoon Chung
  0 siblings, 1 reply; 10+ messages in thread
From: randy @ 2013-11-26  1:47 UTC (permalink / raw)
  To: Tomasz Figa, linux-samsung-soc, Seungwon Jeon, jh80.chung, olof

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

于 2013年11月26日 08:41, Tomasz Figa 写道:
> On Sunday 24 of November 2013 22:18:46 Olof Johansson wrote:
>> Hi,
>> 
>> On Sun, Nov 24, 2013 at 4:07 AM, randy <lxr1234@hotmail.com>
>> wrote:
>>> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
>>> 
>>> After pull the merge of 3.13-rc1, the dw_mmc-exynos will make
>>> the boot stock.In 3.13, it is just stocked udev in 3.13 and
>>> makse udev timeout but kernel report the emmc device is found.
>>> 
>>> And in the
>>> Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt I saw
>>> that it is need to define which gpio ports that a emmc slot
>>> use, but when I watched others dts, they use pinctrl, which is
>>> correct? Here is the log and dts
>> 
>> [..]
>> 
>>> =======================log begin =============================
>> [..]
>>> [    0.000000] CPU EXYNOS4412 (id 0xe4412011)
>> 
>> [..]
>> 
>>> [    1.095000] mmc0: no vmmc regulator found [    1.130000]
>>> mmc0: SDHCI controller on samsung-hsmmc [12530000.sdhci] using
>>> ADMA [    1.130000] Synopsys Designware Multimedia Card
>>> Interface Driver [    1.130000] Unable to handle kernel NULL
>>> pointer dereference at virtual address 0000002a [    1.130000]
>>> pgd = c0004000 [    1.130000] [0000002a] *pgd=00000000 [
>>> 1.135000] Internal error: Oops: 5 [#1] PREEMPT SMP ARM [
>>> 1.140000] Modules linked in: [    1.140000] CPU: 0 PID: 1 Comm:
>>> swapper/0 Not tainted 3.13.0-rc1-00008-g584fa45-dirty #3 [
>>> 1.150000] task: ef0a4000 ti: ef0a8000 task.ti: ef0a8000 [
>>> 1.155000] PC is at clk_get_rate+0x18/0x5c [    1.160000] LR is
>>> at clk_prepare_lock+0xc/0xd8 [    1.165000] pc : [<c0319400>]
>>> lr : [<c0318864>]    psr: a0000113 [    1.165000] sp : ef0a9e20
>>> ip : ee94eb40  fp : 00000000 [    1.175000] r10: c0571510  r9 :
>>> ef0a8000  r8 : ef227a10 [    1.180000] r7 : c043544c  r6 :
>>> fffffffe  r5 : ee94ead0  r4 : fffffffe [    1.185000] r3 :
>>> ef0a4000  r2 : 00000001  r1 : 000002b9  r0 : 00000001 [
>>> 1.195000] Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM 
>>> Segment kernel [    1.200000] Control: 10c5387d  Table:
>>> 4000404a  DAC: 00000015 [    1.205000] Process swapper/0 (pid:
>>> 1, stack limit = 0xef0a8240) [    1.210000] Stack: (0xef0a9e20
>>> to 0xef0aa000) [    1.215000] 9e20: c0308474 ee9ea610 ee94ead0
>>> c0308488 c0308474 ee9ea610 00000000 c030592c [    1.225000]
>>> 9e40: ef227a10 00001000 c043544c c020a920 c0838b04 17d78400
>>> ee9ea610 ef227a00 [    1.235000] 9e60: ef227a10 c05d6b1c
>>> 00000000 c05d6b1c c05890b0 ef0a8000 c0571510 c0269448 [
>>> 1.240000] 9e80: c0269430 ef227a10 c061291c c0268088 00000000 
>>> ef227a10 c05d6b1c ef227a44 [    1.250000] 9ea0: 00000000
>>> c026822c 00000000 c05d6b1c c02681a0 c02668a8 ef005478 ef212740 
>>> [    1.255000] 9ec0: c05d6b1c ef2c7900 c05cf438 c0267864
>>> c0511e38 c05d6b1c 00000006 c05d6b1c [    1.265000] 9ee0:
>>> 00000006 c059575c c05df580 c026884c 00000000 c05a2e14 00000006
>>> c00088dc [    1.275000] 9f00: c0603f70 ef163e00 c040e334
>>> 60000113 c05b5000 a0000113 c05b5054 c05b5050 [    1.280000]
>>> 9f20: c05df580 c054ad68 c0839c96 c04247b4 00000093 c0035158
>>> c05b5054 c05a2a20 [    1.290000] 9f40: c050ae2c c054a438
>>> 00000006 00000006 00000000 c05a2e14 00000006 c059575c [
>>> 1.300000] 9f60: c05df580 00000093 c0595768 c0571510 00000000 
>>> c0571c48 00000006 00000006 [    1.305000] 9f80: c0571510
>>> c003df68 00000000 c0403544 00000000 00000000 00000000 00000000 
>>> [    1.315000] 9fa0: 00000000 c040354c 00000000 c000e738
>>> 00000000 00000000 00000000 00000000 [    1.320000] 9fc0:
>>> 00000000 00000000 00000000 00000000 00000000 00000000 00000000
>>> 00000000 [    1.330000] 9fe0: 00000000 00000000 00000000
>>> 00000000 00000013 00000000 be73efa4 ffffbffd [    1.340000]
>>> [<c0319400>] (clk_get_rate+0x18/0x5c) from [<c0308488>] 
>>> (dw_mci_exynos_setup_clock+0x14/0x2c) [    1.350000]
>>> [<c0308488>] (dw_mci_exynos_setup_clock+0x14/0x2c) from 
>>> [<c030592c>] (dw_mci_probe+0x15c/0xca4) [    1.360000]
>>> [<c030592c>] (dw_mci_probe+0x15c/0xca4) from [<c0269448>]
>>> (platform_drv_probe+0x18/0x48) [    1.365000] [<c0269448>]
>>> (platform_drv_probe+0x18/0x48) from [<c0268088>]
>>> (driver_probe_device+0x100/0x218) [    1.375000] [<c0268088>]
>>> (driver_probe_device+0x100/0x218) from [<c026822c>]
>>> (__driver_attach+0x8c/0x90) [    1.385000] [<c026822c>]
>>> (__driver_attach+0x8c/0x90) from [<c02668a8>]
>>> (bus_for_each_dev+0x54/0x88) [    1.395000] [<c02668a8>]
>>> (bus_for_each_dev+0x54/0x88) from [<c0267864>]
>>> (bus_add_driver+0xd4/0x1d0) [    1.405000] [<c0267864>]
>>> (bus_add_driver+0xd4/0x1d0) from [<c026884c>]
>>> (driver_register+0x78/0xf4) [    1.415000] [<c026884c>]
>>> (driver_register+0x78/0xf4) from [<c00088dc>]
>>> (do_one_initcall+0xec/0x148) [    1.420000] [<c00088dc>]
>>> (do_one_initcall+0xec/0x148) from [<c0571c48>]
>>> (kernel_init_freeable+0xfc/0x1c8) [    1.430000] [<c0571c48>]
>>> (kernel_init_freeable+0xfc/0x1c8) from [<c040354c>]
>>> (kernel_init+0x8/0x110) [    1.440000] [<c040354c>]
>>> (kernel_init+0x8/0x110) from [<c000e738>] 
>>> (ret_from_fork+0x14/0x3c) [    1.450000] Code: ebfffd18
>>> e3540000 01a05004 0a000008 (e594302c)
>> 
>> 
>> Looks like a clock issue on 4412? I only have 5250 that I boot
>> test on, no EXYNOS4 coverage at all (I had an Odroid-X but it
>> wasn't useful due to the very old u-boot it came with so I gave
>> it away).
>> 
>> Tomasz, is this something you can reproduce on 4210/4412?
> 
> Nope. All of our boards (exynos4210-trats, exynos4412-trats2) are 
> configured to use sdhci-s3c for all MMC slots[1], as at the time
> they got submitted to mainline, this driver was considered more
> reliable than dw-mmc. Not sure about today, though.
> 
> [1] On Exynos4 there is one dw-mmc block and four sdhci-s3c
> blocks, while there are just four physical busses. Using pin
> control you can configure any of the four sets of pins to work
> either using its dedicated sdhci-s3c or the only one dw-mmc.
> 
> Best regards, Tomasz
> 
> -- To unsubscribe from this list: send the line "unsubscribe
> linux-samsung-soc" in the body of a message to
> majordomo@vger.kernel.org More majordomo info at
> http://vger.kernel.org/majordomo-info.html
> 
> 
Well I don't think it can work this time, maybe my dts is wrong.
At this time neither emmc nor usb can work.
==========================log begin===============================
[    1.035000] s3c-rtc 10070000.rtc: rtc disabled, re-enabling
[    1.040000] s3c-rtc 10070000.rtc: rtc core: registered s3c as rtc0
[    1.050000] device-mapper: ioctl: 4.27.0-ioctl (2013-10-30)
initialised: dm-devel@redhat.com
[    1.055000] sdhci: Secure Digital Host Controller Interface driver
[    1.060000] sdhci: Copyright(c) Pierre Ossman
[    1.065000] s3c-sdhci 12530000.sdhci: clock source 2: mmc_busclk.2
(100000000 Hz)
[    1.075000] s3c-sdhci 12530000.sdhci: dummy supplies not allowed
[    1.080000] mmc0: no vqmmc regulator found
[    1.085000] s3c-sdhci 12530000.sdhci: dummy supplies not allowed
[    1.090000] mmc0: no vmmc regulator found
[    1.125000] mmc0: SDHCI controller on samsung-hsmmc
[12530000.sdhci] using ADMA
[    1.125000] s3c-sdhci 12550000.sdhci: failed to get io clock
[    1.125000] s3c-sdhci: probe of 12550000.sdhci failed with error -2
[    1.125000] Synopsys Designware Multimedia Card Interface Driver
[    1.130000] usbcore: registered new interface driver usbhid
[    1.130000] usbhid: USB HID core driver
[    1.135000] TCP: cubic registered
[    1.145000] NET: Registered protocol family 10
[    1.145000] NET: Registered protocol family 17
[    1.145000] NET: Registered protocol family 15
[    1.150000] Key type dns_resolver registered
[    1.155000] Registering SWP/SWPB emulation handler
[    1.160000] unable to find transceiver of type USB2 PHY
[    1.165000] exynos-ehci 12580000.ehci: no platform data or
transceiver defined
[    1.175000] platform 12580000.ehci: Driver exynos-ehci requests
probe deferral
[    1.175000] mmc0: new high speed SDHC card at address aaaa
[    1.185000] isa bounce pool size: 16 pages
[    1.190000] mmcblk0: mmc0:aaaa SU08G 7.40 GiB
[    1.195000] s3c-rtc 10070000.rtc: setting system clock to
2013-01-01 12:06:09 UTC (1357041969)
[    1.205000] exynos_cpufreq_init: failed to get resource vdd_arm
[    1.205000]  mmcblk0: p1 p2 p3 p4
[    1.215000] unable to find transceiver of type USB2 PHY
[    1.215000] exynos-ehci 12580000.ehci: no platform data or
transceiver defined
[    1.225000] platform 12580000.ehci: Driver exynos-ehci requests
probe deferral

==========================log end=================================
=======================dts==============================================
/*
 * Hardkernel's Exynos4412 based tiny4412 1306 board device tree source
 *
 * Copyright (c) 2013 Tomoya Gitsufuki <ayaka@mail.soulik.info>
 *
 * Device tree source file for Friendyarm tiny4412 1306 board which is
based on
 * Samsung's Exynos4412 SoC.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
*/

/dts-v1/;
#include "exynos4412.dtsi"

/ {
	model = "Friendly Arm Tiny4412 1306 board based on Exynos4412";
	compatible = "friendlyarm,tiny4412-1306", "samsung,exynos4412";

	memory {
		reg = <0x40000000 0x40000000>;
	};

	chosen {
		bootargs ="root=/dev/mmcblk0p1 rootfstype=ext4 rw
console=ttySAC0,115200 init=/sbin/init";
	};

	leds {
		compatible = "gpio-leds";
		led1 {
			label = "led1:heart";
			gpios = <&gpm4 0 1>;
			default-state = "on";
			linux,default-trigger = "heartbeat";
		};
		led2 {
			label = "led2:mmc0";
			gpios = <&gpm4 1 1>;
			default-state = "on";
			linux,default-trigger = "mmc0";
		};

	};

	regulators {
		compatible = "simple-bus";
		#address-cells = <1>;

		vemmc_reg: regulator-0 {
			compatible = "regulator-fixed";
			regulator-name = "VMEM_VDD_2.8V";
			regulator-min-microvolt = <2800000>;
			regulator-max-microvolt = <2800000>;
			gpio = <&gpk0 2 0>;
			enable-active-high;
		};

	};

/*
	mshc@12550000 {
		#address-cells = <1>;
		#size-cells = <0>;
		pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
		pinctrl-names = "default";
		status = "okay";

		vmmc-supply = <&vemmc_reg>;
		clocks = <&clock 301>, <&clock 149>;
		clocks-name = "dwmci", "sclk_dwmci";
		clock-frequency = <400000000>;

		num-slots = <1>;
		supports-highspeed;
		broken-cd;
		fifo-depth = <0x80>;
		card-detect-delay = <200>;
		samsung,dw-mshc-sdr-timing = <2 3>;
		samsung,dw-mshc-ddr-timing = <1 2>;

		slot@0 {
			reg = <0>;
			bus-width = <8>;
				
		};
	};
*/

	rtc@10070000 {
		status = "okay";
	};

	sdhci@12530000 {
		bus-width = <4>;
		pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
		pinctrl-names = "default";
		status = "okay";
	};

	sdhci@1254000 {
		bus-width = <4>;
		pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4 &sd3_cd>;
		pinctrl-names = "default";
		status = "okay";
	};

	sdhci@12550000 {
		compatible = "samsung,exynos4210-sdhci";
		#address-cells = <1>;
		#size-cells = <0>;
		reg = <0x12550000 0x1000>;
		interrupts = <0 77 0>;
		non-removable;
		pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
		pinctrl-names = "default";
		status = "okay";

		bus-width = <8>;
		vmmc-supply = <&vemmc_reg>;
		clocks = <&clock 301>, <&clock 149>;
		clocks-name = "dwmci", "sclk_dwmci";
		clock-frequency = <400000000>;

	};

	/* the usb phy of hsic0, hsic1 and otg are in the same place */
	usb_phy: otg@125B0000 {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "samsung,exynos4210-usbphy";
		reg = <0x125B0000 0x100>;
		ranges;

		clocks = <&clock 2>, <&clock 305>;
		clock-names = "xusbxti", "otg";
		usbphy-sys {
			/* USB device and host PHY_CONTROL registers */
			reg = <0x10020704 0x8>;
		};
	};

	ehci@12580000 {
		usb-phy = <&usb_phy>;
		status = "okay";
	};
	
	ohci@12590000 {
		status = "okay";
	};


	codec@13400000 {
		samsung,mfc-r = <0x43000000 0x800000>;
		samsung,mfc-l = <0x51000000 0x800000>;
		status = "okay";
	};

	serial@13800000 {
		status = "okay";
	};

	serial@13810000 {
		status = "okay";
	};

	serial@13820000 {
		status = "okay";
	};

	serial@13830000 {
		status = "okay";
	};

	fixed-rate-clocks {
		xxti {
			compatible = "samsung,clock-xxti";
			clock-frequency = <0>;
		};

		xusbxti {
			compatible = "samsung,clock-xusbxti";
			clock-frequency = <24000000>;
		};
	};

	i2c@13860000 {
		status = "okay";
		samsung,i2c-sda-delay = <100>;
		samsung,i2c-max-bus-freq = <200000>;

		wm8960@10 {
			compatible = "wlf,wm8960";
			reg = <0x10>;
		};
	};
};
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJSk/2uAAoJEPb4VsMIzTzirLAH/0H3n2a8s8qvizr+YOOCnLvr
iiK21Mh/Gi9wLgvpU16oEDiOP5p2da7TUKI7AnIGY48SnBrB+E0C2UVHVn7L/4aX
cputqr5mEswV3RUOaEg7s1HHbXp249LJ4Z8IByxesO4lVCRGVTcz+i121uDGKrH4
OoybBl/YuDACo3D1AZShNq+m8lLIAyEUT3UOEPJdxsa1V/Zwf4MdQbY1YMC6Twqs
kmLPCgKlS7wKeFvpYG/cmWZEG/fFlBiCey3mmJDy6DK+YC6Mq1WEFJEU4zWec3kI
cJwyA20U+GC5cz7CZfDjkLhMinXnOhz8oP9RGCKlKrz22DlEJd4/mXnHwEK1c1o=
=GHoW
-----END PGP SIGNATURE-----

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: linux 3.13-rc1 make dw_mmc-exynos more worse
  2013-11-26  1:47     ` randy
@ 2013-11-26  4:32       ` Jaehoon Chung
  2013-11-26  6:00         ` randy
  0 siblings, 1 reply; 10+ messages in thread
From: Jaehoon Chung @ 2013-11-26  4:32 UTC (permalink / raw)
  To: randy, Tomasz Figa, linux-samsung-soc, Seungwon Jeon, olof,
	kgene.kim, devicetree, t.figa

Hi, Randy,

It seems a problem that controller didn't find the clock source.
Also you can see the below message. Did you check the clock source?

> [    1.125000] s3c-sdhci 12550000.sdhci: failed to get io clock

Actually, need to prevent the "null pointer dereference" for clock in dw-mmc.c

And If dw-mmc controller can be used, recommend to use it.
dw-mmc can use DDR mode, but sdhci can't.

Best Regards,
Jaehoon Chung

On 11/26/2013 10:47 AM, randy wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> 于 2013年11月26日 08:41, Tomasz Figa 写道:
>> On Sunday 24 of November 2013 22:18:46 Olof Johansson wrote:
>>> Hi,
>>>
>>> On Sun, Nov 24, 2013 at 4:07 AM, randy <lxr1234@hotmail.com>
>>> wrote:
>>>> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
>>>>
>>>> After pull the merge of 3.13-rc1, the dw_mmc-exynos will make
>>>> the boot stock.In 3.13, it is just stocked udev in 3.13 and
>>>> makse udev timeout but kernel report the emmc device is found.
>>>>
>>>> And in the
>>>> Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt I saw
>>>> that it is need to define which gpio ports that a emmc slot
>>>> use, but when I watched others dts, they use pinctrl, which is
>>>> correct? Here is the log and dts
>>>
>>> [..]
>>>
>>>> =======================log begin =============================
>>> [..]
>>>> [    0.000000] CPU EXYNOS4412 (id 0xe4412011)
>>>
>>> [..]
>>>
>>>> [    1.095000] mmc0: no vmmc regulator found [    1.130000]
>>>> mmc0: SDHCI controller on samsung-hsmmc [12530000.sdhci] using
>>>> ADMA [    1.130000] Synopsys Designware Multimedia Card
>>>> Interface Driver [    1.130000] Unable to handle kernel NULL
>>>> pointer dereference at virtual address 0000002a [    1.130000]
>>>> pgd = c0004000 [    1.130000] [0000002a] *pgd=00000000 [
>>>> 1.135000] Internal error: Oops: 5 [#1] PREEMPT SMP ARM [
>>>> 1.140000] Modules linked in: [    1.140000] CPU: 0 PID: 1 Comm:
>>>> swapper/0 Not tainted 3.13.0-rc1-00008-g584fa45-dirty #3 [
>>>> 1.150000] task: ef0a4000 ti: ef0a8000 task.ti: ef0a8000 [
>>>> 1.155000] PC is at clk_get_rate+0x18/0x5c [    1.160000] LR is
>>>> at clk_prepare_lock+0xc/0xd8 [    1.165000] pc : [<c0319400>]
>>>> lr : [<c0318864>]    psr: a0000113 [    1.165000] sp : ef0a9e20
>>>> ip : ee94eb40  fp : 00000000 [    1.175000] r10: c0571510  r9 :
>>>> ef0a8000  r8 : ef227a10 [    1.180000] r7 : c043544c  r6 :
>>>> fffffffe  r5 : ee94ead0  r4 : fffffffe [    1.185000] r3 :
>>>> ef0a4000  r2 : 00000001  r1 : 000002b9  r0 : 00000001 [
>>>> 1.195000] Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM 
>>>> Segment kernel [    1.200000] Control: 10c5387d  Table:
>>>> 4000404a  DAC: 00000015 [    1.205000] Process swapper/0 (pid:
>>>> 1, stack limit = 0xef0a8240) [    1.210000] Stack: (0xef0a9e20
>>>> to 0xef0aa000) [    1.215000] 9e20: c0308474 ee9ea610 ee94ead0
>>>> c0308488 c0308474 ee9ea610 00000000 c030592c [    1.225000]
>>>> 9e40: ef227a10 00001000 c043544c c020a920 c0838b04 17d78400
>>>> ee9ea610 ef227a00 [    1.235000] 9e60: ef227a10 c05d6b1c
>>>> 00000000 c05d6b1c c05890b0 ef0a8000 c0571510 c0269448 [
>>>> 1.240000] 9e80: c0269430 ef227a10 c061291c c0268088 00000000 
>>>> ef227a10 c05d6b1c ef227a44 [    1.250000] 9ea0: 00000000
>>>> c026822c 00000000 c05d6b1c c02681a0 c02668a8 ef005478 ef212740 
>>>> [    1.255000] 9ec0: c05d6b1c ef2c7900 c05cf438 c0267864
>>>> c0511e38 c05d6b1c 00000006 c05d6b1c [    1.265000] 9ee0:
>>>> 00000006 c059575c c05df580 c026884c 00000000 c05a2e14 00000006
>>>> c00088dc [    1.275000] 9f00: c0603f70 ef163e00 c040e334
>>>> 60000113 c05b5000 a0000113 c05b5054 c05b5050 [    1.280000]
>>>> 9f20: c05df580 c054ad68 c0839c96 c04247b4 00000093 c0035158
>>>> c05b5054 c05a2a20 [    1.290000] 9f40: c050ae2c c054a438
>>>> 00000006 00000006 00000000 c05a2e14 00000006 c059575c [
>>>> 1.300000] 9f60: c05df580 00000093 c0595768 c0571510 00000000 
>>>> c0571c48 00000006 00000006 [    1.305000] 9f80: c0571510
>>>> c003df68 00000000 c0403544 00000000 00000000 00000000 00000000 
>>>> [    1.315000] 9fa0: 00000000 c040354c 00000000 c000e738
>>>> 00000000 00000000 00000000 00000000 [    1.320000] 9fc0:
>>>> 00000000 00000000 00000000 00000000 00000000 00000000 00000000
>>>> 00000000 [    1.330000] 9fe0: 00000000 00000000 00000000
>>>> 00000000 00000013 00000000 be73efa4 ffffbffd [    1.340000]
>>>> [<c0319400>] (clk_get_rate+0x18/0x5c) from [<c0308488>] 
>>>> (dw_mci_exynos_setup_clock+0x14/0x2c) [    1.350000]
>>>> [<c0308488>] (dw_mci_exynos_setup_clock+0x14/0x2c) from 
>>>> [<c030592c>] (dw_mci_probe+0x15c/0xca4) [    1.360000]
>>>> [<c030592c>] (dw_mci_probe+0x15c/0xca4) from [<c0269448>]
>>>> (platform_drv_probe+0x18/0x48) [    1.365000] [<c0269448>]
>>>> (platform_drv_probe+0x18/0x48) from [<c0268088>]
>>>> (driver_probe_device+0x100/0x218) [    1.375000] [<c0268088>]
>>>> (driver_probe_device+0x100/0x218) from [<c026822c>]
>>>> (__driver_attach+0x8c/0x90) [    1.385000] [<c026822c>]
>>>> (__driver_attach+0x8c/0x90) from [<c02668a8>]
>>>> (bus_for_each_dev+0x54/0x88) [    1.395000] [<c02668a8>]
>>>> (bus_for_each_dev+0x54/0x88) from [<c0267864>]
>>>> (bus_add_driver+0xd4/0x1d0) [    1.405000] [<c0267864>]
>>>> (bus_add_driver+0xd4/0x1d0) from [<c026884c>]
>>>> (driver_register+0x78/0xf4) [    1.415000] [<c026884c>]
>>>> (driver_register+0x78/0xf4) from [<c00088dc>]
>>>> (do_one_initcall+0xec/0x148) [    1.420000] [<c00088dc>]
>>>> (do_one_initcall+0xec/0x148) from [<c0571c48>]
>>>> (kernel_init_freeable+0xfc/0x1c8) [    1.430000] [<c0571c48>]
>>>> (kernel_init_freeable+0xfc/0x1c8) from [<c040354c>]
>>>> (kernel_init+0x8/0x110) [    1.440000] [<c040354c>]
>>>> (kernel_init+0x8/0x110) from [<c000e738>] 
>>>> (ret_from_fork+0x14/0x3c) [    1.450000] Code: ebfffd18
>>>> e3540000 01a05004 0a000008 (e594302c)
>>>
>>>
>>> Looks like a clock issue on 4412? I only have 5250 that I boot
>>> test on, no EXYNOS4 coverage at all (I had an Odroid-X but it
>>> wasn't useful due to the very old u-boot it came with so I gave
>>> it away).
>>>
>>> Tomasz, is this something you can reproduce on 4210/4412?
>>
>> Nope. All of our boards (exynos4210-trats, exynos4412-trats2) are 
>> configured to use sdhci-s3c for all MMC slots[1], as at the time
>> they got submitted to mainline, this driver was considered more
>> reliable than dw-mmc. Not sure about today, though.
>>
>> [1] On Exynos4 there is one dw-mmc block and four sdhci-s3c
>> blocks, while there are just four physical busses. Using pin
>> control you can configure any of the four sets of pins to work
>> either using its dedicated sdhci-s3c or the only one dw-mmc.
>>
>> Best regards, Tomasz
>>
>> -- To unsubscribe from this list: send the line "unsubscribe
>> linux-samsung-soc" in the body of a message to
>> majordomo@vger.kernel.org More majordomo info at
>> http://vger.kernel.org/majordomo-info.html
>>
>>
> Well I don't think it can work this time, maybe my dts is wrong.
> At this time neither emmc nor usb can work.
> ==========================log begin===============================
> [    1.035000] s3c-rtc 10070000.rtc: rtc disabled, re-enabling
> [    1.040000] s3c-rtc 10070000.rtc: rtc core: registered s3c as rtc0
> [    1.050000] device-mapper: ioctl: 4.27.0-ioctl (2013-10-30)
> initialised: dm-devel@redhat.com
> [    1.055000] sdhci: Secure Digital Host Controller Interface driver
> [    1.060000] sdhci: Copyright(c) Pierre Ossman
> [    1.065000] s3c-sdhci 12530000.sdhci: clock source 2: mmc_busclk.2
> (100000000 Hz)
> [    1.075000] s3c-sdhci 12530000.sdhci: dummy supplies not allowed
> [    1.080000] mmc0: no vqmmc regulator found
> [    1.085000] s3c-sdhci 12530000.sdhci: dummy supplies not allowed
> [    1.090000] mmc0: no vmmc regulator found
> [    1.125000] mmc0: SDHCI controller on samsung-hsmmc
> [12530000.sdhci] using ADMA
> [    1.125000] s3c-sdhci 12550000.sdhci: failed to get io clock
> [    1.125000] s3c-sdhci: probe of 12550000.sdhci failed with error -2
> [    1.125000] Synopsys Designware Multimedia Card Interface Driver
> [    1.130000] usbcore: registered new interface driver usbhid
> [    1.130000] usbhid: USB HID core driver
> [    1.135000] TCP: cubic registered
> [    1.145000] NET: Registered protocol family 10
> [    1.145000] NET: Registered protocol family 17
> [    1.145000] NET: Registered protocol family 15
> [    1.150000] Key type dns_resolver registered
> [    1.155000] Registering SWP/SWPB emulation handler
> [    1.160000] unable to find transceiver of type USB2 PHY
> [    1.165000] exynos-ehci 12580000.ehci: no platform data or
> transceiver defined
> [    1.175000] platform 12580000.ehci: Driver exynos-ehci requests
> probe deferral
> [    1.175000] mmc0: new high speed SDHC card at address aaaa
> [    1.185000] isa bounce pool size: 16 pages
> [    1.190000] mmcblk0: mmc0:aaaa SU08G 7.40 GiB
> [    1.195000] s3c-rtc 10070000.rtc: setting system clock to
> 2013-01-01 12:06:09 UTC (1357041969)
> [    1.205000] exynos_cpufreq_init: failed to get resource vdd_arm
> [    1.205000]  mmcblk0: p1 p2 p3 p4
> [    1.215000] unable to find transceiver of type USB2 PHY
> [    1.215000] exynos-ehci 12580000.ehci: no platform data or
> transceiver defined
> [    1.225000] platform 12580000.ehci: Driver exynos-ehci requests
> probe deferral
> 
> ==========================log end=================================
> =======================dts==============================================
> /*
>  * Hardkernel's Exynos4412 based tiny4412 1306 board device tree source
>  *
>  * Copyright (c) 2013 Tomoya Gitsufuki <ayaka@mail.soulik.info>
>  *
>  * Device tree source file for Friendyarm tiny4412 1306 board which is
> based on
>  * Samsung's Exynos4412 SoC.
>  *
>  * This program is free software; you can redistribute it and/or modify
>  * it under the terms of the GNU General Public License version 2 as
>  * published by the Free Software Foundation.
> */
> 
> /dts-v1/;
> #include "exynos4412.dtsi"
> 
> / {
> 	model = "Friendly Arm Tiny4412 1306 board based on Exynos4412";
> 	compatible = "friendlyarm,tiny4412-1306", "samsung,exynos4412";
> 
> 	memory {
> 		reg = <0x40000000 0x40000000>;
> 	};
> 
> 	chosen {
> 		bootargs ="root=/dev/mmcblk0p1 rootfstype=ext4 rw
> console=ttySAC0,115200 init=/sbin/init";
> 	};
> 
> 	leds {
> 		compatible = "gpio-leds";
> 		led1 {
> 			label = "led1:heart";
> 			gpios = <&gpm4 0 1>;
> 			default-state = "on";
> 			linux,default-trigger = "heartbeat";
> 		};
> 		led2 {
> 			label = "led2:mmc0";
> 			gpios = <&gpm4 1 1>;
> 			default-state = "on";
> 			linux,default-trigger = "mmc0";
> 		};
> 
> 	};
> 
> 	regulators {
> 		compatible = "simple-bus";
> 		#address-cells = <1>;
> 
> 		vemmc_reg: regulator-0 {
> 			compatible = "regulator-fixed";
> 			regulator-name = "VMEM_VDD_2.8V";
> 			regulator-min-microvolt = <2800000>;
> 			regulator-max-microvolt = <2800000>;
> 			gpio = <&gpk0 2 0>;
> 			enable-active-high;
> 		};
> 
> 	};
> 
> /*
> 	mshc@12550000 {
> 		#address-cells = <1>;
> 		#size-cells = <0>;
> 		pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
> 		pinctrl-names = "default";
> 		status = "okay";
> 
> 		vmmc-supply = <&vemmc_reg>;
> 		clocks = <&clock 301>, <&clock 149>;
> 		clocks-name = "dwmci", "sclk_dwmci";
> 		clock-frequency = <400000000>;
> 
> 		num-slots = <1>;
> 		supports-highspeed;
> 		broken-cd;
> 		fifo-depth = <0x80>;
> 		card-detect-delay = <200>;
> 		samsung,dw-mshc-sdr-timing = <2 3>;
> 		samsung,dw-mshc-ddr-timing = <1 2>;
> 
> 		slot@0 {
> 			reg = <0>;
> 			bus-width = <8>;
> 				
> 		};
> 	};
> */
> 
> 	rtc@10070000 {
> 		status = "okay";
> 	};
> 
> 	sdhci@12530000 {
> 		bus-width = <4>;
> 		pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
> 		pinctrl-names = "default";
> 		status = "okay";
> 	};
> 
> 	sdhci@1254000 {
> 		bus-width = <4>;
> 		pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4 &sd3_cd>;
> 		pinctrl-names = "default";
> 		status = "okay";
> 	};
> 
> 	sdhci@12550000 {
> 		compatible = "samsung,exynos4210-sdhci";
> 		#address-cells = <1>;
> 		#size-cells = <0>;
> 		reg = <0x12550000 0x1000>;
> 		interrupts = <0 77 0>;
> 		non-removable;
> 		pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
> 		pinctrl-names = "default";
> 		status = "okay";
> 
> 		bus-width = <8>;
> 		vmmc-supply = <&vemmc_reg>;
> 		clocks = <&clock 301>, <&clock 149>;
> 		clocks-name = "dwmci", "sclk_dwmci";
> 		clock-frequency = <400000000>;
> 
> 	};
> 
> 	/* the usb phy of hsic0, hsic1 and otg are in the same place */
> 	usb_phy: otg@125B0000 {
> 		#address-cells = <1>;
> 		#size-cells = <1>;
> 		compatible = "samsung,exynos4210-usbphy";
> 		reg = <0x125B0000 0x100>;
> 		ranges;
> 
> 		clocks = <&clock 2>, <&clock 305>;
> 		clock-names = "xusbxti", "otg";
> 		usbphy-sys {
> 			/* USB device and host PHY_CONTROL registers */
> 			reg = <0x10020704 0x8>;
> 		};
> 	};
> 
> 	ehci@12580000 {
> 		usb-phy = <&usb_phy>;
> 		status = "okay";
> 	};
> 	
> 	ohci@12590000 {
> 		status = "okay";
> 	};
> 
> 
> 	codec@13400000 {
> 		samsung,mfc-r = <0x43000000 0x800000>;
> 		samsung,mfc-l = <0x51000000 0x800000>;
> 		status = "okay";
> 	};
> 
> 	serial@13800000 {
> 		status = "okay";
> 	};
> 
> 	serial@13810000 {
> 		status = "okay";
> 	};
> 
> 	serial@13820000 {
> 		status = "okay";
> 	};
> 
> 	serial@13830000 {
> 		status = "okay";
> 	};
> 
> 	fixed-rate-clocks {
> 		xxti {
> 			compatible = "samsung,clock-xxti";
> 			clock-frequency = <0>;
> 		};
> 
> 		xusbxti {
> 			compatible = "samsung,clock-xusbxti";
> 			clock-frequency = <24000000>;
> 		};
> 	};
> 
> 	i2c@13860000 {
> 		status = "okay";
> 		samsung,i2c-sda-delay = <100>;
> 		samsung,i2c-max-bus-freq = <200000>;
> 
> 		wm8960@10 {
> 			compatible = "wlf,wm8960";
> 			reg = <0x10>;
> 		};
> 	};
> };
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.12 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
> 
> iQEcBAEBAgAGBQJSk/2uAAoJEPb4VsMIzTzirLAH/0H3n2a8s8qvizr+YOOCnLvr
> iiK21Mh/Gi9wLgvpU16oEDiOP5p2da7TUKI7AnIGY48SnBrB+E0C2UVHVn7L/4aX
> cputqr5mEswV3RUOaEg7s1HHbXp249LJ4Z8IByxesO4lVCRGVTcz+i121uDGKrH4
> OoybBl/YuDACo3D1AZShNq+m8lLIAyEUT3UOEPJdxsa1V/Zwf4MdQbY1YMC6Twqs
> kmLPCgKlS7wKeFvpYG/cmWZEG/fFlBiCey3mmJDy6DK+YC6Mq1WEFJEU4zWec3kI
> cJwyA20U+GC5cz7CZfDjkLhMinXnOhz8oP9RGCKlKrz22DlEJd4/mXnHwEK1c1o=
> =GHoW
> -----END PGP SIGNATURE-----
> 

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: linux 3.13-rc1 make dw_mmc-exynos more worse
  2013-11-26  4:32       ` Jaehoon Chung
@ 2013-11-26  6:00         ` randy
  2013-12-01 12:30           ` [PATCH 1/1] ARM: dts: Add missing clock names for exynos4412 dwmmc node randy
  2013-12-02 12:58           ` linux 3.13-rc1 make dw_mmc-exynos more worse Seungwon Jeon
  0 siblings, 2 replies; 10+ messages in thread
From: randy @ 2013-11-26  6:00 UTC (permalink / raw)
  To: Jaehoon Chung
  Cc: Tomasz Figa, linux-samsung-soc, devicetree, Seungwon Jeon, t.figa,
	olof, kgene.kim

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Thanks Jaehoon,
I have noticed that before it, but in dw_mmc driver, I won't meet this
problem.
As you can seen in dts, I have defined a clock source.
Or the clock source what I choose is not correct?
I don't know how to debug this, I don't know much about it.
Actually, I don't really understand the contain in chapter 7 of datasheet.
I am sorry for that.
Would you like to tell me some more about it?

于 2013年11月26日 12:32, Jaehoon Chung 写道:
> Hi, Randy,
> 
> It seems a problem that controller didn't find the clock source. 
> Also you can see the below message. Did you check the clock 
> source?
> 
>> [    1.125000] s3c-sdhci 12550000.sdhci: failed to get io clock
> 
> Actually, need to prevent the "null pointer dereference" for clock 
> in dw-mmc.c
> 
> And If dw-mmc controller can be used, recommend to use it. dw-mmc 
> can use DDR mode, but sdhci can't.
> 
> Best Regards, Jaehoon Chung
> 
> On 11/26/2013 10:47 AM, randy wrote: 于 2013年11月26日 08:41, Tomasz 
> Figa 写道:
>>>> On Sunday 24 of November 2013 22:18:46 Olof Johansson wrote:
>>>>> Hi,
>>>>> 
>>>>> On Sun, Nov 24, 2013 at 4:07 AM, randy 
>>>>> <lxr1234@hotmail.com> wrote:
>>>>>> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
>>>>>> 
>>>>>> After pull the merge of 3.13-rc1, the dw_mmc-exynos will 
>>>>>> make the boot stock.In 3.13, it is just stocked udev in 
>>>>>> 3.13 and makse udev timeout but kernel report the emmc 
>>>>>> device is found.
>>>>>> 
>>>>>> And in the 
>>>>>> Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt 
>>>>>> I saw that it is need to define which gpio ports that a 
>>>>>> emmc slot use, but when I watched others dts, they use 
>>>>>> pinctrl, which is correct? Here is the log and dts
>>>>> 
>>>>> [..]
>>>>> 
>>>>>> =======================log begin 
>>>>>> =============================
>>>>> [..]
>>>>>> [    0.000000] CPU EXYNOS4412 (id 0xe4412011)
>>>>> 
>>>>> [..]
>>>>> 
>>>>>> [    1.095000] mmc0: no vmmc regulator found [ 1.130000]
>>>>>> mmc0: SDHCI controller on samsung-hsmmc [12530000.sdhci]
>>>>>> using ADMA [    1.130000] Synopsys Designware Multimedia
>>>>>> Card Interface Driver [ 1.130000] Unable to handle kernel
>>>>>> NULL pointer dereference at virtual address 0000002a [
>>>>>> 1.130000] pgd = c0004000 [    1.130000] [0000002a]
>>>>>> *pgd=00000000 [ 1.135000] Internal error: Oops: 5 [#1]
>>>>>> PREEMPT SMP ARM [ 1.140000] Modules linked in: [
>>>>>> 1.140000] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 
>>>>>> 3.13.0-rc1-00008-g584fa45-dirty #3 [ 1.150000] task: 
>>>>>> ef0a4000 ti: ef0a8000 task.ti: ef0a8000 [ 1.155000] PC
>>>>>> is at clk_get_rate+0x18/0x5c [    1.160000] LR is at 
>>>>>> clk_prepare_lock+0xc/0xd8 [    1.165000] pc : 
>>>>>> [<c0319400>] lr : [<c0318864>]    psr: a0000113 [ 
>>>>>> 1.165000] sp : ef0a9e20 ip : ee94eb40  fp : 00000000 [ 
>>>>>> 1.175000] r10: c0571510  r9 : ef0a8000  r8 : ef227a10 [ 
>>>>>> 1.180000] r7 : c043544c  r6 : fffffffe  r5 : ee94ead0
>>>>>> r4 : fffffffe [    1.185000] r3 : ef0a4000  r2 :
>>>>>> 00000001 r1 : 000002b9  r0 : 00000001 [ 1.195000] Flags:
>>>>>> NzCv IRQs on  FIQs on  Mode SVC_32  ISA ARM Segment
>>>>>> kernel [ 1.200000] Control: 10c5387d  Table: 4000404a
>>>>>> DAC: 00000015 [    1.205000] Process swapper/0 (pid: 1,
>>>>>> stack limit = 0xef0a8240) [    1.210000] Stack:
>>>>>> (0xef0a9e20 to 0xef0aa000) [    1.215000] 9e20: c0308474
>>>>>> ee9ea610 ee94ead0 c0308488 c0308474 ee9ea610 00000000
>>>>>> c030592c [ 1.225000] 9e40: ef227a10 00001000 c043544c
>>>>>> c020a920 c0838b04 17d78400 ee9ea610 ef227a00 [
>>>>>> 1.235000] 9e60: ef227a10 c05d6b1c 00000000 c05d6b1c
>>>>>> c05890b0 ef0a8000 c0571510 c0269448 [ 1.240000] 9e80:
>>>>>> c0269430 ef227a10 c061291c c0268088 00000000 ef227a10
>>>>>> c05d6b1c ef227a44 [ 1.250000] 9ea0: 00000000 c026822c
>>>>>> 00000000 c05d6b1c c02681a0 c02668a8 ef005478 ef212740 [
>>>>>> 1.255000] 9ec0: c05d6b1c ef2c7900 c05cf438 c0267864
>>>>>> c0511e38 c05d6b1c 00000006 c05d6b1c [    1.265000] 9ee0:
>>>>>> 00000006 c059575c c05df580 c026884c 00000000 c05a2e14
>>>>>> 00000006 c00088dc [ 1.275000] 9f00: c0603f70 ef163e00
>>>>>> c040e334 60000113 c05b5000 a0000113 c05b5054 c05b5050 [
>>>>>> 1.280000] 9f20: c05df580 c054ad68 c0839c96 c04247b4
>>>>>> 00000093 c0035158 c05b5054 c05a2a20 [    1.290000] 9f40:
>>>>>> c050ae2c c054a438 00000006 00000006 00000000 c05a2e14
>>>>>> 00000006 c059575c [ 1.300000] 9f60: c05df580 00000093
>>>>>> c0595768 c0571510 00000000 c0571c48 00000006 00000006 [
>>>>>> 1.305000] 9f80: c0571510 c003df68 00000000 c0403544
>>>>>> 00000000 00000000 00000000 00000000 [    1.315000] 9fa0:
>>>>>> 00000000 c040354c 00000000 c000e738 00000000 00000000
>>>>>> 00000000 00000000 [ 1.320000] 9fc0: 00000000 00000000
>>>>>> 00000000 00000000 00000000 00000000 00000000 00000000 [
>>>>>> 1.330000] 9fe0: 00000000 00000000 00000000 00000000
>>>>>> 00000013 00000000 be73efa4 ffffbffd [    1.340000]
>>>>>> [<c0319400>] (clk_get_rate+0x18/0x5c) from [<c0308488>] 
>>>>>> (dw_mci_exynos_setup_clock+0x14/0x2c) [    1.350000] 
>>>>>> [<c0308488>] (dw_mci_exynos_setup_clock+0x14/0x2c) from 
>>>>>> [<c030592c>] (dw_mci_probe+0x15c/0xca4) [    1.360000] 
>>>>>> [<c030592c>] (dw_mci_probe+0x15c/0xca4) from [<c0269448>]
>>>>>> (platform_drv_probe+0x18/0x48) [ 1.365000] [<c0269448>]
>>>>>> (platform_drv_probe+0x18/0x48) from [<c0268088>]
>>>>>> (driver_probe_device+0x100/0x218) [ 1.375000]
>>>>>> [<c0268088>] (driver_probe_device+0x100/0x218) from
>>>>>> [<c026822c>] (__driver_attach+0x8c/0x90) [ 1.385000]
>>>>>> [<c026822c>] (__driver_attach+0x8c/0x90) from 
>>>>>> [<c02668a8>] (bus_for_each_dev+0x54/0x88) [    1.395000] 
>>>>>> [<c02668a8>] (bus_for_each_dev+0x54/0x88) from 
>>>>>> [<c0267864>] (bus_add_driver+0xd4/0x1d0) [    1.405000] 
>>>>>> [<c0267864>] (bus_add_driver+0xd4/0x1d0) from 
>>>>>> [<c026884c>] (driver_register+0x78/0xf4) [    1.415000] 
>>>>>> [<c026884c>] (driver_register+0x78/0xf4) from 
>>>>>> [<c00088dc>] (do_one_initcall+0xec/0x148) [    1.420000] 
>>>>>> [<c00088dc>] (do_one_initcall+0xec/0x148) from 
>>>>>> [<c0571c48>] (kernel_init_freeable+0xfc/0x1c8) [ 
>>>>>> 1.430000] [<c0571c48>] (kernel_init_freeable+0xfc/0x1c8) 
>>>>>> from [<c040354c>] (kernel_init+0x8/0x110) [    1.440000] 
>>>>>> [<c040354c>] (kernel_init+0x8/0x110) from [<c000e738>] 
>>>>>> (ret_from_fork+0x14/0x3c) [    1.450000] Code: ebfffd18 
>>>>>> e3540000 01a05004 0a000008 (e594302c)
>>>>> 
>>>>> 
>>>>> Looks like a clock issue on 4412? I only have 5250 that I 
>>>>> boot test on, no EXYNOS4 coverage at all (I had an
>>>>> Odroid-X but it wasn't useful due to the very old u-boot it
>>>>> came with so I gave it away).
>>>>> 
>>>>> Tomasz, is this something you can reproduce on 4210/4412?
>>>> 
>>>> Nope. All of our boards (exynos4210-trats,
>>>> exynos4412-trats2) are configured to use sdhci-s3c for all
>>>> MMC slots[1], as at the time they got submitted to mainline,
>>>> this driver was considered more reliable than dw-mmc. Not
>>>> sure about today, though.
>>>> 
>>>> [1] On Exynos4 there is one dw-mmc block and four sdhci-s3c 
>>>> blocks, while there are just four physical busses. Using pin
>>>>  control you can configure any of the four sets of pins to 
>>>> work either using its dedicated sdhci-s3c or the only one 
>>>> dw-mmc.
>>>> 
>>>> Best regards, Tomasz
>>>> 
>>>> -- To unsubscribe from this list: send the line "unsubscribe
>>>>  linux-samsung-soc" in the body of a message to 
>>>> majordomo@vger.kernel.org More majordomo info at 
>>>> http://vger.kernel.org/majordomo-info.html
>>>> 
>>>> 
> Well I don't think it can work this time, maybe my dts is wrong.
> At this time neither emmc nor usb can work. 
> ==========================log begin===============================
>  [    1.035000] s3c-rtc 10070000.rtc: rtc disabled, re-enabling [ 
> 1.040000] s3c-rtc 10070000.rtc: rtc core: registered s3c as rtc0 [ 
> 1.050000] device-mapper: ioctl: 4.27.0-ioctl (2013-10-30) 
> initialised: dm-devel@redhat.com [    1.055000] sdhci: Secure 
> Digital Host Controller Interface driver [    1.060000] sdhci: 
> Copyright(c) Pierre Ossman [    1.065000] s3c-sdhci
> 12530000.sdhci: clock source 2: mmc_busclk.2 (100000000 Hz) [
> 1.075000] s3c-sdhci 12530000.sdhci: dummy supplies not allowed [
> 1.080000] mmc0: no vqmmc regulator found [    1.085000] s3c-sdhci 
> 12530000.sdhci: dummy supplies not allowed [    1.090000] mmc0: no 
> vmmc regulator found [    1.125000] mmc0: SDHCI controller on 
> samsung-hsmmc [12530000.sdhci] using ADMA [    1.125000] s3c-sdhci 
> 12550000.sdhci: failed to get io clock [    1.125000] s3c-sdhci: 
> probe of 12550000.sdhci failed with error -2 [    1.125000] 
> Synopsys Designware Multimedia Card Interface Driver [
> 1.130000] usbcore: registered new interface driver usbhid [
> 1.130000] usbhid: USB HID core driver [    1.135000] TCP: cubic
> registered [ 1.145000] NET: Registered protocol family 10 [
> 1.145000] NET: Registered protocol family 17 [    1.145000] NET:
> Registered protocol family 15 [    1.150000] Key type dns_resolver
> registered [    1.155000] Registering SWP/SWPB emulation handler [ 
> 1.160000] unable to find transceiver of type USB2 PHY [ 1.165000]
> exynos-ehci 12580000.ehci: no platform data or transceiver defined
> [    1.175000] platform 12580000.ehci: Driver exynos-ehci requests
> probe deferral [    1.175000] mmc0: new high speed SDHC card at
> address aaaa [    1.185000] isa bounce pool size: 16 pages [
> 1.190000] mmcblk0: mmc0:aaaa SU08G 7.40 GiB [ 1.195000] s3c-rtc
> 10070000.rtc: setting system clock to 2013-01-01 12:06:09 UTC
> (1357041969) [    1.205000] exynos_cpufreq_init: failed to get
> resource vdd_arm [    1.205000]  mmcblk0: p1 p2 p3 p4 [
> 1.215000] unable to find transceiver of type USB2 PHY [ 1.215000]
> exynos-ehci 12580000.ehci: no platform data or transceiver defined
> [    1.225000] platform 12580000.ehci: Driver exynos-ehci requests
> probe deferral
> 
> ==========================log end=================================
>  
> =======================dts==============================================
>
>
> 
/*
> * Hardkernel's Exynos4412 based tiny4412 1306 board device tree 
> source * * Copyright (c) 2013 Tomoya Gitsufuki 
> <ayaka@mail.soulik.info> * * Device tree source file for
> Friendyarm tiny4412 1306 board which is based on * Samsung's
> Exynos4412 SoC. * * This program is free software; you can
> redistribute it and/or modify * it under the terms of the GNU
> General Public License version 2 as * published by the Free
> Software Foundation. */
> 
> /dts-v1/; #include "exynos4412.dtsi"
> 
> / { model = "Friendly Arm Tiny4412 1306 board based on Exynos4412";
> compatible = "friendlyarm,tiny4412-1306", "samsung,exynos4412";
> 
> memory { reg = <0x40000000 0x40000000>; };
> 
> chosen { bootargs ="root=/dev/mmcblk0p1 rootfstype=ext4 rw 
> console=ttySAC0,115200 init=/sbin/init"; };
> 
> leds { compatible = "gpio-leds"; led1 { label = "led1:heart";
> gpios = <&gpm4 0 1>; default-state = "on"; linux,default-trigger = 
> "heartbeat"; }; led2 { label = "led2:mmc0"; gpios = <&gpm4 1 1>; 
> default-state = "on"; linux,default-trigger = "mmc0"; };
> 
> };
> 
> regulators { compatible = "simple-bus"; #address-cells = <1>;
> 
> vemmc_reg: regulator-0 { compatible = "regulator-fixed"; 
> regulator-name = "VMEM_VDD_2.8V"; regulator-min-microvolt = 
> <2800000>; regulator-max-microvolt = <2800000>; gpio = <&gpk0 2 0>;
> enable-active-high; };
> 
> };
> 
> /* mshc@12550000 { #address-cells = <1>; #size-cells = <0>; 
> pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>; pinctrl-names 
> = "default"; status = "okay";
> 
> vmmc-supply = <&vemmc_reg>; clocks = <&clock 301>, <&clock 149>; 
> clocks-name = "dwmci", "sclk_dwmci"; clock-frequency = 
> <400000000>;
> 
> num-slots = <1>; supports-highspeed; broken-cd; fifo-depth = 
> <0x80>; card-detect-delay = <200>; samsung,dw-mshc-sdr-timing = <2 
> 3>; samsung,dw-mshc-ddr-timing = <1 2>;
> 
> slot@0 { reg = <0>; bus-width = <8>;  }; }; */
> 
> rtc@10070000 { status = "okay"; };
> 
> sdhci@12530000 { bus-width = <4>; pinctrl-0 = <&sd2_clk &sd2_cmd 
> &sd2_bus4 &sd2_cd>; pinctrl-names = "default"; status = "okay"; };
> 
> sdhci@1254000 { bus-width = <4>; pinctrl-0 = <&sd3_clk &sd3_cmd 
> &sd3_bus4 &sd3_cd>; pinctrl-names = "default"; status = "okay"; };
> 
> sdhci@12550000 { compatible = "samsung,exynos4210-sdhci"; 
> #address-cells = <1>; #size-cells = <0>; reg = <0x12550000 0x1000>;
> interrupts = <0 77 0>; non-removable; pinctrl-0 = <&sd4_clk
> &sd4_cmd &sd4_bus4 &sd4_bus8>; pinctrl-names = "default"; status =
> "okay";
> 
> bus-width = <8>; vmmc-supply = <&vemmc_reg>; clocks = <&clock
> 301>, <&clock 149>; clocks-name = "dwmci", "sclk_dwmci";
> clock-frequency = <400000000>;
> 
> };
> 
> /* the usb phy of hsic0, hsic1 and otg are in the same place */ 
> usb_phy: otg@125B0000 { #address-cells = <1>; #size-cells = <1>; 
> compatible = "samsung,exynos4210-usbphy"; reg = <0x125B0000 0x100>;
> ranges;
> 
> clocks = <&clock 2>, <&clock 305>; clock-names = "xusbxti", "otg";
>  usbphy-sys { /* USB device and host PHY_CONTROL registers */ reg
> = <0x10020704 0x8>; }; };
> 
> ehci@12580000 { usb-phy = <&usb_phy>; status = "okay"; }; 
> ohci@12590000 { status = "okay"; };
> 
> 
> codec@13400000 { samsung,mfc-r = <0x43000000 0x800000>; 
> samsung,mfc-l = <0x51000000 0x800000>; status = "okay"; };
> 
> serial@13800000 { status = "okay"; };
> 
> serial@13810000 { status = "okay"; };
> 
> serial@13820000 { status = "okay"; };
> 
> serial@13830000 { status = "okay"; };
> 
> fixed-rate-clocks { xxti { compatible = "samsung,clock-xxti"; 
> clock-frequency = <0>; };
> 
> xusbxti { compatible = "samsung,clock-xusbxti"; clock-frequency = 
> <24000000>; }; };
> 
> i2c@13860000 { status = "okay"; samsung,i2c-sda-delay = <100>; 
> samsung,i2c-max-bus-freq = <200000>;
> 
> wm8960@10 { compatible = "wlf,wm8960"; reg = <0x10>; }; }; };
>> 
> 
> -- To unsubscribe from this list: send the line "unsubscribe 
> linux-samsung-soc" in the body of a message to 
> majordomo@vger.kernel.org More majordomo info at 
> http://vger.kernel.org/majordomo-info.html
> 
> 

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJSlDj0AAoJEPb4VsMIzTziji8H/jgZfK7ZArb6kK74jb/P8vOv
OIsOw301smAp83LafMd1BWzInkhZnMp+4g/uTawjWDGPw3rJOiu8Qcyr4VmI1r4h
oXfcVS+p27qAVsMN+11e9fFKu2DsDwxb/aidau6OAAi5+U3h0rHTptRzIzbqbnxp
5lOV1eldrnXSRIsUTYmaPVLUcVRAD0p8zcPmOH79XghrcHdTisYA/yjFgu2mQJgE
QgaDaEgwoFwXrTkg/w+fHHZFdOUHhursSzIGR8HUKirK2Sg2KaPRU+MXPf8nVY8B
1MEX7pnI+7feOK20eNEc9H8GmCph8MnjCsY+9DxwxqDeBkP31BhTVGIxK+ajmzw=
=aRRx
-----END PGP SIGNATURE-----

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/1] ARM: dts: Add missing clock names for exynos4412 dwmmc node
  2013-11-26  6:00         ` randy
@ 2013-12-01 12:30           ` randy
  2013-12-02 12:58           ` linux 3.13-rc1 make dw_mmc-exynos more worse Seungwon Jeon
  1 sibling, 0 replies; 10+ messages in thread
From: randy @ 2013-12-01 12:30 UTC (permalink / raw)
  To: linux-samsung-soc; +Cc: devicetree, kasimling

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I don't know whether it will works. Actually I don't what the name
used for. So I just referencing my mail before.
Thank you

- -------- origin mail --------
主题: Re: linux 3.13-rc1 make dw_mmc-exynos more worse
日期: Tue, 26 Nov 2013 14:00:20 +0800
发件人: randy <lxr1234@hotmail.com>
收件人: Jaehoon Chung <jh80.chung@samsung.com>
抄送: Tomasz Figa <tomasz.figa@gmail.com>,
linux-samsung-soc@vger.kernel.org, devicetree@vger.kernel.org, Seungwon
Jeon <tgih.jun@samsung.com>, t.figa@samsung.com, olof@lixom.net,
kgene.kim@samsung.com

Thanks Jaehoon,
I have noticed that before it, but in dw_mmc driver, I won't meet this
problem.
As you can seen in dts, I have defined a clock source.
Or the clock source what I choose is not correct?
I don't know how to debug this, I don't know much about it.
Actually, I don't really understand the contain in chapter 7 of datasheet.
I am sorry for that.
Would you like to tell me some more about it?

于 2013年11月26日 12:32, Jaehoon Chung 写道:
> Hi, Randy,
> 
> It seems a problem that controller didn't find the clock source. 
> Also you can see the below message. Did you check the clock 
> source?
> 
>> [    1.125000] s3c-sdhci 12550000.sdhci: failed to get io clock
> 
> Actually, need to prevent the "null pointer dereference" for clock 
> in dw-mmc.c
> 
> And If dw-mmc controller can be used, recommend to use it. dw-mmc 
> can use DDR mode, but sdhci can't.
> 
> Best Regards, Jaehoon Chung
> 
> On 11/26/2013 10:47 AM, randy wrote: 于 2013年11月26日 08:41, Tomasz 
> Figa 写道:
>>>> On Sunday 24 of November 2013 22:18:46 Olof Johansson wrote:
>>>>> Hi,
>>>>> 
>>>>> On Sun, Nov 24, 2013 at 4:07 AM, randy 
>>>>> <lxr1234@hotmail.com> wrote:
>>>>>> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
>>>>>> 
>>>>>> After pull the merge of 3.13-rc1, the dw_mmc-exynos will 
>>>>>> make the boot stock.In 3.13, it is just stocked udev in 
>>>>>> 3.13 and makse udev timeout but kernel report the emmc 
>>>>>> device is found.
>>>>>> 
>>>>>> And in the 
>>>>>> Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt 
>>>>>> I saw that it is need to define which gpio ports that a 
>>>>>> emmc slot use, but when I watched others dts, they use 
>>>>>> pinctrl, which is correct? Here is the log and dts
>>>>> 
>>>>> [..]
>>>>> 
>>>>>> =======================log begin 
>>>>>> =============================
>>>>> [..]
>>>>>> [    0.000000] CPU EXYNOS4412 (id 0xe4412011)
>>>>> 
>>>>> [..]
>>>>> 
>>>>>> [    1.095000] mmc0: no vmmc regulator found [ 1.130000] 
>>>>>> mmc0: SDHCI controller on samsung-hsmmc [12530000.sdhci] 
>>>>>> using ADMA [    1.130000] Synopsys Designware Multimedia 
>>>>>> Card Interface Driver [ 1.130000] Unable to handle
>>>>>> kernel NULL pointer dereference at virtual address
>>>>>> 0000002a [ 1.130000] pgd = c0004000 [    1.130000]
>>>>>> [0000002a] *pgd=00000000 [ 1.135000] Internal error:
>>>>>> Oops: 5 [#1] PREEMPT SMP ARM [ 1.140000] Modules linked
>>>>>> in: [ 1.140000] CPU: 0 PID: 1 Comm: swapper/0 Not
>>>>>> tainted 3.13.0-rc1-00008-g584fa45-dirty #3 [ 1.150000]
>>>>>> task: ef0a4000 ti: ef0a8000 task.ti: ef0a8000 [ 1.155000]
>>>>>> PC is at clk_get_rate+0x18/0x5c [    1.160000] LR is at 
>>>>>> clk_prepare_lock+0xc/0xd8 [    1.165000] pc : 
>>>>>> [<c0319400>] lr : [<c0318864>]    psr: a0000113 [ 
>>>>>> 1.165000] sp : ef0a9e20 ip : ee94eb40  fp : 00000000 [ 
>>>>>> 1.175000] r10: c0571510  r9 : ef0a8000  r8 : ef227a10 [ 
>>>>>> 1.180000] r7 : c043544c  r6 : fffffffe  r5 : ee94ead0 r4
>>>>>> : fffffffe [    1.185000] r3 : ef0a4000  r2 : 00000001 r1
>>>>>> : 000002b9  r0 : 00000001 [ 1.195000] Flags: NzCv IRQs on
>>>>>> FIQs on  Mode SVC_32  ISA ARM Segment kernel [ 1.200000]
>>>>>> Control: 10c5387d  Table: 4000404a DAC: 00000015 [
>>>>>> 1.205000] Process swapper/0 (pid: 1, stack limit =
>>>>>> 0xef0a8240) [    1.210000] Stack: (0xef0a9e20 to
>>>>>> 0xef0aa000) [    1.215000] 9e20: c0308474 ee9ea610
>>>>>> ee94ead0 c0308488 c0308474 ee9ea610 00000000 c030592c [
>>>>>> 1.225000] 9e40: ef227a10 00001000 c043544c c020a920
>>>>>> c0838b04 17d78400 ee9ea610 ef227a00 [ 1.235000] 9e60:
>>>>>> ef227a10 c05d6b1c 00000000 c05d6b1c c05890b0 ef0a8000
>>>>>> c0571510 c0269448 [ 1.240000] 9e80: c0269430 ef227a10
>>>>>> c061291c c0268088 00000000 ef227a10 c05d6b1c ef227a44 [
>>>>>> 1.250000] 9ea0: 00000000 c026822c 00000000 c05d6b1c
>>>>>> c02681a0 c02668a8 ef005478 ef212740 [ 1.255000] 9ec0:
>>>>>> c05d6b1c ef2c7900 c05cf438 c0267864 c0511e38 c05d6b1c
>>>>>> 00000006 c05d6b1c [    1.265000] 9ee0: 00000006 c059575c
>>>>>> c05df580 c026884c 00000000 c05a2e14 00000006 c00088dc [
>>>>>> 1.275000] 9f00: c0603f70 ef163e00 c040e334 60000113
>>>>>> c05b5000 a0000113 c05b5054 c05b5050 [ 1.280000] 9f20:
>>>>>> c05df580 c054ad68 c0839c96 c04247b4 00000093 c0035158
>>>>>> c05b5054 c05a2a20 [    1.290000] 9f40: c050ae2c c054a438
>>>>>> 00000006 00000006 00000000 c05a2e14 00000006 c059575c [
>>>>>> 1.300000] 9f60: c05df580 00000093 c0595768 c0571510
>>>>>> 00000000 c0571c48 00000006 00000006 [ 1.305000] 9f80:
>>>>>> c0571510 c003df68 00000000 c0403544 00000000 00000000
>>>>>> 00000000 00000000 [    1.315000] 9fa0: 00000000 c040354c
>>>>>> 00000000 c000e738 00000000 00000000 00000000 00000000 [
>>>>>> 1.320000] 9fc0: 00000000 00000000 00000000 00000000
>>>>>> 00000000 00000000 00000000 00000000 [ 1.330000] 9fe0:
>>>>>> 00000000 00000000 00000000 00000000 00000013 00000000
>>>>>> be73efa4 ffffbffd [    1.340000] [<c0319400>]
>>>>>> (clk_get_rate+0x18/0x5c) from [<c0308488>] 
>>>>>> (dw_mci_exynos_setup_clock+0x14/0x2c) [    1.350000] 
>>>>>> [<c0308488>] (dw_mci_exynos_setup_clock+0x14/0x2c) from 
>>>>>> [<c030592c>] (dw_mci_probe+0x15c/0xca4) [    1.360000] 
>>>>>> [<c030592c>] (dw_mci_probe+0x15c/0xca4) from
>>>>>> [<c0269448>] (platform_drv_probe+0x18/0x48) [ 1.365000]
>>>>>> [<c0269448>] (platform_drv_probe+0x18/0x48) from
>>>>>> [<c0268088>] (driver_probe_device+0x100/0x218) [
>>>>>> 1.375000] [<c0268088>] (driver_probe_device+0x100/0x218)
>>>>>> from [<c026822c>] (__driver_attach+0x8c/0x90) [
>>>>>> 1.385000] [<c026822c>] (__driver_attach+0x8c/0x90) from 
>>>>>> [<c02668a8>] (bus_for_each_dev+0x54/0x88) [    1.395000] 
>>>>>> [<c02668a8>] (bus_for_each_dev+0x54/0x88) from 
>>>>>> [<c0267864>] (bus_add_driver+0xd4/0x1d0) [    1.405000] 
>>>>>> [<c0267864>] (bus_add_driver+0xd4/0x1d0) from 
>>>>>> [<c026884c>] (driver_register+0x78/0xf4) [    1.415000] 
>>>>>> [<c026884c>] (driver_register+0x78/0xf4) from 
>>>>>> [<c00088dc>] (do_one_initcall+0xec/0x148) [    1.420000] 
>>>>>> [<c00088dc>] (do_one_initcall+0xec/0x148) from 
>>>>>> [<c0571c48>] (kernel_init_freeable+0xfc/0x1c8) [ 
>>>>>> 1.430000] [<c0571c48>] (kernel_init_freeable+0xfc/0x1c8) 
>>>>>> from [<c040354c>] (kernel_init+0x8/0x110) [    1.440000] 
>>>>>> [<c040354c>] (kernel_init+0x8/0x110) from [<c000e738>] 
>>>>>> (ret_from_fork+0x14/0x3c) [    1.450000] Code: ebfffd18 
>>>>>> e3540000 01a05004 0a000008 (e594302c)
>>>>> 
>>>>> 
>>>>> Looks like a clock issue on 4412? I only have 5250 that I 
>>>>> boot test on, no EXYNOS4 coverage at all (I had an Odroid-X
>>>>> but it wasn't useful due to the very old u-boot it came
>>>>> with so I gave it away).
>>>>> 
>>>>> Tomasz, is this something you can reproduce on 4210/4412?
>>>> 
>>>> Nope. All of our boards (exynos4210-trats, exynos4412-trats2)
>>>> are configured to use sdhci-s3c for all MMC slots[1], as at
>>>> the time they got submitted to mainline, this driver was
>>>> considered more reliable than dw-mmc. Not sure about today,
>>>> though.
>>>> 
>>>> [1] On Exynos4 there is one dw-mmc block and four sdhci-s3c 
>>>> blocks, while there are just four physical busses. Using pin 
>>>> control you can configure any of the four sets of pins to 
>>>> work either using its dedicated sdhci-s3c or the only one 
>>>> dw-mmc.
>>>> 
>>>> Best regards, Tomasz
>>>> 
>>>> -- To unsubscribe from this list: send the line "unsubscribe 
>>>> linux-samsung-soc" in the body of a message to 
>>>> majordomo@vger.kernel.org More majordomo info at 
>>>> http://vger.kernel.org/majordomo-info.html
>>>> 
>>>> 
> Well I don't think it can work this time, maybe my dts is wrong. At
> this time neither emmc nor usb can work. 
> ==========================log begin=============================== 
> [    1.035000] s3c-rtc 10070000.rtc: rtc disabled, re-enabling [ 
> 1.040000] s3c-rtc 10070000.rtc: rtc core: registered s3c as rtc0 [ 
> 1.050000] device-mapper: ioctl: 4.27.0-ioctl (2013-10-30) 
> initialised: dm-devel@redhat.com [    1.055000] sdhci: Secure 
> Digital Host Controller Interface driver [    1.060000] sdhci: 
> Copyright(c) Pierre Ossman [    1.065000] s3c-sdhci 12530000.sdhci:
> clock source 2: mmc_busclk.2 (100000000 Hz) [ 1.075000] s3c-sdhci
> 12530000.sdhci: dummy supplies not allowed [ 1.080000] mmc0: no
> vqmmc regulator found [    1.085000] s3c-sdhci 12530000.sdhci:
> dummy supplies not allowed [    1.090000] mmc0: no vmmc regulator
> found [    1.125000] mmc0: SDHCI controller on samsung-hsmmc
> [12530000.sdhci] using ADMA [    1.125000] s3c-sdhci 
> 12550000.sdhci: failed to get io clock [    1.125000] s3c-sdhci: 
> probe of 12550000.sdhci failed with error -2 [    1.125000] 
> Synopsys Designware Multimedia Card Interface Driver [ 1.130000]
> usbcore: registered new interface driver usbhid [ 1.130000] usbhid:
> USB HID core driver [    1.135000] TCP: cubic registered [
> 1.145000] NET: Registered protocol family 10 [ 1.145000] NET:
> Registered protocol family 17 [    1.145000] NET: Registered
> protocol family 15 [    1.150000] Key type dns_resolver registered
> [    1.155000] Registering SWP/SWPB emulation handler [ 1.160000]
> unable to find transceiver of type USB2 PHY [ 1.165000] exynos-ehci
> 12580000.ehci: no platform data or transceiver defined [
> 1.175000] platform 12580000.ehci: Driver exynos-ehci requests probe
> deferral [    1.175000] mmc0: new high speed SDHC card at address
> aaaa [    1.185000] isa bounce pool size: 16 pages [ 1.190000]
> mmcblk0: mmc0:aaaa SU08G 7.40 GiB [ 1.195000] s3c-rtc 10070000.rtc:
> setting system clock to 2013-01-01 12:06:09 UTC (1357041969) [
> 1.205000] exynos_cpufreq_init: failed to get resource vdd_arm [
> 1.205000]  mmcblk0: p1 p2 p3 p4 [ 1.215000] unable to find
> transceiver of type USB2 PHY [ 1.215000] exynos-ehci 12580000.ehci:
> no platform data or transceiver defined [    1.225000] platform
> 12580000.ehci: Driver exynos-ehci requests probe deferral
> 
> ==========================log end=================================
> 
> =======================dts==============================================
>
>
>
/*
>
> 
* Hardkernel's Exynos4412 based tiny4412 1306 board device tree
> source * * Copyright (c) 2013 Tomoya Gitsufuki 
> <ayaka@mail.soulik.info> * * Device tree source file for Friendyarm
> tiny4412 1306 board which is based on * Samsung's Exynos4412 SoC. *
> * This program is free software; you can redistribute it and/or
> modify * it under the terms of the GNU General Public License
> version 2 as * published by the Free Software Foundation. */
> 
> /dts-v1/; #include "exynos4412.dtsi"
> 
> / { model = "Friendly Arm Tiny4412 1306 board based on
> Exynos4412"; compatible = "friendlyarm,tiny4412-1306",
> "samsung,exynos4412";
> 
> memory { reg = <0x40000000 0x40000000>; };
> 
> chosen { bootargs ="root=/dev/mmcblk0p1 rootfstype=ext4 rw 
> console=ttySAC0,115200 init=/sbin/init"; };
> 
> leds { compatible = "gpio-leds"; led1 { label = "led1:heart"; gpios
> = <&gpm4 0 1>; default-state = "on"; linux,default-trigger = 
> "heartbeat"; }; led2 { label = "led2:mmc0"; gpios = <&gpm4 1 1>; 
> default-state = "on"; linux,default-trigger = "mmc0"; };
> 
> };
> 
> regulators { compatible = "simple-bus"; #address-cells = <1>;
> 
> vemmc_reg: regulator-0 { compatible = "regulator-fixed"; 
> regulator-name = "VMEM_VDD_2.8V"; regulator-min-microvolt = 
> <2800000>; regulator-max-microvolt = <2800000>; gpio = <&gpk0 2
> 0>; enable-active-high; };
> 
> };
> 
> /* mshc@12550000 { #address-cells = <1>; #size-cells = <0>; 
> pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>; pinctrl-names 
> = "default"; status = "okay";
> 
> vmmc-supply = <&vemmc_reg>; clocks = <&clock 301>, <&clock 149>; 
> clocks-name = "dwmci", "sclk_dwmci"; clock-frequency = 
> <400000000>;
> 
> num-slots = <1>; supports-highspeed; broken-cd; fifo-depth = 
> <0x80>; card-detect-delay = <200>; samsung,dw-mshc-sdr-timing = <2 
> 3>; samsung,dw-mshc-ddr-timing = <1 2>;
> 
> slot@0 { reg = <0>; bus-width = <8>;  }; }; */
> 
> rtc@10070000 { status = "okay"; };
> 
> sdhci@12530000 { bus-width = <4>; pinctrl-0 = <&sd2_clk &sd2_cmd 
> &sd2_bus4 &sd2_cd>; pinctrl-names = "default"; status = "okay"; };
> 
> sdhci@1254000 { bus-width = <4>; pinctrl-0 = <&sd3_clk &sd3_cmd 
> &sd3_bus4 &sd3_cd>; pinctrl-names = "default"; status = "okay"; };
> 
> sdhci@12550000 { compatible = "samsung,exynos4210-sdhci"; 
> #address-cells = <1>; #size-cells = <0>; reg = <0x12550000
> 0x1000>; interrupts = <0 77 0>; non-removable; pinctrl-0 =
> <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>; pinctrl-names = "default";
> status = "okay";
> 
> bus-width = <8>; vmmc-supply = <&vemmc_reg>; clocks = <&clock 301>,
> <&clock 149>; clocks-name = "dwmci", "sclk_dwmci"; clock-frequency
> = <400000000>;
> 
> };
> 
> /* the usb phy of hsic0, hsic1 and otg are in the same place */ 
> usb_phy: otg@125B0000 { #address-cells = <1>; #size-cells = <1>; 
> compatible = "samsung,exynos4210-usbphy"; reg = <0x125B0000
> 0x100>; ranges;
> 
> clocks = <&clock 2>, <&clock 305>; clock-names = "xusbxti", "otg"; 
> usbphy-sys { /* USB device and host PHY_CONTROL registers */ reg =
> <0x10020704 0x8>; }; };
> 
> ehci@12580000 { usb-phy = <&usb_phy>; status = "okay"; }; 
> ohci@12590000 { status = "okay"; };
> 
> 
> codec@13400000 { samsung,mfc-r = <0x43000000 0x800000>; 
> samsung,mfc-l = <0x51000000 0x800000>; status = "okay"; };
> 
> serial@13800000 { status = "okay"; };
> 
> serial@13810000 { status = "okay"; };
> 
> serial@13820000 { status = "okay"; };
> 
> serial@13830000 { status = "okay"; };
> 
> fixed-rate-clocks { xxti { compatible = "samsung,clock-xxti"; 
> clock-frequency = <0>; };
> 
> xusbxti { compatible = "samsung,clock-xusbxti"; clock-frequency = 
> <24000000>; }; };
> 
> i2c@13860000 { status = "okay"; samsung,i2c-sda-delay = <100>; 
> samsung,i2c-max-bus-freq = <200000>;
> 
> wm8960@10 { compatible = "wlf,wm8960"; reg = <0x10>; }; }; };
>> 
> 
> -- To unsubscribe from this list: send the line "unsubscribe 
> linux-samsung-soc" in the body of a message to 
> majordomo@vger.kernel.org More majordomo info at 
> http://vger.kernel.org/majordomo-info.html
> 
> 

- --
To unsubscribe from this list: send the line "unsubscribe
linux-samsung-soc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJSmyvdAAoJEPb4VsMIzTziIhMH/1IgGhwGdq7rX287MbuWGEbk
s+btcAJ3P/g5pg5mP+1LQ5lHXF+xQmFK3l3lYuqs8aDZcQXqQKOaRRLfq9Et6rUo
28FuJyIJOmA3PTSy1JIbW86R3NxrP9XgmBOs4AUMX6P276fC6GzzeJcdscoGa/Cl
r4eciyc8FKCuVWzOUSfXgqxwlhkk9zoawANoz8zGB0wUdX3NZcg6TibXFMeMBXbP
cohO4juDL9UGObxMYirwboa3OYUUBjYYtJl88V4swQld8/fuk3fjkrwLH8FIZULg
fBxT+IxcKjySIfDJ84/aYbIPbzkEZPrqNV3Fh9cS/BcyAeSZgpJHlHuw0xYajLc=
=oNvB
-----END PGP SIGNATURE-----

^ permalink raw reply	[flat|nested] 10+ messages in thread

* RE: linux 3.13-rc1 make dw_mmc-exynos more worse
  2013-11-26  6:00         ` randy
  2013-12-01 12:30           ` [PATCH 1/1] ARM: dts: Add missing clock names for exynos4412 dwmmc node randy
@ 2013-12-02 12:58           ` Seungwon Jeon
  1 sibling, 0 replies; 10+ messages in thread
From: Seungwon Jeon @ 2013-12-02 12:58 UTC (permalink / raw)
  To: 'randy', 'Jaehoon Chung'
  Cc: 'Tomasz Figa', linux-samsung-soc, devicetree, t.figa,
	olof, kgene.kim

On Tue, November 26, 2013, Randy wrote:
> Thanks Jaehoon,
> I have noticed that before it, but in dw_mmc driver, I won't meet this
> problem.
> As you can seen in dts, I have defined a clock source.
> Or the clock source what I choose is not correct?
> I don't know how to debug this, I don't know much about it.
> Actually, I don't really understand the contain in chapter 7 of datasheet.
> I am sorry for that.
> Would you like to tell me some more about it?

Can you add the followings for you test?
arch/arm/boot/dts/exynos4412.dtsi
+               clocks = <&clock 301>, <&clock 149>;
+               clock-name = "biu", "ciu";

Thanks,
Seungwon Jeon

> 
> 于 2013年11月26日 12:32, Jaehoon Chung 写道:
> > Hi, Randy,
> >
> > It seems a problem that controller didn't find the clock source.
> > Also you can see the below message. Did you check the clock
> > source?
> >
> >> [    1.125000] s3c-sdhci 12550000.sdhci: failed to get io clock
> >
> > Actually, need to prevent the "null pointer dereference" for clock
> > in dw-mmc.c
> >
> > And If dw-mmc controller can be used, recommend to use it. dw-mmc
> > can use DDR mode, but sdhci can't.
> >
> > Best Regards, Jaehoon Chung
> >
> > On 11/26/2013 10:47 AM, randy wrote: 于 2013年11月26日 08:41, Tomasz
> > Figa 写道:
> >>>> On Sunday 24 of November 2013 22:18:46 Olof Johansson wrote:
> >>>>> Hi,
> >>>>>
> >>>>> On Sun, Nov 24, 2013 at 4:07 AM, randy
> >>>>> <lxr1234@hotmail.com> wrote:
> >>>>>> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
> >>>>>>
> >>>>>> After pull the merge of 3.13-rc1, the dw_mmc-exynos will
> >>>>>> make the boot stock.In 3.13, it is just stocked udev in
> >>>>>> 3.13 and makse udev timeout but kernel report the emmc
> >>>>>> device is found.
> >>>>>>
> >>>>>> And in the
> >>>>>> Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt
> >>>>>> I saw that it is need to define which gpio ports that a
> >>>>>> emmc slot use, but when I watched others dts, they use
> >>>>>> pinctrl, which is correct? Here is the log and dts
> >>>>>
> >>>>> [..]
> >>>>>
> >>>>>> =======================log begin
> >>>>>> =============================
> >>>>> [..]
> >>>>>> [    0.000000] CPU EXYNOS4412 (id 0xe4412011)
> >>>>>
> >>>>> [..]
> >>>>>
> >>>>>> [    1.095000] mmc0: no vmmc regulator found [ 1.130000]
> >>>>>> mmc0: SDHCI controller on samsung-hsmmc [12530000.sdhci]
> >>>>>> using ADMA [    1.130000] Synopsys Designware Multimedia
> >>>>>> Card Interface Driver [ 1.130000] Unable to handle kernel
> >>>>>> NULL pointer dereference at virtual address 0000002a [
> >>>>>> 1.130000] pgd = c0004000 [    1.130000] [0000002a]
> >>>>>> *pgd=00000000 [ 1.135000] Internal error: Oops: 5 [#1]
> >>>>>> PREEMPT SMP ARM [ 1.140000] Modules linked in: [
> >>>>>> 1.140000] CPU: 0 PID: 1 Comm: swapper/0 Not tainted
> >>>>>> 3.13.0-rc1-00008-g584fa45-dirty #3 [ 1.150000] task:
> >>>>>> ef0a4000 ti: ef0a8000 task.ti: ef0a8000 [ 1.155000] PC
> >>>>>> is at clk_get_rate+0x18/0x5c [    1.160000] LR is at
> >>>>>> clk_prepare_lock+0xc/0xd8 [    1.165000] pc :
> >>>>>> [<c0319400>] lr : [<c0318864>]    psr: a0000113 [
> >>>>>> 1.165000] sp : ef0a9e20 ip : ee94eb40  fp : 00000000 [
> >>>>>> 1.175000] r10: c0571510  r9 : ef0a8000  r8 : ef227a10 [
> >>>>>> 1.180000] r7 : c043544c  r6 : fffffffe  r5 : ee94ead0
> >>>>>> r4 : fffffffe [    1.185000] r3 : ef0a4000  r2 :
> >>>>>> 00000001 r1 : 000002b9  r0 : 00000001 [ 1.195000] Flags:
> >>>>>> NzCv IRQs on  FIQs on  Mode SVC_32  ISA ARM Segment
> >>>>>> kernel [ 1.200000] Control: 10c5387d  Table: 4000404a
> >>>>>> DAC: 00000015 [    1.205000] Process swapper/0 (pid: 1,
> >>>>>> stack limit = 0xef0a8240) [    1.210000] Stack:
> >>>>>> (0xef0a9e20 to 0xef0aa000) [    1.215000] 9e20: c0308474
> >>>>>> ee9ea610 ee94ead0 c0308488 c0308474 ee9ea610 00000000
> >>>>>> c030592c [ 1.225000] 9e40: ef227a10 00001000 c043544c
> >>>>>> c020a920 c0838b04 17d78400 ee9ea610 ef227a00 [
> >>>>>> 1.235000] 9e60: ef227a10 c05d6b1c 00000000 c05d6b1c
> >>>>>> c05890b0 ef0a8000 c0571510 c0269448 [ 1.240000] 9e80:
> >>>>>> c0269430 ef227a10 c061291c c0268088 00000000 ef227a10
> >>>>>> c05d6b1c ef227a44 [ 1.250000] 9ea0: 00000000 c026822c
> >>>>>> 00000000 c05d6b1c c02681a0 c02668a8 ef005478 ef212740 [
> >>>>>> 1.255000] 9ec0: c05d6b1c ef2c7900 c05cf438 c0267864
> >>>>>> c0511e38 c05d6b1c 00000006 c05d6b1c [    1.265000] 9ee0:
> >>>>>> 00000006 c059575c c05df580 c026884c 00000000 c05a2e14
> >>>>>> 00000006 c00088dc [ 1.275000] 9f00: c0603f70 ef163e00
> >>>>>> c040e334 60000113 c05b5000 a0000113 c05b5054 c05b5050 [
> >>>>>> 1.280000] 9f20: c05df580 c054ad68 c0839c96 c04247b4
> >>>>>> 00000093 c0035158 c05b5054 c05a2a20 [    1.290000] 9f40:
> >>>>>> c050ae2c c054a438 00000006 00000006 00000000 c05a2e14
> >>>>>> 00000006 c059575c [ 1.300000] 9f60: c05df580 00000093
> >>>>>> c0595768 c0571510 00000000 c0571c48 00000006 00000006 [
> >>>>>> 1.305000] 9f80: c0571510 c003df68 00000000 c0403544
> >>>>>> 00000000 00000000 00000000 00000000 [    1.315000] 9fa0:
> >>>>>> 00000000 c040354c 00000000 c000e738 00000000 00000000
> >>>>>> 00000000 00000000 [ 1.320000] 9fc0: 00000000 00000000
> >>>>>> 00000000 00000000 00000000 00000000 00000000 00000000 [
> >>>>>> 1.330000] 9fe0: 00000000 00000000 00000000 00000000
> >>>>>> 00000013 00000000 be73efa4 ffffbffd [    1.340000]
> >>>>>> [<c0319400>] (clk_get_rate+0x18/0x5c) from [<c0308488>]
> >>>>>> (dw_mci_exynos_setup_clock+0x14/0x2c) [    1.350000]
> >>>>>> [<c0308488>] (dw_mci_exynos_setup_clock+0x14/0x2c) from
> >>>>>> [<c030592c>] (dw_mci_probe+0x15c/0xca4) [    1.360000]
> >>>>>> [<c030592c>] (dw_mci_probe+0x15c/0xca4) from [<c0269448>]
> >>>>>> (platform_drv_probe+0x18/0x48) [ 1.365000] [<c0269448>]
> >>>>>> (platform_drv_probe+0x18/0x48) from [<c0268088>]
> >>>>>> (driver_probe_device+0x100/0x218) [ 1.375000]
> >>>>>> [<c0268088>] (driver_probe_device+0x100/0x218) from
> >>>>>> [<c026822c>] (__driver_attach+0x8c/0x90) [ 1.385000]
> >>>>>> [<c026822c>] (__driver_attach+0x8c/0x90) from
> >>>>>> [<c02668a8>] (bus_for_each_dev+0x54/0x88) [    1.395000]
> >>>>>> [<c02668a8>] (bus_for_each_dev+0x54/0x88) from
> >>>>>> [<c0267864>] (bus_add_driver+0xd4/0x1d0) [    1.405000]
> >>>>>> [<c0267864>] (bus_add_driver+0xd4/0x1d0) from
> >>>>>> [<c026884c>] (driver_register+0x78/0xf4) [    1.415000]
> >>>>>> [<c026884c>] (driver_register+0x78/0xf4) from
> >>>>>> [<c00088dc>] (do_one_initcall+0xec/0x148) [    1.420000]
> >>>>>> [<c00088dc>] (do_one_initcall+0xec/0x148) from
> >>>>>> [<c0571c48>] (kernel_init_freeable+0xfc/0x1c8) [
> >>>>>> 1.430000] [<c0571c48>] (kernel_init_freeable+0xfc/0x1c8)
> >>>>>> from [<c040354c>] (kernel_init+0x8/0x110) [    1.440000]
> >>>>>> [<c040354c>] (kernel_init+0x8/0x110) from [<c000e738>]
> >>>>>> (ret_from_fork+0x14/0x3c) [    1.450000] Code: ebfffd18
> >>>>>> e3540000 01a05004 0a000008 (e594302c)
> >>>>>
> >>>>>
> >>>>> Looks like a clock issue on 4412? I only have 5250 that I
> >>>>> boot test on, no EXYNOS4 coverage at all (I had an
> >>>>> Odroid-X but it wasn't useful due to the very old u-boot it
> >>>>> came with so I gave it away).
> >>>>>
> >>>>> Tomasz, is this something you can reproduce on 4210/4412?
> >>>>
> >>>> Nope. All of our boards (exynos4210-trats,
> >>>> exynos4412-trats2) are configured to use sdhci-s3c for all
> >>>> MMC slots[1], as at the time they got submitted to mainline,
> >>>> this driver was considered more reliable than dw-mmc. Not
> >>>> sure about today, though.
> >>>>
> >>>> [1] On Exynos4 there is one dw-mmc block and four sdhci-s3c
> >>>> blocks, while there are just four physical busses. Using pin
> >>>>  control you can configure any of the four sets of pins to
> >>>> work either using its dedicated sdhci-s3c or the only one
> >>>> dw-mmc.
> >>>>
> >>>> Best regards, Tomasz
> >>>>
> >>>> -- To unsubscribe from this list: send the line "unsubscribe
> >>>>  linux-samsung-soc" in the body of a message to
> >>>> majordomo@vger.kernel.org More majordomo info at
> >>>> http://vger.kernel.org/majordomo-info.html
> >>>>
> >>>>
> > Well I don't think it can work this time, maybe my dts is wrong.
> > At this time neither emmc nor usb can work.
> > ==========================log begin===============================
> >  [    1.035000] s3c-rtc 10070000.rtc: rtc disabled, re-enabling [
> > 1.040000] s3c-rtc 10070000.rtc: rtc core: registered s3c as rtc0 [
> > 1.050000] device-mapper: ioctl: 4.27.0-ioctl (2013-10-30)
> > initialised: dm-devel@redhat.com [    1.055000] sdhci: Secure
> > Digital Host Controller Interface driver [    1.060000] sdhci:
> > Copyright(c) Pierre Ossman [    1.065000] s3c-sdhci
> > 12530000.sdhci: clock source 2: mmc_busclk.2 (100000000 Hz) [
> > 1.075000] s3c-sdhci 12530000.sdhci: dummy supplies not allowed [
> > 1.080000] mmc0: no vqmmc regulator found [    1.085000] s3c-sdhci
> > 12530000.sdhci: dummy supplies not allowed [    1.090000] mmc0: no
> > vmmc regulator found [    1.125000] mmc0: SDHCI controller on
> > samsung-hsmmc [12530000.sdhci] using ADMA [    1.125000] s3c-sdhci
> > 12550000.sdhci: failed to get io clock [    1.125000] s3c-sdhci:
> > probe of 12550000.sdhci failed with error -2 [    1.125000]
> > Synopsys Designware Multimedia Card Interface Driver [
> > 1.130000] usbcore: registered new interface driver usbhid [
> > 1.130000] usbhid: USB HID core driver [    1.135000] TCP: cubic
> > registered [ 1.145000] NET: Registered protocol family 10 [
> > 1.145000] NET: Registered protocol family 17 [    1.145000] NET:
> > Registered protocol family 15 [    1.150000] Key type dns_resolver
> > registered [    1.155000] Registering SWP/SWPB emulation handler [
> > 1.160000] unable to find transceiver of type USB2 PHY [ 1.165000]
> > exynos-ehci 12580000.ehci: no platform data or transceiver defined
> > [    1.175000] platform 12580000.ehci: Driver exynos-ehci requests
> > probe deferral [    1.175000] mmc0: new high speed SDHC card at
> > address aaaa [    1.185000] isa bounce pool size: 16 pages [
> > 1.190000] mmcblk0: mmc0:aaaa SU08G 7.40 GiB [ 1.195000] s3c-rtc
> > 10070000.rtc: setting system clock to 2013-01-01 12:06:09 UTC
> > (1357041969) [    1.205000] exynos_cpufreq_init: failed to get
> > resource vdd_arm [    1.205000]  mmcblk0: p1 p2 p3 p4 [
> > 1.215000] unable to find transceiver of type USB2 PHY [ 1.215000]
> > exynos-ehci 12580000.ehci: no platform data or transceiver defined
> > [    1.225000] platform 12580000.ehci: Driver exynos-ehci requests
> > probe deferral
> >
> > ==========================log end=================================
> >
> > =======================dts==============================================
> >
> >
> >
> /*
> > * Hardkernel's Exynos4412 based tiny4412 1306 board device tree
> > source * * Copyright (c) 2013 Tomoya Gitsufuki
> > <ayaka@mail.soulik.info> * * Device tree source file for
> > Friendyarm tiny4412 1306 board which is based on * Samsung's
> > Exynos4412 SoC. * * This program is free software; you can
> > redistribute it and/or modify * it under the terms of the GNU
> > General Public License version 2 as * published by the Free
> > Software Foundation. */
> >
> > /dts-v1/; #include "exynos4412.dtsi"
> >
> > / { model = "Friendly Arm Tiny4412 1306 board based on Exynos4412";
> > compatible = "friendlyarm,tiny4412-1306", "samsung,exynos4412";
> >
> > memory { reg = <0x40000000 0x40000000>; };
> >
> > chosen { bootargs ="root=/dev/mmcblk0p1 rootfstype=ext4 rw
> > console=ttySAC0,115200 init=/sbin/init"; };
> >
> > leds { compatible = "gpio-leds"; led1 { label = "led1:heart";
> > gpios = <&gpm4 0 1>; default-state = "on"; linux,default-trigger =
> > "heartbeat"; }; led2 { label = "led2:mmc0"; gpios = <&gpm4 1 1>;
> > default-state = "on"; linux,default-trigger = "mmc0"; };
> >
> > };
> >
> > regulators { compatible = "simple-bus"; #address-cells = <1>;
> >
> > vemmc_reg: regulator-0 { compatible = "regulator-fixed";
> > regulator-name = "VMEM_VDD_2.8V"; regulator-min-microvolt =
> > <2800000>; regulator-max-microvolt = <2800000>; gpio = <&gpk0 2 0>;
> > enable-active-high; };
> >
> > };
> >
> > /* mshc@12550000 { #address-cells = <1>; #size-cells = <0>;
> > pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>; pinctrl-names
> > = "default"; status = "okay";
> >
> > vmmc-supply = <&vemmc_reg>; clocks = <&clock 301>, <&clock 149>;
> > clocks-name = "dwmci", "sclk_dwmci"; clock-frequency =
> > <400000000>;
> >
> > num-slots = <1>; supports-highspeed; broken-cd; fifo-depth =
> > <0x80>; card-detect-delay = <200>; samsung,dw-mshc-sdr-timing = <2
> > 3>; samsung,dw-mshc-ddr-timing = <1 2>;
> >
> > slot@0 { reg = <0>; bus-width = <8>;  }; }; */
> >
> > rtc@10070000 { status = "okay"; };
> >
> > sdhci@12530000 { bus-width = <4>; pinctrl-0 = <&sd2_clk &sd2_cmd
> > &sd2_bus4 &sd2_cd>; pinctrl-names = "default"; status = "okay"; };
> >
> > sdhci@1254000 { bus-width = <4>; pinctrl-0 = <&sd3_clk &sd3_cmd
> > &sd3_bus4 &sd3_cd>; pinctrl-names = "default"; status = "okay"; };
> >
> > sdhci@12550000 { compatible = "samsung,exynos4210-sdhci";
> > #address-cells = <1>; #size-cells = <0>; reg = <0x12550000 0x1000>;
> > interrupts = <0 77 0>; non-removable; pinctrl-0 = <&sd4_clk
> > &sd4_cmd &sd4_bus4 &sd4_bus8>; pinctrl-names = "default"; status =
> > "okay";
> >
> > bus-width = <8>; vmmc-supply = <&vemmc_reg>; clocks = <&clock
> > 301>, <&clock 149>; clocks-name = "dwmci", "sclk_dwmci";
> > clock-frequency = <400000000>;
> >
> > };
> >
> > /* the usb phy of hsic0, hsic1 and otg are in the same place */
> > usb_phy: otg@125B0000 { #address-cells = <1>; #size-cells = <1>;
> > compatible = "samsung,exynos4210-usbphy"; reg = <0x125B0000 0x100>;
> > ranges;
> >
> > clocks = <&clock 2>, <&clock 305>; clock-names = "xusbxti", "otg";
> >  usbphy-sys { /* USB device and host PHY_CONTROL registers */ reg
> > = <0x10020704 0x8>; }; };
> >
> > ehci@12580000 { usb-phy = <&usb_phy>; status = "okay"; };
> > ohci@12590000 { status = "okay"; };
> >
> >
> > codec@13400000 { samsung,mfc-r = <0x43000000 0x800000>;
> > samsung,mfc-l = <0x51000000 0x800000>; status = "okay"; };
> >
> > serial@13800000 { status = "okay"; };
> >
> > serial@13810000 { status = "okay"; };
> >
> > serial@13820000 { status = "okay"; };
> >
> > serial@13830000 { status = "okay"; };
> >
> > fixed-rate-clocks { xxti { compatible = "samsung,clock-xxti";
> > clock-frequency = <0>; };
> >
> > xusbxti { compatible = "samsung,clock-xusbxti"; clock-frequency =
> > <24000000>; }; };
> >
> > i2c@13860000 { status = "okay"; samsung,i2c-sda-delay = <100>;
> > samsung,i2c-max-bus-freq = <200000>;
> >
> > wm8960@10 { compatible = "wlf,wm8960"; reg = <0x10>; }; }; };
> >>
> >
> > -- To unsubscribe from this list: send the line "unsubscribe
> > linux-samsung-soc" in the body of a message to
> > majordomo@vger.kernel.org More majordomo info at
> > http://vger.kernel.org/majordomo-info.html
> >
> >
> 
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.12 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
> 
> iQEcBAEBAgAGBQJSlDj0AAoJEPb4VsMIzTziji8H/jgZfK7ZArb6kK74jb/P8vOv
> OIsOw301smAp83LafMd1BWzInkhZnMp+4g/uTawjWDGPw3rJOiu8Qcyr4VmI1r4h
> oXfcVS+p27qAVsMN+11e9fFKu2DsDwxb/aidau6OAAi5+U3h0rHTptRzIzbqbnxp
> 5lOV1eldrnXSRIsUTYmaPVLUcVRAD0p8zcPmOH79XghrcHdTisYA/yjFgu2mQJgE
> QgaDaEgwoFwXrTkg/w+fHHZFdOUHhursSzIGR8HUKirK2Sg2KaPRU+MXPf8nVY8B
> 1MEX7pnI+7feOK20eNEc9H8GmCph8MnjCsY+9DxwxqDeBkP31BhTVGIxK+ajmzw=
> =aRRx
> -----END PGP SIGNATURE-----

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2013-12-02 12:58 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-24 12:07 linux 3.13-rc1 make dw_mmc-exynos more worse randy
2013-11-25  6:18 ` Olof Johansson
2013-11-25  8:33   ` Seungwon Jeon
2013-11-25 12:42     ` randy
2013-11-26  0:41   ` Tomasz Figa
2013-11-26  1:47     ` randy
2013-11-26  4:32       ` Jaehoon Chung
2013-11-26  6:00         ` randy
2013-12-01 12:30           ` [PATCH 1/1] ARM: dts: Add missing clock names for exynos4412 dwmmc node randy
2013-12-02 12:58           ` linux 3.13-rc1 make dw_mmc-exynos more worse Seungwon Jeon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).