aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* [PATCH] Use consistent timeout in usb_control_msg()Pavel Roskin2007-06-16
| | | | | | | | The timeout argument is in microseconds, not in jiffies. Use USB_CTRL_GET_TIMEOUT in all usb_control_msg() calls. It's 5 seconds, and should be enough even for the slowest devices. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Remove unneeded parentheses and operators when accessing "packet" fieldPavel Roskin2007-06-16
| | | | | | Use AT76_TX_HDRLEN in one place where it wasn't used. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Always use cpu_to_le16 to populate priv->mib_buf.data with 16-bit dataPavel Roskin2007-06-16
| | | | Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Eliminate macros containing offsetof for MIB structuresPavel Roskin2007-06-16
| | | | | | | | | They make it harder to check correctness of MIB requests. For instance, STATION_ID_OFFSET doesn't show that it's an offset in struct mib_mac_mgmt, so it's not obvious if priv->mib_buf.type is set to MIB_MAC_MGMT correctly. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Add full support for "auto" preamblePavel Roskin2007-06-16
| | | | | | | | Don't assume that there are just two settings, "long" and "short". Provide textual description in the output of "iwpriv get_preamble" in the same format as in ipw2100 and ipw2200. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Implement "get" counterparts for iwpriv callsPavel Roskin2007-06-16
| | | | | | | | | | Rename all iwpriv calls to start with "get" or "set" for consistency. Eliminate gap in the ioctl numbers. Rename "intl_roaming" to "intl_scan", because it's really affects scanning only. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Use usb_make_path() for bus info in ethtool outputPavel Roskin2007-06-14
| | | | | | | usb_make_path() is used to construct stable device path. This is used in other USB based network drivers. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Change SET_NET_DEVICE to use interface->devPavel Roskin2007-06-14
| | | | | | | This way, /sys/class/net/ethX/device/driver points to at76_usb driver rather than usb driver. This is consistent with other network drivers. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Improve info messages, avoid printing full pathPavel Roskin2007-06-14
| | | | | | | | | | | | | Never use __FILE__, as it prints full path to the driver, which is rarely needed. Use DRIVER_NAME instead. Replace all occurrences of info() with printk() calls. Ensure that the messages are properly formatted and use the netdevice name if possible. Print MAC address, firmware version and regulatory domain after the device is registered, so we can provide the device name. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Save results of usb_sndbulkpipe() and usb_rcvbulkpipe()Pavel Roskin2007-06-14
| | | | | | | Calculate the pipe numbers on startup and keep them in at76_priv instead of keeping the endpoint numbers. Pipe numbers don't change. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Run at76_usb.c throut LindentPavel Roskin2007-06-14
| | | | | | Intervene in some places to make the result readable Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Simplify capability setting in (re)accociation requestsPavel Roskin2007-06-14
| | | | | | Avoid using two tertiary operators in one expression. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Convert wireless handler initialization to use a macroPavel Roskin2007-06-14
| | | | | | | This avoids extra long lines and makes the code survive Lindent without getting ugly. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Don't use double newline to separate functionsPavel Roskin2007-06-14
| | | | | | Lindent converts them to single newlines Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Fix more instances of bad formattingPavel Roskin2007-06-14
| | | | Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Simplify dumping hex dataPavel Roskin2007-06-14
| | | | | | | | | | | | | | | Use rotating buffer pool in mac2str() and hex2str(). This makes it unnecessary to allocate any buffers for either function, and also allows to use mac2str() more than once in the same expression. Move mac2str() and hex2str() closer together. Replace hex2str() with mac2str() where appropriate. For other hex2str() calls, always use "-" separator to improve readability. Check buffer length in hex2str(). Reformat some expressions along the way. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Add compat.h to the source file list in MakefilePavel Roskin2007-06-14
| | | | Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Put copyright into compat.hPavel Roskin2007-06-14
| | | | Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Provide compatibility for older kernels in a separate filePavel Roskin2007-06-14
| | | | | | | | | | | | Remove all Linux 2.6.21 compatibility from the driver - it shouldn't be there for kernel submission. Move all compatibility code to a separate file compat.h. Include it forcedly with the "-include" option. Add a makefile option to disable config.h inclusion. Provide compatibility as far back as Linux 2.6.19 - it's not really hard once the infrastructure is in place. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Remove module parameters for the settings controlled by iwprivPavel Roskin2007-06-14
| | | | | | Module parameters are not well suited for device-specific settings. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Don't use workqueue to reschedule IBSS creationPavel Roskin2007-06-14
| | | | | | | Scheduling is done in process context, so it can be avoided. Merge at76_work_start_ibss() into at76_start_ibss(). Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Don't keep priv->interface, use USB interface provided in at76_probe()Pavel Roskin2007-06-09
| | | | | | This reduces driver's dependency on USB internals. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Decouple networking from firmware downloadPavel Roskin2007-06-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move all firmware related data from struct at76_priv to struct fwentry. Move struct fwentry to the header file. Share the firmware data between devices. Never load firmware version or anything else into firmwares[], as one broken device can mess it for others. Use temporary structures instead. Change at76_load_internal_fw() and at76_load_external_fw() not to require struct at76_priv, which is allocated as part of the network device. at76_disconnect() should check if priv is allocated. Don't use priv->istate to track the firmware loading, as it's done in a predictable consecutive manner now. No state machine is needed at this point. There should be no priv at all before the firmware is loaded. Until the device is fully initialized, priv->istate should be INIT. Don't use mutexes during firmware download for the same reason. In fact, they were used incorrectly since priv is not the same during internal and external firmware download. Parse firmware immediately after loading in a new function at76_load_firmware() replacing at76_parse_fw() and parts of at76_probe(). Don't access udev before usb_get_dev() is called and be careful to call usb_put_dev() for all errors. Improve error handling and diagnostics in the affected code. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Fully separate scanning and monitoringPavel Roskin2007-06-05
| | | | | | | | | | | Don't use management timer in monitor mode, it's not needed. All that's needed is to read the status from CMD_SCAN. Remove monitor mode support from at76_handle_mgmt_timeout_scan(), reorganize the logic to reduce indentation. Split at76_start_monitor() from at76_start_scan(). Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Remove at76_ieee80211_fixup(), it's not usedPavel Roskin2007-06-05
| | | | | | | | Perhaps it was intended for some kind of "fixed up" monitor mode, but the code has no chance to be executed since the monitor mode consumes the packets before this point. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Align all labels at position 6, as Lindent would doPavel Roskin2007-06-05
| | | | Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Run unexpand on at76_usb.c to convert spaces to tabs when possiblePavel Roskin2007-06-05
| | | | | | | Manually adjust some comments, remove excessive newlines inside functions. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Run at76_usb.h through LindentPavel Roskin2007-06-05
| | | | Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Call at76_set_monitor_mode() from at76_startup_device()Pavel Roskin2007-06-05
| | | | | | | | | at76_set_monitor_mode() is always called after at76_startup_device(), and other at76_set functions are called from at76_startup_device() directly. Move at76_set_monitor_mode() closer to the other at76_set functions. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Remove support for channel scanning in monitor modePavel Roskin2007-06-05
| | | | | | | | This should be implemented by the userspace. No other Linux driver does that. The expected behavior is that the driver stays on the same channel while in monitor mode. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Don't document endianess in comments, it's documented by the typePavel Roskin2007-06-05
| | | | | | While at that, improve the affected comments. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Rename request structures to make them distinct from functionsPavel Roskin2007-06-05
| | | | | | | at76_start_scan was both a function and a structure. Use "req" in the structure names to indicate that they are requests. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Merge at76_handle_mgmt_timeout() and at76_work_mgmt_timeout()Pavel Roskin2007-06-05
| | | | | | The later was just a trivial wrapper. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Failure in init shouldn't call at76_delete_device(), it's done laterPavel Roskin2007-06-03
| | | | Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] at76_delete_device() already calls usb_put_dev(), don't do it againPavel Roskin2007-06-03
| | | | | | | Now the driver doesn't crash the kernel if the firmware is present but invalid. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Use schedule_timeout_interruptible()Pavel Roskin2007-06-03
| | | | | | It's more readable than using two statements. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Delete all timers on disconnect to be safePavel Roskin2007-06-03
| | | | Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Internal firmware download should just sleep without any timersPavel Roskin2007-06-03
| | | | | | | Timers are justified if they are scheduled in the interrupt context or if they are modified. Neither is the case. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Don't ignore errors during firmware downloadPavel Roskin2007-06-03
| | | | Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Don't reschedule firmware loadingPavel Roskin2007-06-03
| | | | | | | | | at76_probe() is run in the process context and doesn't need to delay the firmware download. Rescheduling doesn't guarantee the execution order, so it's better to make the order predictable. It also makes it possible to handle errors in the firmware download. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Release priv->mtx when registering network devicePavel Roskin2007-06-03
| | | | | | | | | | | | Not doing so causes circular mutex dependency, which is detected by the kernel lock validation code The driver's mutex should only protect hardware access and driver's structures, and should not be held when dealing with higher layers of the kernel. The locking and the initialization may need a serious overhaul, but this little change is a step in the right direction. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] op_mode should be int, negative values are valid and mean an errorPavel Roskin2007-06-03
| | | | | | We should not treat negative errno like positive valid modes. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Remove another unneeded castPavel Roskin2007-06-03
| | | | Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Rename tasklet to rx_tasklet, the former is too genericPavel Roskin2007-06-03
| | | | Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Update for the forthcoming Linux 2.6.22 skb APIPavel Roskin2007-05-13
| | | | | | | Keep 2.6.21 compatibility for now. Use SKB_WITH_OVERHEAD as an indicator of the new API, since the kernel is not called 2.6.22 yet. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Replace semaphores with mutexesPavel Roskin2007-05-02
| | | | | | Semaphores are overkill for simple locking. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Call private data (at76_priv) "priv", not "dev", the later is ambiguousPavel Roskin2007-05-02
| | | | Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Never call net_device "dev", call it "netdev" for readabilityPavel Roskin2007-05-02
| | | | Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Reorder the functions to avoid most forward declarationsPavel Roskin2007-05-02
| | | | | | | Always use two newlines between functions. Re-format some function declatrations. Signed-off-by: Pavel Roskin <proski@gnu.org>
* [PATCH] Rename at76_get_fw_info() to at76_parse_fw(), fully rewritePavel Roskin2007-05-02
| | | | | | | | | | | | Use a structure to describe the firmware header. Don't pass any arguments fpr output, just pass the pointer to the private data. Move some debugging output there to avoid code duplication. Parse firmware even if it doesn't need to be loaded. Keep firmware version information in the private data. It's still re-read from the card, but now we have a valid version earlier. Signed-off-by: Pavel Roskin <proski@gnu.org>