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/PROCESSOR-SDK-AM335X: RNDIS over USB issue

Part Number: PROCESSOR-SDK-AM335X

Tool/software: Linux

I was creating my own uboot, linux kernel and rootfs based on the  ti-processor-sdk-linux-am335x-evm-04.03.00.05.  Kernel was built based on tisdk_am335x-evm_defconfig with additional configs (via make menuconfig)for Ethernet over usb (for usb0 i/f) support.  I also created a rootfs with all kernel modules installed to it, all went well.  

 

I then created a bootable SD card with the images created above and was able to boot successfully on a BBGW reference board.   However, the usb0 interface did not get enumerated during startup.  

 I can manually load the kernel modules to make usb0 available and get it configured but I can’t ping to the host from it.     Is there anything missing here?   What else  is needed?

A console log is attached.

 

Thanks,

Mike

1731.console_log.txt
U-Boot SPL 2017.01 (Apr 16 2018 - 10:41:13)
Trying to boot from MMC1
*** Warning - bad CRC, using default environment

reading u-boot.img
reading u-boot.img


U-Boot 2017.01 (Apr 16 2018 - 10:41:13 -0400)

CPU  : AM335X-GP rev 2.1
I2C:   ready
DRAM:  512 MiB
MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
*** Warning - bad CRC, using default environment

<ethaddr> not set. Validating first E-fuse MAC
Net:   Could not get PHY for cpsw: addr 0
cpsw, usb_ether
Press SPACE to abort autoboot in 2 seconds
switch to partitions #0, OK
mmc0 is current device
SD/MMC found on device 0
reading boot.scr
** Unable to read file boot.scr **
reading uEnv.txt
1202 bytes read in 5 ms (234.4 KiB/s)
Loaded env from uEnv.txt
Importing environment from mmc0 ...
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
switch to partitions #0, OK
mmc0 is current device
SD/MMC found on device 0
3624984 bytes read in 304 ms (11.4 MiB/s)
37889 bytes read in 19 ms (1.9 MiB/s)
## Flattened Device Tree blob at 88000000
   Booting using the fdt blob at 0x88000000
   Loading Device Tree to 8fff3000, end 8ffff400 ... OK

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.9.69-g9ce43c71ae (xingm@xingm-VirtualBox) (gcc version 6.2.1 20161016 (Linaro GCC 6.2-2016.11) ) #7 PREEMPT Wed Apr 18 11:49:53 EDT 2018
[    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt:Machine model: TI AM335x BeagleBone Black
[    0.000000] efi: Getting EFI parameters from FDT:
[    0.000000] efi: UEFI not found.
[    0.000000] cma: Reserved 48 MiB at 0x9d000000
[    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: 129920
[    0.000000] Kernel command line: console=ttyO0,115200n8 root=PARTUUID=00000000-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: 457972K/524288K available (7168K kernel code, 281K rwdata, 2368K rodata, 1024K init, 280K bss, 17164K reserved, 49152K cma-reserved, 0K highmem)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0xe0800000 - 0xff800000   ( 496 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0008000 - 0xc0800000   (8160 kB)
[    0.000000]       .init : 0xc0b00000 - 0xc0c00000   (1024 kB)
[    0.000000]       .data : 0xc0c00000 - 0xc0c46750   ( 282 kB)
[    0.000000]        .bss : 0xc0c46750 - 0xc0c8c9b4   ( 281 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000]  Build-time adjustment of leaf fanout to 32.
[    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.000014] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[    0.000033] clocksource: timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[    0.000042] OMAP clocksource: timer1 at 24000000 Hz
[    0.000185] clocksource_probe: no matching clocksources found
[    0.000340] Console: colour dummy device 80x30
[    0.000363] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'
[    0.000369] This ensures that you still see kernel messages. Please
[    0.000374] update your kernel commandline.
[    0.000394] Calibrating delay loop... 996.14 BogoMIPS (lpj=4980736)
[    0.089241] pid_max: default: 32768 minimum: 301
[    0.089357] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.089367] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.090071] CPU: Testing write buffer coherency: ok
[    0.090414] Setting up static identity map for 0x80100000 - 0x80100060
[    0.091168] EFI services will not be available.
[    0.092313] devtmpfs: initialized
[    0.102392] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
[    0.102715] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.102737] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.106025] pinctrl core: initialized pinctrl subsystem
[    0.107151] NET: Registered protocol family 16
[    0.108805] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.121961] omap_hwmod: debugss: _wait_target_disable failed
[    0.199231] cpuidle: using governor ladder
[    0.229221] cpuidle: using governor menu
[    0.234542] OMAP GPIO hardware version 0.1
[    0.248051] No ATAGs?
[    0.248077] hw-breakpoint: debug architecture 0x4 unsupported.
[    0.286478] edma 49000000.edma: TI EDMA DMA engine driver
[    0.289449] omap_i2c 44e0b000.i2c: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_i2c0_pins, deferring probe
[    0.289506] omap_i2c 4819c000.i2c: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_i2c2_pins, deferring probe
[    0.289622] media: Linux media interface: v0.10
[    0.289671] Linux video capture interface: v2.00
[    0.289708] pps_core: LinuxPPS API ver. 1 registered
[    0.289715] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.289735] PTP clock support registered
[    0.289779] EDAC MC: Ver: 3.0.0
[    0.290770] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
[    0.291077] Advanced Linux Sound Architecture Driver Initialized.
[    0.292209] clocksource: Switched to clocksource timer1
[    0.301266] NET: Registered protocol family 2
[    0.301960] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[    0.302006] TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
[    0.302044] TCP: Hash tables configured (established 4096 bind 4096)
[    0.302108] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.302124] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.302307] NET: Registered protocol family 1
[    0.302704] RPC: Registered named UNIX socket transport module.
[    0.302715] RPC: Registered udp transport module.
[    0.302721] RPC: Registered tcp transport module.
[    0.302726] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.303554] hw perfevents: enabled with armv7_cortex_a8 PMU driver, 5 counters available
[    0.305662] workingset: timestamp_bits=14 max_order=17 bucket_order=3
[    0.312411] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.313256] NFS: Registering the id_resolver key type
[    0.313296] Key type id_resolver registered
[    0.313303] Key type id_legacy registered
[    0.313346] ntfs: driver 2.1.32 [Flags: R/O].
[    0.315046] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 246)
[    0.315064] io scheduler noop registered
[    0.315071] io scheduler deadline registered
[    0.315215] io scheduler cfq registered (default)
[    0.316383] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
[    0.370804] Serial: 8250/16550 driver, 10 ports, IRQ sharing disabled
[    0.374236] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 158, base_baud = 3000000) is a 8250
[    0.969413] console [ttyS0] enabled
[    0.974497] omap_rng 48310000.rng: OMAP Random Number Generator ver. 20
[    0.981249] [drm] Initialized
[    0.996634] brd: module loaded
[    1.005513] loop: module loaded
[    1.010605] libphy: Fixed MDIO Bus: probed
[    1.082292] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
[    1.088428] davinci_mdio 4a101000.mdio: no live phy, scanning all
[    1.094839] davinci_mdio: probe of 4a101000.mdio failed with error -5
[    1.101863] cpsw 4a100000.ethernet: Detected MACID = b0:d5:cc:77:93:d1
[    1.108567] cpsw 4a100000.ethernet: device node lookup for pps timer failed
[    1.115603] cpsw 4a100000.ethernet: cpts: overflow check period 500 (jiffies)
[    1.124462] mousedev: PS/2 mouse device common for all mice
[    1.130532] i2c /dev entries driver
[    1.135781] cpuidle: enable-method property 'ti,am3352' found operations
[    1.143484] omap_hsmmc 48060000.mmc: Got CD GPIO
[    1.263437] ledtrig-cpu: registered to indicate activity on CPUs
[    1.275710] NET: Registered protocol family 10
[    1.281432] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
[    1.288396] NET: Registered protocol family 17
[    1.293245] Key type dns_resolver registered
[    1.297814] omap_voltage_late_init: Voltage driver support not added
[    1.315653] mmc0: host does not support reading read-only switch, assuming write-enable
[    1.329428] mmc0: new high speed SDHC card at address aaaa
[    1.335655] mmcblk0: mmc0:aaaa SU04G 3.69 GiB
[    1.343964]  mmcblk0: p1 p2
[    1.349366] random: fast init done
[    1.356555] mmc1: new high speed MMC card at address 0001
[    1.362541] tps65217 0-0024: TPS65217 ID 0xe version 1.2
[    1.368504] mmcblk1: mmc1:0001 Q2J54A 3.64 GiB
[    1.373310] at24 0-0050: 32768 byte 24c256 EEPROM, writable, 1 bytes/write
[    1.374564] tda998x 0-0070: Error -121 writing to cec:0xff
[    1.381530] tda998x 0-0070: set_page 000a err -121
[    1.392284] mmcblk1boot0: mmc1:0001 Q2J54A partition 1 2.00 MiB
[    1.398465] mmcblk1boot1: mmc1:0001 Q2J54A partition 2 2.00 MiB
[    1.406235]  mmcblk1: p1
[    1.442298] tda998x 0-0070: set_page 000a err -121
[    1.512294] tda998x 0-0070: set_page 0001 err -121
[    1.517160] tda998x 0-0070: set_page 0001 err -121
[    1.522021] tda998x 0-0070: set_page 0200 err -121
[    1.526900] tda998x 0-0070: set_page 0201 err -121
[    1.531760] tda998x 0-0070: set_page 0202 err -121
[    1.536633] tda998x 0-0070: set_page 0203 err -121
[    1.541493] tda998x 0-0070: set_page 0204 err -121
[    1.546373] tda998x 0-0070: set_page 0205 err -121
[    1.551234] tda998x 0-0070: set_page 020e err -121
[    1.556107] tda998x 0-0070: set_page 0211 err -121
[    1.560966] tda998x 0-0070: set_page 0207 err -121
[    1.565839] tda998x 0-0070: set_page 0208 err -121
[    1.570698] tda998x 0-0070: set_page 0209 err -121
[    1.575572] tda998x 0-0070: set_page 020a err -121
[    1.580431] tda998x 0-0070: set_page 0206 err -121
[    1.585300] tda998x 0-0070: set_page 0027 err -121
[    1.590156] tda998x 0-0070: set_page 0000 err -121
[    1.595033] tda998x 0-0070: set_page 0002 err -121
[    1.599991] tilcdc 4830e000.lcdc: failed to bind 0-0070 (ops tda998x_ops): -6
[    1.607366] tilcdc 4830e000.lcdc: master bind failed: -6
[    1.612917] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
[    1.733158] omap_i2c 4819c000.i2c: bus 2 rev0.11 at 100 kHz
[    1.740728] hctosys: unable to open rtc device (rtc0)
[    1.746407] ALSA device list:
[    1.749396]   No soundcards found.
[    2.309568] EXT4-fs (mmcblk0p2): recovery complete
[    2.318402] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[    2.326731] VFS: Mounted root (ext4 filesystem) on device 179:2.
[    2.336278] devtmpfs: mounted
[    2.343179] Freeing unused kernel memory: 1024K
[    2.529335] systemd[1]: System time before build time, advancing clock.
[    2.572982] systemd[1]: systemd 230 running in system mode. (+PAM -AUDIT -SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP -GCRYPT -GNUTLS +ACL +XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -IDN)
[    2.591935] systemd[1]: Detected architecture arm.

Welcome to Arago 2017.12!

[    2.635865] systemd[1]: Set hostname to <am335x-evm>.
[    3.093250] systemd[1]: Listening on udev Control Socket.
[  OK  ] Listening on udev Control Socket.
[    3.122997] systemd[1]: Listening on Journal Socket.
[  OK  ] Listening on Journal Socket.
[    3.152528] systemd[1]: Reached target Swap.
[  OK  ] Reached target Swap.
[    3.188034] systemd[1]: Created slice System Slice.
[  OK  ] Created slice System Slice.
[    3.226354] systemd[1]: Mounting Debug File System...
         Mounting Debug File System...
[    3.238457] systemd[1]: Created slice system-serial\x2dgetty.slice.
[  OK  ] Created slice system-serial\x2dgetty.slice.
[    3.276964] systemd[1]: Starting Setup Virtual Console...
         Starting Setup Virtual Console...
[  OK  ] Created slice system-getty.slice.
[  OK  ] Listening on Process Core Dump Socket.
[  OK  ] Listening on udev Kernel Socket.
         Starting Create list of required st... nodes for the current kernel...
[  OK  ] Started Forward Password Requests to Wall Directory Watch.
[  OK  ] Listening on Journal Socket (/dev/log).
[  OK  ] Listening on Syslog Socket.
         Mounting POSIX Message Queue File System...
[  OK  ] Started Dispatch Password Requests to Console Directory Watch.
[  OK  ] Reached target Paths.
         Starting Journal Service...
         Mounting Temporary Directory...
[  OK  ] Created slice User and Session Slice.
[  OK  ] Reached target Slices.
         Starting Load Kernel Modules...
[  OK  ] Reached target Remote File Systems.
         Starting Remount Root and Kernel File Systems...
[  OK  ] Listening on Network Service Netlink Socket.
[    3.855971] cryptodev: loading out-of-tree module taints kernel.
[  OK  ] Listening on /dev/initctl Compatibility Named Pipe.
[    3.882000] cryptodev: driver 1.8 loaded.
[    3.919878] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[  OK  ] Mounted POSIX Message Queue File System.
[  OK  ] Mounted Debug File System.
[  OK  ] Mounted Temporary Directory.
[  OK  ] Started Journal Service.
[  OK  ] Started Setup Virtual Console.
[  OK  ] Started Create list of required sta...ce nodes for the current kernel.
[  OK  ] Started Load Kernel Modules.
[  OK  ] Started Remount Root and Kernel File Systems.
         Starting udev Coldplug all Devices...
         Mounting Configuration File System...
         Starting Apply Kernel Variables...
         Starting Create Static Device Nodes in /dev...
         Starting Flush Journal to Persistent Storage...
[  OK  ] Mounted Configuration File System.
[  OK  ] Started Apply Kernel Variables.
[  OK  ] Started Create Static Device Nodes in /dev.
[    4.583042] systemd-journald[97]: Received request to flush runtime journal from PID 1
[  OK  ] Started Flush Journal to Persistent Storage.
         Starting udev Kernel Device Manager...
[  OK  ] Reached target Local File Systems (Pre).
         Mounting /var/volatile...
         Mounting /media/ram...
[  OK  ] Mounted /var/volatile.
[  OK  ] Mounted /media/ram.
[  OK  ] Started udev Kernel Device Manager.
         Starting Load/Save Random Seed...
[  OK  ] Reached target Local File Systems.
         Starting Create Volatile Files and Directories...
[  OK  ] Started Load/Save Random Seed.
[  OK  ] Started Create Volatile Files and Directories.
         Starting Network Time Synchronization...
         Starting Update UTMP about System Boot/Shutdown...
[  OK  ] Started Update UTMP about System Boot/Shutdown.
[  OK  ] Started Network Time Synchronization.
[  OK  ] Reached target System Time Synchronized.
[    6.193452] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0
[  OK  ] Found device /dev/ttyS0.
[    6.283442] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
[  OK  ] Started udev Coldplug all Devices.
[  OK  ] Reached target System Initialization.
[  OK  ] Started Daily Cleanup of Temporary Directories.
[  OK  ] Reached target Timers.
[  OK  ] Listening on D-Bus System Message Bus Socket.
[  OK  ] Listening on RPCbind Server Activation Socket.
[  OK  ] Reached target Sockets.
[  OK  ] Reached target Basic System.
[  OK  ] Started D-Bus System Message Bus.
[    7.010106] omap-sham 53100000.sham: hw accel on OMAP rev 4.3
[    7.208680] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2
[    7.253429] omap-aes 53500000.aes: will run requests pump with realtime priority
         Starting Print notice about GPLv3 packages...
         Starting telnetd.service...
         Starting Login Service...
[    7.352160] remoteproc remoteproc0: wkup_m3 is available
[    7.370646] wkup_m3_ipc 44e11324.wkup_m3_ipc: could not get rproc handle
[    7.401410] wkup_m3_ipc 44e11324.wkup_m3_ipc: could not get rproc handle
[    7.441166] PM: Cannot get wkup_m3_ipc handle
[  OK  ] Started Kernel Logging Service.
[    7.758780] PM: Cannot get wkup_m3_ipc handle
[    7.771763] remoteproc remoteproc0: powering up wkup_m3
[    7.833752] remoteproc remoteproc0: Booting fw image am335x-pm-firmware.elf, size 224268
[    7.834020] remoteproc remoteproc0: remote processor wkup_m3 is now up
[    7.834049] wkup_m3_ipc 44e11324.wkup_m3_ipc: CM3 Firmware Version = 0x192
[  OK  ] Started Periodic Command Scheduler.
[  OK  ] Started System Logging Service.
[  OK  ] Started Job spooling tools.
         Starting Network Service...
[  OK  ] Started telnetd.service.
[  OK  ] Found device /dev/ttyS3.
[  OK  ] Started Network Service.
[    9.362698] net eth0: initializing cpsw version 1.12 (0)
[    9.368061] cpsw 4a100000.ethernet: initialized cpsw ale version 1.4
[  OK  ] Started Login Service.
[    9.604262] cpsw 4a100000.ethernet: ALE Table size 1024
[    9.611121] libphy: PHY 4a101000.mdio:00 not found
[    9.803545] net eth0: phy "4a101000.mdio:00" not found on slave 0, err -19
[    9.830566] cpts ptp bc clkid 0
[    9.885958] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[  OK  ] Reached target Network.
         Starting Permit User Sessions...
         Starting Network Name Resolution...
[   10.222093] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
         Starting thttpd.service...
[  OK  ] Started Permit User Sessions.
[   10.781506] EXT4-fs (mmcblk1p1): recovery complete
[   10.802773] EXT4-fs (mmcblk1p1): mounted filesystem with ordered data mode. Opts: (null)
[  OK  ] Started Network Name Resolution.
[  OK  ] Started thttpd.service.
[  OK  ] Listening on Load/Save RF Kill Switch Status /dev/rfkill Watch.
         Starting rng-tools.service...
[  OK  ] Started Getty on tty1.
[  OK  ] Started Serial Getty on ttyS3.
[  OK  ] Started Serial Getty on ttyS0.
[  OK  ] Reached target Login Prompts.
         Starting Synchronize System and HW clocks...
[   11.989556] random: crng init done
[  OK  ] Started rng-tools.service.
[  OK  ] Started Synchronize System and HW clocks.
         Starting thermal-zone-init.service...
[  OK  ] Started thermal-zone-init.service.
***************************************************************
***************************************************************
NOTICE: This file system contains the following GPLv3 packages:
        binutils
        cifs-utils
        cpio
        dosfstools
        gawk
        gzip
        libreadline6
        m4
        which

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
***************************************************************
***************************************************************
[  OK  ] Started Print notice about GPLv3 packages.
[   13.370058] PM: bootloader does not support rtc-only!
[   13.395829] 47401300.usb-phy supply vcc not found, using dummy regulator
[   13.396378] 47401b00.usb-phy supply vcc not found, using dummy regulator
[   13.450839] usbcore: registered new interface driver usbfs
[   13.450904] usbcore: registered new interface driver hub
[   13.484962] usbcore: registered new device driver usb
[   13.652192] musb-hdrc musb-hdrc.1: MUSB HDRC host driver
[   13.678911] musb-hdrc musb-hdrc.1: new USB bus registered, assigned bus number 1
[   13.770991] hub 1-0:1.0: USB hub found
[   13.797977] hub 1-0:1.0: 1 port detected
[   14.160609] ti-pruss 4a300000.pruss: creating PRU cores and other child platform devices
[   14.217811] irq: no irq domain found for /ocp/pruss_soc_bus@4a326000/pruss@4a300000/intc@4a320000 !
[   14.262388] usb 1-1: new high-speed USB device number 2 using musb-hdrc
[   14.289965] irq: no irq domain found for /ocp/pruss_soc_bus@4a326000/pruss@4a300000/intc@4a320000 !
[   14.410877] remoteproc remoteproc1: 4a334000.pru0 is available
[   14.432779] pru-rproc 4a334000.pru0: PRU rproc node /ocp/pruss_soc_bus@4a326000/pruss@4a300000/pru@4a334000 probed successfully
[   14.449557] hub 1-1:1.0: USB hub found
[   14.450114] hub 1-1:1.0: 4 ports detected
[   14.526161] remoteproc remoteproc2: 4a338000.pru1 is available
[   14.532119] pru-rproc 4a338000.pru1: PRU rproc node /ocp/pruss_soc_bus@4a326000/pruss@4a300000/pru@4a338000 probed successfully
[  OK  ] Reached target Multi-User System.
         Starting Update UTMP about System Runlevel Changes...
[  OK  ] Started Update UTMP about System Runlevel Changes.

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

Arago Project http://arago-project.org am335x-evm ttyS0

Arago 2017.12 am335x-evm ttyS0

am335x-evm login: root
root@am335x-evm:~# ifconfig
eth0      Link encap:Ethernet  HWaddr B0:D5:CC:77:93:D1
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:173

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1%763860/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:160 errors:0 dropped:0 overruns:0 frame:0
          TX packets:160 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1
          RX bytes:12160 (11.8 KiB)  TX bytes:12160 (11.8 KiB)

root@am335x-evm:~#
root@am335x-evm:~# modprobe g_ether
[   57.895402] using random self ethernet address
[   57.899931] using random host ethernet address
[   57.946678] usb0: HOST MAC 3a:db:ee:e5:ce:b2
[   57.957719] usb0: MAC 92:d6:35:fa:8f:42
[   57.961710] using random self ethernet address
[   57.980787] using random host ethernet address
[   58.002786] g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
[   58.009492] g_ether gadget: g_ether ready
root@am335x-evm:~# [   58.115764] IPv6: ADDRCONF(NETDEV_UP): usb0: link is not ready
[   58.256012] g_ether gadget: high-speed config #2: RNDIS
[   58.261536] IPv6: ADDRCONF(NETDEV_CHANGE): usb0: link becomes ready

root@am335x-evm:~#
root@am335x-evm:~# modprobe rndis_host
[   86.522170] usbcore: registered new interface driver cdc_ether
[   86.576091] usbcore: registered new interface driver rndis_host
root@am335x-evm:~#
root@am335x-evm:~#
root@am335x-evm:~#
root@am335x-evm:~# ifconfig
eth0      Link encap:Ethernet  HWaddr B0:D5:CC:77:93:D1
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:173

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1%763860/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:483 errors:0 dropped:0 overruns:0 frame:0
          TX packets:483 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1
          RX bytes:36792 (35.9 KiB)  TX bytes:36792 (35.9 KiB)

usb0      Link encap:Ethernet  HWaddr 92:D6:35:FA:8F:42
          inet6 addr: fe80::90d6:35ff:fefa:8f42%763860/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

root@am335x-evm:~#
root@am335x-evm:~# ifconfig usb0 192.168.7.2 netmask 255.255.255.0 up
root@am335x-evm:~#
root@am335x-evm:~# ifconfig
eth0      Link encap:Ethernet  HWaddr B0:D5:CC:77:93:D1
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:173

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1%763860/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:566 errors:0 dropped:0 overruns:0 frame:0
          TX packets:566 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1
          RX bytes:43088 (42.0 KiB)  TX bytes:43088 (42.0 KiB)

usb0      Link encap:Ethernet  HWaddr 92:D6:35:FA:8F:42
          inet addr:192.168.7.2  Bcast:192.168.7.255  Mask:255.255.255.0
          inet6 addr: fe80::90d6:35ff:fefa:8f42%763860/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

root@am335x-evm:~#
root@am335x-evm:~#
root@am335x-evm:~# ping 192.168.7.1
PING 192.168.7.1 (192.168.7.1): 56 data bytes
^C
--- 192.168.7.1 ping statistics ---
6 packets transmitted, 0 packets received, 100% packet loss
root@am335x-evm:~#
root@am335x-evm:~#
root@am335x-evm:~#
root@am335x-evm:~# cd /sys/bus/iio/
devices/           drivers/           drivers_autoprobe  drivers_probe      uevent
root@am335x-evm:~# cd /sys/bus/iio/devices/
root@am335x-evm:/sys/bus/iio/devices# ls
root@am335x-evm:/sys/bus/iio/devices# lsmod
Module                  Size  Used by
rndis_host              6564  0
cdc_ether               6080  1 rndis_host
usbnet                 25750  2 rndis_host,cdc_ether
usb_f_ecm               6492  1
g_ether                 4869  0
usb_f_rndis            15482  2 g_ether
u_ether                12937  3 usb_f_ecm,g_ether,usb_f_rndis
libcomposite           44254  3 usb_f_ecm,g_ether,usb_f_rndis
pru_rproc              10584  0
pruss_intc              7163  1 pru_rproc
pruss                   9582  1 pru_rproc
musb_dsps               9734  0
musb_hdrc              87973  1 musb_dsps
udc_core               19322  5 usb_f_ecm,musb_hdrc,u_ether,usb_f_rndis,libcomposite
usbcore               201668  4 rndis_host,usbnet,cdc_ether,musb_hdrc
phy_am335x              2372  2
phy_generic             5372  1 phy_am335x
phy_am335x_control      2873  1 phy_am335x
usb_common              4737  6 phy_am335x,udc_core,musb_hdrc,libcomposite,musb_dsps,usbcore
snd_soc_simple_card     5844  0
snd_soc_simple_card_utils     5095  1 snd_soc_simple_card
pm33xx                  6433  0
wkup_m3_ipc             8176  1 pm33xx
wkup_m3_rproc           3670  1
remoteproc             28453  3 pru_rproc,wkup_m3_rproc,wkup_m3_ipc
omap_aes_driver        19334  0
crypto_engine           7098  1 omap_aes_driver
omap_sham              21950  0
pruss_soc_bus           4105  0
ti_emif_sram            5663  1 pm33xx
rtc_omap                9662  1
musb_am335x             1426  0
omap_wdt                4634  0
sch_fq_codel            9051  3
cryptodev              38083  0
root@am335x-evm:/sys/bus/iio/devices#
root@am335x-evm:/sys/bus/iio/devices#
root@am335x-evm:/sys/bus/iio/devices#
root@am335x-evm:/sys/bus/iio/devices# find /lib -name *adc*.ko
/lib/modules/4.9.69-g9ce43c71ae/kernel/drivers/iio/adc/vf610_adc.ko
/lib/modules/4.9.69-g9ce43c71ae/kernel/drivers/iio/adc/ti_am335x_adc.ko
/lib/modules/4.9.69-g9ce43c71ae/kernel/drivers/mfd/ti_am335x_tscadc.ko
root@am335x-evm:/sys/bus/iio/devices#
root@am335x-evm:/sys/bus/iio/devices#
root@am335x-evm:/sys/bus/iio/devices# modprobe ti_am335x_adc
root@am335x-evm:/sys/bus/iio/devices# lsmod
Module                  Size  Used by
ti_am335x_adc           6837  0
ti_am335x_tscadc        6162  1 ti_am335x_adc
rndis_host              6564  0
cdc_ether               6080  1 rndis_host
usbnet                 25750  2 rndis_host,cdc_ether
usb_f_ecm               6492  1
g_ether                 4869  0
usb_f_rndis            15482  2 g_ether
u_ether                12937  3 usb_f_ecm,g_ether,usb_f_rndis
libcomposite           44254  3 usb_f_ecm,g_ether,usb_f_rndis
pru_rproc              10584  0
pruss_intc              7163  1 pru_rproc
pruss                   9582  1 pru_rproc
musb_dsps               9734  0
musb_hdrc              87973  1 musb_dsps
udc_core               19322  5 usb_f_ecm,musb_hdrc,u_ether,usb_f_rndis,libcomposite
usbcore               201668  4 rndis_host,usbnet,cdc_ether,musb_hdrc
phy_am335x              2372  2
phy_generic             5372  1 phy_am335x
phy_am335x_control      2873  1 phy_am335x
usb_common              4737  6 phy_am335x,udc_core,musb_hdrc,libcomposite,musb_dsps,usbcore
snd_soc_simple_card     5844  0
snd_soc_simple_card_utils     5095  1 snd_soc_simple_card
pm33xx                  6433  0
wkup_m3_ipc             8176  1 pm33xx
wkup_m3_rproc           3670  1
remoteproc             28453  3 pru_rproc,wkup_m3_rproc,wkup_m3_ipc
omap_aes_driver        19334  0
crypto_engine           7098  1 omap_aes_driver
omap_sham              21950  0
pruss_soc_bus           4105  0
ti_emif_sram            5663  1 pm33xx
rtc_omap                9662  1
musb_am335x             1426  0
omap_wdt                4634  0
sch_fq_codel            9051  3
cryptodev              38083  0
root@am335x-evm:/sys/bus/iio/devices# ls
root@am335x-evm:/sys/bus/iio/devices#

  • Mike,

    Mike Xing said:
    However, the usb0 interface did not get enumerated during startup.  

    By default, Linux doesn't load a usb gadget driver, because it wouldn't know which gadget to load. So you need to configure Linux to load the gadget driver during Linux starts up.

    Mike Xing said:
     I can manually load the kernel modules to make usb0 available and get it configured but I can’t ping to the host from it.     Is there anything missing here?   What else  is needed?

    From the log It seems you didn't miss anything on the am335x side.

    Is the USB host a Windows PC? How did you configure the usb0 ip address (192.168.7.1) on the host side?

    Can you please test with a Linux host?

    By the way, you don't need to load the rndis_host driver on am335x, it is for host mode, but you need the am335x usb to work in peripheral mode.

  • Bin,   Thanks for your input!

    I tested with a Linux host and it works, but the MAC address is changing at each reboot.  I guess this is a configuration issue.

    As for the Windows host, it was actually inside a virtual box running Ubuntu and the interface was configured with a static IP address.  This works when I was using the default firmware image on the board (A windows driver was installed in order for the interface to show up).   I guess what happened with my custom build was the MAC address of the USB0 interface got changed so the dirver needs to be installed again for the new MAC?

    Thanks,

    Mike

  • Mike,

    Yes, this does sounds like a configuration problem due to the MAC changes at each reboot.
    You can fix the MAC address by providing host_addr parameter when loading g_ether driver.
    I typically add 'g_ether.host_addr=aa:bb:cc:dd:33:52' in Uboot bootargs for my am335x evm, so that I don't have to pass host_addr in every time when modprobe g_ether.
  • Thanks Bin.   That resolves my issue.

    Your help is very much appreciated!

    Mike