Bug#567098: linux-image-2.6.26-2-ixp4xx: adm8511/pegasus usb ethernet device loses mac on nslu2 when cold-plugged
Devin, did you report this issue upstream?
* Martin Michlmayr <tbm@cyrius.com> [2010-02-22 21:49]:
> * Devin Carraway <devin@debian.org> [2010-01-27 02:19]:
> > I've been experimenting with a Pegasus-chipset USB ethernet adapter
> > on an NSLU2 unit. If the adapter is connected prior to system boot,
> > although it will be recognized by the kernel and udev, it starts out
> > with a MAC address of 00:00:00:00:00:00.
>
> I finally got around to testing my Pegasus USB Ethernet (a different
> one to yours) with my NSLU2 and I cannot reproduce this issue (see
> attached dmesg and udevadm).
>
> Can you please report this issue directly to
>
> Petko Manolov <petkan@users.sourceforge.net>, netdev@vger.kernel.org
> (the maintainer of the Pegasus driver and the Linux networking list)
>
> and also CC:
>
> Krzysztof Halasa <khc@pm.waw.pl>
>
> (the maintainer of the IXP4xx platform)
>
> Thanks.
> --
> Martin Michlmayr
> http://www.cyrius.com/
> Booting kernel at 0x00008000...
> Uncompressing Linux... done, booting the kernel.
> [ 0.000000] Initializing cgroup subsys cpuset
> [ 0.000000] Initializing cgroup subsys cpu
> [ 0.000000] Linux version 2.6.32-rc6-ixp4xx (Debian 2.6.32~rc6-1) (ben@decadent.org.uk) (gcc version 4.1.3 20080420 (prerelease) (Debian 4.1.2-22)) #1 Thu Nov 12 18:53:34 UTC 2009
> [ 0.000000] CPU: XScale-IXP42x Family [690541f1] revision 1 (ARMv5TE), cr=0000397f
> [ 0.000000] CPU: VIVT data cache, VIVT instruction cache
> [ 0.000000] Machine: Linksys NSLU2
> [ 0.000000] Memory policy: ECC disabled, Data cache writeback
> [ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128
> [ 0.000000] Kernel command line: console=ttyS0,115200 rtc-x1205.probe=0,0x6f noirqdebug
> [ 0.000000] Unknown boot option `rtc-x1205.probe=0,0x6f': ignoring
> [ 0.000000] IRQ lockup detection disabled
> [ 0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
> [ 0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
> [ 0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
> [ 0.000000] Memory: 32MB = 32MB total
> [ 0.000000] Memory: 22636KB available (3012K code, 440K data, 108K init, 0K highmem)
> [ 0.000000] SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
> [ 0.000000] Hierarchical RCU implementation.
> [ 0.000000] NR_IRQS:64
> [ 0.000000] Console: colour dummy device 80x30
> [ 0.000000] Calibrating delay loop... 266.24 BogoMIPS (lpj=1331200)
> [ 0.240000] Security Framework initialized
> [ 0.240000] SELinux: Disabled at boot.
> [ 0.240000] Mount-cache hash table entries: 512
> [ 0.240000] Initializing cgroup subsys ns
> [ 0.240000] Initializing cgroup subsys cpuacct
> [ 0.240000] Initializing cgroup subsys devices
> [ 0.240000] Initializing cgroup subsys freezer
> [ 0.240000] Initializing cgroup subsys net_cls
> [ 0.240000] CPU: Testing write buffer coherency: ok
> [ 0.240000] regulator: core version 0.5
> [ 0.240000] NET: Registered protocol family 16
> [ 0.250000] IXP4xx: Using 16MiB expansion bus window size
> [ 0.250000] NSLU2: Using MAC address 00:13:10:d6:1e:a7 for port 0
> [ 0.250000] PCI: IXP4xx is host
> [ 0.250000] PCI: IXP4xx Using direct access for memory space
> [ 0.250000] pci 0000:00:01.0: PME# supported from D0 D1 D2 D3hot
> [ 0.250000] pci 0000:00:01.0: PME# disabled
> [ 0.250000] pci 0000:00:01.1: PME# supported from D0 D1 D2 D3hot
> [ 0.250000] pci 0000:00:01.1: PME# disabled
> [ 0.250000] pci 0000:00:01.2: PME# supported from D0 D1 D2 D3hot
> [ 0.250000] pci 0000:00:01.2: PME# disabled
> [ 0.250000] PCI: bus0: Fast back to back transfers disabled
> [ 0.250000] pci 0000:00:01.0: dmabounce: registered device
> [ 0.250000] pci 0000:00:01.1: dmabounce: registered device
> [ 0.250000] pci 0000:00:01.2: dmabounce: registered device
> [ 0.250000] bio: create slab <bio-0> at 0
> [ 0.250000] vgaarb: loaded
> [ 0.260000] Switching to clocksource OSTS
> [ 0.270000] NET: Registered protocol family 2
> [ 0.270000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
> [ 0.270000] TCP established hash table entries: 1024 (order: 1, 8192 bytes)
> [ 0.270000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
> [ 0.270000] TCP: Hash tables configured (established 1024 bind 1024)
> [ 0.270000] TCP reno registered
> [ 0.270000] NET: Registered protocol family 1
> [ 0.280000] Unpacking initramfs...
> [ 2.020000] Freeing initrd memory: 6140K
> [ 2.020000] NetWinder Floating Point Emulator V0.97 (double precision)
> [ 2.020000] audit: initializing netlink socket (disabled)
> [ 2.020000] type=2000 audit(2.020:1): initialized
> [ 2.050000] VFS: Disk quotas dquot_6.5.2
> [ 2.050000] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
> [ 2.050000] msgmni has been set to 56
> [ 2.050000] alg: No test for stdrng (krng)
> [ 2.050000] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
> [ 2.050000] io scheduler noop registered
> [ 2.050000] io scheduler anticipatory registered
> [ 2.050000] io scheduler deadline registered
> [ 2.050000] io scheduler cfq registered (default)
> [ 2.070000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
> [ 2.070000] serial8250.0: ttyS0 at MMIO 0xc8000000 (irq = 15) is a XScale
> [ 2.450000] console [ttyS0] enabled
> [ 2.460000] serial8250.0: ttyS1 at MMIO 0xc8001000 (irq = 13) is a XScale
> [ 2.470000] IXP4XX-Flash.0: Found 1 x16 devices at 0x0 in 16-bit bank
> [ 2.470000] Intel/Sharp Extended Query Table at 0x0031
> [ 2.480000] Intel/Sharp Extended Query Table at 0x0031
> [ 2.480000] Using buffer write method
> [ 2.490000] cfi_cmdset_0001: Erase suspend on write enabled
> [ 2.490000] Searching for RedBoot partition table in IXP4XX-Flash.0 at offset 0x7e0000
> [ 2.590000] 6 RedBoot partitions found on MTD device IXP4XX-Flash.0
> [ 2.600000] Creating 6 MTD partitions on "IXP4XX-Flash.0":
> [ 2.610000] 0x000000000000-0x000000040000 : "RedBoot"
> [ 2.610000] 0x000000040000-0x000000060000 : "SysConf"
> [ 2.620000] 0x000000060000-0x000000080000 : "Loader"
> [ 2.630000] 0x000000080000-0x0000001e0000 : "Kernel"
> [ 2.630000] 0x0000001e0000-0x0000007e0000 : "Ramdisk"
> [ 2.640000] 0x0000007e0000-0x000000800000 : "FIS directory"
> [ 2.650000] mice: PS/2 mouse device common for all mice
> [ 2.650000] i2c /dev entries driver
> [ 2.670000] rtc-x1205 0-006f: chip found, driver version 1.0.8
> [ 2.670000] rtc-x1205 0-006f: rtc core: registered rtc-x1205 as rtc0
> [ 2.680000] i2c-gpio i2c-gpio.0: using pins 7 (SDA) and 6 (SCL)
> [ 2.690000] Registered led device: nslu2:green:ready
> [ 2.690000] Registered led device: nslu2:red:status
> [ 2.700000] Registered led device: nslu2:green:disk-1
> [ 2.700000] Registered led device: nslu2:green:disk-2
> [ 2.710000] TCP cubic registered
> [ 2.720000] NET: Registered protocol family 17
> [ 2.720000] XScale DSP coprocessor detected.
> [ 2.730000] registered taskstats version 1
> [ 2.730000] rtc-x1205 0-006f: setting system clock to 2010-02-22 21:28:46 UTC (1266874126)
> [ 2.740000] Freeing init memory: 108K
> Loading, please wait...
> Begin: Loading essential drivers ... done.
> Begin: Running /scripts/init-premount ... [ 6.870000] usbcore: registered new interface driver usbfs
> [ 6.910000] usbcore: registered new interface driver hub
> [ 6.910000] usbcore: registered new device driver usb
> [ 7.110000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
> [ 7.130000] PCI: enabling device 0000:00:01.0 (0140 -> 0142)
> [ 7.170000] ohci_hcd 0000:00:01.0: OHCI Host Controller
> [ 7.210000] ohci_hcd 0000:00:01.0: new USB bus registered, assigned bus number 1
> [ 7.210000] ohci_hcd 0000:00:01.0: irq 28, io mem 0x48000000
> [ 7.230000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
> [ 7.240000] Warning! ehci_hcd should always be loaded before uhci_hcd and ohci_hcd, not after
> [ 7.310000] usb usb1: New USB device found, idVendor=1d6b, idProduct=0001
> [ 7.310000] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
> [ 7.320000] usb usb1: Product: OHCI Host Controller
> [ 7.330000] usb usb1: Manufacturer: Linux 2.6.32-rc6-ixp4xx ohci_hcd
> [ 7.330000] usb usb1: SerialNumber: 0000:00:01.0
> [ 7.340000] usb usb1: configuration #1 chosen from 1 choice
> [ 7.350000] hub 1-0:1.0: USB hub found
> [ 7.350000] hub 1-0:1.0: 3 ports detected
> [ 7.360000] PCI: enabling device 0000:00:01.2 (0140 -> 0142)
> [ 7.360000] ehci_hcd 0000:00:01.2: EHCI Host Controller
> [ 7.370000] ehci_hcd 0000:00:01.2: new USB bus registered, assigned bus number 2
> [ 7.380000] ehci_hcd 0000:00:01.2: Enabling legacy PCI PM
> [ 7.410000] ehci_hcd 0000:00:01.2: irq 26, io mem 0x48002000
> [ 7.430000] ehci_hcd 0000:00:01.2: USB 2.0 started, EHCI 1.00
> [ 7.430000] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
> [ 7.440000] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
> [ 7.450000] usb usb2: Product: EHCI Host Controller
> [ 7.450000] usb usb2: Manufacturer: Linux 2.6.32-rc6-ixp4xx ehci_hcd
> [ 7.460000] usb usb2: SerialNumber: 0000:00:01.2
> [ 7.470000] usb usb2: configuration #1 chosen from 1 choice
> [ 7.470000] hub 2-0:1.0: USB hub found
> [ 7.480000] hub 2-0:1.0: 5 ports detected
> [ 7.480000] PCI: enabling device 0000:00:01.1 (0140 -> 0142)
> [ 7.500000] ohci_hcd 0000:00:01.1: OHCI Host Controller
> [ 7.520000] ohci_hcd 0000:00:01.1: new USB bus registered, assigned bus number 3
> [ 7.520000] ohci_hcd 0000:00:01.1: irq 27, io mem 0x48001000
> [ 7.650000] usb usb3: New USB device found, idVendor=1d6b, idProduct=0001
> [ 7.650000] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
> [ 7.660000] usb usb3: Product: OHCI Host Controller
> [ 7.660000] usb usb3: Manufacturer: Linux 2.6.32-rc6-ixp4xx ohci_hcd
> [ 7.670000] usb usb3: SerialNumber: 0000:00:01.1
> [ 7.710000] usb usb3: configuration #1 chosen from 1 choice
> [ 7.720000] hub 3-0:1.0: USB hub found
> [ 7.720000] hub 3-0:1.0: 2 ports detected
> [ 7.920000] usb 2-2: new high speed USB device using ehci_hcd and address 3
> done.
> Begin: Mounting root file system ... [ 8.070000] usb 2-2: New USB device found, idVendor=152d, idProduct=2338
> [ 8.070000] usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=5
> [ 8.080000] usb 2-2: Product: USB to ATA/ATAPI Bridge
> [ 8.090000] usb 2-2: Manufacturer: JMicron
> [ 8.090000] usb 2-2: SerialNumber: 348886732222
> Begin: Running /scripts/local-top ... [ 8.130000] usb 2-2: configuration #1 chosen from 1 choice
> done.
> [ 8.720000] SCSI subsystem initialized
> [ 8.750000] usb 1-1: new full speed USB device using ohci_hcd and address 2
> [ 8.870000] Initializing USB Mass Storage driver...
> [ 8.880000] scsi0 : SCSI emulation for USB Mass Storage devices
> [ 8.890000] usbcore: registered new interface driver usb-storage
> [ 8.910000] USB Mass Storage support registered.
> Begin: Waiting for root file system ... [ 9.030000] usb 1-1: New USB device found, idVendor=0951, idProduct=000a
> [ 9.040000] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
> [ 9.050000] usb 1-1: Product: Kingston KNU101TX USB Ethernet
> [ 9.050000] usb 1-1: Manufacturer: Kingston
> [ 9.060000] usb 1-1: SerialNumber: 0001
> [ 9.060000] usb 1-1: configuration #1 chosen from 1 choice
> [ 13.890000] scsi 0:0:0:0: Direct-Access ST340014 A PQ: 0 ANSI: 2 CCS
> [ 14.160000] sd 0:0:0:0: [sda] 78165360 512-byte logical blocks: (40.0 GB/37.2 GiB)
> [ 14.200000] sd 0:0:0:0: [sda] Write Protect is off
> [ 14.200000] sd 0:0:0:0: [sda] Assuming drive cache: write through
> [ 14.210000] sd 0:0:0:0: [sda] Assuming drive cache: write through
> [ 14.220000] sda: sda1 sda2 sda3 < sda5 sda6 >
> [ 14.290000] sd 0:0:0:0: [sda] Assuming drive cache: write through
> [ 14.300000] sd 0:0:0:0: [sda] Attached SCSI disk
> done.
> Begin: Running /scripts/local-premount ... done.
> [ 15.720000] kjournald starting. Commit interval 5 seconds
> [ 15.720000] EXT3-fs: mounted filesystem with ordered data mode.
> Begin: Running /scripts/local-bottom ... done.
> done.
> Begin: Running /scripts/init-bottom ... done.
> INIT: version 2.86 booting
> Starting the hotplug events dispatcher: udevd[ 21.030000] udevd version 125 started
> .
> Synthesizing the initial hotplug events...done.
> Waiting for /dev to be fully populated...[ 28.740000] input: ixp4xx beeper as /devices/platform/ixp4xx-beeper.4/input/input0
> [ 29.280000] pegasus: v0.6.14 (2006/09/27), Pegasus/Pegasus II USB Ethernet driver
> [ 29.350000] IXP4xx Queue Manager initialized.
> [ 29.460000] pegasus 1-1:1.0: eth0, Kingston KNU101TX Ethernet, 00:c0:f0:61:01:2c
> [ 29.480000] usbcore: registered new interface driver pegasus
> [ 29.610000] IXP4xx MII Bus: probed
> [ 29.620000] eth1: MII PHY 1 on NPE-B
> [ 29.700000] udev: renamed network interface eth0 to eth2
> done.
> Starting boot logger: bootlogd.
> Setting the system clock.
> Activating swap...[ 33.790000] Adding 248968k swap on /dev/sda5. Priority:-1 extents:1 across:248968k
> done.
> Checking root file system...fsck 1.41.3 (12-Oct-2008)
> e2fsck 1.41.3 (12-Oct-2008)
> /dev/sda2: clean, 23883/427392 files, 212218/1708914 blocks
> done.
> [ 34.680000] EXT3 FS on sda2, internal journal
> Setting the system clock.
> Cleaning up ifupdown....
> Loading kernel modules...done.
> Checking file systems...fsck 1.41.3 (12-Oct-2008)
> e2fsck 1.41.3 (12-Oct-2008)
> /dev/sda1: clean, 169/124496 files, 50660/248976 blocks
> e2fsck 1.41.3 (12-Oct-2008)
> /dev/sda6: clean, 15/1986768 files, 168745/7936102 blocks (check after next mount)
> done.
> Setting kernel variables (/etc/sysctl.conf)...done.
> Mounting local filesystems...[ 39.620000] kjournald starting. Commit interval 5 seconds
> [ 39.620000] EXT3 FS on sda6, internal journal
> [ 39.630000] EXT3-fs: mounted filesystem with ordered data mode.
> done.
> Activating swapfile swap...done.
> Setting up networking....
> Configuring network interfaces...done.
> Starting portmap daemon....
> Starting NFS common utilities: statd.
> INIT: Entering runlevel: 2
> Starting enhanced syslogd: rsyslogd.
> Starting OpenBSD Secure Shell server: sshd[ 49.490000] NET: Registered protocol family 10
> [ 49.510000] lo: Disabled Privacy Extensions
> .
> Starting MTA: exim4.
> Starting NFS common utilities: statd.
> Not starting internet superserver: no services enabled.
> Starting deferred execution scheduler: atd.
> Starting periodic command scheduler: crond.
> Stopping boot logger: bootlogd.
>
> Udevinfo starts with the device specified by the devpath and then
> walks up the chain of parent devices. It prints for every device
> found, all possible attributes in the udev rules key format.
> A rule to match, can be composed by the attributes of the device
> and the attributes from one single parent device.
>
> looking at device '/devices/pci0000:00/0000:00:01.0/usb1/1-1/1-1:1.0/net/eth2':
> KERNEL=="eth2"
> SUBSYSTEM=="net"
> DRIVER==""
> ATTR{addr_len}=="6"
> ATTR{dev_id}=="0x0"
> ATTR{ifalias}==""
> ATTR{iflink}=="2"
> ATTR{ifindex}=="2"
> ATTR{features}=="0x0"
> ATTR{type}=="1"
> ATTR{link_mode}=="0"
> ATTR{address}=="00:c0:f0:61:01:2c"
> ATTR{broadcast}=="ff:ff:ff:ff:ff:ff"
> ATTR{operstate}=="down"
> ATTR{mtu}=="1500"
> ATTR{flags}=="0x1002"
> ATTR{tx_queue_len}=="1000"
>
> looking at parent device '/devices/pci0000:00/0000:00:01.0/usb1/1-1/1-1:1.0/net':
> KERNELS=="net"
> SUBSYSTEMS==""
> DRIVERS==""
>
> looking at parent device '/devices/pci0000:00/0000:00:01.0/usb1/1-1/1-1:1.0':
> KERNELS=="1-1:1.0"
> SUBSYSTEMS=="usb"
> DRIVERS=="pegasus"
> ATTRS{bInterfaceNumber}=="00"
> ATTRS{bAlternateSetting}==" 0"
> ATTRS{bNumEndpoints}=="03"
> ATTRS{bInterfaceClass}=="00"
> ATTRS{bInterfaceSubClass}=="00"
> ATTRS{bInterfaceProtocol}=="00"
> ATTRS{modalias}=="usb:v0951p000Ad0101dc00dsc00dp00ic00isc00ip00"
> ATTRS{supports_autosuspend}=="0"
>
> looking at parent device '/devices/pci0000:00/0000:00:01.0/usb1/1-1':
> KERNELS=="1-1"
> SUBSYSTEMS=="usb"
> DRIVERS=="usb"
> ATTRS{configuration}==""
> ATTRS{bNumInterfaces}==" 1"
> ATTRS{bConfigurationValue}=="1"
> ATTRS{bmAttributes}=="a0"
> ATTRS{bMaxPower}=="160mA"
> ATTRS{urbnum}=="152"
> ATTRS{idVendor}=="0951"
> ATTRS{idProduct}=="000a"
> ATTRS{bcdDevice}=="0101"
> ATTRS{bDeviceClass}=="00"
> ATTRS{bDeviceSubClass}=="00"
> ATTRS{bDeviceProtocol}=="00"
> ATTRS{bNumConfigurations}=="1"
> ATTRS{bMaxPacketSize0}=="8"
> ATTRS{speed}=="12"
> ATTRS{busnum}=="1"
> ATTRS{devnum}=="2"
> ATTRS{version}==" 1.10"
> ATTRS{maxchild}=="0"
> ATTRS{quirks}=="0x0"
> ATTRS{authorized}=="1"
> ATTRS{manufacturer}=="Kingston"
> ATTRS{product}=="Kingston KNU101TX USB Ethernet"
> ATTRS{serial}=="0001"
>
> looking at parent device '/devices/pci0000:00/0000:00:01.0/usb1':
> KERNELS=="usb1"
> SUBSYSTEMS=="usb"
> DRIVERS=="usb"
> ATTRS{configuration}==""
> ATTRS{bNumInterfaces}==" 1"
> ATTRS{bConfigurationValue}=="1"
> ATTRS{bmAttributes}=="e0"
> ATTRS{bMaxPower}==" 0mA"
> ATTRS{urbnum}=="39"
> ATTRS{idVendor}=="1d6b"
> ATTRS{idProduct}=="0001"
> ATTRS{bcdDevice}=="0206"
> ATTRS{bDeviceClass}=="09"
> ATTRS{bDeviceSubClass}=="00"
> ATTRS{bDeviceProtocol}=="00"
> ATTRS{bNumConfigurations}=="1"
> ATTRS{bMaxPacketSize0}=="64"
> ATTRS{speed}=="12"
> ATTRS{busnum}=="1"
> ATTRS{devnum}=="1"
> ATTRS{version}==" 1.10"
> ATTRS{maxchild}=="3"
> ATTRS{quirks}=="0x0"
> ATTRS{authorized}=="1"
> ATTRS{manufacturer}=="Linux 2.6.32-rc6-ixp4xx ohci_hcd"
> ATTRS{product}=="OHCI Host Controller"
> ATTRS{serial}=="0000:00:01.0"
> ATTRS{authorized_default}=="1"
>
> looking at parent device '/devices/pci0000:00/0000:00:01.0':
> KERNELS=="0000:00:01.0"
> SUBSYSTEMS=="pci"
> DRIVERS=="ohci_hcd"
> ATTRS{vendor}=="0x1033"
> ATTRS{device}=="0x0035"
> ATTRS{subsystem_vendor}=="0x1033"
> ATTRS{subsystem_device}=="0x0035"
> ATTRS{class}=="0x0c0310"
> ATTRS{irq}=="28"
> ATTRS{local_cpus}=="1"
> ATTRS{local_cpulist}=="0"
> ATTRS{modalias}=="pci:v00001033d00000035sv00001033sd00000035bc0Csc03i10"
> ATTRS{enable}=="1"
> ATTRS{broken_parity_status}=="0"
> ATTRS{msi_bus}==""
>
> looking at parent device '/devices/pci0000:00':
> KERNELS=="pci0000:00"
> SUBSYSTEMS==""
> DRIVERS==""
>
--
Martin Michlmayr
http://www.cyrius.com/
Reply to: