This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/WL1837MODCOM8I: SDIO interface fails to initialize

Part Number: WL1837MODCOM8I
Other Parts Discussed in Thread: WL1837, DRA752, TPD12S015, TMP102, TLV320AIC3104, PMP, WL1271, TWL1200-Q1, TXS0108E

Tool/software: Linux

Hi,

I am trying to interface wl1837, to mmc3 on am572x, but I see that the SDIO interface fails with following error,

mmc2: error -110 whilst initialising SDIO card

Looking through the code its failing for  CMD52, that is sdio_enable_wide() fails.

Any pointers why this could be failing.

Thanks,

-Mike

  • Hi,

    Just to add I have following DT node:

    mmc@480ad000 {
    compatible = "ti,dra7-hsmmc", "ti,omap4-hsmmc";
    reg = <0x480ad000 0x400>;
    interrupts = <0x0 0x59 0x4>;
    ti,hwmods = "mmc3";
    ti,needs-special-reset;
    dmas = <0xc9 0x4d 0xc9 0x4e>;
    dma-names = "tx", "rx";
    status = "okay";
    sd-uhs-sdr12;
    sd-uhs-sdr25;
    sd-uhs-sdr50;
    vmmc-supply = <0x506>;
    bus-width = <4>;
    cap-power-off-card;
    keep-power-in-suspend;
    ti,non-removable;
    pinctrl-names = "default", "hs", "sdr12", "sdr25", "sdr50";
    pinctrl-0 = <0x500>;
    pinctrl-1 = <0x501>;
    pinctrl-2 = <0x502>;
    pinctrl-3 = <0x503>;
    pinctrl-4 = <0x504 0x505>;

    #address-cells = <1>;
    #size-cells = <0>;
    wlcore@0 {
    compatible = "ti,wl1837";
    reg = <2>;
    interrupt-parent = <0xcd>;
    interrupts = <9 0x4>; /* IRQ_TYPE_LEVEL_HIGH */
    };
    };

    Referring to link [1] I applied the 3 patches and I am using WILINK_MAINLINE=1 . When I load the modules I dont get any wlan interface created.

    [1] processors.wiki.ti.com/.../Add-wilink8-to-processor-sdk-3.0

    Thanks,
    Mike
  • Our WiFi expert will get back shortly.

    Thanks
  • Hi,

    There are other nodes which are related to wilink.

    Have you intialized also wlan_enable and wlan_irq gpios?

    Please see for example for the am57xx-evm:

    Especially the mmc3 node and the vmmcwl_fixed nodes.

    Also, can you attach kernel boot log ao we can look at it and see where it fails?

    Best Regards,

    Eyal

  • Hi Eyal,

    Yes I have initialized all the pins, during booting I can see CLK and CMD for MMC but no data. Following is my complete pinmux


    mmc3_pins_default {
    pinctrl-single,pins = <
    0x37c 0x60000 /* mmc3_clk.mmc3_clk */
    0x380 0x60000 /* mmc3_cmd.mmc3_cmd */
    0x384 0x60000 /* mmc3_dat0.mmc3_dat0 */
    0x388 0x60000 /* mmc3_dat1.mmc3_dat1 */
    0x38c 0x60000 /* mmc3_dat2.mmc3_dat2 */
    0x390 0x60000 /* mmc3_dat3.mmc3_dat3 */
    0x3cc 0x1000E /* gpio7[17] spi2_cs0 TWL_EN */
    >;
    linux,phandle = <0x500>;
    phandle = <0x500>;
    };

    mmc3_pins_hs {
    pinctrl-single,pins = <
    0x37c 0x60000 /* mmc3_clk.mmc3_clk */
    0x380 0x60000 /* mmc3_cmd.mmc3_cmd */
    0x384 0x60000 /* mmc3_dat0.mmc3_dat0 */
    0x388 0x60000 /* mmc3_dat1.mmc3_dat1 */
    0x38c 0x60000 /* mmc3_dat2.mmc3_dat2 */
    0x390 0x60000 /* mmc3_dat3.mmc3_dat3 */
    0x3cc 0x1000E /* gpio7[17] spi2_cs0 TWL_EN */
    >;
    linux,phandle = <0x501>;
    phandle = <0x501>;
    };

    mmc3_pins_sdr12 {
    pinctrl-single,pins = <
    0x37c 0x60000 /* mmc3_clk.mmc3_clk */
    0x380 0x60000 /* mmc3_cmd.mmc3_cmd */
    0x384 0x60000 /* mmc3_dat0.mmc3_dat0 */
    0x388 0x60000 /* mmc3_dat1.mmc3_dat1 */
    0x38c 0x60000 /* mmc3_dat2.mmc3_dat2 */
    0x390 0x60000 /* mmc3_dat3.mmc3_dat3 */
    0x3cc 0x1000E /* gpio7[17] spi2_cs0 TWL_EN */
    >;
    linux,phandle = <0x502>;
    phandle = <0x502>;
    };

    mmc3_pins_sdr25 {
    pinctrl-single,pins = <
    0x37c 0x60000 /* mmc3_clk.mmc3_clk */
    0x380 0x60000 /* mmc3_cmd.mmc3_cmd */
    0x384 0x60000 /* mmc3_dat0.mmc3_dat0 */
    0x388 0x60000 /* mmc3_dat1.mmc3_dat1 */
    0x38c 0x60000 /* mmc3_dat2.mmc3_dat2 */
    0x390 0x60000 /* mmc3_dat3.mmc3_dat3 */
    0x3cc 0x1000E /* gpio7[17] spi2_cs0 TWL_EN */
    >;
    linux,phandle = <0x503>;
    phandle = <0x503>;
    };

    mmc3_pins_sdr50 {
    pinctrl-single,pins = <
    0x37c 0x60100 /* mmc3_clk.mmc3_clk */
    0x380 0x60100 /* mmc3_cmd.mmc3_cmd */
    0x384 0x60100 /* mmc3_dat0.mmc3_dat0 */
    0x388 0x60100 /* mmc3_dat1.mmc3_dat1 */
    0x38c 0x60100 /* mmc3_dat2.mmc3_dat2 */
    0x390 0x60100 /* mmc3_dat3.mmc3_dat3 */
    0x3cc 0x1000E /* gpio7[17] spi2_cs0 TWL_EN */
    >;
    linux,phandle = <0x504>;
    phandle = <0x504>;
    };

    pinmux_vb4_wlan_pins {
    pinctrl-single,pins = <
    0x2F0 0x1000E /* gpio6[6] mcasp1_axr15 WLAN_EN */
    0x310 0x5000E /* gpio6[9] mcasp2_axr3 WLAN_IRQ */
    >;
    linux,phandle = <0x508>;
    phandle = <0x508>;
    };

    mmc3_iodelay_manual1_conf {
    pinctrl-single,pins = <
    0x678 0xe026d /* CFG_MMC3_CLK_IN */
    0x680 0x120053e /* CFG_MMC3_CLK_OUT */
    0x684 0x0 /* CFG_MMC3_CMD_IN */
    0x688 0x2c4 /* CFG_MMC3_CMD_OEN */
    0x68c 0x234 /* CFG_MMC3_CMD_OUT */
    0x690 0x0 /* CFG_MMC3_DAT0_IN */
    0x694 0x38f /* CFG_MMC3_DAT0_OEN */
    0x698 0x0 /* CFG_MMC3_DAT0_OUT */
    0x69c 0x0 /* CFG_MMC3_DAT1_IN */
    0x6a0 0x383 /* CFG_MMC3_DAT1_OEN */
    0x6a4 0xd2 /* CFG_MMC3_DAT1_OUT */
    0x6a8 0x0 /* CFG_MMC3_DAT2_IN */
    0x6ac 0x3ae /* CFG_MMC3_DAT2_OEN */
    0x6b0 0x930000 /* CFG_MMC3_DAT2_OUT */
    0x6b4 0x0 /* CFG_MMC3_DAT3_IN */
    0x6b8 0x438 /* CFG_MMC3_DAT3_OEN */
    0x6bc 0x1e6 /* CFG_MMC3_DAT3_OUT */
    >;
    linux,phandle = <0x505>;
    phandle = <0x505>;
    };

    wlanfixedregulator-vdd_3v3 {
    compatible = "regulator-fixed";
    regulator-name = "wlan_vdd_3v3";
    regulator-min-microvolt = <0x1b7740>;
    regulator-max-microvolt = <0x1b7740>;
    gpio = <0xcd 6 0>; /* gpio6[6] */
    enable-active-high;

    linux,phandle = <0x506>;
    phandle = <0x506>;
    };


    mmc@480ad000 {
    compatible = "ti,dra7-hsmmc", "ti,omap4-hsmmc";
    reg = <0x480ad000 0x400>;
    interrupts = <0x0 0x59 0x4>;
    ti,hwmods = "mmc3";
    ti,needs-special-reset;
    dmas = <0xc9 0x4d 0xc9 0x4e>;
    dma-names = "tx", "rx";
    status = "okay";
    sd-uhs-sdr12;
    sd-uhs-sdr25;
    sd-uhs-sdr50;
    vmmc-supply = <0x506>;
    bus-width = <0x4>;
    pinctrl-names = "default", "hs", "sdr12", "sdr25", "sdr50";
    cap-power-off-card;
    keep-power-in-suspend;
    ti,non-removable;
    pinctrl-0 = <0x500 0x508>;
    pinctrl-1 = <0x501 0x508>;
    pinctrl-2 = <0x502 0x508>;
    pinctrl-3 = <0x503 0x508>;
    pinctrl-4 = <0x504 0x505 0x508>;
    #address-cells = <1>;
    #size-cells = <0>;

    wlcore@0 {
    compatible = "ti,wl1837";
    reg = <0x2>;
    interrupt-parent = <0xcd>;
    interrupts = <9 0x4>; /* IRQ_TYPE_LEVEL_HIGH */
    };
    };

    Kernel Boot Log:

    [ 0.000000] Booting Linux on physical CPU 0x0
    [ 0.000000] Initializing cgroup subsys cpuset
    [ 0.000000] Initializing cgroup subsys cpu
    [ 0.000000] Initializing cgroup subsys cpuacct
    [ 0.000000] Linux version 4.4.54-rt63-g00eb0a0737 (mike@yocto) (gcc version 6.2.0 (GCC) ) #148 SMP PREEMPT RT Thu Jun 22 11:19:25 BST 2017
    [ 0.000000] CPU: ARMv7 Processor [412fc0f2] revision 2 (ARMv7), cr=30c5387d
    [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
    [ 0.000000] Reserved memory: created CMA memory pool at 0x0000000095800000, size 56 MiB
    [ 0.000000] Reserved memory: initialized node ipu2_cma@95800000, compatible id shared-dma-pool
    [ 0.000000] Reserved memory: created CMA memory pool at 0x0000000099000000, size 64 MiB
    [ 0.000000] Reserved memory: initialized node dsp1_cma@99000000, compatible id shared-dma-pool
    [ 0.000000] Reserved memory: created CMA memory pool at 0x000000009d000000, size 32 MiB
    [ 0.000000] Reserved memory: initialized node ipu1_cma@9d000000, compatible id shared-dma-pool
    [ 0.000000] Reserved memory: created CMA memory pool at 0x000000009f000000, size 8 MiB
    [ 0.000000] Reserved memory: initialized node dsp2_cma@9f000000, compatible id shared-dma-pool
    [ 0.000000] cma: Reserved 24 MiB at 0x00000000fe400000
    [ 0.000000] Forcing write-allocate cache policy for SMP
    [ 0.000000] Memory policy: Data cache writealloc
    [ 0.000000] OMAP4: Map 0x00000000ffd00000 to fe600000 for dram barrier
    [ 0.000000] On node 0 totalpages: 474368
    [ 0.000000] free_area_init_node: node 0, pgdat c0a0eb80, node_mem_map eeda2000
    [ 0.000000] DMA zone: 1728 pages used for memmap
    [ 0.000000] DMA zone: 0 pages reserved
    [ 0.000000] DMA zone: 147456 pages, LIFO batch:31
    [ 0.000000] HighMem zone: 326912 pages, LIFO batch:31
    [ 0.000000] DRA752 ES1.1
    [ 0.000000] PERCPU: Embedded 11 pages/cpu @eed21000 s15520 r8192 d21344 u45056
    [ 0.000000] pcpu-alloc: s15520 r8192 d21344 u45056 alloc=11*4096
    [ 0.000000] pcpu-alloc: [0] 0 [0] 1
    [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 472640
    [ 0.000000] Kernel command line: console=ttyO2,115200n8 root=PARTUUID=1e662821-02 rw rootfstype=ext4 rootwait
    [ 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
    [ 0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes)
    [ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
    [ 0.000000] Memory: 1679416K/1897472K available (6991K kernel code, 402K rwdata, 2524K rodata, 352K init, 350K bss, 29640K reserved, 188416K cma-reser)
    [ 0.000000] Virtual kernel memory layout:
    [ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
    [ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
    [ 0.000000] vmalloc : 0xf0800000 - 0xff800000 ( 240 MB)
    [ 0.000000] lowmem : 0xc0000000 - 0xf0000000 ( 768 MB)
    [ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
    [ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
    [ 0.000000] .text : 0xc0008000 - 0xc09530b4 (9517 kB)
    [ 0.000000] .init : 0xc0954000 - 0xc09ac000 ( 352 kB)
    [ 0.000000] .data : 0xc09ac000 - 0xc0a10b00 ( 403 kB)
    [ 0.000000] .bss : 0xc0a13000 - 0xc0a6aaac ( 351 kB)
    [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
    [ 0.000000] Preemptible hierarchical RCU implementation.
    [ 0.000000] RCU kthread priority: 1.
    [ 0.000000] NR_IRQS:16 nr_irqs:16 16
    [ 0.000000] ti_dt_clocks_register: failed to lookup clock node gmac_gmii_ref_clk_div
    [ 0.000000] OMAP clockevent source: timer1 at 32786 Hz
    [ 0.000000] Architected cp15 timer(s) running at 6.14MHz (phys).
    [ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x16af5adb9, max_idle_ns: 440795202250 ns
    [ 0.000004] sched_clock: 56 bits at 6MHz, resolution 162ns, wraps every 4398046511023ns
    [ 0.000011] Switching to timer-based delay loop, resolution 162ns
    [ 0.000309] clocksource: 32k_counter: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 58327039986419 ns
    [ 0.000312] OMAP clocksource: 32k_counter at 32768 Hz
    [ 0.000708] Console: colour dummy device 80x30
    [ 0.000866] WARNING: Your 'console=ttyO2' has been replaced by 'ttyS2'
    [ 0.000868] This ensures that you still see kernel messages. Please
    [ 0.000870] update your kernel commandline.
    [ 0.000890] Calibrating delay loop (skipped), value calculated using timer frequency.. 12.29 BogoMIPS (lpj=6147)
    [ 0.000893] pid_max: default: 32768 minimum: 301
    [ 0.000977] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
    [ 0.000983] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
    [ 0.001524] Initializing cgroup subsys io
    [ 0.001535] Initializing cgroup subsys memory
    [ 0.001554] Initializing cgroup subsys devices
    [ 0.001563] Initializing cgroup subsys freezer
    [ 0.001570] Initializing cgroup subsys perf_event
    [ 0.001577] Initializing cgroup subsys pids
    [ 0.001621] CPU: Testing write buffer coherency: ok
    [ 0.001820] /cpus/cpu@0 missing clock-frequency property
    [ 0.001876] /cpus/cpu@1 missing clock-frequency property
    [ 0.001886] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
    [ 0.001921] Setting up static identity map for 0x800082c0 - 0x80008320
    [ 0.014311] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
    [ 0.014400] Brought up 2 CPUs
    [ 0.014424] SMP: Total of 2 processors activated (24.58 BogoMIPS).
    [ 0.014431] CPU: All CPU(s) started in HYP mode.
    [ 0.014437] CPU: Virtualization extensions available.
    [ 0.014832] devtmpfs: initialized
    [ 0.043137] VFP support v0.3: implementor 41 architecture 4 part 30 variant f rev 0
    [ 0.044101] omap_hwmod: l3_main_2 using broken dt data from ocp
    [ 0.249888] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275000 ns
    [ 0.249912] futex hash table entries: 512 (order: 3, 32768 bytes)
    [ 0.253646] pinctrl core: initialized pinctrl subsystem
    [ 0.254538] NET: Registered protocol family 16
    [ 0.255663] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [ 0.264404] gpiochip_add: registered GPIOs 0 to 31 on device: gpio
    [ 0.265014] OMAP GPIO hardware version 0.1
    [ 0.266048] gpiochip_add: registered GPIOs 32 to 63 on device: gpio
    [ 0.267010] gpiochip_add: registered GPIOs 64 to 95 on device: gpio
    [ 0.268363] gpiochip_add: registered GPIOs 96 to 127 on device: gpio
    [ 0.269350] gpiochip_add: registered GPIOs 128 to 159 on device: gpio
    [ 0.270434] irq: no irq domain found for /ocp/l4@4a000000/scm@2000/pinmux@1400 !
    [ 0.295841] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
    [ 0.295853] hw-breakpoint: maximum watchpoint size is 8 bytes.
    [ 0.296327] omap4_sram_init:Unable to allocate sram needed to handle errata I688
    [ 0.296337] omap4_sram_init:Unable to get sram pool needed to handle errata I688
    [ 0.296962] OMAP DMA hardware revision 0.0
    [ 0.318706] omap-dma-engine 4a056000.dma-controller: OMAP DMA engine driver (LinkedList1/2/3 supported)
    [ 0.320032] edma 43300000.edma: memcpy is disabled
    [ 0.324851] edma 43300000.edma: TI EDMA DMA engine driver
    [ 0.325268] of_get_named_gpiod_flags: parsed 'gpio' property of node '/wlanfixedregulator-vdd_3v3[0]' - status (0)
    [ 0.325562] of_get_named_gpiod_flags: can't parse 'gpio' property of node '/fixedregulator-vdd_3v3[0]'
    [ 0.325764] of_get_named_gpiod_flags: can't parse 'gpio' property of node '/fixedregulator-aic_dvdd[0]'
    [ 0.326003] of_get_named_gpiod_flags: parsed 'gpio' property of node '/fixedregulator-vtt[0]' - status (0)
    [ 0.329136] omap-iommu 40d01000.mmu: 40d01000.mmu registered
    [ 0.329381] omap-iommu 40d02000.mmu: 40d02000.mmu registered
    [ 0.329616] omap-iommu 58882000.mmu: 58882000.mmu registered
    [ 0.329844] omap-iommu 55082000.mmu: 55082000.mmu registered
    [ 0.330209] omap-iommu 41501000.mmu: 41501000.mmu registered
    [ 0.330451] omap-iommu 41502000.mmu: 41502000.mmu registered
    [ 0.333368] palmas 0-0058: Irq flag is 0x00000008
    [ 0.347125] palmas 0-0058: Muxing GPIO 2f, PWM 0, LED 0
    [ 0.369922] gpiochip_find_base: found new base at 504
    [ 0.370026] gpiochip_add: registered GPIOs 504 to 511 on device: 48070000.i2c:tps659038@58:tps659038_gpio
    [ 0.370428] omap_i2c 48070000.i2c: bus 0 rev0.12 at 400 kHz
    [ 0.370965] omap_i2c 48060000.i2c: bus 2 rev0.12 at 400 kHz
    [ 0.371169] media: Linux media interface: v0.10
    [ 0.371222] Linux video capture interface: v2.00
    [ 0.371264] pps_core: LinuxPPS API ver. 1 registered
    [ 0.371271] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [ 0.371298] PTP clock support registered
    [ 0.371350] EDAC MC: Ver: 3.0.0
    [ 0.372156] omap-mailbox 4883c000.mailbox: omap mailbox rev 0x400
    [ 0.372438] omap-mailbox 4883e000.mailbox: omap mailbox rev 0x400
    [ 0.372719] omap-mailbox 48840000.mailbox: omap mailbox rev 0x400
    [ 0.373034] omap-mailbox 48842000.mailbox: omap mailbox rev 0x400
    [ 0.373362] Advanced Linux Sound Architecture Driver Initialized.
    [ 0.373872] Bluetooth: Core ver 2.21
    [ 0.373941] NET: Registered protocol family 31
    [ 0.373949] Bluetooth: HCI device and connection manager initialized
    [ 0.373968] Bluetooth: HCI socket layer initialized
    [ 0.373981] Bluetooth: L2CAP socket layer initialized
    [ 0.374017] Bluetooth: SCO socket layer initialized
    [ 0.374385] clocksource: Switched to clocksource arch_sys_counter
    [ 0.385260] NET: Registered protocol family 2
    [ 0.385823] TCP established hash table entries: 8192 (order: 3, 32768 bytes)
    [ 0.385899] TCP bind hash table entries: 8192 (order: 5, 229376 bytes)
    [ 0.386180] TCP: Hash tables configured (established 8192 bind 8192)
    [ 0.386235] UDP hash table entries: 512 (order: 3, 32768 bytes)
    [ 0.386291] UDP-Lite hash table entries: 512 (order: 3, 32768 bytes)
    [ 0.386590] NET: Registered protocol family 1
    [ 0.386854] RPC: Registered named UNIX socket transport module.
    [ 0.386864] RPC: Registered udp transport module.
    [ 0.386871] RPC: Registered tcp transport module.
    [ 0.386878] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [ 0.386899] PCI: CLS 0 bytes, default 64
    [ 0.387930] hw perfevents: enabled with armv7_cortex_a15 PMU driver, 7 counters available
    [ 0.398350] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [ 0.399059] NFS: Registering the id_resolver key type
    [ 0.399087] Key type id_resolver registered
    [ 0.399095] Key type id_legacy registered
    [ 0.399159] ntfs: driver 2.1.32 [Flags: R/O].
    [ 0.408893] bounce: pool size: 64 pages
    [ 0.409056] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 248)
    [ 0.409072] io scheduler noop registered
    [ 0.409086] io scheduler deadline registered
    [ 0.409327] io scheduler cfq registered (default)
    [ 0.414669] pinctrl-single 4a003400.pinmux: 282 pins at pa fc003400 size 1128
    [ 0.424203] Serial: 8250/16550 driver, 10 ports, IRQ sharing disabled
    [ 0.426815] 48020000.serial: ttyS2 at MMIO 0x48020000 (irq = 203, base_baud = 3000000) is a 8250
    [ 1.388975] console [ttyS2] enabled
    [ 1.393032] 48068000.serial: ttyS5 at MMIO 0x48068000 (irq = 204, base_baud = 3000000) is a 8250
    [ 1.402330] 4ae2b000.serial: ttyS9 at MMIO 0x4ae2b000 (irq = 205, base_baud = 3000000) is a 8250
    [ 1.412312] [drm] Initialized drm 1.1.0 20060810
    [ 1.418924] OMAP DSS rev 6.1
    [ 1.422724] omapdss_dss 58000000.dss: bound 58001000.dispc (ops dispc_component_ops)
    [ 1.431134] omapdss_dss 58000000.dss: bound 58040000.encoder (ops hdmi5_component_ops)
    [ 1.440002] tpd12s015 encoder: GPIO lookup for consumer (null)
    [ 1.440013] tpd12s015 encoder: using device tree for GPIO lookup
    [ 1.440044] of_get_named_gpiod_flags: parsed 'gpios' property of node '/encoder[0]' - status (0)
    [ 1.440062] tpd12s015 encoder: GPIO lookup for consumer (null)
    [ 1.440071] tpd12s015 encoder: using device tree for GPIO lookup
    [ 1.440110] of_get_named_gpiod_flags: parsed 'gpios' property of node '/encoder[1]' - status (0)
    [ 1.440124] tpd12s015 encoder: GPIO lookup for consumer (null)
    [ 1.440133] tpd12s015 encoder: using device tree for GPIO lookup
    [ 1.440181] of_get_named_gpiod_flags: parsed 'gpios' property of node '/encoder[2]' - status (0)
    [ 1.440874] of_get_named_gpiod_flags: can't parse 'hpd-gpios' property of node '/connector[0]'
    [ 1.454135] loop: module loaded
    [ 1.457838] of_get_named_gpiod_flags: parsed 'bt-en-gpio' property of node '/kim[0]' - status (0)
    [ 1.457851] kim kim: nshutdown_gpio found 64
    [ 1.462168] (stk) :sysfs entries created
    [ 1.467869] of_get_named_gpiod_flags: parsed 'gpio-sck' property of node '/ocp/spi-gpio[0]' - status (0)
    [ 1.467894] of_get_named_gpiod_flags: parsed 'gpio-miso' property of node '/ocp/spi-gpio[0]' - status (0)
    [ 1.467919] of_get_named_gpiod_flags: parsed 'gpio-mosi' property of node '/ocp/spi-gpio[0]' - status (-517)
    [ 1.467930] spi_gpio 44000000.ocp:spi-gpio: gpio-mosi property not found, switching to no-tx mode
    [ 1.476878] of_get_named_gpiod_flags: parsed 'cs-gpios' property of node '/ocp/spi-gpio[0]' - status (-517)
    [ 1.476889] spi_gpio 44000000.ocp:spi-gpio: invalid cs-gpios property
    [ 1.483945] omap2_mcspi 480b8000.spi: registered master spi1
    [ 1.484155] clear epol: 0.00
    [ 1.487056] spi spi1.0: setup: speed 9600000, sample leading edge, clk normal conf0: 20060390
    [ 1.487065] Force cleared 0
    [ 1.489875] spi spi1.0: setup mode 0, cs_high, 8 bits/w, 10000000 Hz max --> 0
    [ 1.490233] omap2_mcspi 480b8000.spi: registered child spi1.0
    [ 1.491363] libphy: Fixed MDIO Bus: probed
    [ 1.496082] CAN device driver interface
    [ 1.534414] davinci_mdio 48485000.mdio: davinci mdio revision 1.6
    [ 1.540539] davinci_mdio 48485000.mdio: detected phy mask fffffff9
    [ 1.550784] libphy: 48485000.mdio: probed
    [ 1.554817] davinci_mdio 48485000.mdio: phy[1]: device 48485000.mdio:01, driver Micrel KSZ9031 Gigabit PHY
    [ 1.564516] davinci_mdio 48485000.mdio: phy[2]: device 48485000.mdio:02, driver Micrel KSZ9031 Gigabit PHY
    [ 1.574852] cpsw 48484000.ethernet: Detected MACID = 74:da:ea:47:c6:ec
    [ 1.581499] cpsw 48484000.ethernet: cpts: overflow check period 8000
    [ 1.588578] cpsw 48484000.ethernet: cpsw: Detected MACID = 74:da:ea:47:c6:ed
    [ 1.597061] mousedev: PS/2 mouse device common for all mice
    [ 1.604118] i2c /dev entries driver
    [ 1.609072] of_get_named_gpiod_flags: parsed 'gpios' property of node '/gpio_fan[0]' - status (0)
    [ 1.610334] gpio-fan gpio_fan: GPIO fan initialized
    [ 1.616238] tmp102 0-0048: initialized
    [ 1.620615] Bluetooth: HCI UART driver ver 2.3
    [ 1.625089] Bluetooth: Generic Bluetooth SDIO driver ver 0.1
    [ 1.637913] omap_hsmmc 4809c000.mmc: GPIO lookup for consumer cd
    [ 1.637923] omap_hsmmc 4809c000.mmc: using device tree for GPIO lookup
    [ 1.637951] of_get_named_gpiod_flags: parsed 'cd-gpios' property of node '/ocp/mmc@4809c000[0]' - status (0)
    [ 1.637966] omap_hsmmc 4809c000.mmc: Got CD GPIO
    [ 1.642607] omap_hsmmc 4809c000.mmc: GPIO lookup for consumer wp
    [ 1.642617] omap_hsmmc 4809c000.mmc: using device tree for GPIO lookup
    [ 1.642628] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/mmc@4809c000[0]'
    [ 1.642638] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/mmc@4809c000[0]'
    [ 1.642647] omap_hsmmc 4809c000.mmc: using lookup tables for GPIO lookup
    [ 1.642657] omap_hsmmc 4809c000.mmc: lookup for GPIO wp failed
    [ 1.672951] omap_hsmmc 480ad000.mmc: GPIO lookup for consumer cd
    [ 1.672962] omap_hsmmc 480ad000.mmc: using device tree for GPIO lookup
    [ 1.672973] of_get_named_gpiod_flags: can't parse 'cd-gpios' property of node '/ocp/mmc@480ad000[0]'
    [ 1.672984] of_get_named_gpiod_flags: can't parse 'cd-gpio' property of node '/ocp/mmc@480ad000[0]'
    [ 1.672993] omap_hsmmc 480ad000.mmc: using lookup tables for GPIO lookup
    [ 1.673002] omap_hsmmc 480ad000.mmc: lookup for GPIO cd failed
    [ 1.673013] omap_hsmmc 480ad000.mmc: GPIO lookup for consumer wp
    [ 1.673022] omap_hsmmc 480ad000.mmc: using device tree for GPIO lookup
    [ 1.673032] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/mmc@480ad000[0]'
    [ 1.673041] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/mmc@480ad000[0]'
    [ 1.673049] omap_hsmmc 480ad000.mmc: using lookup tables for GPIO lookup
    [ 1.673058] omap_hsmmc 480ad000.mmc: lookup for GPIO wp failed
    [ 1.695872] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led@0[0]' - status (0)
    [ 1.696007] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led@1[0]' - status (0)
    [ 1.696124] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led@2[0]' - status (0)
    [ 1.696254] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/led@3[0]' - status (0)
    [ 1.698962] davinci-mcasp 48468000.mcasp: ERRATA i868 workaround is enabled
    [ 1.706317] nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
    [ 1.713167] ip_tables: (C) 2000-2006 Netfilter Core Team
    [ 1.719286] NET: Registered protocol family 10
    [ 1.725679] sit: IPv6 over IPv4 tunneling driver
    [ 1.730917] NET: Registered protocol family 17
    [ 1.735437] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.
    [ 1.748105] can: controller area network core (rev 20120528 abi 9)
    [ 1.754407] NET: Registered protocol family 29
    [ 1.758875] can: raw protocol (rev 20120528)
    [ 1.763171] can: broadcast manager protocol (rev 20120528 t)
    [ 1.768868] can: netlink gateway (rev 20130117) max_hops=1
    [ 1.774598] Bluetooth: RFCOMM TTY layer initialized
    [ 1.779506] Bluetooth: RFCOMM socket layer initialized
    [ 1.784680] Bluetooth: RFCOMM ver 1.11
    [ 1.788462] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
    [ 1.793805] Bluetooth: BNEP socket layer initialized
    [ 1.798849] 8021q: 802.1Q VLAN Support v1.8
    [ 1.803232] Key type dns_resolver registered
    [ 1.807614] omap_voltage_late_init: Voltage driver support not added
    [ 1.814247] Power Management for TI OMAP4+ devices.
    [ 1.819428] Registering SWP/SWPB emulation handler
    [ 1.827228] dmm 4e000000.dmm: initialized all PAT entries
    [ 1.834849] mmc0: error -110 dbg50
    [ 1.836447] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
    [ 1.836451] [drm] No driver support for vblank timestamp query.
    [ 1.836476] omapdrm omapdrm.0: No connectors reported connected with modes
    [ 1.836484] [drm] Cannot find any crtc or sizes - going 1024x768
    [ 1.842063] [drm] Enabling DMM ywrap scrolling
    [ 1.874544] Console: switching to colour frame buffer device 128x48
    [ 1.881766] mmc0: error -110 dbg50
    [ 1.889200] mmc0: error -110 dbg1
    [ 1.893202] omapdrm omapdrm.0: fb0: omapdrm frame buffer device
    [ 1.903472] [drm] Initialized omapdrm 1.0.0 20110917 on minor 0
    [ 1.910002] gpiochip_add: registered GPIOs 160 to 191 on device: gpio
    [ 1.913703] mmc0: host does not support reading read-only switch, assuming write-enable
    [ 1.915704] mmc0: new high speed SDHC card at address 59b4
    [ 1.920423] mmcblk0: mmc0:59b4 USD 7.51 GiB
    [ 1.921473] mmcblk0: p1 p2
    [ 1.922515] mmc1: error -110 dbg50
    [ 1.922885] mmc1: error -110 dbg50
    [ 1.929080] omap_hsmmc 480ad000.mmc: card claims to support voltages below defined range
    [ 1.939204] mmc1: error -110 dbg50
    [ 1.939207] mmc2 error -110 dbg41
    [ 1.939209] mmc2 error -110 dbg30
    [ 1.939211] mmc2 error -110 dbg34
    [ 1.939214] mmc1: error -110 dbg25
    [ 1.939219] mmc1: error -110 dbg3
    [ 1.939223] mmc1: error -110 whilst initialising SDIO card
    [ 1.978482] gpiochip_add: registered GPIOs 192 to 223 on device: gpio
    [ 1.998097] gpiochip_add: registered GPIOs 224 to 255 on device: gpio
    [ 1.998808] of_get_named_gpiod_flags: parsed 'gpio-sck' property of node '/ocp/spi-gpio[0]' - status (0)
    [ 1.998834] of_get_named_gpiod_flags: parsed 'gpio-miso' property of node '/ocp/spi-gpio[0]' - status (0)
    [ 1.998859] of_get_named_gpiod_flags: parsed 'gpio-mosi' property of node '/ocp/spi-gpio[0]' - status (0)
    [ 1.998929] of_get_named_gpiod_flags: parsed 'cs-gpios' property of node '/ocp/spi-gpio[0]' - status (0)
    [ 1.998968] of_get_named_gpiod_flags: parsed 'cs-gpios' property of node '/ocp/spi-gpio[0]' - status (0)
    [ 1.999158] spi_gpio 44000000.ocp:spi-gpio: registered master spi32766 (dynamic)
    [ 1.999257] spi spi32766.0: spi_bitbang_setup, 10000 nsec/bit
    [ 1.999279] spi spi32766.0: setup mode 0, cs_high, 8 bits/w, 100000 Hz max --> 0
    [ 1.999525] spi_gpio 44000000.ocp:spi-gpio: registered child spi32766.0
    [ 2.000026] hctosys: unable to open rtc device (rtc0)
    [ 2.020144] wlan_vdd_3v3: disabling
    [ 2.023658] vdd_3v3: disabling
    [ 2.026728] aic_dvdd_fixed: disabling
    [ 2.030574] ldousb: disabling
    [ 2.033988] ALSA device list:
    [ 2.036971] No soundcards found.
    [ 2.944548] EXT4-fs (mmcblk0p2): recovery complete
    [ 2.989323] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
    [ 2.997482] VFS: Mounted root (ext4 filesystem) on device 179:2.
    [ 3.004229] devtmpfs: mounted
    [ 3.007469] Freeing unused kernel memory: 352K (c0954000 - c09ac000)
    [ 3.263305] systemd[1]: System time before build time, advancing clock.
    [ 3.298031] random: systemd: uninitialized urandom read (16 bytes read, 15 bits of entropy available)
    [ 3.320299] random: systemd: uninitialized urandom read (16 bytes read, 15 bits of entropy available)
    [ 3.331860] systemd[1]: systemd 230 running in system mode. (+PAM -AUDIT -SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP -GCRYPT +GNUTLS)
    [ 3.350331] systemd[1]: Detected architecture arm.
    [ 3.414097] random: systemd-gpt-aut: uninitialized urandom read (16 bytes read, 17 bits of entropy available)
    [ 3.420549] random: systemd-sysv-ge: uninitialized urandom read (16 bytes read, 17 bits of entropy available)
    [ 3.443498] random: systemd-gpt-aut: uninitialized urandom read (16 bytes read, 17 bits of entropy available)
    [ 3.580722] random: systemd: uninitialized urandom read (16 bytes read, 20 bits of entropy available)
    [ 3.590622] random: systemd: uninitialized urandom read (16 bytes read, 20 bits of entropy available)
    [ 3.600176] random: systemd: uninitialized urandom read (16 bytes read, 20 bits of entropy available)
    [ 3.609986] random: systemd: uninitialized urandom read (16 bytes read, 20 bits of entropy available)
    [ 3.631701] random: systemd: uninitialized urandom read (16 bytes read, 20 bits of entropy available)
    [ 3.820890] systemd[1]: Created slice User and Session Slice.
    [ 3.834724] systemd[1]: Listening on udev Kernel Socket.
    [ 3.846761] systemd[1]: Listening on /dev/initctl Compatibility Named Pipe.
    [ 3.862819] systemd[1]: Listening on Journal Socket.
    [ 3.874637] systemd[1]: Reached target Remote File Systems.
    [ 3.887724] systemd[1]: Listening on Journal Socket (/dev/log).
    [ 3.900810] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [ 3.917743] systemd[1]: Listening on Syslog Socket.
    [ 3.928629] systemd[1]: Reached target Swap.
    [ 3.938824] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
    [ 3.956611] systemd[1]: Reached target Paths.
    [ 3.966838] systemd[1]: Listening on Network Service Netlink Socket.
    [ 3.981324] systemd[1]: Created slice System Slice.
    [ 4.000758] systemd[1]: Starting Load Kernel Modules...
    [ 4.012598] systemd[1]: Created slice system-getty.slice.
    [ 4.024359] CMEMK module: reference Linux version 4.4.54
    [ 4.030673] allocated heap buffer 0x40500000 of size 0x100000
    [ 4.036482] cmemk initialized
    [ 4.042793] systemd[1]: Starting Setup Virtual Console...
    [ 4.060260] systemd[1]: Mounting Temporary Directory...
    [ 4.082608] systemd[1]: Mounting Debug File System...
    [ 4.095531] systemd[1]: Created slice system-serial\x2dgetty.slice.
    [ 4.115766] systemd[1]: Starting Remount Root and Kernel File Systems...
    [ 4.132268] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
    [ 4.137672] systemd[1]: Mounting POSIX Message Queue File System...
    [ 4.163814] systemd[1]: Starting Journal Service...
    [ 4.174821] systemd[1]: Listening on udev Control Socket.
    [ 4.187679] systemd[1]: Reached target Slices.
    [ 4.209135] systemd[1]: Mounted Debug File System.
    [ 4.223720] systemd[1]: Mounted POSIX Message Queue File System.
    [ 4.237704] systemd[1]: Mounted Temporary Directory.
    [ 4.251642] systemd[1]: Started Load Kernel Modules.
    [ 4.265514] systemd[1]: Started Setup Virtual Console.
    [ 4.279539] systemd[1]: Started Remount Root and Kernel File Systems.
    [ 4.294133] systemd[1]: Started Journal Service.
    [ 4.448009] systemd-journald[212]: Received request to flush runtime journal from PID 1
    [ 5.351286] omap-rproc 58820000.ipu: assigned reserved memory node ipu1_cma@9d000000
    [ 5.362556] remoteproc0: 58820000.ipu is available
    [ 5.367542] remoteproc0: Note: remoteproc is still under development and considered experimental.
    [ 5.376544] remoteproc0: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [ 5.387766] remoteproc0: Direct firmware load for dra7-ipu1-fw.xem4 failed with error -2
    [ 5.395566] omap-rproc 55020000.ipu: assigned reserved memory node ipu2_cma@95800000
    [ 5.403916] remoteproc0: failed to load dra7-ipu1-fw.xem4
    [ 5.417301] remoteproc1: 55020000.ipu is available
    [ 5.422349] remoteproc1: Note: remoteproc is still under development and considered experimental.
    [ 5.431555] remoteproc1: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [ 5.442546] remoteproc1: Direct firmware load for dra7-ipu2-fw.xem4 failed with error -2
    [ 5.450886] remoteproc1: failed to load dra7-ipu2-fw.xem4
    [ 5.452699] omap-rproc 40800000.dsp: assigned reserved memory node dsp1_cma@99000000
    [ 5.468659] remoteproc2: 40800000.dsp is available
    [ 5.473754] remoteproc2: Note: remoteproc is still under development and considered experimental.
    [ 5.482755] remoteproc2: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [ 5.493265] remoteproc2: Direct firmware load for dra7-dsp1-fw.xe66 failed with error -2
    [ 5.501566] omap-rproc 41000000.dsp: assigned reserved memory node dsp2_cma@9f000000
    [ 5.509570] remoteproc2: failed to load dra7-dsp1-fw.xe66
    [ 5.515334] remoteproc3: 41000000.dsp is available
    [ 5.520235] remoteproc3: Note: remoteproc is still under development and considered experimental.
    [ 5.535854] remoteproc3: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [ 5.555776] remoteproc3: Direct firmware load for dra7-dsp2-fw.xe66 failed with error -2
    [ 5.565948] remoteproc3: failed to load dra7-dsp2-fw.xe66
    [ 5.859316] omap-des 480a5000.des: OMAP DES hw accel rev: 2.2
    [ 5.866248] alg: skcipher: setkey failed on test 5 for ecb-des-omap: flags=100
    [ 5.874334] alg: skcipher-ddst: setkey failed on test 5 for ecb-des-omap: flags=100
    [ 5.878600] mcp251x spi32766.0: spi_bitbang_setup, 10000 nsec/bit
    [ 5.878621] mcp251x spi32766.0: setup mode 0, cs_high, 8 bits/w, 100000 Hz max --> 0
    [ 5.883446] alg: skcipher-ddst: setkey failed on test 5 for ecb-des-omap: flags=100
    [ 5.922095] mcp251x_hw_reset() read reg : CANSTAT 0
    [ 5.925801] omap_rng 48090000.rng: OMAP Random Number Generator ver. 20
    [ 5.934413] mcp251x_hw_reset() read reg : CANCTRL 0
    [ 5.940053] mcp251x spi32766.0: CANCTRL 0x00
    [ 5.940063] mcp251x_hw_probe() ctrl invalid
    [ 5.976034] rtc-ds1307 2-006f: read: b0 05 14 2d 22 06 17
    [ 5.976052] rtc-ds1307 2-006f: read secs=30, mins=5, hours=14, mday=22, mon=5, year=117, wday=4
    [ 5.976438] rtc-ds1307 2-006f: read: b0 05 14 2d 22 06 17
    [ 5.976453] rtc-ds1307 2-006f: read secs=30, mins=5, hours=14, mday=22, mon=5, year=117, wday=4
    [ 5.976844] rtc-ds1307 2-006f: mcp794xx_read_alarm, sec=0 min=0 hour=0 wday=0 mday=1 mon=0 enabled=0 polarity=0 irq=0 match=0
    [ 5.977164] rtc-ds1307 2-006f: read: b0 05 14 2d 22 06 17
    [ 5.977178] rtc-ds1307 2-006f: read secs=30, mins=5, hours=14, mday=22, mon=5, year=117, wday=4
    [ 5.977190] rtc rtc0: alarm rollover: year
    [ 5.977493] rtc-ds1307 2-006f: read: b0 05 14 2d 22 06 17
    [ 5.977508] rtc-ds1307 2-006f: read secs=30, mins=5, hours=14, mday=22, mon=5, year=117, wday=4
    [ 5.988580] rtc rtc0: mcp7941x: dev (254:0)
    [ 5.988605] rtc-ds1307 2-006f: rtc core: registered mcp7941x as rtc0
    [ 5.995564] rtc-ds1307 2-006f: got IRQ 436
    [ 5.996055] rtc-ds1307 2-006f: 64 bytes nvram
    [ 6.003732] of_get_named_gpiod_flags: can't parse 'gpio-reset' property of node '/ocp/i2c@48070000/tlv320aic3104@18[0]'
    [ 6.003846] vdd_3v3: supplied by regen1
    [ 6.010849] aic_dvdd_fixed: supplied by vdd_3v3
    [ 6.021039] c_can_platform 4ae3c000.can: c_can_platform device registered (regs=fce3c000, irq=259)
    [ 6.075333] c_can_platform 48480000.can: c_can_platform device registered (regs=fa480000, irq=260)
    [ 6.139076] rtc rtc1: 48070000.i2c:tps659: dev (254:1)
    [ 6.139094] palmas-rtc 48070000.i2c:tps659038@58:tps659038_rtc: rtc core: registered 48070000.i2c:tps659 as rtc1
    [ 6.174614] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: GPIO lookup for consumer id
    [ 6.174633] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: using device tree for GPIO lookup
    [ 6.174651] of_get_named_gpiod_flags: can't parse 'id-gpios' property of node '/ocp/i2c@48070000/tps659038@58/tps659038_usb[0]'
    [ 6.174668] of_get_named_gpiod_flags: can't parse 'id-gpio' property of node '/ocp/i2c@48070000/tps659038@58/tps659038_usb[0]'
    [ 6.174682] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: using lookup tables for GPIO lookup
    [ 6.174699] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: lookup for GPIO id failed
    [ 6.174716] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: GPIO lookup for consumer vbus
    [ 6.174730] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: using device tree for GPIO lookup
    [ 6.174750] of_get_named_gpiod_flags: can't parse 'vbus-gpios' property of node '/ocp/i2c@48070000/tps659038@58/tps659038_usb[0]'
    [ 6.174818] of_get_named_gpiod_flags: parsed 'vbus-gpio' property of node '/ocp/i2c@48070000/tps659038@58/tps659038_usb[0]' - status (0)
    [ 6.333504] rtc rtc2: 48838000.rtc: dev (254:2)
    [ 6.333522] omap_rtc 48838000.rtc: rtc core: registered 48838000.rtc as rtc2
    [ 6.564799] SCSI subsystem initialized
    [ 6.609109] vpe 489d0000.vpe: loading firmware vpdma-1b8.bin
    [ 6.630699] vpe 489d0000.vpe: Device registered as /dev/video0
    [ 6.638189] libata version 3.00 loaded.
    [ 6.685824] ahci 4a140000.sata: SSS flag set, parallel bus scan disabled
    [ 6.692864] ahci 4a140000.sata: AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl platform mode
    [ 6.701751] ahci 4a140000.sata: flags: 64bit ncq sntf stag pm led clo only pmp pio slum part ccc apst
    [ 6.782187] scsi host0: ahci
    [ 6.808128] ata1: SATA max UDMA/133 mmio [mem 0x4a140000-0x4a1410ff] port 0x100 irq 249
    [ 6.967885] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
    [ 7.000131] omap-sham 4b101000.sham: hw accel on OMAP rev 4.3
    [ 7.090670] omap-hdmi-audio omap-hdmi-audio.0.auto: snd-soc-dummy-dai <-> 58040000.encoder mapping ok
    [ 7.121437] ata1: SATA link down (SStatus 0 SControl 300)
    [ 7.121499] (stc): chnl_id list empty :4
    [ 7.121499] (stk) : st_kim_start
    [ 7.228287] (stk) :ldisc_install = 1<7>[ 7.342909] of_get_named_gpiod_flags: can't parse 'simple-audio-card,hp-det-gpio' property of node '/sound@0'
    [ 7.342924] of_get_named_gpiod_flags: can't parse 'simple-audio-card,mic-det-gpio' property of node '/sound@0[0]'
    [ 7.347503] asoc-simple-card sound@0: tlv320aic3x-hifi <-> 48468000.mcasp mapping ok
    [ 7.649274] ti-pruss 4b200000.pruss: creating PRU cores and other child platform devices
    [ 7.668360] irq: no irq domain found for /ocp/pruss@4b200000/intc@4b220000 !
    [ 7.682206] irq: no irq domain found for /ocp/pruss@4b200000/intc@4b220000 !
    [ 7.697670] omap-aes 4b500000.aes: OMAP AES hw accel rev: 3.3
    [ 7.741087] ti-pruss 4b280000.pruss: creating PRU cores and other child platform devices
    [ 7.769562] irq: no irq domain found for /ocp/pruss@4b280000/intc@4b2a0000 !
    [ 7.784948] irq: no irq domain found for /ocp/pruss@4b280000/intc@4b2a0000 !
    [ 7.806032] omap-aes 4b700000.aes: OMAP AES hw accel rev: 3.3
    [ 7.902082] remoteproc4: 4b234000.pru0 is available
    [ 7.907136] remoteproc4: Note: remoteproc is still under development and considered experimental.
    [ 7.938470] remoteproc4: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [ 7.938630] remoteproc4: Direct firmware load for am57xx-pru1_0-fw failed with error -2
    [ 7.938638] remoteproc4: failed to load am57xx-pru1_0-fw
    [ 7.938684] pru-rproc 4b234000.pru0: booting the PRU core manually
    [ 7.938689] remoteproc4: powering up 4b234000.pru0
    [ 7.938725] remoteproc4: Direct firmware load for am57xx-pru1_0-fw failed with error -2
    [ 7.938731] remoteproc4: request_firmware failed: -2
    [ 7.938737] pru-rproc 4b234000.pru0: rproc_boot failed
    [ 7.982571] remoteproc4: releasing 4b234000.pru0
    [ 7.985579] pru-rproc: probe of 4b234000.pru0 failed with error -2
    [ 8.010695] remoteproc4: 4b238000.pru1 is available
    [ 8.022463] remoteproc4: Note: remoteproc is still under development and considered experimental.
    [ 8.032315] remoteproc4: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [ 8.043831] remoteproc4: Direct firmware load for am57xx-pru1_1-fw failed with error -2
    [ 8.052993] remoteproc4: failed to load am57xx-pru1_1-fw
    [ 8.058925] pru-rproc 4b238000.pru1: booting the PRU core manually
    [ 8.069514] remoteproc4: powering up 4b238000.pru1
    [ 8.074955] remoteproc4: Direct firmware load for am57xx-pru1_1-fw failed with error -2
    [ 8.083250] remoteproc4: request_firmware failed: -2
    [ 8.088668] pru-rproc 4b238000.pru1: rproc_boot failed
    [ 8.105844] remoteproc4: releasing 4b238000.pru1
    [ 8.114343] pru-rproc: probe of 4b238000.pru1 failed with error -2
    [ 8.128116] remoteproc4: 4b2b4000.pru0 is available
    [ 8.133173] remoteproc4: Note: remoteproc is still under development and considered experimental.
    [ 8.142561] remoteproc4: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [ 8.153152] remoteproc4: Direct firmware load for am57xx-pru2_0-fw failed with error -2
    [ 8.161340] remoteproc4: failed to load am57xx-pru2_0-fw
    [ 8.166800] pru-rproc 4b2b4000.pru0: booting the PRU core manually
    [ 8.173845] remoteproc4: powering up 4b2b4000.pru0
    [ 8.178898] remoteproc4: Direct firmware load for am57xx-pru2_0-fw failed with error -2
    [ 8.187461] remoteproc4: request_firmware failed: -2
    [ 8.192547] pru-rproc 4b2b4000.pru0: rproc_boot failed
    [ 8.206701] remoteproc4: releasing 4b2b4000.pru0
    [ 8.213205] pru-rproc: probe of 4b2b4000.pru0 failed with error -2
    [ 8.227146] remoteproc4: 4b2b8000.pru1 is available
    [ 8.231753] (stk) :ldisc installation timeout
    [ 8.238847] (stk) :ldisc_install = 0
    [ 8.238847] remoteproc4: Note: remoteproc is still under development and considered experimental.
    [ 8.252482] remoteproc4: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [ 8.263822] remoteproc4: Direct firmware load for am57xx-pru2_1-fw failed with error -2
    [ 8.272025] remoteproc4: failed to load am57xx-pru2_1-fw
    [ 8.277468] pru-rproc 4b2b8000.pru1: booting the PRU core manually
    [ 8.283732] remoteproc4: powering up 4b2b8000.pru1
    [ 8.288841] remoteproc4: Direct firmware load for am57xx-pru2_1-fw failed with error -2
    [ 8.297353] remoteproc4: request_firmware failed: -2
    [ 8.302555] pru-rproc 4b2b8000.pru1: rproc_boot failed
    [ 8.311596] remoteproc4: releasing 4b2b8000.pru1
    [ 8.317215] pru-rproc: probe of 4b2b8000.pru1 failed with error -2
    [ 8.426359] net eth1: initializing cpsw version 1.15 (0)
    [ 8.440704] net eth0: initialized cpsw ale version 1.4
    [ 8.457747] net eth0: ALE Table size 1024
    [ 8.559420] net eth1: phy found : id is : 0x221622
    [ 8.594647] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
    [ 8.610125] 8021q: adding VLAN 0 to HW filter on device eth1
    [ 8.655146] net eth0: initializing cpsw version 1.15 (0)
    [ 8.725439] net eth0: phy found : id is : 0x221622
    [ 8.745964] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
    [ 8.757749] 8021q: adding VLAN 0 to HW filter on device eth0
    [ 8.800509] usbcore: registered new interface driver usbfs
    [ 8.810654] usbcore: registered new interface driver hub
    [ 8.821984] usbcore: registered new device driver usb
    [ 8.886674] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
    [ 8.893145] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 1
    [ 8.907100] xhci-hcd xhci-hcd.1.auto: hcc params 0x0220f04c hci version 0x100 quirks 0x00210010
    [ 8.916635] xhci-hcd xhci-hcd.1.auto: irq 439, io mem 0x48890000
    [ 8.925672] hub 1-0:1.0: USB hub found
    [ 8.930315] hub 1-0:1.0: 1 port detected
    [ 8.937865] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
    [ 8.943308] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 2
    [ 8.951100] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
    [ 8.961098] hub 2-0:1.0: USB hub found
    [ 8.967855] hub 2-0:1.0: 1 port detected
    [ 9.231400] (stk) : timed out waiting for ldisc to be un-installed
    [ 9.239401] usb 1-1: new high-speed USB device number 2 using xhci-hcd
    [ 9.277453] usb 2-1: new SuperSpeed USB device number 2 using xhci-hcd
    [ 9.303278] hub 2-1:1.0: USB hub found
    [ 9.307472] hub 2-1:1.0: 4 ports detected
    [ 9.344555] (stk) :ldisc_install = 1
    [ 9.431294] hub 1-1:1.0: USB hub found
    [ 9.435326] hub 1-1:1.0: 4 ports detected
    [ 10.347402] (stk) :ldisc installation timeout
    [ 10.351608] (stk) :ldisc_install = 0(stk) : timed out waiting for ldisc to be un-installed
    [ 11.466122] (stk) :ldisc_install = 1(stk) :ldisc installation timeout
    [ 12.472282] (stk) :ldisc_install = 0(stk) : timed out waiting for ldisc to be un-installed
    [ 13.587117] (stk) :ldisc_install = 1(stk) :ldisc installation timeout
    [ 14.593286] (stk) :ldisc_install = 0(stk) : timed out waiting for ldisc to be un-installed
    [ 15.708119] (stk) :ldisc_install = 1(stk) :ldisc installation timeout
    [ 16.714285] (stk) :ldisc_install = 0(stk) : timed out waiting for ldisc to be un-installed
    [ 17.829119] (stk) :ldisc_install = 1(stk) :ldisc installation timeout
    [ 18.835285] (stk) :ldisc_install = 0(stk) : timed out waiting for ldisc to be un-installed
    [ 19.845128] Bluetooth: st_register failed -22
    [ 20.658015] cpsw 48484000.ethernet eth1: Link is Up - 100Mbps/Full - flow control rx/tx
    [ 20.666090] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
    [ 52.072432] random: nonblocking pool is initialized
    [ 52.279320] net eth1: initializing cpsw version 1.15 (0)
    [ 52.355050] net eth1: phy found : id is : 0x221622
    [ 52.364460] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
    [ 52.371901] 8021q: adding VLAN 0 to HW filter on device eth1
    [ 68.486017] cpsw 48484000.ethernet eth1: Link is Up - 100Mbps/Full - flow control rx/tx
    [ 68.494098] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
    [ 71.559420] rtc-ds1307 2-006f: write secs=36, mins=6, hours=14, mday=22, mon=5, year=117, wday=4
    [ 71.559436] rtc-ds1307 2-006f: write: b6 06 14 0d 22 06 17
    [ 71.560003] rtc-ds1307 2-006f: read: b6 06 14 2d 22 06 17
    [ 71.560018] rtc-ds1307 2-006f: read secs=36, mins=6, hours=14, mday=22, mon=5, year=117, wday=4


    =================================================

    This where it fails " mmc1: error -110 whilst initialising SDIO card" traversing through the code it fails while setting the bus width.

    Just to add I have got bluetooth working.

    Thanks,
    Mike
  • Hi Eyal,

    I have proceeded further by adding max-frequency=<15000000>; property in DT. But now I get the kernel warning as follows:

    root@vb4:~# insmod /lib/modules/4.4.54-rt63-g00eb0a0737/kernel/drivers/net/wireless/ti/wlcore/wlcore_sdio.ko
    [ 137.528297] wl18xx_driver wl18xx.1.auto: Direct firmware load for ti-connectivity/wl1271-nvs.bin failed with error -2
    [ 137.538958] wl18xx_driver wl18xx.1.auto: Falling back to user helper

    [ 137.898748] ------------[ cut here ]------------
    [ 137.903406] WARNING: CPU: 0 PID: 422 at /home/mike/kernel-source/drivers/net/wireless/ti/wlcore/sdio.c:145)
    [ 137.922567] Modules linked in: wl18xx wlcore_sdio xhci_plat_hcd xhci_hcd usbcore wlcore mac80211 cfg80211 pru_rproc dwc3 pruss_intc udc_core sha512_ge]
    [ 137.975530] CPU: 0 PID: 422 Comm: kworker/0:3 Tainted: G W O 4.4.54-rt63-g00eb0a0737 #162
    [ 137.975533] Hardware name: Generic DRA74X (Flattened Device Tree)
    [ 137.975545] Workqueue: events request_firmware_work_func
    [ 137.975549] Backtrace:
    [ 137.975565] [<c0012180>] (dump_backtrace) from [<c0012378>] (show_stack+0x18/0x1c)
    [ 137.975574] r7:00000091 r6:600f0013 r5:00000000 r4:c094958c
    [ 137.975586] [<c0012360>] (show_stack) from [<c0281d9c>] (dump_stack+0x84/0xa0)
    [ 137.975598] [<c0281d18>] (dump_stack) from [<c0030610>] (warn_slowpath_common+0x8c/0xb8)
    [ 137.975605] r7:00000091 r6:bf366047 r5:00000009 r4:00000000
    [ 137.975615] [<c0030584>] (warn_slowpath_common) from [<c00306e0>] (warn_slowpath_null+0x24/0x2c)
    [ 137.975625] r8:ed78aa10 r7:00000004 r6:ecd626c0 r5:0001ffc4 r4:ed9f9800
    [ 137.975637] [<c00306bc>] (warn_slowpath_null) from [<bf365270>] (wl12xx_sdio_raw_write+0xbc/0x124 [wlcore_sdio])
    [ 137.975689] [<bf3651b4>] (wl12xx_sdio_raw_write [wlcore_sdio]) from [<bf2b9e6c>] (wlcore_set_partition+0x110/0x408 [wlcore])
    [ 137.975699] r8:ed78aa00 r7:00000000 r6:bf3651b4 r5:bf37274c r4:ecf70f20
    [ 137.975778] [<bf2b9d5c>] (wlcore_set_partition [wlcore]) from [<bf2b0758>] (wl12xx_set_power_on+0x64/0x148 [wlcore])
    [ 137.975785] r6:bf2cced4 r5:00000000 r4:ecf70f20
    [ 137.975862] [<bf2b06f4>] (wl12xx_set_power_on [wlcore]) from [<bf2b4f08>] (wlcore_nvs_cb+0x1f0/0x9f4 [wlcore])
    [ 137.975867] r5:ecf71f20 r4:ecf70f20
    [ 137.975911] [<bf2b4d18>] (wlcore_nvs_cb [wlcore]) from [<c03a3c88>] (request_firmware_work_func+0x38/0x60)
    [ 137.975922] r10:00000008 r9:00000000 r8:eed27300 r7:00000000 r6:eed23c00 r5:ecd62dc0
    [ 137.975925] r4:ecd62dc0
    [ 137.975936] [<c03a3c50>] (request_firmware_work_func) from [<c0043bd0>] (process_one_work+0x1b0/0x314)
    [ 137.975940] r4:ed71c380
    [ 137.975949] [<c0043a20>] (process_one_work) from [<c0044c9c>] (worker_thread+0x354/0x448)
    [ 137.975958] r10:00000008 r9:ed71c398 r8:eed23c28 r7:c0914580 r6:eed23c00 r5:eed23c00
    [ 137.975961] r4:ed71c380
    [ 137.975970] [<c0044948>] (worker_thread) from [<c0049328>] (kthread+0xe0/0xf0)
    [ 137.975979] r10:00000000 r9:00000000 r8:00000000 r7:c0044948 r6:ed71c380 r5:00000000
    [ 137.975982] r4:ed664480
    [ 137.975990] [<c0049248>] (kthread) from [<c000f010>] (ret_from_fork+0x14/0x24)
    [ 137.975997] r7:00000000 r6:00000000 r5:c0049248 r4:ed664480
    [ 137.982661] ---[ end trace 0000000000000003 ]---
    [ 138.199346] wl1271_sdio mmc2:0001:2: sdio write failed (-84)

    Thanks,
    Mike
  • Hi Mike,

    In most cases like this the issue is indeed related to the sdio bus signal integrity issue or level shifter used with the hardware design.

    Can you try lowering the sdio frequency even further. Try as low as 1Mhz:

    max-frequency=<1000000>

    and see if it helps.

    Best Regards,

    Eyal

  • Hi Eyal,

    It works with max-frequency=<1000000> thanks!
    Will the wifi speed be reduced by this clock ?

    Thanks,
    -Mike
  • Hi Mike,

    Yes of course wifi throughput would be limited as the theoretical maximum would be 1Mhz * 4bit sdio.
    So you would not get more than 4Mbps.

    But it does indicate an issue with your sdio bus setup. Did you consult with your hardware engineer for verifying the sdio bus signal integrity?
    In addition, I suggest looking at this document as well:
    www.ti.com/.../swra448a.pdf

    Best Regards,
    Eyal
  • Thanks Eyal,

    Ill cross check with the hardware team. Just to add we are using twl1200-q1 which is connected to wl1837. would you suggest to drop this and instead connect wl1837 to the processor pins ?

    Thanks,
    -Mike
  • Hi Mike,

    WL8 IOs are using 1.8V so unless the selected MMC controller can support 1.8V signaling you have to use the level shifter.

    The recommended level shifter in our guide:

    is the TXS0108E (See section 4.1). I am not sure about whether the device you have used is compatible. Is suggest comparing data sheets in order to verify.

    Best Regards,

    Eyal