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.

PROCESSOR-SDK-AM335X: Beaglebone Black usb0 ethernet not working

Part Number: PROCESSOR-SDK-AM335X

Using Beaglebone Black and TI SDK RT am335x-evm-06.03.00.106 in Ubuntu 18 it works from the first compile out the box.
I can successfully ping, ssh to BBB through usb0 (192.168.7.2) windows and ubuntu and successfully develop & debug applications (ssh) using Code Composer Studio.

Changing to TI SDK RT am335x-evm-08.02.00.24 it doesn't work. No ethernet communication on usb0 or eth0.
I've spent weeks digging into the SDK, Linux and device trees trying to compare differences between 06.03.00.106 and 08.02.00.24 (it's almost impossible).

From other similar issues and "How to Guides" - 

1. I've added to am335x-bone-common.dtsi

&usb {
status = "okay";
};

&usb_ctrl_mod {
status = "okay";
};

&usb0_phy {
status = "okay";
};

&usb1_phy {
status = "okay";
};

&usb0 {
status = "okay";
dr_mode = "peripheral";
};

&usb1 {
status = "okay";
dr_mode = "host";
};

2. updated /etc/network/interfaces

allow-hotplug usb0
iface usb0 inet static
address 192.168.7.2
netmask 255.255.255.0
post-up service isc-dhcp-server reload

3. "modprobe g_ether" brings up usb0 and "ifconfig usb0 192.168.7.2 netmask 255.255.255.0 up" configures usb0, but I stil cannot ping from either windows or linux.


Any help will be appreciated!

  • Hi Bin,

    I've tried this prebuild image with exactly the same results.

    Please see attached the boot log

    .

    
    U-Boot SPL 2021.01-g44a87e3ab8 (May 14 2022 - 22:32:40 +0000)
    Trying to boot from MMC1
    
    
    U-Boot 2021.01-g44a87e3ab8 (May 14 2022 - 22:32:40 +0000)
    
    CPU  : AM335X-GP rev 2.1
    Model: TI AM335x BeagleBone Black
    DRAM:  512 MiB
    WDT:   Started with servicing (60s timeout)
    NAND:  0 MiB
    MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
    Loading Environment from FAT... *** Warning - bad CRC, using default environment
    
    <ethaddr> not set. Validating first E-fuse MAC
    Net:   eth2: ethernet@4a100000, eth3: usb_ether
    Hit any key to stop autoboot:  0 
    switch to partitions #0, OK
    mmc0 is current device
    SD/MMC found on device 0
    Failed to load 'boot.scr'
    574 bytes read in 2 ms (280.3 KiB/s)
    Loaded env from uEnv.txt
    Importing environment from mmc0 ...
    switch to partitions #0, OK
    mmc0 is current device
    Scanning mmc 0:1...
    Found /extlinux/extlinux.conf
    Retrieving file: /extlinux/extlinux.conf
    177 bytes read in 3 ms (57.6 KiB/s)
    1:	Arago
    Retrieving file: /extlinux/../zImage
    4997632 bytes read in 323 ms (14.8 MiB/s)
    append: root=PARTUUID=2ee67f08-02 rootwait rw console=ttyO0,115200n8,115200
    Retrieving file: /extlinux/../am335x-boneblack.dtb
    93418 bytes read in 9 ms (9.9 MiB/s)
    ## Flattened Device Tree blob at 88000000
       Booting using the fdt blob at 0x88000000
       Loading Device Tree to 8ffe6000, end 8ffffce9 ... OK
    
    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0
    [    0.000000] Linux version 5.10.100-g7a7a3af903 (oe-user@oe-host) (arm-none-linux-gnueabihf-gcc (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)) 9.2.1 20191025, GNU ld (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)) 2.33.1.20191209) #1 PREEMPT Sat May 14 22:36:58 UTC 2022
    [    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] Memory policy: Data cache writeback
    [    0.000000] efi: UEFI not found.
    [    0.000000] cma: Reserved 48 MiB at 0x9c800000
    [    0.000000] Zone ranges:
    [    0.000000]   Normal   [mem 0x0000000080000000-0x000000009fefffff]
    [    0.000000]   HighMem  empty
    [    0.000000] Movable zone start for each node
    [    0.000000] Early memory node ranges
    [    0.000000]   node   0: [mem 0x0000000080000000-0x000000009fefffff]
    [    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x000000009fefffff]
    [    0.000000] CPU: All CPU(s) started in SVC mode.
    [    0.000000] AM335X ES2.1 (sgx neon)
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 129666
    [    0.000000] Kernel command line: root=PARTUUID=2ee67f08-02 rootwait rw console=ttyO0,115200n8,115200
    [    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes, linear)
    [    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] Memory: 452328K/523264K available (10240K kernel code, 695K rwdata, 3404K rodata, 1024K init, 280K bss, 21784K reserved, 49152K cma-reserved, 0K highmem)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.
    [    0.000000] rcu: 	RCU event tracing is enabled.
    [    0.000000] 	Trampoline variant of Tasks RCU enabled.
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
    [    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
    [    0.000000] IRQ: Found an INTC at 0x(ptrval) (revision 5.0) with 128 interrupts
    [    0.000000] random: get_random_bytes called from start_kernel+0x30c/0x4c8 with crng_init=0
    [    0.000000] TI gptimer clocksource: always-on /ocp/interconnect@44c00000/segment@200000/target-module@31000
    [    0.000009] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
    [    0.000027] clocksource: dmtimer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
    [    0.000339] TI gptimer clockevent: 24000000 Hz at /ocp/interconnect@48000000/segment@0/target-module@40000
    [    0.001327] Console: colour dummy device 80x30
    [    0.001368] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'
    [    0.001375] This ensures that you still see kernel messages. Please
    [    0.001381] update your kernel commandline.
    [    0.001435] Calibrating delay loop... 996.14 BogoMIPS (lpj=4980736)
    [    0.090412] pid_max: default: 32768 minimum: 301
    [    0.090569] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
    [    0.090586] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
    [    0.091418] CPU: Testing write buffer coherency: ok
    [    0.091494] CPU0: Spectre v2: using BPIALL workaround
    [    0.092308] Setting up static identity map for 0x80100000 - 0x80100060
    [    0.092447] rcu: Hierarchical SRCU implementation.
    [    0.092539] EFI services will not be available.
    [    0.092900] devtmpfs: initialized
    [    0.103657] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    [    0.103903] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [    0.103929] futex hash table entries: 256 (order: -1, 3072 bytes, linear)
    [    0.107125] pinctrl core: initialized pinctrl subsystem
    [    0.108064] DMI not present or invalid.
    [    0.108505] NET: Registered protocol family 16
    [    0.110690] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [    0.128355] l3-aon-clkctrl:0000:0: failed to disable
    [    0.129523] thermal_sys: Registered thermal governor 'fair_share'
    [    0.129534] thermal_sys: Registered thermal governor 'bang_bang'
    [    0.129548] thermal_sys: Registered thermal governor 'step_wise'
    [    0.129556] thermal_sys: Registered thermal governor 'user_space'
    [    0.129898] cpuidle: using governor ladder
    [    0.129933] cpuidle: using governor menu
    [    1.216163] No ATAGs?
    [    1.216192] hw-breakpoint: debug architecture 0x4 unsupported.
    [    1.240902] iommu: Default domain type: Translated 
    [    1.243035] SCSI subsystem initialized
    [    1.243501] mc: Linux media interface: v0.10
    [    1.243547] videodev: Linux video capture interface: v2.00
    [    1.243653] pps_core: LinuxPPS API ver. 1 registered
    [    1.243663] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    1.243685] PTP clock support registered
    [    1.243744] EDAC MC: Ver: 3.0.0
    [    1.244937] Advanced Linux Sound Architecture Driver Initialized.
    [    1.246203] clocksource: Switched to clocksource dmtimer
    [    1.253611] NET: Registered protocol family 2
    [    1.253814] IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear)
    [    1.254804] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
    [    1.254842] TCP established hash table entries: 4096 (order: 2, 16384 bytes, linear)
    [    1.254883] TCP bind hash table entries: 4096 (order: 2, 16384 bytes, linear)
    [    1.254922] TCP: Hash tables configured (established 4096 bind 4096)
    [    1.255032] UDP hash table entries: 256 (order: 0, 4096 bytes, linear)
    [    1.255054] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes, linear)
    [    1.255172] NET: Registered protocol family 1
    [    1.255692] RPC: Registered named UNIX socket transport module.
    [    1.255708] RPC: Registered udp transport module.
    [    1.255715] RPC: Registered tcp transport module.
    [    1.255722] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    1.255740] PCI: CLS 0 bytes, default 64
    [    1.256882] hw perfevents: enabled with armv7_cortex_a8 PMU driver, 5 counters available
    [    1.258091] Initialise system trusted keyrings
    [    1.258462] workingset: timestamp_bits=14 max_order=17 bucket_order=3
    [    1.262027] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    1.262783] NFS: Registering the id_resolver key type
    [    1.262832] Key type id_resolver registered
    [    1.262842] Key type id_legacy registered
    [    1.262925] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    1.262938] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
    [    1.262977] ntfs: driver 2.1.32 [Flags: R/O].
    [    1.263581] Key type asymmetric registered
    [    1.263600] Asymmetric key parser 'x509' registered
    [    1.263649] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 244)
    [    1.263660] io scheduler mq-deadline registered
    [    1.263668] io scheduler kyber registered
    [    1.645458] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
    [    1.747624] debugfs: Directory '49000000.dma' with parent 'dmaengine' already present!
    [    1.747670] edma 49000000.dma: TI EDMA DMA engine driver
    [    1.767504] pinctrl-single 44e10800.pinmux: 142 pins, size 568
    [    1.817197] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled
    [    1.821694] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 20, base_baud = 3000000) is a 8250
    [    2.493266] printk: console [ttyS0] enabled
    [    2.497476] random: fast init done
    [    2.503953] omap_rng 48310000.rng: Random Number Generator ver. 20
    [    2.510453] random: crng init done
    [    2.532574] brd: module loaded
    [    2.542294] loop: module loaded
    [    2.606237] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6, bus freq 1000000
    [    2.616344] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver SMSC LAN8710/LAN8720
    [    2.626328] cpsw-switch 4a100000.switch: initialized cpsw ale version 1.4
    [    2.633159] cpsw-switch 4a100000.switch: ALE Table size 1024
    [    2.639024] cpsw-switch 4a100000.switch: cpts: overflow check period 500 (jiffies)
    [    2.646668] cpsw-switch 4a100000.switch: CPTS: ref_clk_freq:250000000 calc_mult:2147483648 calc_shift:29 error:0 nsec/sec
    [    2.657764] cpsw-switch 4a100000.switch: Detected MACID = 04:79:b7:d9:23:4c
    [    2.665601] cpsw-switch 4a100000.switch: initialized (regs 0x4a100000, pool size 256) hw_ver:0019010C 1.12 (0)
    [    2.676831] i2c /dev entries driver
    [    2.682953] cpuidle: enable-method property 'ti,am3352' found operations
    [    2.690432] sdhci: Secure Digital Host Controller Interface driver
    [    2.696687] sdhci: Copyright(c) Pierre Ossman
    [    2.702112] sdhci-pltfm: SDHCI platform and OF driver helper
    [    2.710174] sdhci-omap 481d8000.mmc: supply vqmmc not found, using dummy regulator
    [    2.718803] ledtrig-cpu: registered to indicate activity on CPUs
    [    2.739871] davinci-mcasp 48038000.mcasp: IRQ common not found
    [    2.757649] NET: Registered protocol family 10
    [    2.763485] Segment Routing with IPv6
    [    2.772500] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
    [    2.786903] NET: Registered protocol family 17
    [    2.791746] Key type dns_resolver registered
    [    2.806231] omap_voltage_late_init: Voltage driver support not added
    [    2.816350] Loading compiled-in X.509 certificates
    [    2.838866] OMAP GPIO hardware version 0.1
    [    2.856230] mmc1: SDHCI controller on 481d8000.mmc [481d8000.mmc] using External DMA
    [    2.866705] tps65217-pmic: Failed to locate of_node [id: -1]
    [    2.879266] tps65217-bl: Failed to locate of_node [id: -1]
    [    2.887554] tps65217 0-0024: TPS65217 ID 0xe version 1.2
    [    2.894142] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
    [    2.903154] omap_i2c 4819c000.i2c: bus 2 rev0.11 at 100 kHz
    [    2.917250] omap_gpio 44e07000.gpio: Could not set line 6 debounce to 200000 microseconds (-22)
    [    2.928037] sdhci-omap 48060000.mmc: Got CD GPIO
    [    2.933050] sdhci-omap 48060000.mmc: supply vqmmc not found, using dummy regulator
    [    2.989456] mmc1: new high speed MMC card at address 0001
    [    2.999341] mmcblk1: mmc1:0001 M62704 3.56 GiB 
    [    3.004167] mmcblk1boot0: mmc1:0001 M62704 partition 1 2.00 MiB
    [    3.010908] mmcblk1boot1: mmc1:0001 M62704 partition 2 2.00 MiB
    [    3.017129] mmcblk1rpmb: mmc1:0001 M62704 partition 3 512 KiB, chardev (243:0)
    [    3.026636]  mmcblk1: p1
    [    3.036718] mmc0: SDHCI controller on 48060000.mmc [48060000.mmc] using External DMA
    [    3.068544] tda998x 0-0070: found TDA19988
    [    3.076109] tilcdc 4830e000.lcdc: bound 0-0070 (ops tda998x_ops)
    [    3.084579] [drm] Initialized tilcdc 1.0.0 20121205 for 4830e000.lcdc on minor 0
    [    3.092731] tilcdc 4830e000.lcdc: [drm] Cannot find any crtc or sizes
    [    3.102482] ALSA device list:
    [    3.105487]   No soundcards found.
    [    3.109401] tilcdc 4830e000.lcdc: [drm] Cannot find any crtc or sizes
    [    3.116847] Waiting for root device PARTUUID=2ee67f08-02...
    [    3.134192] mmc0: new high speed SDHC card at address aaaa
    [    3.140660] mmcblk0: mmc0:aaaa SC16G 14.8 GiB 
    [    3.150071]  mmcblk0: p1 p2
    [    3.527734] EXT4-fs (mmcblk0p2): recovery complete
    [    3.536088] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
    [    3.545185] VFS: Mounted root (ext4 filesystem) on device 179:50.
    [    3.556684] devtmpfs: mounted
    [    3.562188] Freeing unused kernel memory: 1024K
    [    3.567424] Run /sbin/init as init process
    [    3.867474] systemd[1]: System time before build time, advancing clock.
    [    3.905781] systemd[1]: systemd 244 running in system mode. (+PAM -AUDIT -SELINUX +IMA -APPARMOR -SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP -GCRYPT -GNUTLS +ACL +XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -IDN2 -IDN -PCRE2 default-hierarchy=hybrid)
    [    3.928314] systemd[1]: Detected architecture arm.
    
    Welcome to Arago 2021.09!
    
    [    3.979818] systemd[1]: Set hostname to <am335x-evm>.
    [    4.809559] systemd[1]: system-getty.slice: unit configures an IP firewall, but the local system does not support BPF/cgroup firewalling.
    [    4.822206] systemd[1]: (This warning is only shown for the first unit using IP firewalling.)
    [    4.835102] systemd[1]: Created slice system-getty.slice.
    [  OK  ] Created slice system-getty.slice.
    [    4.879328] systemd[1]: Created slice system-serial\x2dgetty.slice.
    [  OK  ] Created slice system-serial\x2dgetty.slice.
    [    4.920950] systemd[1]: Created slice User and Session Slice.
    [  OK  ] Created slice User and Session Slice.
    [    4.957966] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
    [  OK  ] Started Dispatch Password …ts to Console Directory Watch.
    [    4.997023] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [  OK  ] Started Forward Password R…uests to Wall Directory Watch.
    [    5.038000] systemd[1]: Reached target Paths.
    [  OK  ] Reached target Paths.
    [    5.077084] systemd[1]: Reached target Remote File Systems.
    [  OK  ] Reached target Remote File Systems.
    [    5.116682] systemd[1]: Reached target Slices.
    [  OK  ] Reached target Slices.
    [    5.128963] systemd[1]: Reached target Swap.
    [  OK  ] Reached target Swap.
    [    5.184901] systemd[1]: Listening on RPCbind Server Activation Socket.
    [  OK  ] Listening on RPCbind Server Activation Socket.
    [    5.226637] systemd[1]: Reached target RPC Port Mapper.
    [  OK  ] Reached target RPC Port Mapper.
    [    5.288504] systemd[1]: Listening on Process Core Dump Socket.
    [  OK  ] Listening on Process Core Dump Socket.
    [    5.329529] systemd[1]: Listening on initctl Compatibility Named Pipe.
    [  OK  ] Listening on initctl Compatibility Named Pipe.
    [    5.419225] systemd[1]: Condition check resulted in Journal Audit Socket being skipped.
    [    5.429060] systemd[1]: Listening on Journal Socket (/dev/log).
    [  OK  ] Listening on Journal Socket (/dev/log).
    [    5.470681] systemd[1]: Listening on Journal Socket.
    [  OK  ] Listening on Journal Socket.
    [    5.508108] systemd[1]: Listening on Network Service Netlink Socket.
    [  OK  ] Listening on Network Service Netlink Socket.
    [    5.549083] systemd[1]: Listening on udev Control Socket.
    [  OK  ] Listening on udev Control Socket.
    [    5.588252] systemd[1]: Listening on udev Kernel Socket.
    [  OK  ] Listening on udev Kernel Socket.
    [    5.628615] systemd[1]: Condition check resulted in Huge Pages File System being skipped.
    [    5.647345] systemd[1]: Mounting POSIX Message Queue File System...
             Mounting POSIX Message Queue File System...
    [    5.676723] systemd[1]: Mounting Kernel Debug File System...
             Mounting Kernel Debug File System...
    [    5.703525] systemd[1]: Mounting Temporary Directory (/tmp)...
             Mounting Temporary Directory (/tmp)...
    [    5.747264] systemd[1]: Condition check resulted in Create list of static device nodes for the current kernel being skipped.
    [    5.769734] systemd[1]: Starting Start psplash boot splash screen...
             Starting Start psplash boot splash screen...
    [    5.831150] systemd[1]: Starting RPC Bind...
             Starting RPC Bind...
    [    5.866999] systemd[1]: Condition check resulted in File System Check on Root Device being skipped.
    [    5.900491] systemd[1]: Starting Journal Service...
             Starting Journal Service...
    [    5.927723] systemd[1]: Starting Load Kernel Modules...
             Starting Load Kernel Modules...
    [    5.972543] cryptodev: loading out-of-tree module taints kernel.
    [    5.992658] systemd[1]: Starting Remount Root and Kernel File Systems...
    [    6.006803] cryptodev: driver 1.10 loaded.
             Starting Remount Root and Kernel File Systems...
    [    6.072658] systemd[1]: Starting udev Coldplug all Devices...
    [    6.093473] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
             Starting udev Coldplug all Devices...
    [    6.173522] systemd[1]: Started RPC Bind.
    [  OK  ] Started RPC Bind.
    [    6.227795] systemd[1]: Mounted POSIX Message Queue File System.
    [  OK  ] Mounted POSIX Message Queue File System.
    [    6.257920] systemd[1]: Mounted Kernel Debug File System.
    [  OK  ] Mounted Kernel Debug File System.
    [    6.297624] systemd[1]: Mounted Temporary Directory (/tmp).
    [  OK  ] Mounted Temporary Directory (/tmp).
    [    6.317709] systemd[1]: psplash-start.service: Main process exited, code=exited, status=255/EXCEPTION
    [    6.347968] systemd[1]: psplash-start.service: Failed with result 'exit-code'.
    [    6.378259] systemd[1]: Failed to start Start psplash boot splash screen.
    [FAILED] Failed to start Start psplash boot splash screen.
    See 'systemctl status psplash-start.service' for details.
    [    6.426640] systemd[1]: Dependency failed for Start psplash-systemd progress communication helper.
    [DEPEND] Dependency failed for Star…progress communication helper.
    [    6.486696] systemd[1]: psplash-systemd.service: Job psplash-systemd.service/start failed with result 'dependency'.
    [    6.517600] systemd[1]: Started Journal Service.
    [  OK  ] Started Journal Service.
    [  OK  ] Started Load Kernel Modules.
    [  OK  ] Started Remount Root and Kernel File Systems.
             Mounting Kernel Configuration File System...
             Starting Flush Journal to Persistent Storage...
    [    6.774287] systemd-journald[90]: Received client request to flush runtime journal.
             Starting Apply Kernel Variables...
             Starting Create Static Device Nodes in /dev...
    [  OK  ] Mounted Kernel Configuration File System.
    [  OK  ] Started Flush Journal to Persistent Storage.
    [  OK  ] Started Apply Kernel Variables.
    [  OK  ] Started Create Static Device Nodes in /dev.
    [  OK  ] Reached target Local File Systems (Pre).
             Mounting /media/ram...
             Mounting /var/volatile...
             Starting udev Kernel Device Manager...
    [  OK  ] Mounted /media/ram.
    [  OK  ] Mounted /var/volatile.
             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 udev Kernel Device Manager.
    [  OK  ] Started Update UTMP about System Boot/Shutdown.
    [  OK  ] Started Network Time Synchronization.
    [  OK  ] Reached target System Time Set.
    [  OK  ] Reached target System Time Synchronized.
    [    9.406975] remoteproc remoteproc0: wkup_m3 is available
    [    9.986550] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
    [  OK  ] Started udev Coldplug all Devices[[   10.001543] omap_rtc 44e3e000.rtc: registered as rtc0
    0m.
             Starting udev Wait for Complete Device Initialization...
    [   10.112042] omap_rtc 44e3e000.rtc: setting system clock to 2000-01-01T00:00:00 UTC (946684800)
    [   10.617855] at24 0-0050: supply vcc not found, using dummy regulator
    [   10.743774] remoteproc remoteproc0: powering up wkup_m3
    [   10.756725] at24 0-0050: 32768 byte 24c256 EEPROM, writable, 1 bytes/write
    [   10.764076] at24 2-0054: supply vcc not found, using dummy regulator
    [   10.827295] remoteproc remoteproc0: Booting fw image am335x-pm-firmware.elf, size 243276
    [   10.835721] remoteproc remoteproc0: remote processor wkup_m3 is now up
    [   10.842299] wkup_m3_ipc 44e11324.wkup_m3_ipc: CM3 Firmware Version = 0x192
    [   10.930510] at24 2-0055: supply vcc not found, using dummy regulator
    [   11.030438] at24 2-0056: supply vcc not found, using dummy regulator
    [   11.129348] at24 2-0057: supply vcc not found, using dummy regulator
    [   11.332002] am335x-phy-driver 47401300.usb-phy: supply vcc not found, using dummy regulator
    [   11.417304] usbcore: registered new interface driver usbfs
    [   11.422890] usbcore: registered new interface driver hub
    [   11.431484] am335x-phy-driver 47401b00.usb-phy: supply vcc not found, using dummy regulator
    [   11.522966] usbcore: registered new device driver usb
    [   11.751320] musb-hdrc musb-hdrc.1: MUSB HDRC host driver
    [   11.884585] musb-hdrc musb-hdrc.1: new USB bus registered, assigned bus number 1
    [   11.982573] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.10
    [   12.069304] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [   12.122419] usb usb1: Product: MUSB HDRC host driver
    [   12.206364] usb usb1: Manufacturer: Linux 5.10.100-g7a7a3af903 musb-hcd
    [   12.213034] usb usb1: SerialNumber: musb-hdrc.1
    [   12.347304] hub 1-0:1.0: USB hub found
    [   12.375447] hub 1-0:1.0: 1 port detected
    [   14.478200] omap-sham 53100000.sham: hw accel on OMAP rev 4.3
    [   14.604280] omap-sham 53100000.sham: will run requests pump with realtime priority
    [   15.028543] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2
    [   15.095475] PM: bootloader does not support rtc-only!
    [   15.120125] omap-aes 53500000.aes: will run requests pump with realtime priority
    [   15.128058] [drm] Initialized pvr 1.17.4948957 20110701 for 56000000.gpu on minor 1
    [    **] A start job is running for udev Wai…ice Initialization (15s / 3min 5s)
    [   21.880138] remoteproc remoteproc1: 4a334000.pru is available
    [  OK  ] Started udev Wait for Complete Device Initialization.
    [  OK  ] Created slice system-systemd\x2dfsck.slice.
    [  OK  ] Reached target Hardware activated USB gadget.
    [  OK  ] Listening on Load/Save RF …itch Status /dev/rfkill Watch.
             Starting Start psplash boot splash screen...
    [  OK  ] Started Hardware RNG Entropy Gatherer Daemon.
             Starting File System Check on /dev/mmcblk0p1...
             Starting File System Check on /dev/mmcblk1p1...
    [  OK  ] Reached target System Initialization.
    [  OK  ] Started Daily rotation of log files.
    [  OK  ] Started Daily Cleanup of Temporary Directories.
    [  OK  ] Reached target Timers.
    [  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
    [  OK  ] Listening on D-Bus System Message Bus Socket.
    [  OK  ] Listening on dropbear.socket.
    [  OK  ] Reached target Sockets.
    [  OK  ] Reached target Basic System.
             Starting Save/Restore Sound Card State...
    [  OK  ] Started Job spooling tools.
    [  OK  ] Started Periodic Command Scheduler.
    [  OK  ] Started D-Bus System Message Bus.
             Starting Print notice about GPLv3 packages...
             Starting IPv6 Packet Filtering Framework...
             Starting IPv4 Packet Filtering Framework...
             Starting Reboot and dump vmcore via kexec...
             Starting rc.pvr.service...
             Starting Login Service...
    [FAILED] Failed to start Start psplash boot splash screen.
    See 'systemctl status psplash-start.service' for details.
    [DEPEND] Dependency failed for Star…progress communication helper.
    [   24.977438] PVR_K: UM DDK-(4948957) and KM DDK-(4948957) match. [ OK ]
    [  OK  ] Started File System Check on /dev/mmcblk0p1.
    [  OK  ] Started File System Check on /dev/mmcblk1p1.
    [  OK  ] Started Save/Restore Sound Card State.
    [  OK  ] Started IPv6 Packet Filtering Framework.
    [  OK  ] Started IPv4 Packet Filtering Framework.
    [  OK  ] Started Reboot and dump vmcore via kexec.
    [  OK  ] Started rc.pvr.service.
    [  OK  ] Reached target Network (Pre).
    [  OK  ] Reached target Sound Card.
             Mounting /run/media/mmcblk0p1...
             Mounting /run/media/mmcblk1p1...
             Starting Network Service...
             Starting weston.service...
    [   25.488419] EXT4-fs (mmcblk1p1): mounted filesystem with ordered data mode. Opts: (null)
    [  OK  ] Mounted /run/media/mmcblk0p1.
    [  OK  ] Mounted /run/media/mmcblk1p1.
    [  OK  ] Started Network Service.
             Starting Wait for Network to be Configured...
    [   26.191921] cpsw-switch 4a100000.switch: starting ndev. mode: dual_mac
             Starting Network Name Resolution...
    [   26.358035] SMSC LAN8710/LAN8720 4a101000.mdio:00: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=4a101000.mdio:00, irq=POLL)
    [  OK  ] Started Login Service.
    [  OK  ] Started Network Name Resolution.
    [  OK  ] Reached target Network.
    [  OK  ] Reached target Host and Network Name Lookups.
             Starting Avahi mDNS/DNS-SD Stack...
             Starting Enable and configure wl18xx bluetooth stack...
    [  OK  ] Started NFS status monitor for NFSv2/3 locking..
             Starting Simple Network Ma…ent Protocol (SNMP) Daemon....
             Starting Permit User Sessions...
    [  OK  ] Started Avahi mDNS/DNS-SD Stack.
    [  OK  ] Started Enable and configure wl18xx bluetooth stack.
    [  OK  ] Started Permit User Sessions.
    [  OK  ] Started Getty on tty1.
    [  OK  ] Started Serial Getty on ttyS0.
    [  OK  ] Started Serial Getty on ttyS3.
    [  OK  ] Reached target Login Prompts.
             Starting Synchronize System and HW clocks...
    [  OK  ] Started Simple Network Man…ement Protocol (SNMP) Daemon..
    [  OK  ] Started weston.service.
             Starting Matrix GUI...
             Starting telnetd.service...
    [  OK  ] Started Matrix GUI.
    [  OK  ] Started telnetd.service.
    [  OK  ] Started Synchronize System and HW clocks.
    ***************************************************************
    ***************************************************************
    NOTICE: This file system contains the following GPLv3 packages:
    	autoconf
    	bash-dev
    	bash
    	bc
    	binutils
    	cifs-utils
    	coreutils-stdbuf
    	coreutils
    	cpio
    	cpp-symlinks
    	cpp
    	dosfstools
    	elfutils
    	g++-symlinks
    	g++
    	gawk
    	gcc-symlinks
    	gcc
    	gdb
    	gdbserver
    	gettext
    	glmark2
    	gstreamer1.0-libav
    	gzip
    	hidapi
    	less
    	libasm1
    	libbfd
    	libdw1
    	libelf1
    	libgdbm-compat4
    	libgdbm-dev
    	libgdbm6
    	libgettextlib
    	libgettextsrc
    	libgmp10
    	libidn2-0
    	libmpc3
    	libmpfr6
    	libreadline-dev
    	libreadline8
    	libunistring2
    	m4-dev
    	m4
    	make
    	nettle
    	parted
    	pdm-anomaly-detection
    	tar
    	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.
    
     _____                    _____           _         _   
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_ 
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|  
                  |___|                    |___|            
    
    Arago Project http://arago-project.org am335x-evm ttyS0
    
    Arago 2021.09 am335x-evm ttyS0
    
    am335x-evm login: root
    root@am335x-evm:~# ifconfig
    eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500  metric 1
            ether 04:79:b7:d9:23:4c  txqueuelen 1000  (Ethernet)
            RX packets 0  bytes 0 (0.0 B)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 0  bytes 0 (0.0 B)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536  metric 1
            inet 127.0.0.1  netmask 255.0.0.0
            inet6 ::1  prefixlen 128  scopeid 0x10<host>
            loop  txqueuelen 1000  (Local Loopback)
            RX packets 82  bytes 6220 (6.0 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 82  bytes 6220 (6.0 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    root@am335x-evm:~# modprobe g_ether
    [   56.556864] using random self ethernet address
    [   56.561361] using random host ethernet address
    [   56.603943] usb0: HOST MAC 7e:56:31:37:6c:42
    [   56.645199] usb0: MAC ea:89:a1:ea:7e:ae
    [   56.656471] using random self ethernet address
    [   56.660962] using random host ethernet address
    [   56.665554] g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
    [   56.698274] g_ether gadget: g_ether ready
    root@am335x-evm:~# [   63.375146] IPv6: ADDRCONF(NETDEV_CHANGE): usb0: link becomes ready
            
    root@am335x-evm:~# ifconfig
    eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500  metric 1
            ether 04:79:b7:d9:23:4c  txqueuelen 1000  (Ethernet)
            RX packets 0  bytes 0 (0.0 B)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 0  bytes 0 (0.0 B)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536  metric 1
            inet 127.0.0.1  netmask 255.0.0.0
            inet6 ::1  prefixlen 128  scopeid 0x10<host>
            loop  txqueuelen 1000  (Local Loopback)
            RX packets 82  bytes 6220 (6.0 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 82  bytes 6220 (6.0 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    usb0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500  metric 1
            inet6 fe80::241f:51ff:fef0:a862  prefixlen 64  scopeid 0x20<link>
            ether 26:1f:51:f0:a8:62  txqueuelen 1000  (Ethernet)
            RX packets 23  bytes 3224 (3.1 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 23  bytes 4026 (3.9 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    root@am335x-evm:~# ifconfig usb0 192.168.7.2 netmask 255.255.255.0 up
    root@am335x-evm:~# ifconfig
    eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500  metric 1
            ether 04:79:b7:d9:23:4c  txqueuelen 1000  (Ethernet)
            RX packets 0  bytes 0 (0.0 B)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 0  bytes 0 (0.0 B)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536  metric 1
            inet 127.0.0.1  netmask 255.0.0.0
            inet6 ::1  prefixlen 128  scopeid 0x10<host>
            loop  txqueuelen 1000  (Local Loopback)
            RX packets 82  bytes 6220 (6.0 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 82  bytes 6220 (6.0 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    usb0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500  metric 1
            inet 192.168.7.2  netmask 255.255.255.0  broadcast 192.168.7.255
            inet6 fe80::241f:51ff:fef0:a862  prefixlen 64  scopeid 0x20<link>
            ether 26:1f:51:f0:a8:62  txqueuelen 1000  (Ethernet)
            RX packets 28  bytes 4394 (4.2 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 36  bytes 6222 (6.0 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    root@am335x-evm:~# 
    

  • Hi Stephan,

    It works on my Beaglebone Black. Here is how I tested:

    On BBB:

    am335x-evm login: root
    root@am335x-evm:~# uname -a
    Linux am335x-evm 5.10.100-g7a7a3af903 #1 PREEMPT Sat May 14 22:36:58 UTC 2022 armv7l armv7l armv7l GNU/Li
    nux
    root@am335x-evm:~# modprobe g_ether
    [  103.967363] using random self ethernet address
    [  103.971858] using random host ethernet address
    [  104.002678] usb0: HOST MAC be:d8:05:a3:5f:ba
    [  104.016577] usb0: MAC a2:d6:e3:79:3a:30
    [  104.020541] using random self ethernet address
    [  104.025007] using random host ethernet address
    [  104.052308] g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
    [  104.068271] g_ether gadget: g_ether ready
    root@am335x-evm:~# [  104.525592] IPv6: ADDRCONF(NETDEV_CHANGE): usb0: link becomes ready
    root@am335x-evm:~# ifconfig usb0 192.168.7.2 netmask 255.255.255.0 up
    root@am335x-evm:~# ifconfig usb0
    usb0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500  metric 1
            inet 192.168.7.2  netmask 255.255.255.0  broadcast 192.168.7.255
            inet6 fe80::6c32:40ff:fef5:7e2b  prefixlen 64  scopeid 0x20<link>
            ether 6e:32:40:f5:7e:2b  txqueuelen 1000  (Ethernet)
            RX packets 34  bytes 3411 (3.3 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 50  bytes 8588 (8.3 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

    On Linux PC:

    dev@udb:dev$ dmesg | tail
    [539355.274029] usb 3-1.4.1.2: new high-speed USB device number 26 using xhci_hcd
    [539355.390346] usb 3-1.4.1.2: New USB device found, idVendor=0525, idProduct=a4a2
    [539355.390351] usb 3-1.4.1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
    [539355.390354] usb 3-1.4.1.2: Product: RNDIS/Ethernet Gadget
    [539355.390357] usb 3-1.4.1.2: Manufacturer: Linux 5.10.100-g7a7a3af903 with musb-hdrc
    [539355.401372] cdc_ether 3-1.4.1.2:1.0 usb0: register 'cdc_ether' at usb-0000:3e:00.0-1.4.1.2, CDC Ethernet Device, be:d8:05:a3:5f:ba
    [539355.434861] usbcore: registered new interface driver cdc_subset
    [539355.445090] cdc_ether 3-1.4.1.2:1.0 enp62s0u1u4u1u2: renamed from usb0
    [539355.483450] IPv6: ADDRCONF(NETDEV_UP): enp62s0u1u4u1u2: link is not ready
    dev@udb:~$ sudo ifconfig enp62s0u1u4u1u2 192.168.7.3
    dev@udb:~$ ifconfig enp62s0u1u4u1u2
    enp62s0u1u4u1u2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet 192.168.7.3  netmask 255.255.255.0  broadcast 192.168.7.255
            ether be:d8:05:a3:5f:ba  txqueuelen 1000  (Ethernet)
            RX packets 71  bytes 10480 (10.4 KB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 59  bytes 7219 (7.2 KB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    dev@udb:~$ ping 192.168.7.2
    PING 192.168.7.2 (192.168.7.2) 56(84) bytes of data.
    64 bytes from 192.168.7.2: icmp_seq=1 ttl=64 time=0.606 ms
    64 bytes from 192.168.7.2: icmp_seq=2 ttl=64 time=0.549 ms
    64 bytes from 192.168.7.2: icmp_seq=3 ttl=64 time=0.829 ms
    64 bytes from 192.168.7.2: icmp_seq=4 ttl=64 time=0.700 ms
    ^C
    --- 192.168.7.2 ping statistics ---
    4 packets transmitted, 4 received, 0% packet loss, time 3060ms
    rtt min/avg/max/mdev = 0.549/0.671/0.829/0.105 ms

  • Hi Bin,

    Yes, it works - though I have to re-configure the network on pc side every time the usb link is broken (not sure why?)

    Updating /etc/network/interfaces (as in Step 2 above) doesn't fix this problem. What other changes do I have to make to "automatically" set usb0 gadget parameters on BBB. I thought "allow-hotplug usb0" and "post-up service isc-dhcp-server reload" was supposed to do that?

    Thanks for the support.

  • Hi Stephan,

    Yes, it works - though I have to re-configure the network on pc side every time the usb link is broken (not sure why?)

    Do you mean you have to run "ifconfig usb0 <ipaddr>" on PC every time the BBB is connected? I think it is expected, PC won't assign an IP address on a new network interface automatically unless it is configured to do so.

    Updating /etc/network/interfaces (as in Step 2 above) doesn't fix this problem. What other changes do I have to make to "automatically" set usb0 gadget parameters on BBB. I thought "allow-hotplug usb0" and "post-up service isc-dhcp-server reload" was supposed to do that?

    I am not an network expert, but the usb0 interfaces on both BBB and PC are independent, you have to configure it on each side to assign an IP to it. I think there are many ways to solve this, but I am not sure how to configure /etc/network/interfaces for it, since I know little about network. This is purely an generic Linux question, not BBB specific.

    FYI, I typically use an udev rule to call a script to run the ifconfig command to assign the IP address. This is just my hack...