Lines Matching refs:dlci
55 static int rfcomm_send_sabm(struct rfcomm_session *s, u8 dlci);
56 static int rfcomm_send_disc(struct rfcomm_session *s, u8 dlci);
60 static int rfcomm_send_msc(struct rfcomm_session *s, int cr, u8 dlci, u8 v24_sig);
86 #define __addr(cr, dlci) (((dlci & 0x3f) << 2) | (cr << 1) | 0x01) argument
89 #define __srv_channel(dlci) (dlci >> 1) argument
90 #define __dir(dlci) (dlci & 0x01) argument
355 static struct rfcomm_dlc *rfcomm_dlc_get(struct rfcomm_session *s, u8 dlci) in rfcomm_dlc_get() argument
360 if (d->dlci == dlci) in rfcomm_dlc_get()
375 u8 dlci; in __rfcomm_dlc_open() local
393 dlci = __dlci(__session_dir(s), channel); in __rfcomm_dlc_open()
396 if (rfcomm_dlc_get(s, dlci)) in __rfcomm_dlc_open()
401 d->dlci = dlci; in __rfcomm_dlc_open()
402 d->addr = __addr(s->initiator, dlci); in __rfcomm_dlc_open()
443 rfcomm_send_disc(s, d->dlci); in __rfcomm_dlc_disconn()
458 d, d->state, d->dlci, err, s); in __rfcomm_dlc_close()
508 BT_DBG("dlc %p state %ld dlci %d err %d", d, d->state, d->dlci, err); in rfcomm_dlc_close()
540 u8 dlci; in rfcomm_dlc_exists() local
548 dlci = __dlci(__session_dir(s), channel); in rfcomm_dlc_exists()
549 dlc = rfcomm_dlc_get(s, dlci); in rfcomm_dlc_exists()
817 static int rfcomm_send_sabm(struct rfcomm_session *s, u8 dlci) in rfcomm_send_sabm() argument
821 BT_DBG("%p dlci %d", s, dlci); in rfcomm_send_sabm()
823 cmd.addr = __addr(s->initiator, dlci); in rfcomm_send_sabm()
831 static int rfcomm_send_ua(struct rfcomm_session *s, u8 dlci) in rfcomm_send_ua() argument
835 BT_DBG("%p dlci %d", s, dlci); in rfcomm_send_ua()
837 cmd.addr = __addr(!s->initiator, dlci); in rfcomm_send_ua()
845 static int rfcomm_send_disc(struct rfcomm_session *s, u8 dlci) in rfcomm_send_disc() argument
849 BT_DBG("%p dlci %d", s, dlci); in rfcomm_send_disc()
851 cmd.addr = __addr(s->initiator, dlci); in rfcomm_send_disc()
864 BT_DBG("dlc %p dlci %d", d, d->dlci); in rfcomm_queue_disc()
881 static int rfcomm_send_dm(struct rfcomm_session *s, u8 dlci) in rfcomm_send_dm() argument
885 BT_DBG("%p dlci %d", s, dlci); in rfcomm_send_dm()
887 cmd.addr = __addr(!s->initiator, dlci); in rfcomm_send_dm()
927 BT_DBG("%p cr %d dlci %d mtu %d", s, cr, d->dlci, d->mtu); in rfcomm_send_pn()
939 pn->dlci = d->dlci; in rfcomm_send_pn()
962 int rfcomm_send_rpn(struct rfcomm_session *s, int cr, u8 dlci, in rfcomm_send_rpn() argument
974 s, cr, dlci, bit_rate, data_bits, stop_bits, parity, in rfcomm_send_rpn()
987 rpn->dlci = __addr(1, dlci); in rfcomm_send_rpn()
1000 static int rfcomm_send_rls(struct rfcomm_session *s, int cr, u8 dlci, u8 status) in rfcomm_send_rls() argument
1019 rls->dlci = __addr(1, dlci); in rfcomm_send_rls()
1027 static int rfcomm_send_msc(struct rfcomm_session *s, int cr, u8 dlci, u8 v24_sig) in rfcomm_send_msc() argument
1046 msc->dlci = __addr(1, dlci); in rfcomm_send_msc()
1170 static struct rfcomm_session *rfcomm_recv_ua(struct rfcomm_session *s, u8 dlci) in rfcomm_recv_ua() argument
1172 BT_DBG("session %p state %ld dlci %d", s, s->state, dlci); in rfcomm_recv_ua()
1174 if (dlci) { in rfcomm_recv_ua()
1176 struct rfcomm_dlc *d = rfcomm_dlc_get(s, dlci); in rfcomm_recv_ua()
1178 rfcomm_send_dm(s, dlci); in rfcomm_recv_ua()
1191 rfcomm_send_msc(s, 1, dlci, d->v24_sig); in rfcomm_recv_ua()
1222 static struct rfcomm_session *rfcomm_recv_dm(struct rfcomm_session *s, u8 dlci) in rfcomm_recv_dm() argument
1226 BT_DBG("session %p state %ld dlci %d", s, s->state, dlci); in rfcomm_recv_dm()
1228 if (dlci) { in rfcomm_recv_dm()
1230 struct rfcomm_dlc *d = rfcomm_dlc_get(s, dlci); in rfcomm_recv_dm()
1252 u8 dlci) in rfcomm_recv_disc() argument
1256 BT_DBG("session %p state %ld dlci %d", s, s->state, dlci); in rfcomm_recv_disc()
1258 if (dlci) { in rfcomm_recv_disc()
1259 struct rfcomm_dlc *d = rfcomm_dlc_get(s, dlci); in rfcomm_recv_disc()
1261 rfcomm_send_ua(s, dlci); in rfcomm_recv_disc()
1271 rfcomm_send_dm(s, dlci); in rfcomm_recv_disc()
1293 rfcomm_send_ua(d->session, d->dlci); in rfcomm_dlc_accept()
1305 rfcomm_send_msc(d->session, 1, d->dlci, d->v24_sig); in rfcomm_dlc_accept()
1327 static int rfcomm_recv_sabm(struct rfcomm_session *s, u8 dlci) in rfcomm_recv_sabm() argument
1332 BT_DBG("session %p state %ld dlci %d", s, s->state, dlci); in rfcomm_recv_sabm()
1334 if (!dlci) { in rfcomm_recv_sabm()
1345 d = rfcomm_dlc_get(s, dlci); in rfcomm_recv_sabm()
1355 channel = __srv_channel(dlci); in rfcomm_recv_sabm()
1357 d->dlci = dlci; in rfcomm_recv_sabm()
1358 d->addr = __addr(s->initiator, dlci); in rfcomm_recv_sabm()
1363 rfcomm_send_dm(s, dlci); in rfcomm_recv_sabm()
1374 d, d->state, d->dlci, pn->mtu, pn->flow_ctrl, pn->credits); in rfcomm_apply_pn()
1402 u8 dlci = pn->dlci; in rfcomm_recv_pn() local
1404 BT_DBG("session %p state %ld dlci %d", s, s->state, dlci); in rfcomm_recv_pn()
1406 if (!dlci) in rfcomm_recv_pn()
1409 d = rfcomm_dlc_get(s, dlci); in rfcomm_recv_pn()
1422 rfcomm_send_sabm(s, d->dlci); in rfcomm_recv_pn()
1427 u8 channel = __srv_channel(dlci); in rfcomm_recv_pn()
1435 d->dlci = dlci; in rfcomm_recv_pn()
1436 d->addr = __addr(s->initiator, dlci); in rfcomm_recv_pn()
1444 rfcomm_send_dm(s, dlci); in rfcomm_recv_pn()
1453 u8 dlci = __get_dlci(rpn->dlci); in rfcomm_recv_rpn() local
1465 dlci, cr, len, rpn->bit_rate, rpn->line_settings, rpn->flow_ctrl, in rfcomm_recv_rpn()
1550 rfcomm_send_rpn(s, 0, dlci, bit_rate, data_bits, stop_bits, in rfcomm_recv_rpn()
1559 u8 dlci = __get_dlci(rls->dlci); in rfcomm_recv_rls() local
1561 BT_DBG("dlci %d cr %d status 0x%x", dlci, cr, rls->status); in rfcomm_recv_rls()
1570 rfcomm_send_rls(s, 0, dlci, rls->status); in rfcomm_recv_rls()
1579 u8 dlci = __get_dlci(msc->dlci); in rfcomm_recv_msc() local
1581 BT_DBG("dlci %d cr %d v24 0x%x", dlci, cr, msc->v24_sig); in rfcomm_recv_msc()
1583 d = rfcomm_dlc_get(s, dlci); in rfcomm_recv_msc()
1602 rfcomm_send_msc(s, 0, dlci, msc->v24_sig); in rfcomm_recv_msc()
1671 static int rfcomm_recv_data(struct rfcomm_session *s, u8 dlci, int pf, struct sk_buff *skb) in rfcomm_recv_data() argument
1675 BT_DBG("session %p state %ld dlci %d pf %d", s, s->state, dlci, pf); in rfcomm_recv_data()
1677 d = rfcomm_dlc_get(s, dlci); in rfcomm_recv_data()
1679 rfcomm_send_dm(s, dlci); in rfcomm_recv_data()
1708 u8 type, dlci, fcs; in rfcomm_recv_frame() local
1716 dlci = __get_dlci(hdr->addr); in rfcomm_recv_frame()
1737 rfcomm_recv_sabm(s, dlci); in rfcomm_recv_frame()
1742 s = rfcomm_recv_disc(s, dlci); in rfcomm_recv_frame()
1747 s = rfcomm_recv_ua(s, dlci); in rfcomm_recv_frame()
1751 s = rfcomm_recv_dm(s, dlci); in rfcomm_recv_frame()
1755 if (dlci) { in rfcomm_recv_frame()
1756 rfcomm_recv_data(s, dlci, __test_pf(hdr->ctrl), skb); in rfcomm_recv_frame()
1806 rfcomm_send_msc(d->session, 1, d->dlci, d->v24_sig); in rfcomm_process_tx()
1885 rfcomm_send_dm(s, d->dlci); in rfcomm_process_dlcs()
2177 d->state, d->dlci, d->mtu, in rfcomm_dlc_debugfs_show()