summaryrefslogtreecommitdiff
path: root/drivers/uwb
AgeCommit message (Collapse)AuthorFilesLines
2009-09-17Merge branch 'for-upstream' of ↵Linus Torvalds6-18/+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
2009-09-15driver model: constify attribute groupsDavid Brownell1-1/+1
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>
2009-09-01uwb: convert to netdev_tx_tStephen Hemminger2-2/+4
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-26uwb: avoid radio controller reset loopsDavid Vrabel4-15/+14
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>
2009-08-25uwb: stop uwbd thread if rc->start() failsDavid Vrabel1-1/+1
This fixes an oops when uwbd thread continues running after a failed radio controller start. Signed-off-by: David Vrabel <david.vrabel@csr.com>
2009-08-25uwb: handle radio controller events with out-of-range IDs correctlyDavid Vrabel1-2/+2
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>
2009-06-01uwb: allow WLP to be used with IPv6.Frank Leipold1-1/+1
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>
2009-06-01uwb: event_size should be signedRoel Kluin1-1/+1
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>
2009-04-07dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32)Yang Hongyang1-2/+2
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>
2009-04-07dma-mapping: replace all DMA_64BIT_MASK macro with DMA_BIT_MASK(64)Yang Hongyang1-2/+2
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>
2009-03-30trivial: fix typos/grammar errors in Kconfig textsMatt LaPlante1-2/+2
Signed-off-by: Matt LaPlante <kernel1@cyberdogtech.com> Acked-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
2009-01-23uwb: lock rc->rsvs_lock with spin_lock_bh()David Vrabel2-4/+4
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>
2009-01-22Merge branch 'master' of ↵David Vrabel6-27/+17
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into for-upstream
2009-01-08Merge branch 'master' of ↵David S. Miller1-1/+1
master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6
2009-01-08uwb: convert devices to net_device_opsStephen Hemminger5-26/+16
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>
2009-01-07uwb: remove unused #include <version.h>'sHuang Weiyi1-1/+0
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>
2009-01-06uwb: safely remove all reservationsDavid Vrabel1-4/+13
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>
2009-01-06trivial: Fix misspelling of "firmware" in usb.cNick Andrew1-1/+1
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>
2009-01-02Merge branch 'master' of ↵David Vrabel1-9/+3
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into for-upstream Conflicts: drivers/uwb/wlp/eda.c
2008-12-23uwb: remove beacon cache entry after calling uwb_notify()Stefano Panella2-2/+2
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>
2008-12-22uwb: remove unused include/linux/uwb/debug.hDavid Vrabel5-5/+5
Signed-off-by: David Vrabel <david.vrabel@csr.com>
2008-12-22uwb: use print_hex_dump()David Vrabel1-20/+1
Use print_hex_dump() instead of the home-grown dump_bytes(). Signed-off-by: David Vrabel <david.vrabel@csr.com>
2008-12-22uwb: use dev_dbg() for debug messagesDavid Vrabel20-691/+117
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>
2008-12-12uwb: fix memory leak in uwb_rc_notif()David Vrabel1-18/+1
Don't leak memory in uwb_rc_notif() if certain non-standard events are received. Signed-off-by: David Vrabel <david.vrabel@csr.com>
2008-12-12uwb: fix oops when terminating an already terminated reservationDavid Vrabel1-1/+2
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>
2008-12-12uwb: improved MAS allocator and reservation conflict handlingStefano Panella8-316/+1527
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>
2008-11-26wusb: add debug files for ASL, PZL and DI to the whci-hcd driverDavid Vrabel3-2/+19
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>
2008-11-26uwb: fix oops in debug PAL's reservation callbackDavid Vrabel1-1/+1
Initialize pal_priv for reservations created by the debug PAL. Signed-off-by: David Vrabel <david.vrabel@csr.com>
2008-11-25uwb: clean up whci_wait_for() timeout error messageDavid Vrabel2-32/+8
All callers of whci_wait_for() should get consistant error message if a timeout occurs. Signed-off-by: David Vrabel <david.vrabel@csr.com>
2008-11-19uwb: remove unused beacon group join/leave eventsDavid Vrabel1-16/+1
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>
2008-11-19wlp: start/stop radio on network interface up/downDavid Vrabel4-45/+25
Signed-off-by: David Vrabel <david.vrabel@csr.com>
2008-11-19uwb: add basic radio managerDavid Vrabel11-69/+261
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>
2008-11-17uwb: add pal parameter to new reservation callbackDavid Vrabel2-6/+6
The pal parameter allows PALs to retrieve their PAL-specific data structure. Signed-off-by: David Vrabel <david.vrabel@csr.com>
2008-11-07uwb: fix races between events and neh timersDavid Vrabel2-16/+35
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>
2008-11-07uwb: don't unbind the radio controller driver when resettingDavid Vrabel6-42/+151
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>
2008-11-04uwb: per-radio controller event thread and beacon cacheStefano Panella5-122/+80
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>
2008-11-04uwb: add commands to add/remove IEs to the debug interfaceStefano Panella1-1/+19
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>
2008-11-04uwb: infrastructure for handling Relinquish Request IEsStefano Panella4-0/+61
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>
2008-10-31uwb: struct device - replace bus_id with dev_name(), dev_set_name()Kay Sievers2-3/+2
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>
2008-10-31uwb: remove unused #include <version.h>Huang Weiyi7-7/+0
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>
2008-10-29uwb: use the %pM formatting specifier in eda.cHarvey Harrison1-29/+9
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2008-10-28uwb: order IEs by element IDDavid Vrabel5-362/+170
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>
2008-10-28uwb: reference count reservationsDavid Vrabel2-19/+42
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>
2008-10-28uwb: target reservations shouldn't get streamsDavid Vrabel1-2/+2
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>
2008-10-20uwb: wrong sizeof argument in mac address compareFrank Leipold1-1/+1
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>
2008-10-16uwb: don't use printk_ratelimit() so oftenDavid Vrabel6-64/+26
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>
2008-10-15uwb: use kcalloc where appropriateDavid Vrabel1-1/+1
Signed-off-by: David Vrabel <david.vrabel@csr.com>
2008-10-15uwb: use time_after() when purging stale beaconsDavid Vrabel1-3/+4
Signed-off-by: David Vrabel <david.vrabel@csr.com>
2008-09-17uwb: depend on EXPERIMENTALDavid Vrabel1-1/+2
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>
2008-09-17uwb: add symlinks in sysfs between radio controllers and PALsDavid Vrabel1-0/+20
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>