[Prism54-devel] Re: Strange problem with wds in prism54

Jean-Baptiste Note jean-baptiste.note at wanadoo.fr
Thu Apr 21 14:33:14 UTC 2005


Hello Sergio,

I'm starting to wonder... Is there really WDS going on ? For as far as i
can see, well, the problem on the tx path stems from the 6-byte header
we put at the beginning :

> [00][02][6f][22][9a][d7][01][80][c2][00][00][00][00][02][6f][21]

The txing device was sent by the driver a packet starting as :

[00][02][6f][22][9a][d7][01][80][c2][00][00][00][00][02][6f][21]

Which was interpreted "normally", ie, two MAC adresses, then immediately
a 802.11 packet. This leads to 00 02 being it's size, so it's been
truncated (in fact, it was intended to be the beginning of the second
mac address).


> [00][02][6f][21][1a][28][ff][ff][ff][ff][ff][ff][00][02][6f][22]

Same here.

> wds_find_device
> wds_find_device: WDS from mac 00-02-6f-21-1a-28 not in current config,
> returning NULL
> [00][02][6f][21][1a][28][ff][ff][ff][ff][ff][ff][00][04][e2][80][7d][42]
> wds_net_send_packet

Very same here : but then the MAC address starts with 00 04, so we have
a somewhat bigger packet.

> Let me know what to do next,

1/ Get rid of the wds-specific code in file islpci_eth.c, function :

int
islpci_eth_transmit(struct sk_buff *skb, struct net_device *ndev)

This is vague... but every time you see a decision on wds_init (which is
seems to be a global variable, or am i dreaming ? :) ), force the code
to make as though wds_init was zero. Maybe the proper way to do this is
to replace wds_init in the function by local_wds_init and set
local_wds_init to zero. (so you'll be able to switch back to original
behaviour with local_wds_init = wds_init).

2/ Make absolutely sure WDS is functionning. There is the risk that
enabling WDS at the device level does nothing ; the tx/rx interface does
not seem to change, for instance. But maybe one or your example already
makes sure of this (for instance, if prism54 1/ and hostpad device are
both access points).

Moreover, i don't know how the device could do proper WDS without the
additionnal information of which link to send the frames to... strange.

3/ Test with other firmwares. Maybe WDS implementation is
firmware-dependent

Luis, where did you get the information about WDS programming of the
device ? -- maybe we should look there.

JB

-- 
Jean-Baptiste Note
+33 (0)6 83 03 42 38
jean-baptiste.note at wanadoo.fr


More information about the Prism54-devel mailing list