I have been working on having functional WDS using Atheros chipset on openwrt backfire.  I have look into the forums and all tutorials (that I have been able to find) are incomplete on some way or the other.

The first part in creating the link, is making the physical link to work, as pointed out in the excellent tutorial on: http://linuxwireless.org/en/users/Docum … a_WDS_peer
But, summarizing it:
1. You create an independent interface for the wds link (that has to be on the same channel as all the other interfaces on that radio)* by issuing the command:
    iw phy phy0 interface add <wdsinterfacename> type wds
2. Then you assign all the peers you need, i.e. the other radios that will be connecting to this specific interface (the same has to be done on the corresponding remote routers)* by issuing the command:
    iw dev <wdsinterfacename> set peer <macaddress of remote radio>

As I stated before, all the aforementioned steps are in the previous link, nevertheless, I have found many people in the forums puzzled because even with that, they cannot get a ping, and here is my contribution:

3. Although the interfaces are already created, they are still not initialized as part of the network so the next step is either assigning them an IP address by issuing the corresponding ifconfig command:
    ifconfig <wdsinterfacename> <ipaddress> <netmask>
or joining it to the corresponding bridge by issuing the command:
    brctl addif <bridgename> <wdsinterface>
where <bridgename> is the name of a previously defined bridge in openwrt, as for example the default br-lan, therefore, the interface will inherit the bridge ip address.
4. If in the previous step you added the interface to the bridge, you need to enable the spanning tree protoco by issuing the command:
    brctl stp <bridgename> on
5. And finally, enable the interface with:
    ifconfig <wdsinterfacename> up

Footnote:
*These steps may seem trivial, nevertheless, this is my first post in this forum so I apologize for any comment that seems to be out of place.  I will, of course, appreciate any feedback on this post.