Subject: broadcom wireless driver

From: Waldemar Brodkorb <[email-masked]>
Date: Sun, 24 Apr 2005 13:34:11 +0200

Hi MIPS-Hackers,

I have a question regarding the binary only driver from linksys for
the wireless lan chip Broadcom BCM4320. (Linksys WRT54G router)

Linksys source code is based on linux kernel 2.4.20. Some time ago I
ported the stuff over to 2.4.29, which actually works, but has some bugs.

The binary driver wl.o use two structures from the kernel source. 
include/linux/skbuff.h: struct sk_buff{}
include/linux/netdevice.h: struct net_device{}

Both have changed his fields from 2.4.20 to 2.4.30.

Last time i backported both changes and changed some stuff in
net/sched to handle the changes. Now I am searching for a better
solution, because I think I broke traffic shaping.

I can move the new field "struct net_device       *real_dev" in
include/linux/skbuff.h to the end of the defintion and wl.o is happy
with the change. 

But in include/linux/netdevice.h there are two changes, one new
field "struct ethtool_ops *ethtool_ops;" and a type change:
"struct Qdisc            *qdisc_list;" changed to 
"struct list_head        qdisc_list;". 

What is the best way to handle this change, so that wl.o, the
wireless driver and the rest of the kernel is happy?

Thanks for any advice.

bye
    Waldemar