aboutsummaryrefslogtreecommitdiff
path: root/drivers/staging/ozwpan/ozproto.c
diff options
context:
space:
mode:
authorRupesh Gujare <rgujare@ozmodevices.com>2012-07-23 18:49:46 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-08-13 19:17:17 -0700
commit86d03a0f4f575dda7988800a3da8d6e9f776a819 (patch)
tree00b3442692adedfe58108ef95357bc8ec0dad1d9 /drivers/staging/ozwpan/ozproto.c
parent5494ebdf3c1ac634b133369736632be82a0255f8 (diff)
staging: ozwpan: isoc latency for audio burst
Set audio latency. This fixes issue where audio clips heard during link outage. Signed-off-by: Rupesh Gujare <rgujare@ozmodevices.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/ozwpan/ozproto.c')
-rw-r--r--drivers/staging/ozwpan/ozproto.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/staging/ozwpan/ozproto.c b/drivers/staging/ozwpan/ozproto.c
index a50ab18a598..cfb5160d1eb 100644
--- a/drivers/staging/ozwpan/ozproto.c
+++ b/drivers/staging/ozwpan/ozproto.c
@@ -220,6 +220,19 @@ static struct oz_pd *oz_connect_req(struct oz_pd *cur_pd, struct oz_elt *elt,
pd->ms_per_isoc = body->ms_per_isoc;
if (!pd->ms_per_isoc)
pd->ms_per_isoc = 4;
+
+ switch (body->ms_isoc_latency & OZ_LATENCY_MASK) {
+ case OZ_ONE_MS_LATENCY:
+ pd->isoc_latency = (body->ms_isoc_latency &
+ ~OZ_LATENCY_MASK) / pd->ms_per_isoc;
+ break;
+ case OZ_TEN_MS_LATENCY:
+ pd->isoc_latency = ((body->ms_isoc_latency &
+ ~OZ_LATENCY_MASK) * 10) / pd->ms_per_isoc;
+ break;
+ default:
+ pd->isoc_latency = OZ_MAX_TX_QUEUE_ISOC;
+ }
}
if (body->max_len_div16)
pd->max_tx_size = ((u16)body->max_len_div16)<<4;