Lines Matching refs:rsv
47 static void wusbhc_rsv_complete_cb(struct uwb_rsv *rsv) in wusbhc_rsv_complete_cb() argument
49 struct wusbhc *wusbhc = rsv->pal_priv; in wusbhc_rsv_complete_cb()
53 dev_dbg(dev, "%s: state = %d\n", __func__, rsv->state); in wusbhc_rsv_complete_cb()
54 switch (rsv->state) { in wusbhc_rsv_complete_cb()
56 uwb_rsv_get_usable_mas(rsv, &mas); in wusbhc_rsv_complete_cb()
59 wusbhc_bwa_set(wusbhc, rsv->stream, &mas); in wusbhc_rsv_complete_cb()
66 dev_dbg(dev, "unexpected reservation state: %d\n", rsv->state); in wusbhc_rsv_complete_cb()
79 struct uwb_rsv *rsv; in wusbhc_rsv_establish() local
86 rsv = uwb_rsv_create(rc, wusbhc_rsv_complete_cb, wusbhc); in wusbhc_rsv_establish()
87 if (rsv == NULL) in wusbhc_rsv_establish()
93 rsv->target.type = UWB_RSV_TARGET_DEVADDR; in wusbhc_rsv_establish()
94 rsv->target.devaddr = bcid; in wusbhc_rsv_establish()
95 rsv->type = UWB_DRP_TYPE_PRIVATE; in wusbhc_rsv_establish()
96 rsv->max_mas = 256; /* try to get as much as possible */ in wusbhc_rsv_establish()
97 rsv->min_mas = 15; /* one MAS per zone */ in wusbhc_rsv_establish()
98 rsv->max_interval = 1; /* max latency is one zone */ in wusbhc_rsv_establish()
99 rsv->is_multicast = true; in wusbhc_rsv_establish()
101 ret = uwb_rsv_establish(rsv); in wusbhc_rsv_establish()
103 wusbhc->rsv = rsv; in wusbhc_rsv_establish()
105 uwb_rsv_destroy(rsv); in wusbhc_rsv_establish()
116 if (wusbhc->rsv) { in wusbhc_rsv_terminate()
117 uwb_rsv_terminate(wusbhc->rsv); in wusbhc_rsv_terminate()
118 uwb_rsv_destroy(wusbhc->rsv); in wusbhc_rsv_terminate()
119 wusbhc->rsv = NULL; in wusbhc_rsv_terminate()