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/AM4378: Sitara with Wi-Fi module WILC1000 problem

Part Number: AM4378
Other Parts Discussed in Thread: AM4372

Tool/software: Linux

 

Dear TI  Team,

 

We are currently using the AM4378 with a MYIR Rico

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 4.1.18-gaf393eb-dirty (mapu@mapu-pc) (gcc version 5.3.1 20160113 (Linaro GCC 5.3-2016.02) ) #4 PREEMPT Mon Dec 10 11:58:04 CET 2018
[    0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine model: MYIR RICOBOARD
[    0.000000] cma: Reserved 24 MiB at 0x9e800000
[    0.000000] Memory policy: Data cache writeback
[    0.000000] On node 0 totalpages: 131072
[    0.000000] free_area_init_node: node 0, pgdat c09844c8, node_mem_map de36d000
[    0.000000]   Normal zone: 1152 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 131072 pages, LIFO batch:31
[    0.000000] CPU: All CPU(s) started in SVC mode.
[    0.000000] AM437x ES1.2 (sgx neon )
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 129920
[    0.000000] Kernel command line: console=ttyO0,115200n8 consoleblank=0 root=PARTUUID=4cfa9d63-02 rw rootfstype=ext4 rootwait
[    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Memory: 484376K/524288K available (6723K kernel code, 265K rwdata, 2456K rodata, 272K init, 239K bss, 15336K reserved, 24576K cma-reserved, 0K highmem)
[    0.000000] Virtual kernel memory layout:
                   vector  : 0xffff0000 - 0xffff1000   (   4 kB)
                   fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
                   vmalloc : 0xe0800000 - 0xff000000   ( 488 MB)
                   lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
                   pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
                   modules : 0xbf000000 - 0xbfe00000   (  14 MB)
                     .text : 0xc0008000 - 0xc08ff0b4   (9181 kB)
                     .init : 0xc0900000 - 0xc0944000   ( 272 kB)
                     .data : 0xc0944000 - 0xc09864f0   ( 266 kB)
                      .bss : 0xc0989000 - 0xc09c4d4c   ( 240 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000]  Additional per-CPU info printed with stalls.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] L2C: platform modifies aux control register: 0x0e030000 -> 0x3e430000
[    0.000000] L2C: DT/platform modifies aux control register: 0x0e030000 -> 0x3e430000
[    0.000000] L2C-310 enabling early BRESP for Cortex-A9
[    0.000000] OMAP L2C310: ROM does not support power control setting
[    0.000000] L2C-310 ID prefetch enabled, offset 1 lines
[    0.000000] L2C-310 dynamic clock gating disabled, standby mode disabled
[    0.000000] L2C-310 cache controller enabled, 16 ways, 256 kB
[    0.000000] L2C-310: CACHE_ID 0x410000c9, AUX_CTRL 0x7e430000
[    0.000000] OMAP clockevent source: timer2 at 24000000 Hz
[    0.000014] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[    0.000038] clocksource timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[    0.000050] OMAP clocksource: timer1 at 24000000 Hz
[    0.001323] Console: colour dummy device 80x30
[    0.001361] Calibrating delay loop... 1191.93 BogoMIPS (lpj=595968)
[    0.010205] pid_max: default: 32768 minimum: 301
[    0.010324] Security Framework initialized
[    0.010377] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.010390] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.011132] Initializing cgroup subsys blkio
[    0.011159] Initializing cgroup subsys memory
[    0.011261] Initializing cgroup subsys devices
[    0.011283] Initializing cgroup subsys freezer
[    0.011299] Initializing cgroup subsys perf_event
[    0.011332] CPU: Testing write buffer coherency: ok
[    0.011736] Setting up static identity map for 0x80008200 - 0x80008270
[    0.013845] devtmpfs: initialized
[    0.030932] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
[    0.115478] clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275000 ns
[    0.117751] pinctrl core: initialized pinctrl subsystem
[    0.119355] NET: Registered protocol family 16
[    0.121284] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.127211] cpuidle: using governor ladder
[    0.133205] cpuidle: using governor menu
[    0.135709] omap_l3_noc 44000000.ocp: L3 debug error: target 8 mod:0 (unclearable)
[    0.135785] omap_l3_noc 44000000.ocp: L3 application error: target 8 mod:0 (unclearable)
[    0.141068] gpiochip_add: registered GPIOs 0 to 31 on device: gpio
[    0.141563] OMAP GPIO hardware version 0.1
[    0.142373] gpiochip_add: registered GPIOs 32 to 63 on device: gpio
[    0.143293] gpiochip_add: registered GPIOs 64 to 95 on device: gpio
[    0.144169] gpiochip_add: registered GPIOs 96 to 127 on device: gpio
[    0.145060] gpiochip_add: registered GPIOs 128 to 159 on device: gpio
[    0.155579] No ATAGs?
[    0.155620] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
[    0.155633] hw-breakpoint: maximum watchpoint size is 4 bytes.
[    0.180071] edma 49000000.edma: TI EDMA DMA engine driver
[    0.180904] of_get_named_gpiod_flags: can't parse 'gpio' property of node '/fixedregulator-vtt[0]'
[    0.185168] vgaarb: loaded
[    0.185780] SCSI subsystem initialized
[    0.186151] usbcore: registered new interface driver usbfs
[    0.186282] usbcore: registered new interface driver hub
[    0.186396] usbcore: registered new device driver usb
[    0.187030] omap_i2c 44e0b000.i2c: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/i2c0_pins_default, deferring probe
[    0.187271] media: Linux media interface: v0.10
[    0.187366] Linux video capture interface: v2.00
[    0.187435] pps_core: LinuxPPS API ver. 1 registered
[    0.187444] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.187482] PTP clock support registered
[    0.188450] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
[    0.188785] Advanced Linux Sound Architecture Driver Initialized.
[    0.189929] cfg80211: Calling CRDA to update world regulatory domain
[    0.190648] Switched to clocksource timer1
[    0.203277] NET: Registered protocol family 2
[    0.204248] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[    0.204310] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[    0.204376] TCP: Hash tables configured (established 4096 bind 4096)
[    0.204477] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.204501] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.204765] NET: Registered protocol family 1
[    0.205150] RPC: Registered named UNIX socket transport module.
[    0.205165] RPC: Registered udp transport module.
[    0.205173] RPC: Registered tcp transport module.
[    0.205180] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.205209] PCI: CLS 0 bytes, default 64
[    0.208204] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.208315] audit: initializing netlink subsys (disabled)
[    0.208385] audit: type=2000 audit(0.207:1): initialized
[    0.216362] VFS: Disk quotas dquot_6.6.0
[    0.216603] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    0.219128] NFS: Registering the id_resolver key type
[    0.219187] Key type id_resolver registered
[    0.219198] Key type id_legacy registered
[    0.219284] jffs2: version 2.2. (NAND) (SUMMARY)  \xffffffc2\xffffffa9 2001-2006 Red Hat, Inc.
[    0.221815] NET: Registered protocol family 38
[    0.221914] io scheduler noop registered
[    0.221934] io scheduler deadline registered
[    0.222008] io scheduler cfq registered (default)
[    0.225939] pinctrl-single 44e10800.pinmux: 199 pins at pa f9e10800 size 796
[    0.229268] pwm-backlight backlight: GPIO lookup for consumer enable
[    0.229290] pwm-backlight backlight: using device tree for GPIO lookup
[    0.229307] of_get_named_gpiod_flags: can't parse 'enable-gpios' property of node '/backlight[0]'
[    0.229319] of_get_named_gpiod_flags: can't parse 'enable-gpio' property of node '/backlight[0]'
[    0.229330] pwm-backlight backlight: using lookup tables for GPIO lookup
[    0.229343] pwm-backlight backlight: lookup for GPIO enable failed
[    0.229363] backlight supply power not found, using dummy regulator
[    0.231945] 4832a000.dss supply vdda_video not found, using dummy regulator
[    0.232088] OMAP DSS rev 2.0
[    0.232494] omapdss_dss 4832a000.dss: bound 4832a400.dispc (ops dispc_component_ops)
[    0.234321] panel-dpi display: GPIO lookup for consumer enable
[    0.234340] panel-dpi display: using device tree for GPIO lookup
[    0.234357] of_get_named_gpiod_flags: can't parse 'enable-gpios' property of node '/display[0]'
[    0.234369] of_get_named_gpiod_flags: can't parse 'enable-gpio' property of node '/display[0]'
[    0.234381] panel-dpi display: using lookup tables for GPIO lookup
[    0.234393] panel-dpi display: lookup for GPIO enable failed
[    0.245851] Console: switching to colour frame buffer device 100x30
[    0.254204] omapfb omapfb: using display 'lcd' mode 800x480
[    0.255044] wkup_m3_ipc 44e11324.wkup_m3_ipc: could not get rproc handle
[    0.256508] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled
[    0.260973] omap_uart 44e09000.serial: no wakeirq for uart0
[    0.260999] of_get_named_gpiod_flags: can't parse 'rts-gpio' property of node '/ocp/serial@44e09000[0]'
[    0.261017] omap_uart 44e09000.serial: No clock speed specified: using default: 48000000
[    0.261196] 44e09000.serial: ttyO0 at MMIO 0x44e09000 (irq = 30, base_baud = 3000000) is a OMAP UART0
[    1.018235] console [ttyO0] enabled
[    1.022494] omap_uart 48024000.serial: no wakeirq for uart2
[    1.028405] of_get_named_gpiod_flags: can't parse 'rts-gpio' property of node '/ocp/serial@48024000[0]'
[    1.028426] omap_uart 48024000.serial: No clock speed specified: using default: 48000000
[    1.037085] 48024000.serial: ttyO2 at MMIO 0x48024000 (irq = 31, base_baud = 3000000) is a OMAP UART2
[    1.047336] omap_uart 481aa000.serial: no wakeirq for uart5
[    1.053294] of_get_named_gpiod_flags: can't parse 'rts-gpio' property of node '/ocp/serial@481aa000[0]'
[    1.053315] omap_uart 481aa000.serial: No clock speed specified: using default: 48000000
[    1.061949] 481aa000.serial: ttyO5 at MMIO 0x481aa000 (irq = 32, base_baud = 3000000) is a OMAP UART5
[    1.072355] [drm] Initialized drm 1.1.0 20060810
[    1.091429] brd: module loaded
[    1.101285] loop: module loaded
[    1.105936] mtdoops: mtd device (mtddev=name/number) must be supplied
[    1.114784] spi spi1.0: not using DMA for McSPI (-19)
[    1.169712] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
[    1.176149] davinci_mdio 4a101000.mdio: detected phy mask fffffffe
[    1.183603] libphy: 4a101000.mdio: probed
[    1.187941] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver Micrel KSZ9031 Gigabit PHY
[    1.199064] cpsw 4a100000.ethernet: Detected MACID = 98:84:e3:a3:2f:5b
[    1.207182] PPP generic driver version 2.4.2
[    1.212768] usbcore: registered new interface driver cdc_acm
[    1.218773] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[    1.227636] mousedev: PS/2 mouse device common for all mice
[    1.233717] i2c /dev entries driver
[    1.239237] omap_hsmmc 48060000.mmc: GPIO lookup for consumer cd
[    1.239257] omap_hsmmc 48060000.mmc: using device tree for GPIO lookup
[    1.239323] of_get_named_gpiod_flags: parsed 'cd-gpios' property of node '/ocp/mmc@48060000[0]' - status (0)
[    1.239399] omap_hsmmc 48060000.mmc: Got CD GPIO
[    1.244311] omap_hsmmc 48060000.mmc: GPIO lookup for consumer wp
[    1.244325] omap_hsmmc 48060000.mmc: using device tree for GPIO lookup
[    1.244340] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/mmc@48060000[0]'
[    1.244353] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/mmc@48060000[0]'
[    1.244364] omap_hsmmc 48060000.mmc: using lookup tables for GPIO lookup
[    1.244377] omap_hsmmc 48060000.mmc: lookup for GPIO wp failed
[    1.250107] omap_hsmmc 481d8000.mmc: GPIO lookup for consumer cd
[    1.250129] omap_hsmmc 481d8000.mmc: using device tree for GPIO lookup
[    1.250145] of_get_named_gpiod_flags: can't parse 'cd-gpios' property of node '/ocp/mmc@481d8000[0]'
[    1.250157] of_get_named_gpiod_flags: can't parse 'cd-gpio' property of node '/ocp/mmc@481d8000[0]'
[    1.250168] omap_hsmmc 481d8000.mmc: using lookup tables for GPIO lookup
[    1.250181] omap_hsmmc 481d8000.mmc: lookup for GPIO cd failed
[    1.250195] omap_hsmmc 481d8000.mmc: GPIO lookup for consumer wp
[    1.250205] omap_hsmmc 481d8000.mmc: using device tree for GPIO lookup
[    1.250216] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/mmc@481d8000[0]'
[    1.250226] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/mmc@481d8000[0]'
[    1.250236] omap_hsmmc 481d8000.mmc: using lookup tables for GPIO lookup
[    1.250247] omap_hsmmc 481d8000.mmc: lookup for GPIO wp failed
[    1.256036] omap_hsmmc 47810000.mmc: GPIO lookup for consumer cd
[    1.256055] omap_hsmmc 47810000.mmc: using device tree for GPIO lookup
[    1.256107] of_get_named_gpiod_flags: parsed 'cd-gpios' property of node '/ocp/mmc@47810000[0]' - status (0)
[    1.256166] omap_hsmmc 47810000.mmc: Got CD GPIO
[    1.261113] omap_hsmmc 47810000.mmc: GPIO lookup for consumer wp
[    1.261128] omap_hsmmc 47810000.mmc: using device tree for GPIO lookup
[    1.261171] of_get_named_gpiod_flags: parsed 'wp-gpios' property of node '/ocp/mmc@47810000[0]' - status (0)
[    1.261189] omap_hsmmc 47810000.mmc: Got WP GPIO
[    1.273206] ledtrig-cpu: registered to indicate activity on CPUs
[    1.280391]  remoteproc0: wkup_m3 is available
[    1.285153]  remoteproc0: Note: remoteproc is still under development and considered experimental.
[    1.294596]  remoteproc0: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
[    1.307400] snd-soc-dummy snd-soc-dummy: codec register snd-soc-dummy
[    1.307434] snd-soc-dummy snd-soc-dummy: ASoC: dai register snd-soc-dummy #1
[    1.307449] snd-soc-dummy snd-soc-dummy: ASoC: Registered DAI 'snd-soc-dummy-dai'
[    1.307464] snd-soc-dummy snd-soc-dummy: ASoC: Registered codec 'snd-soc-dummy'
[    1.307476] snd-soc-dummy snd-soc-dummy: ASoC: platform register snd-soc-dummy
[    1.307505] snd-soc-dummy snd-soc-dummy: ASoC: Registered platform 'snd-soc-dummy'
[    1.308387] davinci-mcasp 48038000.mcasp: ASoC: dai register 48038000.mcasp #1
[    1.308411] davinci-mcasp 48038000.mcasp: ASoC: Registered DAI '48038000.mcasp'
[    1.308476] davinci-mcasp 48038000.mcasp: DMA controller compatible = "ti,edma3-tpcc"
[    1.308551] davinci-mcasp 48038000.mcasp: ASoC: Registered platform '48038000.mcasp'
[    1.309188] oprofile: no performance counters
[    1.314006] oprofile: using timer interrupt.
[    1.318961] ip_tables: (C) 2000-2006 Netfilter Core Team
[    1.324724] Initializing XFRM netlink socket
[    1.329289] NET: Registered protocol family 17
[    1.334017] NET: Registered protocol family 15
[    1.338808] Key type dns_resolver registered
[    1.343530] omap_voltage_late_init: Voltage driver support not added
[    1.350725] cpu cpu0: of_pm_voltdm_notifier_register: Failed to get cpu0 regulator/voltdm: -517
[    1.359887] cpu cpu0: cpu0 clock notifier not ready, retry
[    1.366076] ThumbEE CPU extension supported.
[    1.370630] Registering SWP/SWPB emulation handler
[    1.412496] omap_i2c 44e0b000.i2c: bus 0 rev0.12 at 100 kHz
[    1.419825] omap_hsmmc 48060000.mmc: GPIO lookup for consumer cd
[    1.419846] omap_hsmmc 48060000.mmc: using device tree for GPIO lookup
[    1.419909] of_get_named_gpiod_flags: parsed 'cd-gpios' property of node '/ocp/mmc@48060000[0]' - status (0)
[    1.419976] omap_hsmmc 48060000.mmc: Got CD GPIO
[    1.424892]  remoteproc0: powering up wkup_m3
[    1.429499] omap_hsmmc 48060000.mmc: GPIO lookup for consumer wp
[    1.429513] omap_hsmmc 48060000.mmc: using device tree for GPIO lookup
[    1.429528] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/mmc@48060000[0]'
[    1.429541] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/mmc@48060000[0]'
[    1.429552] omap_hsmmc 48060000.mmc: using lookup tables for GPIO lookup
[    1.429564] omap_hsmmc 48060000.mmc: lookup for GPIO wp failed
[    1.430284]  remoteproc0: Booting fw image am335x-pm-firmware.elf, size 219803
[    1.438748]  remoteproc0: remote processor wkup_m3 is now up
[    1.444730] wkup_m3_ipc 44e11324.wkup_m3_ipc: CM3 Firmware Version = 0x191
[    1.463639] omap_hsmmc 481d8000.mmc: GPIO lookup for consumer cd
[    1.463724] omap_hsmmc 481d8000.mmc: using device tree for GPIO lookup
[    1.463740] of_get_named_gpiod_flags: can't parse 'cd-gpios' property of node '/ocp/mmc@481d8000[0]'
[    1.463753] of_get_named_gpiod_flags: can't parse 'cd-gpio' property of node '/ocp/mmc@481d8000[0]'
[    1.463764] omap_hsmmc 481d8000.mmc: using lookup tables for GPIO lookup
[    1.463778] omap_hsmmc 481d8000.mmc: lookup for GPIO cd failed
[    1.463792] omap_hsmmc 481d8000.mmc: GPIO lookup for consumer wp
[    1.463803] omap_hsmmc 481d8000.mmc: using device tree for GPIO lookup
[    1.463814] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/ocp/mmc@481d8000[0]'
[    1.463825] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/ocp/mmc@481d8000[0]'
[    1.463835] omap_hsmmc 481d8000.mmc: using lookup tables for GPIO lookup
[    1.463845] omap_hsmmc 481d8000.mmc: lookup for GPIO wp failed
[    1.486408] omap_hsmmc 47810000.mmc: GPIO lookup for consumer cd
[    1.486431] omap_hsmmc 47810000.mmc: using device tree for GPIO lookup
[    1.486488] of_get_named_gpiod_flags: parsed 'cd-gpios' property of node '/ocp/mmc@47810000[0]' - status (0)
[    1.486511] omap_hsmmc 47810000.mmc: Got CD GPIO
[    1.491509] omap_hsmmc 47810000.mmc: GPIO lookup for consumer wp
[    1.491525] omap_hsmmc 47810000.mmc: using device tree for GPIO lookup
[    1.491572] of_get_named_gpiod_flags: parsed 'wp-gpios' property of node '/ocp/mmc@47810000[0]' - status (0)
[    1.491589] omap_hsmmc 47810000.mmc: Got WP GPIO
[    1.518912] mmc0: host does not support reading read-only switch, assuming write-enable
[    1.527960] cpu cpu0: of_pm_voltdm_notifier_register: Fail calculating voltage latency[950000<->1325000]:-22
[    1.538749] cpu cpu0: of_pm_voltdm_notifier_register: Fail calculating voltage latency[950000<->1325000]:-22
[    1.549242] mmc0: new high speed SD card at address e624
[    1.555963] mmcblk0: mmc0:e624 SU02G 1.84 GiB
[    1.562287] hctosys: unable to open rtc device (rtc0)
[    1.567798]  mmcblk0: p1 p2
[    1.574521] ALSA device list:
[    1.578594]   No soundcards found.
[    1.622368] mmc1: MAN_BKOPS_EN bit is not set
[    1.630373] mmc1: new high speed MMC card at address 0001
[    1.636777] mmcblk1: mmc1:0001 Q2J54A 3.64 GiB
[    1.641840] mmcblk1boot0: mmc1:0001 Q2J54A partition 1 2.00 MiB
[    1.648451] mmcblk1boot1: mmc1:0001 Q2J54A partition 2 2.00 MiB
[    1.656065]  mmcblk1: p1 p2 p3
[    1.679239] mmc2: queuing unknown CIS tuple 0x91 (2 bytes)
[    1.685136] mmc2: new high speed SDIO card at address 0001
[    1.953406] EXT4-fs (mmcblk0p2): recovery complete
[    1.960150] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[    1.968737] VFS: Mounted root (ext4 filesystem) on device 179:2.
[    1.979325] devtmpfs: mounted
[    1.983006] Freeing unused kernel memory: 272K (c0900000 - c0944000)
[    2.316876] systemd[1]: System time before build time, advancing clock.
[    2.383279] random: systemd urandom read with 14 bits of entropy available
[    2.403177] systemd[1]: systemd 232 running in system mode. (-PAM -AUDIT -SELINUX -IMA -APPARMOR -SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP +GCRYPT -GNUTLS -ACL -XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -IDN)
[    2.422875] systemd[1]: Detected architecture arm.
[    2.620089] systemd-fstab-generator[59]: Ignoring "noauto" for root device
[    2.927764] systemd[1]: Binding to IPv6 address not available since kernel does not support IPv6.
[    2.938222] systemd[1]: [/lib/systemd/system/gpsd.socket:6] Failed to parse address value, ignoring: [::1]:2947
[    2.977467] systemd[1]: Created slice System Slice.
[    2.988348] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[    3.006310] systemd[1]: Listening on Journal Socket (/dev/log).
[    3.019064] systemd[1]: Reached target Slices.
[    3.030260] systemd[1]: Listening on /dev/initctl Compatibility Named Pipe.
[    3.045279] systemd[1]: Listening on udev Control Socket.
[    3.057378] systemd[1]: Listening on Journal Socket.
[    3.069164] systemd[1]: Reached target Swap.
[    3.080036] systemd[1]: Reached target Remote File Systems.
[    3.095809] systemd[1]: Mounting Debug File System...
[    3.118450] systemd[1]: Mounting POSIX Message Queue File System...
[    3.143906] systemd[1]: Listening on Network Service Netlink Socket.
[    3.182477] systemd[1]: Starting Create Static Device Nodes in /dev...
[    3.204362] systemd[1]: Listening on udev Kernel Socket.
[    3.228107] systemd[1]: Starting Remount Root and Kernel File Systems...
[    3.254814] systemd[1]: Listening on Journal Audit Socket.
[    3.282581] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[    3.330252] systemd[1]: Reached target Paths.
[    3.335016] cfg80211: Calling CRDA to update world regulatory domain
[    3.362839] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[    3.382935] systemd[1]: Starting Journal Service...
[    3.419323] systemd[1]: Starting Apply Kernel Variables...
[    3.453710] systemd[1]: Mounting Configuration File System...
[    3.478179] systemd-journald[74]: Failed to open system journal: No space left on device
[    3.495500] systemd[1]: Created slice system-serial\x2dgetty.slice.
[    3.526142] systemd[1]: dev-hugepages.mount: Couldn't determine result for ConditionVirtualization=!private-users, assuming failed: No such file or directory
[    3.586128] systemd[1]: Mounted Configuration File System.
[    3.608176] systemd[1]: Mounted Debug File System.
[    3.625173] systemd[1]: Mounted POSIX Message Queue File System.
[    3.646228] systemd[1]: Started Create Static Device Nodes in /dev.
[    3.670440] systemd[1]: Started Remount Root and Kernel File Systems.
[    3.695337] systemd[1]: Started Apply Kernel Variables.
[    3.733256] systemd[1]: Starting udev Coldplug all Devices...
[    3.769007] systemd[1]: Starting udev Kernel Device Manager...
[    3.798145] systemd[1]: Reached target Local File Systems (Pre).
[    3.826289] systemd[1]: tmp.mount: Directory /tmp to mount over is not empty, mounting anyway.
[    3.867228] systemd[1]: Mounting /tmp...
[    3.908625] systemd[1]: Started Journal Service.
[    4.176495] systemd-journald[74]: Received request to flush runtime journal from PID 1
[    6.496340] FAT-fs (mmcblk1p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[    6.511754] cfg80211: Calling CRDA to update world regulatory domain
[    6.613816] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[    6.743436] EXT4-fs (mmcblk1p2): recovery complete
[    6.749516] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Opts: (null)
[    6.760865] FAT-fs (mmcblk1p3): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[    7.526880] net eth0: initializing cpsw version 1.15 (0)
[    7.589967] net eth0: phy found : id is : 0x221622
[    7.601105] libphy: PHY 4a101000.mdio:01 not found
[    7.614762] net eth0: phy 4a101000.mdio:01 not found on slave 1
[    9.005860] audit: type=1325 audit(1543858744.468:2): table=filter family=2 entries=0
[    9.690898] cfg80211: Calling CRDA to update world regulatory domain
[   12.832737] cfg80211: Calling CRDA to update world regulatory domain
[   15.977756] cfg80211: Calling CRDA to update world regulatory domain
[   18.959872] wilc_sdio mmc2:0001:1: Initializing netdev
[   18.960018] (unnamed net_device) (uninitialized): INFO [wilc_create_wiphy]Registering wifi device
[   18.960045] (unnamed net_device) (uninitialized): INFO [wilc_wfi_cfg_alloc]Allocating wireless device
[   18.971013] (unnamed net_device) (uninitialized): INFO [wilc_create_wiphy]Successful Registering
[   18.985854] (unnamed net_device) (uninitialized): INFO [wilc_create_wiphy]Registering wifi device
[   18.985896] (unnamed net_device) (uninitialized): INFO [wilc_wfi_cfg_alloc]Allocating wireless device
[   18.993754] (unnamed net_device) (uninitialized): INFO [wilc_create_wiphy]Successful Registering
[   19.005764] of_get_named_gpiod_flags: parsed 'gpio_reset' property of node '/ocp/mmc@47810000/wilc_sdio@2[0]' - status (0)
[   19.005817] wilc_sdio mmc2:0001:1: WILC got 136 for gpio_reset
[   19.005843] of_get_named_gpiod_flags: can't parse 'gpio_chip_en' property of node '/ocp/mmc@47810000/wilc_sdio@2[0]'
[   19.005871] wilc_sdio mmc2:0001:1: WILC setting default Chip Enable GPIO to 94. Got -2
[   19.102453] of_get_named_gpiod_flags: can't parse 'gpio_irq' property of node '/ocp/mmc@47810000/wilc_sdio@2[0]'
[   19.102507] wilc_sdio mmc2:0001:1: WILC setting default IRQ GPIO to 91. Got -2
[   19.123747] cfg80211: Calling CRDA to update world regulatory domain
[   19.163761] wifi_pm : 0
[   19.163939] wifi_pm : 1
[   19.203009] wilc_sdio mmc2:0001:1: Driver Initializing success
[   19.346758] CPU: 0 PID: 157 Comm: NetworkManager Not tainted 4.1.18-gaf393eb-dirty #4
[   19.355088] Hardware name: Generic AM43 (Flattened Device Tree)
[   19.362392] Backtrace:
[   19.365126] [<c0012c50>] (dump_backtrace) from [<c0012e70>] (show_stack+0x18/0x1c)
[   19.373938]  r7:dd6c2800 r6:00001003 r5:bf0197a8 r4:dc524800
[   19.380080] [<c0012e58>] (show_stack) from [<c068fda8>] (dump_stack+0x20/0x28)
[   19.388494] [<c068fd88>] (dump_stack) from [<bf0073fc>] (wilc_mac_open+0x28/0xc50 [wilc_sdio])
[   19.398141] [<bf0073d4>] (wilc_mac_open [wilc_sdio]) from [<c05908b0>] (__dev_open+0xc0/0x128)
[   19.407286]  r10:dd7e1240 r9:dd6c6510 r8:00000000 r7:00001002 r6:00001003 r5:bf0197a8
[   19.416710]  r4:dc524800
[   19.419927] [<c05907f0>] (__dev_open) from [<c0590b64>] (__dev_change_flags+0x90/0x154)
[   19.429170]  r5:00000001 r4:dc524800
[   19.433069] [<c0590ad4>] (__dev_change_flags) from [<c0590c48>] (dev_change_flags+0x20/0x50)
[   19.442618]  r9:dd6c6510 r8:00000000 r7:bf0197a8 r6:00001002 r5:dc524940 r4:dc524800
[   19.451001] [<c0590c28>] (dev_change_flags) from [<c05a014c>] (do_setlink+0x270/0x798)
[   19.460095]  r9:dd6c6510 r8:00000000 r7:bf0197a8 r6:00000000 r5:dd6f1c44 r4:dc524800
[   19.468467] [<c059fedc>] (do_setlink) from [<c05a0be8>] (rtnl_newlink+0x45c/0x744)
[   19.477271]  r10:00000000 r9:00000000 r8:00000000 r7:dd6c6500 r6:dc524800 r5:dd6f1bb0
[   19.485727]  r4:00000000
[   19.488871] [<c05a078c>] (rtnl_newlink) from [<c059f6cc>] (rtnetlink_rcv_msg+0xd4/0x200)
[   19.498102]  r10:dd7e1240 r9:00000000 r8:00000000 r7:00000000 r6:dd7e1240 r5:dd6c6500
[   19.506549]  r4:00000000
[   19.509604] [<c059f5f8>] (rtnetlink_rcv_msg) from [<c05b6a94>] (netlink_rcv_skb+0xc4/0xe0)
[   19.519009]  r9:00000000 r8:00000000 r7:dd7e1240 r6:c059f5f8 r5:00000000 r4:dd6c6500
[   19.527386] [<c05b69d0>] (netlink_rcv_skb) from [<c059f5e8>] (rtnetlink_rcv+0x24/0x34)
[   19.536425]  r7:dd7e1240 r6:00000020 r5:dd685400 r4:dd7e1240
[   19.542590] [<c059f5c4>] (rtnetlink_rcv) from [<c05b63d8>] (netlink_unicast+0x158/0x234)
[   19.551803]  r5:dd685400 r4:ddcf0800
[   19.555687] [<c05b6280>] (netlink_unicast) from [<c05b6868>] (netlink_sendmsg+0x2e0/0x34c)
[   19.565057]  r8:00000000 r7:00000020 r6:dd685400 r5:00000000 r4:dd6f1f4c
[   19.572306] [<c05b6588>] (netlink_sendmsg) from [<c0575818>] (sock_sendmsg+0x1c/0x2c)
[   19.581228]  r10:00000000 r9:dd6f1e30 r8:00000000 r7:dda65900 r6:00000000 r5:00000040
[   19.590449]  r4:dd6f1f4c
[   19.593542] [<c05757fc>] (sock_sendmsg) from [<c0575d1c>] (___sys_sendmsg+0x1d4/0x1dc)
[   19.602620] [<c0575b48>] (___sys_sendmsg) from [<c0576a54>] (__sys_sendmsg+0x44/0x70)
[   19.611290]  r9:dd6f0000 r8:c000fac4 r7:00000128 r6:dda65900 r5:00000000 r4:bef3179c
[   19.619672] [<c0576a10>] (__sys_sendmsg) from [<c0576a90>] (SyS_sendmsg+0x10/0x14)
[   19.628263]  r6:b695694c r5:002459e8 r4:002ab9c8
[   19.633281] [<c0576a80>] (SyS_sendmsg) from [<c000f920>] (ret_fast_syscall+0x0/0x3c)
[   19.642126] wilc_sdio mmc2:0001:1 p2p0: INFO [wilc_mac_open]MAC OPEN[dc524800] p2p0
[   19.642140] WILC POWER UP
[   19.642153] wilc_sdio mmc2:0001:1 p2p0: INFO [wilc_init_host_int]Host[dc524800][dc516800]
[   19.642320] wilc_sdio mmc2:0001:1 p2p0: INFO [wilc_mac_open]*** re-init ***
[   19.642334] wilc_sdio mmc2:0001:1 p2p0: INFO [wlan_init_locks]Initializing Locks ...
[   19.642345] wilc_sdio mmc2:0001:1 p2p0: INFO [wilc_wlan_init]Initializing WILC_Wlan
[   19.642356] wilc_sdio mmc2:0001:1: SDIO speed: 5000000
[   19.648151] wilc_sdio mmc2:0001:1: wilc_sdio_cmd53..failed, err(-84)
[   19.658965] wilc_sdio mmc2:0001:1: Failed cmd53, read reg (003b0000)...
[   19.666087] [wilc start]: fail read reg 0x3b0000
[   19.672984] wilc_sdio mmc2:0001:1: wilc_sdio_cmd53..failed, err(-84)
[   19.679776] wilc_sdio mmc2:0001:1: Failed cmd53, read reg (00001000)...
[   19.689343] wilc_sdio mmc2:0001:1: Unsupported chipid: 0
[   19.695070] wilc_sdio mmc2:0001:1 p2p0: ERR [wilc_wlan_initialize: 1157] Initializing WILC_Wlan FAILED
[   19.707406] wilc_sdio mmc2:0001:1 p2p0: INFO [wlan_deinit_locks]De-Initializing Locks
[   19.707430] wilc_sdio mmc2:0001:1 p2p0: ERR [wilc_wlan_initialize: 1244] WLAN initialization FAILED
[   19.719551] wilc_sdio mmc2:0001:1 p2p0: ERR [wilc_mac_open: 1296] Failed to initialize wilc
[   19.728568] wilc_sdio mmc2:0001:1 p2p0: ERR [wilc_send_config_pkt: 1929] Set Timed out
[   19.739714] wilc_sdio mmc2:0001:1 p2p0: ERR [handle_set_wfi_drv_handler: 445] Failed to set driver handler
[   19.750001] wilc_sdio mmc2:0001:1 p2p0: Host cmd 24 failed
[   19.758436] wilc_sdio mmc2:0001:1 p2p0: ERR [host_if_work: 3000] [Host Interface] undefined
[   19.769218] wilc_sdio mmc2:0001:1 p2p0: ERR [wilc_set_mac_address: 3422] Failed to send get mac address
[   19.798013] CPU: 0 PID: 157 Comm: NetworkManager Not tainted 4.1.18-gaf393eb-dirty #4
[   19.806387] Hardware name: Generic AM43 (Flattened Device Tree)
[   19.813531] Backtrace:
[   19.816296] [<c0012c50>] (dump_backtrace) from [<c0012e70>] (show_stack+0x18/0x1c)
[   19.825033]  r7:dd6c2800 r6:00001003 r5:bf0197a8 r4:dd6c3000
[   19.831181] [<c0012e58>] (show_stack) from [<c068fda8>] (dump_stack+0x20/0x28)
[   19.839559] [<c068fd88>] (dump_stack) from [<bf0073fc>] (wilc_mac_open+0x28/0xc50 [wilc_sdio])
[   19.849179] [<bf0073d4>] (wilc_mac_open [wilc_sdio]) from [<c05908b0>] (__dev_open+0xc0/0x128)
[   19.858774]  r10:dc5e4180 r9:dd6c6110 r8:00000000 r7:00001002 r6:00001003 r5:bf0197a8
[   19.867265]  r4:dd6c3000
[   19.870347] [<c05907f0>] (__dev_open) from [<c0590b64>] (__dev_change_flags+0x90/0x154)
[   19.879444]  r5:00000001 r4:dd6c3000
[   19.883340] [<c0590ad4>] (__dev_change_flags) from [<c0590c48>] (dev_change_flags+0x20/0x50)
[   19.892990]  r9:dd6c6110 r8:00000000 r7:bf0197a8 r6:00001002 r5:dd6c3140 r4:dd6c3000
[   19.901364] [<c0590c28>] (dev_change_flags) from [<c05a014c>] (do_setlink+0x270/0x798)
[   19.910331]  r9:dd6c6110 r8:00000000 r7:bf0197a8 r6:00000000 r5:dd6f1c44 r4:dd6c3000
[   19.918726] [<c059fedc>] (do_setlink) from [<c05a0be8>] (rtnl_newlink+0x45c/0x744)
[   19.927302]  r10:00000000 r9:00000000 r8:00000000 r7:dd6c6100 r6:dd6c3000 r5:dd6f1bb0
[   19.935779]  r4:00000000
[   19.938851] [<c05a078c>] (rtnl_newlink) from [<c059f6cc>] (rtnetlink_rcv_msg+0xd4/0x200)
[   19.948030]  r10:dc5e4180 r9:00000000 r8:00000000 r7:00000000 r6:dc5e4180 r5:dd6c6100
[   19.956473]  r4:00000000
[   19.959507] [<c059f5f8>] (rtnetlink_rcv_msg) from [<c05b6a94>] (netlink_rcv_skb+0xc4/0xe0)
[   19.968970]  r9:00000000 r8:00000000 r7:dc5e4180 r6:c059f5f8 r5:00000000 r4:dd6c6100
[   19.977353] [<c05b69d0>] (netlink_rcv_skb) from [<c059f5e8>] (rtnetlink_rcv+0x24/0x34)
[   19.986342]  r7:dc5e4180 r6:00000020 r5:dd685400 r4:dc5e4180
[   19.992494] [<c059f5c4>] (rtnetlink_rcv) from [<c05b63d8>] (netlink_unicast+0x158/0x234)
[   20.001707]  r5:dd685400 r4:ddcf0800
[   20.005565] [<c05b6280>] (netlink_unicast) from [<c05b6868>] (netlink_sendmsg+0x2e0/0x34c)
[   20.015050]  r8:00000000 r7:00000020 r6:dd685400 r5:00000000 r4:dd6f1f4c
[   20.022354] [<c05b6588>] (netlink_sendmsg) from [<c0575818>] (sock_sendmsg+0x1c/0x2c)
[   20.031317]  r10:00000000 r9:dd6f1e30 r8:00000000 r7:dda65900 r6:00000000 r5:00000040
[   20.039807]  r4:dd6f1f4c
[   20.042980] [<c05757fc>] (sock_sendmsg) from [<c0575d1c>] (___sys_sendmsg+0x1d4/0x1dc)
[   20.052042] [<c0575b48>] (___sys_sendmsg) from [<c0576a54>] (__sys_sendmsg+0x44/0x70)
[   20.060389]  r9:dd6f0000 r8:c000fac4 r7:00000128 r6:dda65900 r5:00000000 r4:bef3136c
[   20.069152] [<c0576a10>] (__sys_sendmsg) from [<c0576a90>] (SyS_sendmsg+0x10/0x14)
[   20.077842]  r6:b695694c r5:002459e8 r4:002a8f88
[   20.082855] [<c0576a80>] (SyS_sendmsg) from [<c000f920>] (ret_fast_syscall+0x0/0x3c)
[   20.091725] wilc_sdio mmc2:0001:1 wlan0: INFO [wilc_mac_open]MAC OPEN[dd6c3000] wlan0
[   20.091740] power up request for already powered up source Wifi
[   20.099762] Device already up. request source is Wifi
[   20.099797] wilc_sdio mmc2:0001:1 wlan0: INFO [wilc_init_host_int]Host[dd6c3000][dd6ef000]
[   20.099964] wilc_sdio mmc2:0001:1 wlan0: INFO [wilc_mac_open]*** re-init ***
[   20.099978] wilc_sdio mmc2:0001:1 wlan0: INFO [wlan_init_locks]Initializing Locks ...
[   20.099990] wilc_sdio mmc2:0001:1 wlan0: INFO [wilc_wlan_init]Initializing WILC_Wlan
[   20.100000] wilc_sdio mmc2:0001:1: SDIO speed: 5000000
[   20.102766] wilc_sdio mmc2:0001:1: wilc_sdio_cmd53..failed, err(-84)
[   20.115242] wilc_sdio mmc2:0001:1: Failed cmd53, read reg (003b0000)...
[   20.122389] [wilc start]: fail read reg 0x3b0000
[   20.129185] wilc_sdio mmc2:0001:1: wilc_sdio_cmd53..failed, err(-84)
[   20.135994] wilc_sdio mmc2:0001:1: Failed cmd53, read reg (00001000)...
[   20.145526] wilc_sdio mmc2:0001:1: Unsupported chipid: 0
[   20.151255] wilc_sdio mmc2:0001:1 wlan0: ERR [wilc_wlan_initialize: 1157] Initializing WILC_Wlan FAILED
[   20.163628] wilc_sdio mmc2:0001:1 wlan0: INFO [wlan_deinit_locks]De-Initializing Locks
[   20.163714] wilc_sdio mmc2:0001:1 wlan0: ERR [wilc_wlan_initialize: 1244] WLAN initialization FAILED
[   20.175812] wilc_sdio mmc2:0001:1 wlan0: ERR [wilc_mac_open: 1296] Failed to initialize wilc
[   20.184925] wilc_sdio mmc2:0001:1 wlan0: ERR [wilc_send_config_pkt: 1929] Set Timed out
[   20.196070] wilc_sdio mmc2:0001:1 wlan0: ERR [handle_set_wfi_drv_handler: 445] Failed to set driver handler
[   20.206472] wilc_sdio mmc2:0001:1 wlan0: Host cmd 24 failed
[   20.214899] wilc_sdio mmc2:0001:1 wlan0: ERR [host_if_work: 3000] [Host Interface] undefined
[   20.225324] wilc_sdio mmc2:0001:1 wlan0: ERR [wilc_set_mac_address: 3422] Failed to send get mac address
[   22.265771] cfg80211: Calling CRDA to update world regulatory domain
[   25.411722] cfg80211: Calling CRDA to update world regulatory domain
[   28.424966] random: nonblocking pool is initialized
[   28.557716] cfg80211: Calling CRDA to update world regulatory domain
Board and an ATWILC1000-MR110 wireless module ( https://www.microchip.com/wwwproducts/en/ATWILC1000   )mounted in a proto-board. In the past, we already used such Wi-FI module with other processors (IMX6/8 and Microchip… for example) without any problem and using the same kernel version (4.1.18).  Furthermore, also a Raspberry PI was used for a quick test and it did work smoothly….

However, with this processor, we are facing some issues.

 

Basically, we connected the WILC1000 in SDIO mode to MMC2 interface using the J11 connector on the RICO board (refer to http://www.myirtech.com/download/AM437x/RicoBoard_SCH_V10.pdf ). please note that since the SDIO pull-ups are not available on the Rico board, we added them externally (we used the same 10Kohm value used for the other mmc interface present in the Rico board)

 

The HW connections are the following:

MMC2_CLK         à A12

MMC2_CMD      à B12

MMC2_DAT0     à C5

MMC2_DAT1     à C6

MMC2_DAT2     à A4

MMC2_DAT3     à A3

 

CHIP EN is tied to VCC and the RESET pin is driven by GPIO5_8

 

The device tree is configured to reflect this in the following way:

&mmc3 {

                status = "okay";

 

                dmas = <&edma 30 0>,<&edma 31 0>;

                dma-names = "tx", "rx";

                vmmc-supply = <&dcdc4>;

                bus-width = <4>;

                pinctrl-names = "default", "sleep";

                pinctrl-0 = <&my_configuration_wifi_pin>;

                pinctrl-1 = <& my_configuration _wifi_pin_sleep>;

                //cap-power-off-card;

                //keep-power-in-suspend;

                ti,non-removable;

                max-frequency = <2000000>;

                ti,needs-special-hs-handling;

                ti,dual-volt;

                cap-sdio-irq;

                //disable-wp;

                #address-cells = <1>;

                #size-cells = <0>;

                wilc_sdio@2 {

                                compatible = "atmel,wilc_sdio";

                                reg = <2>;

                                gpio_reset = <&gpio5 8 GPIO_ACTIVE_LOW>;

                                //gpio_chip_en = <&gpio0 12 GPIO_ACTIVE_HIGH>;

                                //gpio_irq = <&gpio0 13 GPIO_ACTIVE_HIGH>;

                };

};

The IRQ line is commented since it is not actually used by WILC1000: when compiling the wilc1000 driver, we chose to use the in-bound interrupt of the SDIO interface;

 

The pins are defined as the following:

 

my_configuration _wifi_pin: my_configuration_wifi_pin {

                                pinctrl-single,pins = <

                                                0x44 (PIN_INPUT_PULLUP | MUX_MODE3) /* (C5)  gmpc_a1.mmc2_dat0 */

                                                0x48 (PIN_INPUT_PULLUP | MUX_MODE3) /* (C6)  gpmc_a2.mmc2_dat1 */

                                                0x4c (PIN_INPUT_PULLUP | MUX_MODE3) /* (A4)  gpmc_a3.mmc2_dat2 */

                                                0x78 (PIN_INPUT_PULLUP | MUX_MODE3) /* (A3)  gpmc_be1n.mmc2_dat3 */

                                                0x88 (PIN_INPUT_PULLUP | MUX_MODE3) /* (B12) gpmc_csn3.mmc2_cmd */ /* qspi_clk conflict */

                                                0x8c (PIN_INPUT_PULLUP | MUX_MODE3) /* (A12) gpmc_clk.mmc2_clk */

                                >;

                };

 

my_configuration _wifi_pin_sleep: my_configuration_wifi_pin_sleep {

                                pinctrl-single,pins = <

                                                0x44 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (C5)  gmpc_a1.mmc2_dat0 */ /* gpio1_17 */

                                                0x48 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (C6)  gpmc_a2.mmc2_dat1 */ /* gpio1_18 */

                                                0x4c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (A4)  gpmc_a3.mmc2_dat2 */ /* gpio1_19 */

                                                0x78 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (A3)  gpmc_be1n.mmc2_dat3 */ /* gpio1_28 */

                                                0x88 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (B12) gpmc_csn3.mmc2_cmd */ /* qspi_clk conflict */ /* gpio2_0 */

                                                0x8c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (A12) gpmc_clk.mmc2_clk */ /* gpio2_1 */

                                >;

                };

However, when we insert the module we get a lot of errors:

 

insmod wilc-sdio.ko

[   45.979077] wilc_sdio mmc2:0001:1: WILC setting default Chip Enable GPIO to 94. Got -2

[   46.048897] wilc_sdio mmc2:0001:1: WILC setting default IRQ GPIO to 91. Got -2

# [   46.278752] CPU: 0 PID: 154 Comm: NetworkManager Not tainted 4.1.18-gaf393eb-dirty #4

[   46.287084] Hardware name: Generic AM43 (Flattened Device Tree)

[   46.294378] Backtrace:

[   46.297105] [<c0012c50>] (dump_backtrace) from [<c0012e70>] (show_stack+0x18/0x1c)

[   46.305947]  r7:dd6c8000 r6:00001003 r5:bf0197a8 r4:dd6ca000

[   46.312093] [<c0012e58>] (show_stack) from [<c068fda8>] (dump_stack+0x20/0x28)

[   46.320527] [<c068fd88>] (dump_stack) from [<bf0073fc>] (wilc_mac_open+0x28/0xc50 [wilc_sdio])

[   46.330175] [<bf0073d4>] (wilc_mac_open [wilc_sdio]) from [<c05908b0>] (__dev_open+0xc0/0x128)

[   46.339776]  r10:dc69ecc0 r9:dd4d0010 r8:00000000 r7:00001002 r6:00001003 r5:bf0197a8

[   46.348216]  r4:dd6ca000

[   46.351310] [<c05907f0>] (__dev_open) from [<c0590b64>] (__dev_change_flags+0x90/0x154)

[   46.360549]  r5:00000001 r4:dd6ca000

[   46.364461] [<c0590ad4>] (__dev_change_flags) from [<c0590c48>] (dev_change_flags+0x20/0x50)

[   46.374126]  r9:dd4d0010 r8:00000000 r7:bf0197a8 r6:00001002 r5:dd6ca140 r4:dd6ca000

[   46.383277] [<c0590c28>] (dev_change_flags) from [<c05a014c>] (do_setlink+0x270/0x798)

[   46.391823]  r9:dd4d0010 r8:00000000 r7:bf0197a8 r6:00000000 r5:dd603c44 r4:dd6ca000

[   46.400859] [<c059fedc>] (do_setlink) from [<c05a0be8>] (rtnl_newlink+0x45c/0x744)

[   46.409603]  r10:00000000 r9:00000000 r8:00000000 r7:dd4d0000 r6:dd6ca000 r5:dd603bb0

[   46.418091]  r4:00000000

[   46.421193] [<c05a078c>] (rtnl_newlink) from [<c059f6cc>] (rtnetlink_rcv_msg+0xd4/0x200)

[   46.430401]  r10:dc69ecc0 r9:00000000 r8:00000000 r7:00000000 r6:dc69ecc0 r5:dd4d0000

[   46.438873]  r4:00000000

[   46.441977] [<c059f5f8>] (rtnetlink_rcv_msg) from [<c05b6a94>] (netlink_rcv_skb+0xc4/0xe0)

[   46.451338]  r9:00000000 r8:00000000 r7:dc69ecc0 r6:c059f5f8 r5:00000000 r4:dd4d0000

[   46.459734] [<c05b69d0>] (netlink_rcv_skb) from [<c059f5e8>] (rtnetlink_rcv+0x24/0x34)

[   46.468875]  r7:dc69ecc0 r6:00000020 r5:dd62cc00 r4:dc69ecc0

[   46.475019] [<c059f5c4>] (rtnetlink_rcv) from [<c05b63d8>] (netlink_unicast+0x158/0x234)

[   46.484336]  r5:dd62cc00 r4:ddcf0800

[   46.488239] [<c05b6280>] (netlink_unicast) from [<c05b6868>] (netlink_sendmsg+0x2e0/0x34c)

[   46.497695]  r8:00000000 r7:00000020 r6:dd62cc00 r5:00000000 r4:dd603f4c

[   46.504947] [<c05b6588>] (netlink_sendmsg) from [<c0575818>] (sock_sendmsg+0x1c/0x2c)

[   46.513911]  r10:00000000 r9:dd603e30 r8:00000000 r7:dda62780 r6:00000000 r5:00000040

[   46.522354]  r4:dd603f4c

[   46.525407] [<c05757fc>] (sock_sendmsg) from [<c0575d1c>] (___sys_sendmsg+0x1d4/0x1dc)

[   46.534538] [<c0575b48>] (___sys_sendmsg) from [<c0576a54>] (__sys_sendmsg+0x44/0x70)

[   46.543265]  r9:dd602000 r8:c000fac4 r7:00000128 r6:dda62780 r5:00000000 r4:bedaa79c

[   46.551662] [<c0576a10>] (__sys_sendmsg) from [<c0576a90>] (SyS_sendmsg+0x10/0x14)

[   46.560281]  r6:b69a894c r5:002459e8 r4:002a7670

[   46.565311] [<c0576a80>] (SyS_sendmsg) from [<c000f920>] (ret_fast_syscall+0x0/0x3c)

[   46.580194] wilc_sdio mmc2:0001:1: wilc_sdio_cmd53..failed, err(-84)

[   46.590975] wilc_sdio mmc2:0001:1: Failed cmd53, read reg (003b0000)...

[   46.600121] [wilc start]: fail read reg 0x3b0000

[   46.605336] wilc_sdio mmc2:0001:1: wilc_sdio_cmd53..failed, err(-84)

[   46.613930] wilc_sdio mmc2:0001:1: Failed cmd53, read reg (00001000)...

[   46.621043] wilc_sdio mmc2:0001:1: Unsupported chipid: 0

[   46.629198] wilc_sdio mmc2:0001:1 p2p0: ERR [wilc_wlan_initialize: 1157] Initializing WILC_Wlan FAILED

[   46.639155] wilc_sdio mmc2:0001:1 p2p0: ERR [wilc_wlan_initialize: 1244] WLAN initialization FAILED

[   46.652387] wilc_sdio mmc2:0001:1 p2p0: ERR [wilc_mac_open: 1296] Failed to initialize wilc

[   46.661360] wilc_sdio mmc2:0001:1 p2p0: ERR [wilc_send_config_pkt: 1929] Set Timed out

[   46.672452] wilc_sdio mmc2:0001:1 p2p0: ERR [handle_set_wfi_drv_handler: 445] Failed to set driver handler

[   46.682817] wilc_sdio mmc2:0001:1 p2p0: Host cmd 24 failed

[   46.691168] wilc_sdio mmc2:0001:1 p2p0: ERR [host_if_work: 3000] [Host Interface] undefined

[   46.702015] wilc_sdio mmc2:0001:1 p2p0: ERR [wilc_set_mac_address: 3422] Failed to send get mac address

[   46.730797] CPU: 0 PID: 154 Comm: NetworkManager Not tainted 4.1.18-gaf393eb-dirty #4

[   46.739163] Hardware name: Generic AM43 (Flattened Device Tree)

[   46.746316] Backtrace:

[   46.749042] [<c0012c50>] (dump_backtrace) from [<c0012e70>] (show_stack+0x18/0x1c)

[   46.757943]  r7:dd6c8000 r6:00001003 r5:bf0197a8 r4:dd6c8800

[   46.764107] [<c0012e58>] (show_stack) from [<c068fda8>] (dump_stack+0x20/0x28)

[   46.772532] [<c068fd88>] (dump_stack) from [<bf0073fc>] (wilc_mac_open+0x28/0xc50 [wilc_sdio])

[   46.782170] [<bf0073d4>] (wilc_mac_open [wilc_sdio]) from [<c05908b0>] (__dev_open+0xc0/0x128)

[   46.791763]  r10:dc419000 r9:dd4d0710 r8:00000000 r7:00001002 r6:00001003 r5:bf0197a8

[   46.800215]  r4:dd6c8800

[   46.803278] [<c05907f0>] (__dev_open) from [<c0590b64>] (__dev_change_flags+0x90/0x154)

[   46.812367]  r5:00000001 r4:dd6c8800

[   46.816269] [<c0590ad4>] (__dev_change_flags) from [<c0590c48>] (dev_change_flags+0x20/0x50)

[   46.825909]  r9:dd4d0710 r8:00000000 r7:bf0197a8 r6:00001002 r5:dd6c8940 r4:dd6c8800

[   46.834282] [<c0590c28>] (dev_change_flags) from [<c05a014c>] (do_setlink+0x270/0x798)

[   46.843272]  r9:dd4d0710 r8:00000000 r7:bf0197a8 r6:00000000 r5:dd603c44 r4:dd6c8800

[   46.851668] [<c059fedc>] (do_setlink) from [<c05a0be8>] (rtnl_newlink+0x45c/0x744)

[   46.860264]  r10:00000000 r9:00000000 r8:00000000 r7:dd4d0700 r6:dd6c8800 r5:dd603bb0

[   46.868741]  r4:00000000

[   46.871882] [<c05a078c>] (rtnl_newlink) from [<c059f6cc>] (rtnetlink_rcv_msg+0xd4/0x200)

[   46.881119]  r10:dc419000 r9:00000000 r8:00000000 r7:00000000 r6:dc419000 r5:dd4d0700

[   46.889569]  r4:00000000

[   46.892629] [<c059f5f8>] (rtnetlink_rcv_msg) from [<c05b6a94>] (netlink_rcv_skb+0xc4/0xe0)

[   46.902056]  r9:00000000 r8:00000000 r7:dc419000 r6:c059f5f8 r5:00000000 r4:dd4d0700

[   46.910417] [<c05b69d0>] (netlink_rcv_skb) from [<c059f5e8>] (rtnetlink_rcv+0x24/0x34)

[   46.919457]  r7:dc419000 r6:00000020 r5:dd62cc00 r4:dc419000

[   46.925618] [<c059f5c4>] (rtnetlink_rcv) from [<c05b63d8>] (netlink_unicast+0x158/0x234)

[   46.934951]  r5:dd62cc00 r4:ddcf0800

[   46.938835] [<c05b6280>] (netlink_unicast) from [<c05b6868>] (netlink_sendmsg+0x2e0/0x34c)

[   46.948222]  r8:00000000 r7:00000020 r6:dd62cc00 r5:00000000 r4:dd603f4c

[   46.955485] [<c05b6588>] (netlink_sendmsg) from [<c0575818>] (sock_sendmsg+0x1c/0x2c)

[   46.964427]  r10:00000000 r9:dd603e30 r8:00000000 r7:dda62780 r6:00000000 r5:00000040

[   46.972910]  r4:dd603f4c

[   46.975998] [<c05757fc>] (sock_sendmsg) from [<c0575d1c>] (___sys_sendmsg+0x1d4/0x1dc)

[   46.985043] [<c0575b48>] (___sys_sendmsg) from [<c0576a54>] (__sys_sendmsg+0x44/0x70)

[   46.993386]  r9:dd602000 r8:c000fac4 r7:00000128 r6:dda62780 r5:00000000 r4:bedaa36c

[   47.002139] [<c0576a10>] (__sys_sendmsg) from [<c0576a90>] (SyS_sendmsg+0x10/0x14)

[   47.010859]  r6:b69a894c r5:002459e8 r4:002a6238

[   47.015871] [<c0576a80>] (SyS_sendmsg) from [<c000f920>] (ret_fast_syscall+0x0/0x3c)

[   47.024848] power up request for already powered up source Wifi

[   47.038977] wilc_sdio mmc2:0001:1: wilc_sdio_cmd53..failed, err(-84)

[   47.048600] wilc_sdio mmc2:0001:1: Failed cmd53, read reg (003b0000)...

[   47.055701] [wilc start]: fail read reg 0x3b0000

[   47.062482] wilc_sdio mmc2:0001:1: wilc_sdio_cmd53..failed, err(-84)

[   47.069337] wilc_sdio mmc2:0001:1: Failed cmd53, read reg (00001000)...

[   47.078933] wilc_sdio mmc2:0001:1: Unsupported chipid: 0

[   47.085930] wilc_sdio mmc2:0001:1 wlan0: ERR [wilc_wlan_initialize: 1157] Initializing WILC_Wlan FAILED

[   47.095963] wilc_sdio mmc2:0001:1 wlan0: ERR [wilc_wlan_initialize: 1244] WLAN initialization FAILED

[   47.109201] wilc_sdio mmc2:0001:1 wlan0: ERR [wilc_mac_open: 1296] Failed to initialize wilc

[   47.118260] wilc_sdio mmc2:0001:1 wlan0: ERR [wilc_send_config_pkt: 1929] Set Timed out

[   47.129380] wilc_sdio mmc2:0001:1 wlan0: ERR [handle_set_wfi_drv_handler: 445] Failed to set driver handler

[   47.139831] wilc_sdio mmc2:0001:1 wlan0: Host cmd 24 failed

[   47.148210] wilc_sdio mmc2:0001:1 wlan0: ERR [host_if_work: 3000] [Host Interface] undefined

[   47.158630] wilc_sdio mmc2:0001:1 wlan0: ERR [wilc_set_mac_address: 3422] Failed to send get mac address

 

Attached you can also find the full dmesg content.

 

We cross-checked the hardware and it’s fine: we connected the our  WILC1000 prototype board to the Microchip ATSAMA5D44 EVK and it worked fine. Btw, the SAMA544 is running the same Kernel version of the Rico board. Given all the above, the only real difference is the SDIO driver and the device tree configuration: these are the only two things which are hw dependent.

Btw, we even lowered the SDIO speed for the TI (2Mhz), but using the SAMA544 with the same WILC1000 proto-board we could really work at almost at full speed even though the hardware was wired… so it’s not a problem of wires’ length.

 

Given that, we’d like to have your advices:

  • Do you see any mistakes in the pin assignment of the SDIO interface?
  • Atmel drivers requires to have in-bound interrupt: is the device tree well configured for this? Does it require to enable any option in the SDIO driver? Or is the cap-sdio-irq option in device tree enough?
  • Since the hw set-up does not require a card detect, they suggest to add “non-removable”: I guess that the same can be done via ti,non-removable, right?
  • Is the DMA properly configured? &mmc3 is the only mmc interface whose DMA’s configuration is not done on the am4372.dtsi file.

 

Thank you

Best Regards

Marco