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.

WL1831mod in mmc3 interface of AM3358 with 4.4.5 linux kernel

Other Parts Discussed in Thread: AM3358, WL1831, TPS65217, WL1271

 Hi,
I am configuring a custom board with am3358 with linux kernel 4.4.5 in it. I am using mmc3 interface (as counting from 1, if counting from 0 mmc2) to connect to wlan wl1831mod. Here is the dts entry changes I am making

/ {

wlan_en_reg: fixedregulator@2 {
                 compatible = "regulator-fixed";
                 regulator-name = "wlan-en-regulator";
                 regulator-min-microvolt = <1800000>;
                 regulator-max-microvolt = <1800000>;
                 regulator-always-on;

                 /* WL_EN */
                 gpio = <&gpio0 21 0>;
                 enable-active-high;
       
             };

                kim {
                        compatible = "kim";
                        nshutdown_gpio = <115>; /* Bank3, pin19 */
                        dev_name = "/dev/ttyO1";
                        flow_cntrl = <1>;
                        baud_rate = <3000000>;
                };
                btwilink {
                        compatible = "btwilink";
                };
};
&am33xx_pinmux {
bt_pins: pinmux_bt_pins {
             pinctrl-single,pins = <
                 0x1A4 (PIN_OUTPUT | MUX_MODE7)     /*(C13) mcapsp0.gpio3_19 BT_EN*/
                 >;
         };

bt_pins_sleep: pinmux_bt_pins_sleep {
                   pinctrl-single,pins = <
                     
                       0x1A4 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)    /*(C13) mcapsp0.gpio3_19 BT_EN*/
                       >;
               };

mmc3_pins: pinmux_mmc3_pins {
               pinctrl-single,pins = <
                                  
                   0x13C (PIN_INPUT_PULLUP | MUX_MODE6) /* (L15) mii1_col.mmc3_clk */
                   0x114 (PIN_INPUT_PULLUP | MUX_MODE6) /* (J16) mii1_tx_en.mmc3_cmd */
                   0x118 (PIN_INPUT_PULLUP | MUX_MODE5) /* (J17) mii1_rx_dv.mmc3_dat0 */
                   0x11C (PIN_INPUT_PULLUP | MUX_MODE5) /* (J18) mii1_txd3.mmc3_dat1 */
                   0x120 (PIN_INPUT_PULLUP | MUX_MODE5) /* (K15) mii1_txd2.mmc3_dat2 */
                   0x108 (PIN_INPUT_PULLUP | MUX_MODE5) /* (H16) mii1_col.mmc3_dat3 */

                   >;
                   >;
           };

mmc3_pins_sleep: pinmux_mmc3_pins_sleep {
                     pinctrl-single,pins = <
                         0x13C (PIN_INPUT_PULLDOWN | MUX_MODE6) /* mii1_col.mmc3_clk */
                         0x114 (PIN_INPUT_PULLDOWN | MUX_MODE6) /* mii1_tx_en.mmc3_cmd */
                         0x118 (PIN_INPUT_PULLDOWN | MUX_MODE5) /* mii1_rx_dv.mmc3_dat0 */
                         0x11C (PIN_INPUT_PULLDOWN | MUX_MODE5) /* mii1_txd3.mmc3_dat1 */
                         0x120 (PIN_INPUT_PULLDOWN | MUX_MODE5) /* mii1_txd2.mmc3_dat2 */
                         0x108 (PIN_INPUT_PULLDOWN | MUX_MODE5) /* mii1_col.mmc3_dat3 */
                         >;
                 };

                 /* wl18xx card enable/irq GPIOs. */
wlan_pins: pinmux_wlan_pins {
               pinctrl-single,pins = <
                   0x124 (PIN_OUTPUT_PULLUP | MUX_MODE7)    /* (K16) mii1_txd1.gpio0_21 WL_EN*/
                   0x3C (PIN_INPUT_PULLUP | MUX_MODE7)      /* (U13)  gpmc_ad15.gpio1_15 WL_IRQ*/

                   >;
           };

           /* wl18xx card enable/irq GPIOs. */
wlan_pins_sleep: pinmux_wlan_pins_sleep {
                     pinctrl-single,pins = <
                         0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE7)    /* mii1_txd1.gpio0_21 WL_EN*/
                         0x3C (PIN_INPUT_PULLUP | MUX_MODE7)        /* gpmc_ad15.gpio1_15 WL_IRQ*/
                         >;
                 };

uart1_pins_default: pinmux_uart1_pins_default {
                        pinctrl-single,pins = <
                            0x178 (PIN_INPUT | MUX_MODE0)           /* (D18) uart1_ctsn.uart1_cts */
                            0x17C (PIN_OUTPUT | MUX_MODE0)          /* (D17) uart1_rtsn.uart1_rts */
                            0x180 (PIN_INPUT | MUX_MODE0)           /* (D16) uart1_rxd.uart1_rxd */
                            0x184 (PIN_OUTPUT | MUX_MODE0)          /* (D15) uart1_txd.uart1_txd */
                            >;
                    };

uart1_pins_sleep: pinmux_uart1_pins_sleep {
                      pinctrl-single,pins = <
                          0x178 (PIN_INPUT_PULLDOWN | MUX_MODE0)    /* uart1_ctsn .uart4_cts */
                          0x17C (PIN_INPUT_PULLDOWN | MUX_MODE0)    /* uart1_rtsn.uart4_rts */
                          0x180 (PIN_INPUT_PULLDOWN | MUX_MODE0)    /* uart1_rxd.uart4_rxd */
                          0x184 (PIN_INPUT_PULLDOWN | MUX_MODE0)    /* uart1_txd.uart4_txd */
                          >;
                  };
};

&mmc3 {
    status = "okay";
    vmmc-supply = <&wlan_en_reg>;
    bus-width = <4>;
    pinctrl-names = "default", "sleep";
    pinctrl-0 = <&mmc3_pins &wlan_pins>;
    pinctrl-1 = <&mmc3_pins_sleep &wlan_pins_sleep>;
    ti,non-removable;
    ti,needs-special-hs-handling;
    keep-power-in-suspend;

    #address-cells = <1>;
    #size-cells = <0>;
    wlcore: wlcore@0 {
            compatible = "ti,wl1831";
            reg = <2>;
            interrupt-parent = <&gpio1>;
             interrupts = <15 IRQ_TYPE_LEVEL_HIGH>;
          };
};


&uart1 {
    pinctrl-names = "default", "sleep";
    pinctrl-0 = <&uart1_pins_default &bt_pins>;
    pinctrl-1 = <&uart1_pins_sleep &bt_pins_sleep>;
    status = "okay";
};
       
I am using GPIO1_15( Ball: U13) as WLAN_IRQ , GPIO0_21 (Ball: K16) for WLAN_EN.. And for cmd and data lines as I have configured above.In comment I have mentioned which ball I am using. I am pretty sure that used pins are not conflicting with other pins.

As mmc3 interface no dma channels are configured by default I have edited in am33xx.dtsi mm3 section like shown below

mmc3: mmc@47810000 {
          compatible = "ti,omap4-hsmmc";
          ti,hwmods = "mmc3";
          ti,needs-special-reset;
          dmas = <&edma 12
                &edma 13>;
          dma-names = "tx", "rx";
          interrupts = <29>;
          interrupt-parent = <&intc>;
          reg = <0x47810000 0x1000>;
          status = "disabled";
      };

and am335x-bone-common.dtsi I have added like below

&edma {
    ti,edma-xbar-event-map = <1 12>,   /* gpevt1 -> 12 */
        <2 13>;   /* xdma_event_intr2 -> 13 */
};

As I am using linux kernel 4.4.5 in it I believe no need of back porting any drivers since it is supported from 4.1 onwards. I am manually insmod ing the following ko's in the below format

insmod cfg80211.ko

insmod mac80211.ko

insmod wlcore.ko

/usr/bin/wlconf/wlconf -o /lib/firmware/ti-connectivity/wl18xx-conf.bin -I official_inis/WL8_System_parameters.ini

/usr/bin/wlconf -i /lib/firmware/ti-connectivity/wl18xx-conf.bin -o /lib/firmware/ti-connectivity/wl18xx-conf.bin -s wl18xx.ht.mode=0x01
insmod wlcore_sdio.ko
insmod wl18xx.ko
But I am not getting any wlan0 node created. During insmod ing no errors are throwing.
Where I am going wrong  . Any suggestions are appreciated
  • Hi,

    Please share the full boot log.
    Please also verify the hardware connections (www.ti.com/.../swru437.pdf) and fill out the check list.

    Regards,
    Gigi Joseph.
  • Hi Giri,
    Here is the complete boot log
    Starting kernel ...

    [ 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.5-ARCH+ (vineeth@blr-vvdn) (gcc version 4.9.3 20150413 (prerelease) (Linaro GCC 4.9-2015.05) ) #10 Wed May 25 00:
    55:40 IST 2016
    [ 0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=50c5387d
    [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [ 0.000000] Machine model: TI AM335x BeagleBone Black
    [ 0.000000] cma: Reserved 24 MiB at 0xbe800000
    [ 0.000000] Memory policy: Data cache writeback
    [ 0.000000] CPU: All CPU(s) started in SVC mode.
    [ 0.000000] AM335X ES2.1 (sgx neon )
    [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 260416
    [ 0.000000] Kernel command line: console=ttyO0,115200n8 root=PARTUUID=00000000-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: 7, 524288 bytes)
    [ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
    [ 0.000000] Memory: 1001428K/1048576K available (6890K kernel code, 878K rwdata, 3256K rodata, 468K init, 843K bss, 22572K reserved, 24576K cma
    -reserved, 237568K highmem)
    [ 0.000000] Virtual kernel memory layout:
    [ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
    [ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
    [ 0.000000] vmalloc : 0xf0800000 - 0xff800000 ( 240 MB)
    [ 0.000000] lowmem : 0xc0000000 - 0xf0000000 ( 768 MB)
    [ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
    [ 0.000000] modules : 0xbf800000 - 0xbfe00000 ( 6 MB)
    [ 0.000000] .text : 0xc0008000 - 0xc09f0d8c (10148 kB)
    [ 0.000000] .init : 0xc09f1000 - 0xc0a66000 ( 468 kB)
    [ 0.000000] .data : 0xc0a66000 - 0xc0b41900 ( 879 kB)
    [ 0.000000] .bss : 0xc0b44000 - 0xc0c16ea4 ( 844 kB)
    [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [ 0.000000] NR_IRQS:16 nr_irqs:16 16
    [ 0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    [ 0.000000] OMAP clockevent source: timer2 at 24000000 Hz
    [ 0.000010] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
    [ 0.000026] clocksource: timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
    [ 0.000036] OMAP clocksource: timer1 at 24000000 Hz
    [ 0.000191] Console: colour dummy device 80x30
    [ 0.000213] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'
    [ 0.000219] This ensures that you still see kernel messages. Please
    [ 0.000224] update your kernel commandline.
    [ 0.000240] Calibrating delay loop... 996.14 BogoMIPS (lpj=4980736)
    [ 0.089188] pid_max: default: 32768 minimum: 301
    [ 0.089291] Security Framework initialized
    [ 0.089445] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
    [ 0.089456] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
    [ 0.090103] Initializing cgroup subsys io
    [ 0.090128] Initializing cgroup subsys memory
    [ 0.090161] Initializing cgroup subsys devices
    [ 0.090176] Initializing cgroup subsys freezer
    [ 0.090189] Initializing cgroup subsys net_cls
    [ 0.090201] Initializing cgroup subsys perf_event
    [ 0.090212] Initializing cgroup subsys net_prio
    [ 0.090225] Initializing cgroup subsys pids
    [ 0.090267] CPU: Testing write buffer coherency: ok
    [ 0.090311] ftrace: allocating 32853 entries in 65 pages
    [ 0.173461] Setting up static identity map for 0x800081c0 - 0x8000820c
    [ 0.178015] devtmpfs: initialized
    [ 0.186308] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    [ 0.193840] omap_hwmod: tptc0 using broken dt data from edma
    [ 0.193944] omap_hwmod: tptc1 using broken dt data from edma
    [ 0.194034] omap_hwmod: tptc2 using broken dt data from edma
    [ 0.197953] omap_hwmod: debugss: _wait_target_disable failed
    [ 0.200311] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [ 0.202207] xor: measuring software checksum speed
    [ 0.299157] arm4regs : 1223.600 MB/sec
    [ 0.399153] 8regs : 932.400 MB/sec
    [ 0.499155] 32regs : 1082.000 MB/sec
    [ 0.599153] neon : 1725.600 MB/sec
    [ 0.599159] xor: using function: neon (1725.600 MB/sec)
    [ 0.599221] pinctrl core: initialized pinctrl subsystem
    [ 0.600685] NET: Registered protocol family 16
    [ 0.602543] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [ 0.606069] omap_gpio 44e07000.gpio: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_gpio0_pins, deferring p
    robe
    [ 0.606306] omap_gpio 4804c000.gpio: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_gpio1_pins, deferring p
    robe
    [ 0.606534] omap_gpio 481ac000.gpio: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_gpio2_pins, deferring p
    robe
    [ 0.606753] omap_gpio 481ae000.gpio: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_gpio3_pins, deferring p
    robe
    [ 0.607852] platform 4802a000.i2c: Cannot lookup hwmod 'i2c2'
    [ 0.612812] No ATAGs?
    [ 0.612834] hw-breakpoint: debug architecture 0x4 unsupported.
    [ 0.789237] raid6: int32x1 gen() 242 MB/s
    [ 0.959188] raid6: int32x1 xor() 237 MB/s
    [ 1.129158] raid6: int32x2 gen() 365 MB/s
    [ 1.299221] raid6: int32x2 xor() 270 MB/s
    [ 1.469222] raid6: int32x4 gen() 398 MB/s
    [ 1.639238] raid6: int32x4 xor() 244 MB/s
    [ 1.809287] raid6: int32x8 gen() 325 MB/s
    [ 1.979249] raid6: int32x8 xor() 212 MB/s
    [ 2.149166] raid6: neonx1 gen() 1463 MB/s
    [ 2.319166] raid6: neonx1 xor() 848 MB/s
    [ 2.489177] raid6: neonx2 gen() 1877 MB/s
    [ 2.659162] raid6: neonx2 xor() 1226 MB/s
    [ 2.829171] raid6: neonx4 gen() 2027 MB/s
    [ 2.999171] raid6: neonx4 xor() 1201 MB/s
    [ 3.169190] raid6: neonx8 gen() 898 MB/s
    [ 3.339171] raid6: neonx8 xor() 880 MB/s
    [ 3.339177] raid6: using algorithm neonx4 gen() 2027 MB/s
    [ 3.339183] raid6: .... xor() 1201 MB/s, rmw enabled
    [ 3.339188] raid6: using intx1 recovery algorithm
    [ 3.340642] edma 49000000.edma: Legacy memcpy is enabled, things might not work
    [ 3.346390] edma 49000000.edma: TI EDMA DMA engine driver
    [ 3.349992] SCSI subsystem initialized
    [ 3.350541] usbcore: registered new interface driver usbfs
    [ 3.350600] usbcore: registered new interface driver hub
    [ 3.350670] usbcore: registered new device driver usb
    [ 3.351121] omap_i2c 44e0b000.i2c: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_i2c0_pins, deferring prob
    e
    [ 3.351161] omap_i2c 4802a000.i2c: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_i2c1_pins, deferring prob
    e
    [ 3.351252] media: Linux media interface: v0.10
    [ 3.351302] Linux video capture interface: v2.00
    [ 3.351388] pps_core: LinuxPPS API ver. 1 registered
    [ 3.351394] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [ 3.351426] PTP clock support registered
    [ 3.351970] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
    [ 3.352952] Bluetooth: Core ver 2.21
    [ 3.352992] NET: Registered protocol family 31
    [ 3.352998] Bluetooth: HCI device and connection manager initialized
    [ 3.353017] Bluetooth: HCI socket layer initialized
    [ 3.353027] Bluetooth: L2CAP socket layer initialized
    [ 3.353061] Bluetooth: SCO socket layer initialized
    [ 3.353086] NetLabel: Initializing
    [ 3.353091] NetLabel: domain hash size = 128
    [ 3.353095] NetLabel: protocols = UNLABELED CIPSOv4
    [ 3.353151] NetLabel: unlabeled traffic allowed by default
    [ 3.353576] clocksource: Switched to clocksource timer1
    [ 3.433126] NET: Registered protocol family 2
    [ 3.433838] TCP established hash table entries: 8192 (order: 3, 32768 bytes)
    [ 3.433918] TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
    [ 3.433983] TCP: Hash tables configured (established 8192 bind 8192)
    [ 3.434071] UDP hash table entries: 512 (order: 1, 8192 bytes)
    [ 3.434093] UDP-Lite hash table entries: 512 (order: 1, 8192 bytes)
    [ 3.434258] NET: Registered protocol family 1
    [ 3.434677] RPC: Registered named UNIX socket transport module.
    [ 3.434688] RPC: Registered udp transport module.
    [ 3.434693] RPC: Registered tcp transport module.
    [ 3.434698] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [ 3.435458] hw perfevents: enabled with armv7_cortex_a8 PMU driver, 5 counters available
    [ 3.437240] futex hash table entries: 256 (order: -1, 3072 bytes)
    [ 3.445610] zbud: loaded
    [ 3.446117] VFS: Disk quotas dquot_6.6.0
    [ 3.446309] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
    [ 3.448211] NFS: Registering the id_resolver key type
    [ 3.448260] Key type id_resolver registered
    [ 3.448267] Key type id_legacy registered
    [ 3.448289] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [ 3.448563] fuse init (API version 7.23)
    [ 3.449042] SGI XFS with ACLs, security attributes, realtime, no debug enabled
    [ 3.455257] bounce: pool size: 64 pages
    [ 3.455475] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 250)
    [ 3.455631] io scheduler noop registered
    [ 3.455643] io scheduler deadline registered
    [ 3.455697] io scheduler cfq registered (default)
    [ 3.456717] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
    [ 3.459153] Serial: 8250/16550 driver, 6 ports, IRQ sharing disabled
    [ 3.461375] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 27, base_baud = 3000000) is a 8250
    [ 4.342568] console [ttyS0] enabled
    [ 4.346783] 48022000.serial: ttyS1 at MMIO 0x48022000 (irq = 28, base_baud = 3000000) is a 8250
    [ 4.356128] 48024000.serial: ttyS2 at MMIO 0x48024000 (irq = 29, base_baud = 3000000) is a 8250
    [ 4.365430] 481a8000.serial: ttyS4 at MMIO 0x481a8000 (irq = 30, base_baud = 3000000) is a 8250
    [ 4.375260] [drm] Initialized drm 1.1.0 20060810
    [ 4.380615] usbcore: registered new interface driver dln2
    [ 4.388031] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
    [ 4.394643] ehci-platform: EHCI generic platform driver
    [ 4.400017] ehci-omap: OMAP-EHCI Host Controller driver
    [ 4.405562] usbcore: registered new interface driver uas
    [ 4.410968] usbcore: registered new interface driver usb-storage
    [ 4.417057] usbcore: registered new interface driver ums-cypress
    [ 4.423138] usbcore: registered new interface driver ums-realtek
    [ 4.430617] 47401300.usb-phy supply vcc not found, using dummy regulator
    [ 4.440309] 47401b00.usb-phy supply vcc not found, using dummy regulator
    [ 4.449017] musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver
    [ 4.454845] musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 1
    [ 4.462872] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
    [ 4.469707] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [ 4.476970] usb usb1: Product: MUSB HDRC host driver
    [ 4.481953] usb usb1: Manufacturer: Linux 4.4.5-ARCH+ musb-hcd
    [ 4.487817] usb usb1: SerialNumber: musb-hdrc.1.auto
    [ 4.493421] hub 1-0:1.0: USB hub found
    [ 4.497252] hub 1-0:1.0: 1 port detected
    [ 4.509109] mousedev: PS/2 mouse device common for all mice
    [ 4.515622] i2c /dev entries driver
    [ 4.519435] Driver for 1-wire Dallas network protocol.
    [ 4.525483] Bluetooth: Virtual HCI driver ver 1.5
    [ 4.530379] Bluetooth: HCI UART driver ver 2.3
    [ 4.534871] Bluetooth: HCI UART protocol H4 registered
    [ 4.540028] Bluetooth: HCI UART protocol BCSP registered
    [ 4.545368] Bluetooth: HCI UART protocol LL registered
    [ 4.550524] Bluetooth: HCI UART protocol ATH3K registered
    [ 4.555961] Bluetooth: HCI UART protocol Three-wire (H5) registered
    [ 4.562324] Bluetooth: HCI UART protocol BCM registered
    [ 4.567581] Bluetooth: HCI UART protocol QCA registered
    [ 4.572904] usbcore: registered new interface driver bcm203x
    [ 4.578661] usbcore: registered new interface driver bpa10x
    [ 4.584327] usbcore: registered new interface driver bfusb
    [ 4.589903] usbcore: registered new interface driver btusb
    [ 4.595585] Bluetooth: Generic Bluetooth SDIO driver ver 0.1
    [ 4.601371] usbcore: registered new interface driver ath3k
    [ 4.607145] sdhci: Secure Digital Host Controller Interface driver
    [ 4.613348] sdhci: Copyright(c) Pierre Ossman
    [ 4.654450] Synopsys Designware Multimedia Card Interface Driver
    [ 4.660689] sdhci-pltfm: SDHCI platform and OF driver helper
    [ 4.666786] ledtrig-cpu: registered to indicate activity on CPUs
    [ 4.672966] hidraw: raw HID events driver (C) Jiri Kosina
    [ 4.681850] usbcore: registered new interface driver usbhid
    [ 4.687509] usbhid: USB HID core driver
    [ 4.691590] ashmem: initialized
    [ 4.695367] remoteproc0: wkup_m3 is available
    [ 4.699869] remoteproc0: Note: remoteproc is still under development and considered experimental.
    [ 4.708886] remoteproc0: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [ 4.719414] remoteproc0: Direct firmware load for am335x-pm-firmware.elf failed with error -2
    [ 4.728123] remoteproc0: failed to load am335x-pm-firmware.elf
    [ 4.735568] oprofile: using arm/armv7
    [ 4.743729] NET: Registered protocol family 10
    [ 4.749227] mip6: Mobile IPv6
    [ 4.752223] NET: Registered protocol family 17
    [ 4.756878] Bluetooth: RFCOMM TTY layer initialized
    [ 4.761785] Bluetooth: RFCOMM socket layer initialized
    [ 4.767052] Bluetooth: RFCOMM ver 1.11
    [ 4.770853] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
    [ 4.776207] Bluetooth: BNEP filters: protocol multicast
    [ 4.781477] Bluetooth: BNEP socket layer initialized
    [ 4.786498] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
    [ 4.792463] Bluetooth: HIDP socket layer initialized
    [ 4.797602] Key type dns_resolver registered
    [ 4.801898] mpls_gso: MPLS GSO support
    [ 4.805840] omap_voltage_late_init: Voltage driver support not added
    [ 4.812261] mmc0: MAN_BKOPS_EN bit is not set
    [ 4.817173] ThumbEE CPU extension supported.
    [ 4.821476] Registering SWP/SWPB emulation handler
    [ 4.827040] registered taskstats version 1
    [ 4.831343] zswap: loaded using pool lzo/zbud
    [ 4.837668] mmc0: new high speed MMC card at address 0001
    [ 4.844079] Btrfs loaded
    [ 4.847534] mmcblk0: mmc0:0001 MMC16G 14.6 GiB
    [ 4.852717] mmcblk0boot0: mmc0:0001 MMC16G partition 1 16.0 MiB
    [ 4.858949] Key type encrypted registered
    [ 4.863462] pinctrl-single 44e10800.pinmux: bad data for mux pinmux_gpio0_pins
    [ 4.870755] pinctrl-single 44e10800.pinmux: no pins entries for pinmux_gpio0_pins
    [ 4.878333] mmcblk0boot1: mmc0:0001 MMC16G partition 2 16.0 MiB
    [ 4.885515] OMAP GPIO hardware version 0.1
    [ 4.889783] mmcblk0: p1
    [ 4.919733] tps65217 0-0024: TPS65217 ID 0xe version 1.2
    [ 4.925356] at24 0-0050: 32768 byte 24c256 EEPROM, writable, 1 bytes/write
    [ 4.933446] rtc-ds1374 0-0068: rtc core: registered ds1374 as rtc0
    [ 4.940423] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
    [ 4.946358] omap_i2c 4802a000.i2c: _od_fail_runtime_resume: FIXME: missing hwmod/omap_dev info
    [ 4.955662] omap_hsmmc 48060000.mmc: Got CD GPIO
    [ 5.035338] cpufreq: cpufreq_online: CPU0: Running at unlisted freq: 1000000 KHz
    [ 5.044401] cpufreq: cpufreq_online: CPU0: Unlisted initial frequency changed to: 720000 KHz
    [ 5.053567] rtc-ds1374 0-0068: setting system clock to 2016-01-10 14:39:26 UTC (1452436766)
    [ 5.067175] Waiting for root device PARTUUID=00000000-02...
    [ 5.078828] mmc1: host does not support reading read-only switch, assuming write-enable
    [ 5.090339] mmc1: new high speed SDHC card at address aaaa
    [ 5.096629] mmcblk1: mmc1:aaaa SL08G 7.40 GiB
    [ 5.102636] mmcblk1: p1 p2
    [ 5.111147] omap_hsmmc 47810000.mmc: card claims to support voltages below defined range


    [ 5.129841] mmc2: queuing unknown CIS tuple 0x91 (3 bytes)
    [ 5.136021] mmc2: new high speed SDIO card at address 0001


    [ 5.192447] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Opts: (null)
    [ 5.200705] VFS: Mounted root (ext4 filesystem) on device 179:26.
    [ 5.217503] devtmpfs: mounted
    [ 5.221121] Freeing unused kernel memory: 468K (c09f1000 - c0a66000)
    INIT: version 2.88 booting
    Error opening /dev/fb0: No such file or directory
    Starting udev
    [ 5.893221] udevd[110]: starting version 182
    depmod: ERROR: could not open directory /lib/modules/4.4.5-ARCH+: No such file or directory
    depmod: WARNING: -e needs -E or -F
    depmod: ERROR: could not open directory /lib/modules/4.4.5-ARCH+: No such file or directory
    depmod: FATAL: could not search modules: No such file or directory
    [ 6.290246] EXT4-fs (mmcblk1p2): re-mounted. Opts: data=ordered
    bootlogd: cannot allocate pseudo tty: No such file or directory
    Starting random number generator daemonUnable to open file: /dev/tpm0
    can't open any entropy source
    Maybe RNG device modules are not loaded

    .
    [ 6.571702] random: dd urandom read with 29 bits of entropy available
    ALSA: Restoring mixer settings...
    /usr/sbin/alsactl: load_state:1729: No soundcards found...
    INIT: Entering runlevel: 5
    Configuring network interfaces... ifconfig: SIOCGIFFLAGS: No such device
    done.
    Starting system message bus: dbus.

    udevadm settle - timeout of 3 seconds reached, the event queue contains:
    /sys/devices/platform/ocp/48060000.mmc/mmc_host/mmc1/mmc1:aaaa/block/mmcblk1/mmcblk1p1 (1121)
    /sys/devices/platform/ocp/48060000.mmc/mmc_host/mmc1/mmc1:aaaa/block/mmcblk1/mmcblk1p2 (1122)
    /sys/devices/platform/ocp/481d8000.mmc/mmc_host/mmc0/mmc0:0001/block/mmcblk0/mmcblk0boot0 (1136)
    /sys/devices/platform/ocp/481d8000.mmc/mmc_host/mmc0/mmc0:0001/block/mmcblk0/mmcblk0boot1 (1137)
    /sys/devices/platform/ocp/481d8000.mmc/mmc_host/mmc0/mmc0:0001/block/mmcblk0/mmcblk0p1 (1138)
    [ 10.430368] FAT-fs (mmcblk1p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
    [ 10.540116] EXT4-fs (mmcblk0p1): recovery complete
    [ 10.572333] EXT4-fs (mmcblk0p1): mounted filesystem with ordered data mode. Opts: (null)
    UIM SYSFS Node Not Found
    Initializing the graphics driver ...
    PVR:(Error): OpenServices: Cannot open device driver /dev/omapdrm_pvr. [140, /pvr_bridge_u.c]
    PVR:(Error): PVRSRVInitSrvConnect: PVRSRVConnect failed [2572, /bridged_pvr_glue.c]
    PVR:(Error): SrvInit: PVRSRVInitSrvConnect failed (4) [37, /srvinit.c]
    PVR:(Error): main: SrvInit failed (4) [49, /pvrsrvinit.c]
    Starting Dropbear SSH server: dropbear.
    Starting telnet daemon.
    Starting rpcbind daemon...done.
    starting statd: done
    Starting syslogd/klogd: done
    Starting thttpd.
    Starting Lighttpd Web Server: lighttpd.
    2016-01-10 14:39:33: (/home/gtbldadm/processor-sdk-linux-fido-build/build-CORTEX_1/arago-tmp-external-linaro-toolchain/work/cortexa8hf-vfp-neon-li
    nux-gnueabi/lighttpd/1.4.35-r1/lighttpd-1.4.35/src/log.c.164) server started
    /
    Starting Matrix GUI application.
    Enabling thermal zones...
    /etc/rc5.d/S98thermal-zone-init: line 7: /sys/class/thermal/thermal_zone*/mode: No such file or directory
    [ 13.958010] random: nonblocking pool is initialized
    ***************************************************************
    ***************************************************************
    NOTICE: This file system contains the following GPLv3 packages:
    autoconf
    binutils
    cpp-symlinks
    cpp
    g++-symlinks
    g++
    gcc-symlinks
    gcc
    gdb
    gdbserver
    gstreamer1.0-libav
    libgmp10
    libmpc3
    libmpfr4
    make

    If you do not wish to distribute GPLv3 components please remove
    the above packages prior to distribution. This can be done using
    the opkg remove command. i.e.:
    opkg remove <package>
    Where <package> is the name printed in the list above

    NOTE: If the package is a dependency of another package you
    will be notified of the dependent packages. You should
    use the --force-removal-of-dependent-packages option to
    also remove the dependent packages as well
    ***************************************************************
    ***************************************************************

    _____ _____ _ _
    | _ |___ ___ ___ ___ | _ |___ ___ |_|___ ___| |_
    | | _| .'| . | . | | __| _| . | | | -_| _| _|
    |__|__|_| |__,|_ |___| |__| |_| |___|_| |___|___|_|
    |___| |___|

    Arago Project http://arago-project.org iceg_stlg /dev/ttyO0

    Arago 2015.12 iceg_stlg /dev/ttyO0

    iceg_stlg login: root
    root@iceg_stlg:~#
    root@iceg_stlg:/lib/modules/wl18xx_4.4# ls
    cfg80211.ko mac80211.ko wl12xx.ko wlcore.ko wlcore_sdio.ko
    root@iceg_stlg:/lib/modules/wl18xx_4.4# insmod cfg80211.ko
    root@iceg_stlg:/lib/modules/wl18xx_4.4# [ 493.630925] cfg80211: World regulatory domain updated:
    [ 493.636192] cfg80211: DFS Master region: unset
    [ 493.640569] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
    [ 493.650397] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
    [ 493.658453] cfg80211: (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
    [ 493.666508] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
    [ 493.674565] cfg80211: (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (N/A)
    [ 493.684103] cfg80211: (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s)
    [ 493.693649] cfg80211: (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
    [ 493.701776] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
    [ 493.709830] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)

    root@iceg_stlg:/lib/modules/wl18xx_4.4# insmod mac80211.ko
    root@iceg_stlg:/lib/modules/wl18xx_4.4# insmod wlcore.ko
    root@iceg_stlg:/usr/bin/wlconf#./wlconf -o /lib/firmware/ti-connectivity/wl18xx-conf.bin -I official_inis/WL8_System_parameters.ini
    ./wlconf -i /lib/firmware/ti-connectivity/wl18xx-conf.bin -o /lib/firmware/ti-connectivity/wl18xx-conf.bin -s wl18xx.ht.mode=0x01
    root@iceg_stlg:/usr/bin/wlconf#insmod wlcore_sdio.ko
    [ 1003.985856] wl1271_sdio mmc2:0001:2: ************************
    [ 1003.991650] wl1271_sdio mmc2:0001:2: irq = 97
    [ 1003.996096] wl1271_sdio mmc2:0001:2: ************************
    root@iceg_stlg:/lib/modules/wl18xx_4.4# insmod wl18xx.ko
    root@iceg_stlg:/lib/modules/wl18xx_4.4#
    root@iceg_stlg:/lib/modules# cd
    root@iceg_stlg:~# ifconfig -a
    lo Link encap:Local Loopback
    inet addr:127.0.0.1 Mask:255.0.0.0
    inet6 addr: ::1/128 Scope:Host
    UP LOOPBACK RUNNING MTU:65536 Metric:1
    RX packets:10 errors:0 dropped:0 overruns:0 frame:0
    TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1
    RX bytes:700 (700.0 B) TX bytes:700 (700.0 B)

    root@iceg_stlg:~#


    ==============================================================================================================
    >> Please also verify the hardware connections (www.ti.com/.../swru437.pdf) and fill out the check list.
    The link www.ti.com/.../swru437.pdf) is giving " Sorry! We couldn't find your page "
  • Hi Giri,
    Is there something like am3358's mmc3 SDIO support is not provided by TI ? Can you confirm that ? The wilinkmod cap available in market is using is mmc interface,no anywhere I found mmc3 is used. For testing I have connected an sdcard interface also to mmc3 pins,Card detection was happening and mmc3_clk was also coming but data transfer didn't happen .No node got created. If I want to use mmc3 as SDIO lines with 4.4 linux kernel,what all things I have to do ? Expecting reply
  • Hi,

    In your log above I see that the following modules were built:

    root@iceg_stlg:/lib/modules/wl18xx_4.4# ls
    cfg80211.ko mac80211.ko wl12xx.ko wlcore.ko wlcore_sdio.ko

    where is wl18xx.ko?

    In addition, the modules should load automatically when the system boot and the module is enumerated on the sdio bus.

    Please run:

    depmod -a

    and then reboot the board.

    When it boots, they should all be seen when you type:

    lsmod

    Best Regards,

    Eyal