2009-08-31 16:45:13

by Leonardo H. Souza Hamada

[permalink] [raw]
Subject: zd1211rw on ppc (iBook G4)

Hi list,

On linux-2.6.24-gentoo-r3, the zd1211rw driver was working as eth1.

This is a big-endian machine.

On 2.6.30-gentoo-r5, 'ifconfig -a' shows the relevant entries below:

wlan0 Link encap:Ethernet HWaddr 00:16:01:D0:11:7D
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)

wmaster0 Link encap:UNSPEC HWaddr
00-16-01-D0-11-7D-10-00-00-00-00-00-00-00-00-00
[NO FLAGS] MTU:0 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)

dmesg command shows:

usb 1-2: new high speed USB device using ehci_hcd and address 3
usb 1-2: New USB device found, idVendor=0411, idProduct=00da
usb 1-2: New USB device strings: Mfr=16, Product=32, SerialNumber=0
usb 1-2: Product: USB2.0 WLAN
usb 1-2: Manufacturer: Buffalo
usb 1-2: configuration #1 chosen from 1 choice
usb 1-2: reset high speed USB device using ehci_hcd and address 3
phy1: Selected rate control algorithm 'minstrel'
zd1211rw 1-2:1.0: phy1
usb 1-2: firmware: requesting zd1211/zd1211b_ub
usb 1-2: firmware: requesting zd1211/zd1211b_uphr
zd1211rw 1-2:1.0: firmware version 4725
zd1211rw 1-2:1.0: zd1211b chip 0411:00da v4810 high 00-16-01 AL2230S_RF
pa0 g--N-
usb 1-2: firmware: requesting zd1211/zd1211b_ub
usb 1-2: firmware: requesting zd1211/zd1211b_uphr
usb 1-2: firmware: requesting zd1211/zd1211b_ub
usb 1-2: firmware: requesting zd1211/zd1211b_uphr
usb 1-2: USB control request for firmware upload failed. Error number -110
usb 1-2: Could not upload firmware code uph. Error number -110
zd1211rw 1-2:1.0: couldn't load firmware. Error number -110

lsusb shows:

Bus 001 Device 003: ID 0411:00da MelCo., Inc. WLI-U2-KG54L
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Bringing it up:

ifconfig wlan0 up
SIOCSIFFLAGS: Connection timed out

DHCP command:
dhcpcd wlan0
dhcpcd: version 5.0.6 starting
dhcpcd: wlan0: interface not found or invalid

Likely is a issue similar reported previously:
http://marc.info/?l=linux-wireless&m=124906700820860&w=2

Quick peek at the source diffs between previous version reveals some
changes.

Regards,

Leonardo


2009-08-31 17:25:13

by Hin-Tak Leung

[permalink] [raw]
Subject: Re: zd1211rw on ppc (iBook G4)

On Mon, Aug 31, 2009 at 5:39 PM, Leonardo H. Souza
Hamada<[email protected]> wrote:
> Hi list,
>
> On linux-2.6.24-gentoo-r3, the zd1211rw driver was working as eth1.
>
> This is a big-endian machine.
>
> On 2.6.30-gentoo-r5, 'ifconfig -a' shows the relevant entries below:

> Likely is a issue similar reported previously:
> http://marc.info/?l=linux-wireless&m=124906700820860&w=2
>
> Quick peek at the source diffs between previous version reveals some
> changes.

Are you talking about a regression - i.e. it used to work *on the same
architecture*, but not any more? If that's the case you can probably
start with 2.6.24 and various compat-wireless on to narrow down which
changes break. The post you referred to is different - vendor driver
vs rw driver.

2009-09-27 19:14:40

by Leonardo H. Souza Hamada

[permalink] [raw]
Subject: Re: zd1211rw on ppc (iBook G4)

Hin-Tak Leung wrote:
>
> I found that one of the patches -
> 0004-forward-port-of-an-old-patch-from-the-internet.patch - is buggy,
> and breaks USB 2.0 host... wanna undo that and have another go?
> (that's also the one that adds the 'read failed after 5 attempts",
> etc).
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>

OK,

Undid the 0004-forward-port-of-an-old-patch-from-the-internet.patch patch.

The vendor driver seems to work fine now.

dmesg:
usb 1-2: new high speed USB device using ehci_hcd and address 3
usb 1-2: New USB device found, idVendor=0411, idProduct=00da
usb 1-2: New USB device strings: Mfr=16, Product=32, SerialNumber=0
usb 1-2: Product: USB2.0 WLAN
usb 1-2: Manufacturer: Buffalo
usb 1-2: configuration #1 chosen from 1 choice

_____ ____ _ ____
|__ / _| _ \ / \ / ___|
/ / | | | | | |/ _ \ \___ \
/ /| |_| | |_| / ___ \ ___) |
/____\__, |____/_/ \_\____/
|___/
ZD1211B - version 3.0.0.56
vendor_id = 0411
product_id = 00da
USB 2.0 Host
Release Ver = 4810
EEPORM Ver = 4810
Finsih download Firmware. Ready to reboot
PA type: 0
PHYNEWLayout = 1
Airoha AL2230S_RF
OverWrite CR47 = 0x19
zd1205_config: EEP(HWFeature)=0x110
AllowedChannel = 00013fff
Region:73
usbcore: registered new interface driver zd1211b
zd1205_notify_disjoin_event
ADDRCONF(NETDEV_UP): ath0: link is not ready



lsusb:
Bus 001 Device 003: ID 0411:00da MelCo., Inc. WLI-U2-KG54L


lsmod:
Module Size Used by
zd1211b 500924 0



Thanks,

Leonardo

2009-09-23 00:50:14

by Hin-Tak Leung

[permalink] [raw]
Subject: Re: zd1211rw on ppc (iBook G4)

On Tue, Sep 1, 2009 at 9:02 PM, Leonardo H. Souza Hamada
<[email protected]> wrote:

> Hin-Tak Leung wrote:
>> I have a bunch of patches which bring the 2.22 vendor driver up to
>> 2.6.29 and 3.0 the vendor driver up to 2.6.30:
>> http://htl10.users.sourceforge.net/patchsets/
>> It doesn't fix the rw driver, but might be good enough for you?
>>
>
> I have downloaded the vendor driver and applied your patchset.
>
> Inserted the vendor { USB_DEVICE(0x0411, 0x00DA) }, in
> ar2524drv/src/zdusb.c
>
> Recompiled as zd1211REV_B
>
> dmesg for vendor driver:
> udev: starting version 145
>
> _____ ____ _ ____
> |__ / _| _ \ / \ / ___|
> / / | | | | | |/ _ \ \___ \
> / /| |_| | |_| / ___ \ ___) |
> /____\__, |____/_/ \_\____/
> |___/
> zd1211 - version 3.0.0.56
> vendor_id = 0411
> product_id = 00da
> USB 2.0 Host
> Release Ver = 4810
> EEPORM Ver = 4330
> Finsih download Firmware. Ready to reboot
> Finsih download Firmware. Ready to reboot
> Finsih download Firmware. Ready to reboot
> ohci1394 0002:20:0e.0: enabling device (0000 -> 0002)
> zd1211_USB_PACKAGE_READ_REGISTER: warning, restarting INT EP
> zd1211_readl retry OK
> ohci1394: fw-host0: OHCI-1394 1.1 (PCI): IRQ=[40]
> MMIO=[f5000000-f50007ff] Max Packet=[2048] IR/IT contexts=[8/8]
> PA type: 2
> Airoha AL2230S_RF
> Overwrite CR157 = 0x0
> Overwrite CR47 = 0x10019
> zd1205_config: EEP(HWFeature)=0xF7D0
> AllowedChannel = 00013fff
> Region:0
> zd1211_USB_PACKAGE_READ_REGISTER: warning, restarting INT EP
> zd1211_readl retry OK
> usbcore: registered new interface driver zd1211
>
>
> I am able to do iwlist ath0 scanning, a list of acess point appears but
> sometimes this fails.
> iwlist ath0 scanning:
> ath0 Scan completed :
> Cell 01 - Address: 00:21:91:0E:0B:F7
> ESSID:"adminWF10"
> Mode:Master
> Frequency=2.412 GHz (Channel 1)
> Quality=46/100 Signal level=-74 dBm Noise
> level=-96 dBm
> Encryption key:off
> Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
> 12 Mb/s; 24 Mb/s; 36 Mb/s; 9 Mb/s; 18 Mb/s
> 48 Mb/s; 54 Mb/s
> Extra:bcn_int=100
> Cell 02 - Address: 00:1D:0F:D1:4D:D2
> ESSID:"LGAA_P_CENTRAL_WF01"
> Mode:Master
> Frequency=2.437 GHz (Channel 6)
> Quality=43/100 Signal level=-76 dBm Noise
> level=-96 dBm
> Encryption key:off
> Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
> 12 Mb/s; 24 Mb/s; 36 Mb/s; 9 Mb/s; 18 Mb/s
> 48 Mb/s; 54 Mb/s
> Extra:bcn_int=100
> Cell 03 - Address: 00:1B:11:87:A7:0C
> ESSID:"ponto-acesso-mutsuo"
> Mode:Master
> Frequency=2.437 GHz (Channel 6)
> Quality=43/100 Signal level=-76 dBm Noise
> level=-96 dBm
> Encryption key:off
> Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
> 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
> 48 Mb/s; 54 Mb/s
> Extra:bcn_int=100
>
>
> Scan again, it fails and works seemingly in an unknown manner.
> iwlist ath0 scanning
> ath0 Failed to read scan data : Resource temporarily unavailable
>
>
> Some message in dmesg of relevance:
> ...
> zd1211_USB_PACKAGE_READ_REGISTER: warning, restarting INT EP
> zd1211_readl retry OK
> zd1211_USB_PACKAGE_READ_REGISTER: warning, restarting INT EP
> zd1211_readl retry OK
> zd1211_USB_PACKAGE_READ_REGISTER: warning, restarting INT EP
> zd1211_readl retry OK
> zd1211_USB_PACKAGE_READ_REGISTER: warning, restarting INT EP
> zd1211_readl retry OK
> ....(many times over)
>
> and
>
> 1211_readl failed for 5 attempts...Very Serious<3>1211_readl failed for
> 5 attempts...Very Serious<3>1211_readl failed for 5 attempts...Very
> Serious<3>1211_readl failed for 5 attempts...Very Serious<3>1211_readl
> failed for 5 attempts...Very Serious<3>1211_readl failed for 5
> attempts...Very Serious<3>1211_readl failed for 5 attempts...Very
> Serious<3>1211_readl failed for 5 attempts...Very Serious<3>1211_readl
> failed for 5 attempts...Very Serious<3>1211_readl failed for 5
> attempts...Very Serious<3>1211_readl failed for 5 attempts...Very
> Serious<3>1211_readl failed for 5 attempts...Very Serious<3>1211_readl
> failed for 5 attempts...Very Serious<3>1211_readl failed for 5
> attempts...Very Serious<3>1211_readl failed for 5 attempts...Very
> Serious<7>zd1205_notify_disjoin_event
>
> Giving up .... for now.

I found that one of the patches -
0004-forward-port-of-an-old-patch-from-the-internet.patch - is buggy,
and breaks USB 2.0 host... wanna undo that and have another go?
(that's also the one that adds the 'read failed after 5 attempts",
etc).

2009-09-27 20:08:00

by Hin-Tak Leung

[permalink] [raw]
Subject: Re: zd1211rw on ppc (iBook G4)

On Sun, Sep 27, 2009 at 8:14 PM, Leonardo H. Souza Hamada
<[email protected]> wrote:
> Hin-Tak Leung wrote:
>>
>> I found that one of the patches -
>> 0004-forward-port-of-an-old-patch-from-the-internet.patch - is buggy,
>> and breaks USB 2.0 host... wanna undo that and have another go?
>> (that's also the one that adds the 'read failed after 5 attempts",
>> etc).
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
>> the body of a message to [email protected]
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>>
>
> OK,
>
> Undid the 0004-forward-port-of-an-old-patch-from-the-internet.patch patch.
>
> The vendor driver seems to work fine now.
>
> dmesg:
> usb 1-2: new high speed USB device using ehci_hcd and address 3
> usb 1-2: New USB device found, idVendor=0411, idProduct=00da
> usb 1-2: New USB device strings: Mfr=16, Product=32, SerialNumber=0
> usb 1-2: Product: USB2.0 WLAN
> usb 1-2: Manufacturer: Buffalo
> usb 1-2: configuration #1 chosen from 1 choice
>
> _____ ____ _ ____
> |__ / _| _ \ / \ / ___|
> / / | | | | | |/ _ \ \___ \
> / /| |_| | |_| / ___ \ ___) |
> /____\__, |____/_/ \_\____/
> |___/
> ZD1211B - version 3.0.0.56
> vendor_id = 0411
> product_id = 00da
> USB 2.0 Host
> Release Ver = 4810
> EEPORM Ver = 4810
> Finsih download Firmware. Ready to reboot
> PA type: 0
> PHYNEWLayout = 1
> Airoha AL2230S_RF
> OverWrite CR47 = 0x19
> zd1205_config: EEP(HWFeature)=0x110
> AllowedChannel = 00013fff
> Region:73
> usbcore: registered new interface driver zd1211b
> zd1205_notify_disjoin_event
> ADDRCONF(NETDEV_UP): ath0: link is not ready
>
>
>
> lsusb:
> Bus 001 Device 003: ID 0411:00da MelCo., Inc. WLI-U2-KG54L
>
>
> lsmod:
> Module Size Used by
> zd1211b 500924 0
>
>
>
> Thanks,
>
> Leonardo
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>

Thanks for letting me know - I had a better thought at that (or
rather, a big bundle where it came from) - It probably worked around
some bug in 2.22 which has since been fixed. I haven't heard from the
person where this came from why he did what he did, but just as well,
I guess. It served a purpose during the 2.22 period.

2009-08-31 23:11:35

by Gábor Stefanik

[permalink] [raw]
Subject: Re: zd1211rw on ppc (iBook G4)

(Restoring CCs from original message.)

2009/9/1 Hin-Tak Leung <[email protected]>:
> 2009/8/31 G?bor Stefanik <[email protected]>:
>> On Mon, Aug 31, 2009 at 9:35 PM, Hin-Tak Leung<[email protected]> wrote:
>>> On Mon, Aug 31, 2009 at 8:27 PM, Michael Buesch<[email protected]> wrote:
>>>> On Monday 31 August 2009 20:26:22 Hin-Tak Leung wrote:
>>>>> It would appear that the rw driver's ieee80211->mac80211 conversion
>>>>> has broken big- endian platforms, at a first guess.
>>>>
>>>> Last time I tested the device worked fine on my powerbook with zd1211rw/mac80211.
>>>> But that's maybe two or three release cycles in the past.
>>>>
>>>> --
>>>> Greetings, Michael.
>>>>
>>>
>>> The rw ieee80211->mac80211 conversion happens in 2.6.27->26.28 ...
>>> Iguess the question is whether it was 2.6.28 or 2.6.27 you had success
>>> with? That's unfortunately two *and* three cycles in the past,
>>> respectively :-).
>>
>> I seem to remember that the conversion happened between 2.6.24 and
>> 2.6.25 - the 2.6.26 injection patch on patches.aircrack-ng.org is also
>> clearly for the mac80211 version.
>
> Some part persists till 2.6.28 - I was running git diff between
> different tags like this:
>
> git diff v2.6.27:drivers/net/wireless/zd1211rw/
> v2.6.28:drivers/net/wireless/zd1211rw/
> diff --git a/Makefile b/Makefile
> index cc36126..1907eaf 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1,6 +1,6 @@
> ?obj-$(CONFIG_ZD1211RW) += zd1211rw.o
>
> -zd1211rw-objs := zd_chip.o zd_ieee80211.o zd_mac.o \
> +zd1211rw-objs := zd_chip.o zd_mac.o \
> ? ? ? ? ? ? ? ?zd_rf_al2230.o zd_rf_rf2959.o \
> ? ? ? ? ? ? ? ?zd_rf_al7230b.o zd_rf_uw2453.o \
> ? ? ? ? ? ? ? ?zd_rf.o zd_usb.o
> diff --git a/zd_chip.c b/zd_chip.c
> index 0acb5c3..e0ac58b 100644
> --- a/zd_chip.c
> +++ b/zd_chip.c
> @@ -28,7 +28,6 @@
>
> ?#include "zd_def.h"
> ?#include "zd_chip.h"
> -#include "zd_ieee80211.h"
> ?#include "zd_mac.h"
> ?#include "zd_rf.h"
>

AFAIK that was a cleanup from the changeover to mac80211 - originally,
zd_ieee80211 housed the bindings to ieee80211softmac. After the
conversion to mac80211, some mac80211 bindings ended up in zd_mac, the
others in zd_ieee80211. In 2.6.28, the two files were merged.

--
Vista: [V]iruses, [I]ntruders, [S]pyware, [T]rojans and [A]dware. :-)