uwb: improved MAS allocator and reservation conflict handling
authorStefano Panella <stefano.panella@csr.com>
Fri, 12 Dec 2008 13:00:06 +0000 (13:00 +0000)
committerDavid Vrabel <david.vrabel@csr.com>
Fri, 12 Dec 2008 13:00:06 +0000 (13:00 +0000)
commit5b37717a23b8e40f6cf7ad85a26ddcf41c171e2c
tree3c611f907bc61c6e1900c4092e8f2f1e8eefd907
parentc35fa3ea1ae8198bd65c2c6e59d9ebd68c115a59
uwb: improved MAS allocator and reservation conflict handling

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>
12 files changed:
drivers/usb/wusbcore/reservation.c
drivers/uwb/Makefile
drivers/uwb/allocator.c [new file with mode: 0644]
drivers/uwb/drp-avail.c
drivers/uwb/drp-ie.c
drivers/uwb/drp.c
drivers/uwb/rsv.c
drivers/uwb/uwb-debug.c
drivers/uwb/uwb-internal.h
include/linux/uwb.h
include/linux/uwb/debug-cmd.h
include/linux/uwb/spec.h