aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/uwb
Commit message (Collapse)AuthorAge
* Merge branch 'for-upstream' of ↵Linus Torvalds2009-09-17
|\ | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb * 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb: uwb: avoid radio controller reset loops uwb: stop uwbd thread if rc->start() fails uwb: handle radio controller events with out-of-range IDs correctly
| * uwb: avoid radio controller reset loopsDavid Vrabel2009-08-26
| | | | | | | | | | | | | | | | | | | | | | If a radio controller reset attempt occurs while a probe() or remove() is in progress it fails and is retried endlessly, potentially preventing the probe() or remove() from completing. If a reset fails, sleep for a bit before retrying the reset. This allows the probe()/remove() to complete. Signed-off-by: David Vrabel <david.vrabel@csr.com>
| * uwb: stop uwbd thread if rc->start() failsDavid Vrabel2009-08-25
| | | | | | | | | | | | | | This fixes an oops when uwbd thread continues running after a failed radio controller start. Signed-off-by: David Vrabel <david.vrabel@csr.com>
| * uwb: handle radio controller events with out-of-range IDs correctlyDavid Vrabel2009-08-25
| | | | | | | | | | | | | | | | If a radio controller event has an ID that's just out of range don't read beyond the end of uwbd's event arrays. Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | driver model: constify attribute groupsDavid Brownell2009-09-15
| | | | | | | | | | | | | | | | | | | | Let attribute group vectors be declared "const". We'd like to let most attribute metadata live in read-only sections... this is a start. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* | uwb: convert to netdev_tx_tStephen Hemminger2009-09-01
|/ | | | | Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* uwb: allow WLP to be used with IPv6.Frank Leipold2009-06-01
| | | | | | | | Ethernet multicast addresses are supported by mapping them to broadcast WLP frames. These are frequently used in IPv6 traffic. Signed-off-by: Frank Leipold <frank.leipold@eads.net> Signed-off-by: David Vrabel <david.vrabel@csr.com>
* uwb: event_size should be signedRoel Kluin2009-06-01
| | | | | | | | | | | event_size should be ssize_t to notice when hwarc_get_event_size() returns -ENOSPC. Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Cc: David Vrabel <david.vrabel@csr.com> Cc: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David Vrabel <david.vrabel@csr.com>
* dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32)Yang Hongyang2009-04-07
| | | | | | | | Replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) Signed-off-by: Yang Hongyang<yanghy@cn.fujitsu.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* dma-mapping: replace all DMA_64BIT_MASK macro with DMA_BIT_MASK(64)Yang Hongyang2009-04-07
| | | | | | | | Replace all DMA_64BIT_MASK macro with DMA_BIT_MASK(64) Signed-off-by: Yang Hongyang<yanghy@cn.fujitsu.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* trivial: fix typos/grammar errors in Kconfig textsMatt LaPlante2009-03-30
| | | | | | Signed-off-by: Matt LaPlante <kernel1@cyberdogtech.com> Acked-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* uwb: lock rc->rsvs_lock with spin_lock_bh()David Vrabel2009-01-23
| | | | | | rc->rsvs_lock may be taken in a timer so lock it with spin_lock_bh(). Signed-off-by: David Vrabel <david.vrabel@csr.com>
* Merge branch 'master' of ↵David Vrabel2009-01-22
|\ | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into for-upstream
| * Merge branch 'master' of ↵David S. Miller2009-01-08
| |\ | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6
| | * trivial: Fix misspelling of "firmware" in usb.cNick Andrew2009-01-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fix misspelling of "firmware" in usb.c It's spelled "firmware". Signed-off-by: Nick Andrew <nick@nick-andrew.net> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | uwb: convert devices to net_device_opsStephen Hemminger2009-01-07
| |/ | | | | | | | | | | Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Acked-by: David Vrabel <david.vrabel@csr.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | uwb: remove unused #include <version.h>'sHuang Weiyi2009-01-07
| | | | | | | | | | | | | | | | Remove unused #include <version.h>'s in file(s) below, drivers/uwb/allocator.c Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: safely remove all reservationsDavid Vrabel2009-01-06
|/ | | | | | | | When removing all reservations during shutdown, terminate them first and then wait for any pending timeout work to complete. This prevents the timeout work from running after the reservation has been freed. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* Merge branch 'master' of ↵David Vrabel2009-01-02
|\ | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into for-upstream Conflicts: drivers/uwb/wlp/eda.c
| * uwb: use the %pM formatting specifier in eda.cHarvey Harrison2008-10-29
| | | | | | | | | | Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | uwb: remove beacon cache entry after calling uwb_notify()Stefano Panella2008-12-23
| | | | | | | | | | | | | | | | Removing the beacon cache entry from a uwb_dev can cause an oops if the bce is released before the call to uwb_notify(). Signed-off-by: Stefano Panella <stefano.panella@csr.com> Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: remove unused include/linux/uwb/debug.hDavid Vrabel2008-12-22
| | | | | | | | Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: use print_hex_dump()David Vrabel2008-12-22
| | | | | | | | | | | | Use print_hex_dump() instead of the home-grown dump_bytes(). Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: use dev_dbg() for debug messagesDavid Vrabel2008-12-22
| | | | | | | | | | | | | | Instead of the home-grown d_fnstart(), d_fnend() and d_printf() macros, use dev_dbg() or remove the message entirely. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: fix memory leak in uwb_rc_notif()David Vrabel2008-12-12
| | | | | | | | | | | | | | Don't leak memory in uwb_rc_notif() if certain non-standard events are received. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: fix oops when terminating an already terminated reservationDavid Vrabel2008-12-12
| | | | | | | | | | | | | | Calling uwb_rsv_terminate() on a reservation already in UWB_RSV_STATE_NONE should do nothing. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: improved MAS allocator and reservation conflict handlingStefano Panella2008-12-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Greatly enhance the MAS allocator: - Handle row and column reservations. - Permit all the available MAS to be allocated. - Follows the WiMedia rules on MAS selection. Take appropriate action when reservation conflicts are detected. - Correctly identify which reservation wins the conflict. - Protect alien BP reservations. - If an owned reservation loses, resize/move it. - Follow the backoff procedure before requesting additional MAS. When reservations are terminated, move the remaining reservations (if necessary) so they keep following the MAS allocation rules. Signed-off-by: Stefano Panella <stefano.panella@csr.com> Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | wusb: add debug files for ASL, PZL and DI to the whci-hcd driverDavid Vrabel2008-11-26
| | | | | | | | | | | | | | Add asl, pzl and di debugfs files to uwb/uwbN/wusbhc for WHCI host controller. These dump the current ASL, PZL and DI buffer. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: fix oops in debug PAL's reservation callbackDavid Vrabel2008-11-26
| | | | | | | | | | | | Initialize pal_priv for reservations created by the debug PAL. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: clean up whci_wait_for() timeout error messageDavid Vrabel2008-11-25
| | | | | | | | | | | | | | All callers of whci_wait_for() should get consistant error message if a timeout occurs. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: remove unused beacon group join/leave eventsDavid Vrabel2008-11-19
| | | | | | | | | | | | | | The UWB_NOTIF_BG_JOIN/UWB_NOTIF_BG_LEAVE events have been superceeded by the channel_changed callback in struct uwb_pal. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | wlp: start/stop radio on network interface up/downDavid Vrabel2008-11-19
| | | | | | | | Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: add basic radio managerDavid Vrabel2008-11-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The UWB radio manager coordinates the use of the radio between the PALs that may be using it. PALs request use of the radio with uwb_radio_start() and the radio manager will start beaconing if its not already doing so. When the last PAL has called uwb_radio_stop() beaconing will be stopped. In the future, the radio manager will have a more sophisticated channel selection algorithm, probably following the Channel Selection Policy from the WiMedia Alliance when it is finalized. For now, channel 9 (BG1, TFC1) is selected. The user may override the channel selected by the radio manager and may force the radio to stop beaconing. The WUSB Host Controller PAL makes use of this and there are two new debug PAL commands that can be used for testing. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: add pal parameter to new reservation callbackDavid Vrabel2008-11-17
| | | | | | | | | | | | | | The pal parameter allows PALs to retrieve their PAL-specific data structure. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: fix races between events and neh timersDavid Vrabel2008-11-07
| | | | | | | | | | | | | | | | | | | | | | Always use del_timer_sync() before freeing nehs. Destroy all nehs after stopping the radio controller and before cleaning up the reservation manager. Handle the timer running after an event has removed the neh. This fixes various oopses that may occur if a radio controller is removed while a neh timer is still active. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: don't unbind the radio controller driver when resettingDavid Vrabel2008-11-07
| | | | | | | | | | | | | | | | Use pre_reset and post_reset methods to avoid unbinding the radio controller driver after a uwb_rc_reset_all() call. This avoids a deadlock in uwb_rc_rm() when waiting for the uwb event thread to stop. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: per-radio controller event thread and beacon cacheStefano Panella2008-11-04
| | | | | | | | | | | | | | | | | | | | | | | | Use an event thread per-radio controller so processing events from one radio controller doesn't delay another. A radio controller shouldn't have information on devices seen by a different radio controller (they may be on different channels) so make the beacon cache per-radio controller. Signed-off-by: Stefano Panella <stefano.panella@csr.com> Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: add commands to add/remove IEs to the debug interfaceStefano Panella2008-11-04
| | | | | | | | | | | | | | | | Add the commands UWB_DBG_CMD_IE_ADD and UWB_DBG_CMD_IE_RM to the debug interface and make them call uwb_rc_ie_add() and uwb_rc_ie_rm(). Signed-off-by: Stefano Panella <stefano.panella@csr.com> Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: infrastructure for handling Relinquish Request IEsStefano Panella2008-11-04
| | | | | | | | | | | | | | | | The structures and event handler needed to handle Relinish Request IEs received from neighbors. Nothing is done with these IEs yet. Signed-off-by: Stefano Panella <stefano.panella@csr.com> Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: struct device - replace bus_id with dev_name(), dev_set_name()Kay Sievers2008-10-31
| | | | | | | | | | | | | | Cc: David Vrabel <david.vrabel@csr.com> Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-Off-By: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: remove unused #include <version.h>Huang Weiyi2008-10-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The file(s) below do not use LINUX_VERSION_CODE nor KERNEL_VERSION. drivers/uwb/drp-ie.c drivers/uwb/hwa-rc.c drivers/uwb/i1480/dfu/usb.c drivers/uwb/i1480/i1480u-wlp/lc.c drivers/uwb/i1480/i1480u-wlp/sysfs.c drivers/uwb/rsv.c drivers/uwb/whc-rc.c This patch removes the said #include <version.h>. Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: order IEs by element IDDavid Vrabel2008-10-28
| | | | | | | | | | | | | | | | | | | | | | | | | | ECMA-368 requires that IEs in a beacon must be sorted by element ID. Most hardware uses the ordering in the Set IE URC command so get the ordering right on the host. Also refactor the IE management code: - use uwb_ie_next() instead of uwb_ie_for_each(). - remove unnecessary functions. - API is now only uwb_rc_ie_add() and uwb_rc_ie_rm(). Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: reference count reservationsDavid Vrabel2008-10-28
| | | | | | | | | | | | | | | | | | | | Reference counting the struct uwb_rsv's is safer and easier to get right than the transferring ownership of the structures from the PAL to reservation manager. This fixes an oops in the debug PAL after a reservation timed out. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* | uwb: target reservations shouldn't get streamsDavid Vrabel2008-10-28
|/ | | | | | | The reservation owner should decide the stream index to use based on what reservations it's created. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* uwb: wrong sizeof argument in mac address compareFrank Leipold2008-10-20
| | | | | | | | | | | In the __uwb_beca_find_bymac function the sizeof returns the length of a pointer and not the data it is referring to. Hence only the first 4 bytes were compared, not the entire 6 bytes MAC address. Now the sizeof takes struct uwb_mac_addr as argument. Signed-off-by: Frank Leipold <frank.leipold@eads.net> Signed-off-by: David Vrabel <david.vrabel@csr.com>
* uwb: don't use printk_ratelimit() so oftenDavid Vrabel2008-10-16
| | | | | | | | | Avoid using printk_ratelimit() in many places because: - many were error messages reporting broken hardware (it's useful to get all of these). - the message itself wasn't useful so the message has been removed. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* uwb: use kcalloc where appropriateDavid Vrabel2008-10-15
| | | | Signed-off-by: David Vrabel <david.vrabel@csr.com>
* uwb: use time_after() when purging stale beaconsDavid Vrabel2008-10-15
| | | | Signed-off-by: David Vrabel <david.vrabel@csr.com>
* uwb: depend on EXPERIMENTALDavid Vrabel2008-09-17
| | | | | | | The UWB stack has some sysfs APIs that will change thus it's best marked as EXPERIMENTAL until these APIs are finalized. Signed-off-by: David Vrabel <david.vrabel@csr.com>
* uwb: add symlinks in sysfs between radio controllers and PALsDavid Vrabel2008-09-17
| | | | | | | Add a facility for PALs to have symlinks to their radio controller (and vice-versa) and make WUSB host controllers use this. Signed-off-by: David Vrabel <david.vrabel@csr.com>