Lines Matching refs:dlci
56 static int rfcomm_send_sabm(struct rfcomm_session *s, u8 dlci);
57 static int rfcomm_send_disc(struct rfcomm_session *s, u8 dlci);
61 static int rfcomm_send_msc(struct rfcomm_session *s, int cr, u8 dlci, u8 v24_sig);
85 #define __addr(cr, dlci) (((dlci & 0x3f) << 2) | (cr << 1) | 0x01) argument
88 #define __srv_channel(dlci) (dlci >> 1) 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()
509 BT_DBG("dlc %p state %ld dlci %d err %d", d, d->state, d->dlci, err); in rfcomm_dlc_close()
541 u8 dlci; in rfcomm_dlc_exists() local
549 dlci = __dlci(__session_dir(s), channel); in rfcomm_dlc_exists()
550 dlc = rfcomm_dlc_get(s, dlci); in rfcomm_dlc_exists()
851 static int rfcomm_send_sabm(struct rfcomm_session *s, u8 dlci) in rfcomm_send_sabm() argument
855 BT_DBG("%p dlci %d", s, dlci); in rfcomm_send_sabm()
857 cmd.addr = __addr(s->initiator, dlci); in rfcomm_send_sabm()
865 static int rfcomm_send_ua(struct rfcomm_session *s, u8 dlci) in rfcomm_send_ua() argument
869 BT_DBG("%p dlci %d", s, dlci); in rfcomm_send_ua()
871 cmd.addr = __addr(!s->initiator, dlci); in rfcomm_send_ua()
879 static int rfcomm_send_disc(struct rfcomm_session *s, u8 dlci) in rfcomm_send_disc() argument
883 BT_DBG("%p dlci %d", s, dlci); in rfcomm_send_disc()
885 cmd.addr = __addr(s->initiator, dlci); in rfcomm_send_disc()
898 BT_DBG("dlc %p dlci %d", d, d->dlci); in rfcomm_queue_disc()
915 static int rfcomm_send_dm(struct rfcomm_session *s, u8 dlci) in rfcomm_send_dm() argument
919 BT_DBG("%p dlci %d", s, dlci); in rfcomm_send_dm()
921 cmd.addr = __addr(!s->initiator, dlci); in rfcomm_send_dm()
961 BT_DBG("%p cr %d dlci %d mtu %d", s, cr, d->dlci, d->mtu); in rfcomm_send_pn()
973 pn->dlci = d->dlci; in rfcomm_send_pn()
996 int rfcomm_send_rpn(struct rfcomm_session *s, int cr, u8 dlci, in rfcomm_send_rpn() argument
1008 s, cr, dlci, bit_rate, data_bits, stop_bits, parity, in rfcomm_send_rpn()
1021 rpn->dlci = __addr(1, dlci); in rfcomm_send_rpn()
1034 static int rfcomm_send_rls(struct rfcomm_session *s, int cr, u8 dlci, u8 status) in rfcomm_send_rls() argument
1053 rls->dlci = __addr(1, dlci); in rfcomm_send_rls()
1061 static int rfcomm_send_msc(struct rfcomm_session *s, int cr, u8 dlci, u8 v24_sig) in rfcomm_send_msc() argument
1080 msc->dlci = __addr(1, dlci); in rfcomm_send_msc()
1204 static struct rfcomm_session *rfcomm_recv_ua(struct rfcomm_session *s, u8 dlci) in rfcomm_recv_ua() argument
1206 BT_DBG("session %p state %ld dlci %d", s, s->state, dlci); in rfcomm_recv_ua()
1208 if (dlci) { in rfcomm_recv_ua()
1210 struct rfcomm_dlc *d = rfcomm_dlc_get(s, dlci); in rfcomm_recv_ua()
1212 rfcomm_send_dm(s, dlci); in rfcomm_recv_ua()
1225 rfcomm_send_msc(s, 1, dlci, d->v24_sig); in rfcomm_recv_ua()
1256 static struct rfcomm_session *rfcomm_recv_dm(struct rfcomm_session *s, u8 dlci) in rfcomm_recv_dm() argument
1260 BT_DBG("session %p state %ld dlci %d", s, s->state, dlci); in rfcomm_recv_dm()
1262 if (dlci) { in rfcomm_recv_dm()
1264 struct rfcomm_dlc *d = rfcomm_dlc_get(s, dlci); in rfcomm_recv_dm()
1286 u8 dlci) in rfcomm_recv_disc() argument
1290 BT_DBG("session %p state %ld dlci %d", s, s->state, dlci); in rfcomm_recv_disc()
1292 if (dlci) { in rfcomm_recv_disc()
1293 struct rfcomm_dlc *d = rfcomm_dlc_get(s, dlci); in rfcomm_recv_disc()
1295 rfcomm_send_ua(s, dlci); in rfcomm_recv_disc()
1305 rfcomm_send_dm(s, dlci); in rfcomm_recv_disc()
1327 rfcomm_send_ua(d->session, d->dlci); in rfcomm_dlc_accept()
1339 rfcomm_send_msc(d->session, 1, d->dlci, d->v24_sig); in rfcomm_dlc_accept()
1361 static int rfcomm_recv_sabm(struct rfcomm_session *s, u8 dlci) in rfcomm_recv_sabm() argument
1366 BT_DBG("session %p state %ld dlci %d", s, s->state, dlci); in rfcomm_recv_sabm()
1368 if (!dlci) { in rfcomm_recv_sabm()
1379 d = rfcomm_dlc_get(s, dlci); in rfcomm_recv_sabm()
1389 channel = __srv_channel(dlci); in rfcomm_recv_sabm()
1391 d->dlci = dlci; in rfcomm_recv_sabm()
1392 d->addr = __addr(s->initiator, dlci); in rfcomm_recv_sabm()
1397 rfcomm_send_dm(s, dlci); in rfcomm_recv_sabm()
1408 d, d->state, d->dlci, pn->mtu, pn->flow_ctrl, pn->credits); in rfcomm_apply_pn()
1436 u8 dlci = pn->dlci; in rfcomm_recv_pn() local
1438 BT_DBG("session %p state %ld dlci %d", s, s->state, dlci); in rfcomm_recv_pn()
1440 if (!dlci) in rfcomm_recv_pn()
1443 d = rfcomm_dlc_get(s, dlci); in rfcomm_recv_pn()
1456 rfcomm_send_sabm(s, d->dlci); in rfcomm_recv_pn()
1461 u8 channel = __srv_channel(dlci); in rfcomm_recv_pn()
1469 d->dlci = dlci; in rfcomm_recv_pn()
1470 d->addr = __addr(s->initiator, dlci); in rfcomm_recv_pn()
1478 rfcomm_send_dm(s, dlci); in rfcomm_recv_pn()
1487 u8 dlci = __get_dlci(rpn->dlci); in rfcomm_recv_rpn() local
1499 dlci, cr, len, rpn->bit_rate, rpn->line_settings, rpn->flow_ctrl, in rfcomm_recv_rpn()
1584 rfcomm_send_rpn(s, 0, dlci, bit_rate, data_bits, stop_bits, in rfcomm_recv_rpn()
1593 u8 dlci = __get_dlci(rls->dlci); in rfcomm_recv_rls() local
1595 BT_DBG("dlci %d cr %d status 0x%x", dlci, cr, rls->status); in rfcomm_recv_rls()
1604 rfcomm_send_rls(s, 0, dlci, rls->status); in rfcomm_recv_rls()
1613 u8 dlci = __get_dlci(msc->dlci); in rfcomm_recv_msc() local
1615 BT_DBG("dlci %d cr %d v24 0x%x", dlci, cr, msc->v24_sig); in rfcomm_recv_msc()
1617 d = rfcomm_dlc_get(s, dlci); in rfcomm_recv_msc()
1636 rfcomm_send_msc(s, 0, dlci, msc->v24_sig); in rfcomm_recv_msc()
1705 static int rfcomm_recv_data(struct rfcomm_session *s, u8 dlci, int pf, struct sk_buff *skb) in rfcomm_recv_data() argument
1709 BT_DBG("session %p state %ld dlci %d pf %d", s, s->state, dlci, pf); in rfcomm_recv_data()
1711 d = rfcomm_dlc_get(s, dlci); in rfcomm_recv_data()
1713 rfcomm_send_dm(s, dlci); in rfcomm_recv_data()
1742 u8 type, dlci, fcs; in rfcomm_recv_frame() local
1750 dlci = __get_dlci(hdr->addr); in rfcomm_recv_frame()
1771 rfcomm_recv_sabm(s, dlci); in rfcomm_recv_frame()
1776 s = rfcomm_recv_disc(s, dlci); in rfcomm_recv_frame()
1781 s = rfcomm_recv_ua(s, dlci); in rfcomm_recv_frame()
1785 s = rfcomm_recv_dm(s, dlci); in rfcomm_recv_frame()
1789 if (dlci) { in rfcomm_recv_frame()
1790 rfcomm_recv_data(s, dlci, __test_pf(hdr->ctrl), skb); in rfcomm_recv_frame()
1838 rfcomm_send_msc(d->session, 1, d->dlci, d->v24_sig); in rfcomm_process_tx()
1914 rfcomm_send_dm(s, d->dlci); in rfcomm_process_dlcs()
2198 d->state, d->dlci, d->mtu, in rfcomm_dlc_debugfs_show()