[Clfs-support] Tying to Move-on to CBLFS but Stopped at Networking

Dan McGhee beesnees at grm.net
Sat Oct 10 14:12:42 PDT 2009


After a really rocky start, all's well to move on except for my wireless 
networking devices.  I have two: an internal wireless card, which I want 
to be the work-horse, and a usb device.  On boot, the kernel recognizes 
them, the modules are loaded and they are named--wlan0 and wlan1, 
respectively.  The light indicating that the wireless card is powered 
comes on.  However, <ls /dev | grep wlan> gives no output.  <udevadm 
info --query=all --name=/dev/wlan0> returns "device node not found."  
Same for wlan1.  <ip link wlan0> fails also.  I'm stumped.

<dmesg> and <lsmod> tell me that everything is recognized, it seems that 
the devices are not being created.  Below is info from <udevadm info 
--attribute-walk --name=/sys/class/net/wlan{0,1} and the rule for each 
from 70-persistent-net-rules.

udevadm info for wlan0:
>   looking at device 
> '/devices/pci0000:00/0000:00:05.0/0000:08:00.0/net/wlan0':
>     KERNEL=="wlan0"
>     SUBSYSTEM=="net"
>     DRIVER==""
>     ATTR{addr_len}=="6"
>     ATTR{dev_id}=="0x0"
>     ATTR{ifalias}==""
>     ATTR{iflink}=="4"
>     ATTR{ifindex}=="4"
>     ATTR{features}=="0x2000"
>     ATTR{type}=="1"
>     ATTR{link_mode}=="0"
>     ATTR{address}=="00:26:5e:56:5c:dd"
>     ATTR{broadcast}=="ff:ff:ff:ff:ff:ff"
>     ATTR{carrier}=="0"
>     ATTR{dormant}=="0"
>     ATTR{operstate}=="down"
>     ATTR{mtu}=="1500"
>     ATTR{flags}=="0x1003"
>     ATTR{tx_queue_len}=="1000"
>
>   looking at parent device 
> '/devices/pci0000:00/0000:00:05.0/0000:08:00.0':
>     KERNELS=="0000:08:00.0"
>     SUBSYSTEMS=="pci"
>     DRIVERS=="ath9k"
>     ATTRS{vendor}=="0x168c"
>     ATTRS{device}=="0x002b"
>     ATTRS{subsystem_vendor}=="0x103c"
>     ATTRS{subsystem_device}=="0x303f"
>     ATTRS{class}=="0x028000"
>     ATTRS{irq}=="17"
>     ATTRS{local_cpus}=="00000000,00000000"
>     ATTRS{local_cpulist}==""
>     
> ATTRS{modalias}=="pci:v0000168Cd0000002Bsv0000103Csd0000303Fbc02sc80i00"
>     ATTRS{numa_node}=="-1"
>     ATTRS{enable}=="1"
>     ATTRS{broken_parity_status}=="0"
>     ATTRS{msi_bus}==""
>     ATTRS{msi_bus}=="1"

Rule for wlan0:
> # PCI device 0x168c:0x002b (ath9k)
> SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", 
> ATTR{address}=="00:26:5e:56:5c:dd", ATTR{type}=="1", KERNEL=="wlan*", 
> NAME="wlan0"

Udevadm info for wlan1:

>   looking at device 
> '/devices/pci0000:00/0000:00:12.2/usb1/1-6/1-6:1.0/net/wlan1':
>     KERNEL=="wlan1"
>     SUBSYSTEM=="net"
>     DRIVER==""
>     ATTR{addr_len}=="6"
>     ATTR{dev_id}=="0x0"
>     ATTR{ifalias}==""
>     ATTR{iflink}=="6"
>     ATTR{ifindex}=="6"
>     ATTR{features}=="0x0"
>     ATTR{type}=="1"
>     ATTR{link_mode}=="0"
>     ATTR{address}=="00:1e:e5:9d:3f:42"
>     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:12.2/usb1/1-6/1-6:1.0':
>     KERNELS=="1-6:1.0"
>     SUBSYSTEMS=="usb"
>     DRIVERS=="rndis_wlan"
>     ATTRS{bInterfaceNumber}=="00"
>     ATTRS{bAlternateSetting}==" 0"
>     ATTRS{bNumEndpoints}=="01"
>     ATTRS{bInterfaceClass}=="02"
>     ATTRS{bInterfaceSubClass}=="02"
>     ATTRS{bInterfaceProtocol}=="ff"
>     ATTRS{modalias}=="usb:v13B1p0026d0006dc02dsc00dp00ic02isc02ipFF"
>     ATTRS{supports_autosuspend}=="0"
Rule for wlan1:

> # USB device 0x13b1:0x0026 (usb)
> SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", 
> ATTR{address}=="00:1e:e5:9d:3f:42", ATTR{type}=="1", KERNEL=="wlan*", 
> NAME="wlan1"
I need to mention that in /sys/bus/pci there is another name--phy0.  
It's the parent of wlan0.  The rules got generated by <udevadm test>.

Can anyone see anything that I'm missing.  At this point is has to be 
something really simple and I can't see the tree because of the 
forrest.  Just a thought.  Although the udev system is much more 
complicated now than when I did my last LFS build, I know that I can 
change the ATTRIBUTE(s) of a device.  (I'll have to read up on it to 
refresh my memory.)  Is something like that necessary here.

I'll appreciate any advice, thoughts or "try this."

BTW.  Using SVN-20090922-x86-Multilib

Thanks,

Dan



More information about the Clfs-support mailing list