Lines Matching refs:self
51 static int ircomm_lmp_connect_request(struct ircomm_cb *self, in ircomm_lmp_connect_request() argument
63 ret = irlmp_connect_request(self->lsap, info->dlsap_sel, in ircomm_lmp_connect_request()
74 static int ircomm_lmp_connect_response(struct ircomm_cb *self, in ircomm_lmp_connect_response() argument
102 return irlmp_connect_response(self->lsap, tx_skb); in ircomm_lmp_connect_response()
105 static int ircomm_lmp_disconnect_request(struct ircomm_cb *self, in ircomm_lmp_disconnect_request() argument
127 ret = irlmp_disconnect_request(self->lsap, userdata); in ircomm_lmp_disconnect_request()
142 struct ircomm_cb *self; in ircomm_lmp_flow_control() local
153 self = (struct ircomm_cb *) hashbin_lock_find(ircomm, line, NULL); in ircomm_lmp_flow_control()
154 if (!self) { in ircomm_lmp_flow_control()
159 IRDA_ASSERT(self != NULL, return;); in ircomm_lmp_flow_control()
160 IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return;); in ircomm_lmp_flow_control()
162 self->pkt_count--; in ircomm_lmp_flow_control()
164 if ((self->pkt_count < 2) && (self->flow_status == FLOW_STOP)) { in ircomm_lmp_flow_control()
166 self->flow_status = FLOW_START; in ircomm_lmp_flow_control()
167 if (self->notify.flow_indication) in ircomm_lmp_flow_control()
168 self->notify.flow_indication(self->notify.instance, in ircomm_lmp_flow_control()
169 self, FLOW_START); in ircomm_lmp_flow_control()
179 static int ircomm_lmp_data_request(struct ircomm_cb *self, in ircomm_lmp_data_request() argument
190 cb->line = self->line; in ircomm_lmp_data_request()
200 if ((self->pkt_count++ > 7) && (self->flow_status == FLOW_START)) { in ircomm_lmp_data_request()
202 self->flow_status = FLOW_STOP; in ircomm_lmp_data_request()
203 if (self->notify.flow_indication) in ircomm_lmp_data_request()
204 self->notify.flow_indication(self->notify.instance, in ircomm_lmp_data_request()
205 self, FLOW_STOP); in ircomm_lmp_data_request()
207 ret = irlmp_data_request(self->lsap, skb); in ircomm_lmp_data_request()
225 struct ircomm_cb *self = (struct ircomm_cb *) instance; in ircomm_lmp_data_indication() local
229 IRDA_ASSERT(self != NULL, return -1;); in ircomm_lmp_data_indication()
230 IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return -1;); in ircomm_lmp_data_indication()
233 ircomm_do_event(self, IRCOMM_LMP_DATA_INDICATION, skb, NULL); in ircomm_lmp_data_indication()
254 struct ircomm_cb *self = (struct ircomm_cb *) instance; in ircomm_lmp_connect_confirm() local
259 IRDA_ASSERT(self != NULL, return;); in ircomm_lmp_connect_confirm()
260 IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return;); in ircomm_lmp_connect_confirm()
268 ircomm_do_event(self, IRCOMM_LMP_CONNECT_CONFIRM, skb, &info); in ircomm_lmp_connect_confirm()
287 struct ircomm_cb *self = (struct ircomm_cb *)instance; in ircomm_lmp_connect_indication() local
292 IRDA_ASSERT(self != NULL, return;); in ircomm_lmp_connect_indication()
293 IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return;); in ircomm_lmp_connect_indication()
301 ircomm_do_event(self, IRCOMM_LMP_CONNECT_INDICATION, skb, &info); in ircomm_lmp_connect_indication()
317 struct ircomm_cb *self = (struct ircomm_cb *) instance; in ircomm_lmp_disconnect_indication() local
322 IRDA_ASSERT(self != NULL, return;); in ircomm_lmp_disconnect_indication()
323 IRDA_ASSERT(self->magic == IRCOMM_MAGIC, return;); in ircomm_lmp_disconnect_indication()
327 ircomm_do_event(self, IRCOMM_LMP_DISCONNECT_INDICATION, skb, &info); in ircomm_lmp_disconnect_indication()
339 int ircomm_open_lsap(struct ircomm_cb *self) in ircomm_open_lsap() argument
351 notify.instance = self; in ircomm_open_lsap()
354 self->lsap = irlmp_open_lsap(LSAP_ANY, ¬ify, 0); in ircomm_open_lsap()
355 if (!self->lsap) { in ircomm_open_lsap()
359 self->slsap_sel = self->lsap->slsap_sel; in ircomm_open_lsap()
364 self->issue.data_request = ircomm_lmp_data_request; in ircomm_open_lsap()
365 self->issue.connect_request = ircomm_lmp_connect_request; in ircomm_open_lsap()
366 self->issue.connect_response = ircomm_lmp_connect_response; in ircomm_open_lsap()
367 self->issue.disconnect_request = ircomm_lmp_disconnect_request; in ircomm_open_lsap()