* Re: [patch] at76_usb wireless driver [not found] ` <20070223221230.GA9965@bogon.ms20.nix> @ 2007-03-03 15:00 ` Guido Guenther 2007-03-03 15:09 ` Johannes Berg 0 siblings, 1 reply; 3+ messages in thread From: Guido Guenther @ 2007-03-03 15:00 UTC (permalink / raw) To: netdev Hi, I'd be glad if someone could review the at76_usb wireless driver, it adds support for the at76c503, at76c505 and at76c505a wireless USB adapters. Since it exceeds the lists size limit, please git-clone http://honk.sigxcpu.org/git/at76c503a.git/ The projects homepage is: http://at76c503a.berlios.de/ The above git tree is functionally equivalent to the CVS version at berlios but removes support for older kernels, older wireless extensions, C99 style comments, commented out code and shifts things around a little for better readability. This is only done to ease reviewing - there are no functional changes over the CVS archive. The driver was tested (and is in pracitical use) on at least i386, amd64 and powerpc. Please note that I'm not the author of the driver, the driver itself lists these copyright holders (but none of them showed up on the mailing list during the last couple of months): Copyright (c) 2002 - 2003 Oliver Kurth Copyright (c) 2004 Joerg Albert <joerg.albert@gmx.de> Copyright (c) 2004 Nick Jones Copyright (c) 2004 Balint Seeber <n0_5p4m_p13453@hotmail.com> Pavel Roskin, Maxim Grechkin and me were committing to CVS recently. Cheers, -- Guido ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [patch] at76_usb wireless driver 2007-03-03 15:00 ` [patch] at76_usb wireless driver Guido Guenther @ 2007-03-03 15:09 ` Johannes Berg [not found] ` <1172934588.4966.46.camel-YfaajirXv214zXjbi5bjpg@public.gmane.org> 0 siblings, 1 reply; 3+ messages in thread From: Johannes Berg @ 2007-03-03 15:09 UTC (permalink / raw) To: Guido Guenther; +Cc: netdev, linux-wireless [-- Attachment #1: Type: text/plain, Size: 1740 bytes --] Pavel should know better and have told you that wireless got it's own list ;) Quoting fully to make linux-wireless aware. I guess we'll want to take out netdev on replies to this. johannes On Sat, 2007-03-03 at 16:00 +0100, Guido Guenther wrote: > Hi, > I'd be glad if someone could review the at76_usb wireless driver, it > adds support for the at76c503, at76c505 and at76c505a wireless USB > adapters. Since it exceeds the lists size limit, please > git-clone http://honk.sigxcpu.org/git/at76c503a.git/ > > The projects homepage is: > http://at76c503a.berlios.de/ > The above git tree is functionally equivalent to the CVS version at > berlios but removes support for older kernels, older wireless > extensions, C99 style comments, commented out code and shifts things > around a little for better readability. This is only done to ease > reviewing - there are no functional changes over the CVS archive. > > The driver was tested (and is in pracitical use) on at least i386, amd64 > and powerpc. > > Please note that I'm not the author of the driver, the driver itself > lists these copyright holders (but none of them showed up on the > mailing list during the last couple of months): > > Copyright (c) 2002 - 2003 Oliver Kurth > Copyright (c) 2004 Joerg Albert <joerg.albert@gmx.de> > Copyright (c) 2004 Nick Jones > Copyright (c) 2004 Balint Seeber <n0_5p4m_p13453@hotmail.com> > > Pavel Roskin, Maxim Grechkin and me were committing to CVS recently. > Cheers, > -- Guido > > - > To unsubscribe from this list: send the line "unsubscribe netdev" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 190 bytes --] ^ permalink raw reply [flat|nested] 3+ messages in thread
[parent not found: <1172934588.4966.46.camel-YfaajirXv214zXjbi5bjpg@public.gmane.org>]
* Re: [patch] at76_usb wireless driver [not found] ` <1172934588.4966.46.camel-YfaajirXv214zXjbi5bjpg@public.gmane.org> @ 2007-03-03 16:23 ` Johannes Berg 0 siblings, 0 replies; 3+ messages in thread From: Johannes Berg @ 2007-03-03 16:23 UTC (permalink / raw) To: Guido Guenther; +Cc: netdev-u79uwXL29TY76Z2rM5mHXA, linux-wireless [-- Attachment #1: Type: text/plain, Size: 3242 bytes --] Looks pretty good, a few more comments. KEVENT_* constants and functions are really really confusing when the "kevent" subsystem is being discussed on netdev all the time. They're also quite meaningless, please rename them to something like AT76_DEVEVENT_* or whatever. While at that, the kevent() function really could use splitting up into sub-functions, it's a pretty large mess. The same about constant names goes for PM_* constants since linux/pm.h defines a whole bunch of PM_* constants too (I initially thought you were using those and was really confused what the driver does!) Having a whole bunch of module parameters that only set initial settings for things you later configure with iwconfig seems pretty useless but if you really think that they're absolutely required I don't care too much. PRIV_IOCTL_SET_MONITOR_MODE is wrong as far as I can tell, there's "iwconfig ... mode monitor" which you should use instead. (Btw, why are the priv ioctls spaced so strangely??) There doesn't seem to be a need to include rtnetlink.h, what made you think you'd need rtnl_lock()? "putting this inside rtnl_lock() - rtnl_unlock() hangs modprobe" is pretty obvious -- register_netdev does rtnl_lock()! And don't use unregister_netdevice(), use unregister_netdev(). Your init_new_device() function can return an error but those errors are not always checked, maybe a printk would be appropriate. Also, generally, subfunctions are allowed to return errors directly, i.e. instead of returning -1 return -ENODEV from there and just hand it up from the caller. at76c503_do_probe could use splitting into two functions, the two huge parts of the if, if only to unindent the whole code a bit and get it to adhere to 80 chars/line instead of 99. "Use our own dbg macro" but mabye use dev_dbg? Same for err() (which I didn't even know existed..) how about dev_err()? static u8 snapsig/rfc1042sig/bc_addr/off_addr/hw_rates/channel_frequency etc etc etc don't belong into a header file. Some other (mostly style) issues: * kernel code prefers a space before the brace in "struct at76c503_command{" et al. * both your header and code files contain lots of trailing whitespace * kernel code prefers no space between function names and the opening parenthesis * use compare_ether_addr() instead of memcmp (look for ETH_ALEN, lots of places) * all the PROC ===== stuff looks pretty strange to my eyes but hey that's just me I guess :) * why does at76c503_get_fw_info take such a huge number of parameters? Couldn't you pass in a struct at76c503 * and have that filled? * struct reg_domain should be tab-indented. * don't use typedefs for structs * attribute packed on members of a struct is pretty weird * the various frame definitions like struct ieee802_11_beacon_data are useless, the same stuff is in struct ieee80211_mgmt (at least on wireless dev kernel, that might not be true on other kernels?) * hex2str wants proper indentation * get_hw_config has weird indentation * wait_completion sounds far too generic (wait_for_completion in completion.h!) Hey, I need to go but that probably gives you a lot to review... johannes [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 190 bytes --] ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2007-03-03 16:23 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20070110145724.GA4171@bogon.ms20.nix>
[not found] ` <20070223221230.GA9965@bogon.ms20.nix>
2007-03-03 15:00 ` [patch] at76_usb wireless driver Guido Guenther
2007-03-03 15:09 ` Johannes Berg
[not found] ` <1172934588.4966.46.camel-YfaajirXv214zXjbi5bjpg@public.gmane.org>
2007-03-03 16:23 ` Johannes Berg
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox