Lines Matching refs:dlci
120 int dlci; member
162 static inline void dlci_to_q922(u8 *hdr, u16 dlci) in dlci_to_q922() argument
164 hdr[0] = (dlci >> 2) & 0xFC; in dlci_to_q922()
165 hdr[1] = ((dlci << 4) & 0xF0) | 0x01; in dlci_to_q922()
175 static inline struct pvc_device *find_pvc(hdlc_device *hdlc, u16 dlci) in find_pvc() argument
180 if (pvc->dlci == dlci) in find_pvc()
182 if (pvc->dlci > dlci) in find_pvc()
191 static struct pvc_device *add_pvc(struct net_device *dev, u16 dlci) in add_pvc() argument
197 if ((*pvc_p)->dlci == dlci) in add_pvc()
199 if ((*pvc_p)->dlci > dlci) in add_pvc()
211 pvc->dlci = dlci; in add_pvc()
274 static int fr_hard_header(struct sk_buff *skb, u16 dlci) in fr_hard_header() argument
277 switch (dlci) { in fr_hard_header()
332 dlci_to_q922(skb->data, dlci); in fr_hard_header()
395 info.dlci = pvc->dlci; in pvc_ioctl()
437 if (fr_hard_header(skb, pvc->dlci)) in pvc_xmit()
459 pvc->dlci, in fr_log_dlci_active()
545 data[i] = pvc->dlci >> 8; in fr_lmi_send()
546 data[i + 1] = pvc->dlci & 0xFF; in fr_lmi_send()
548 data[i] = (pvc->dlci >> 4) & 0x3F; in fr_lmi_send()
549 data[i + 1] = ((pvc->dlci << 3) & 0x78) | 0x80; in fr_lmi_send()
799 u16 dlci; in fr_lmi_recv() local
820 dlci = (skb->data[i] << 8) | skb->data[i + 1]; in fr_lmi_recv()
825 dlci = ((skb->data[i] & 0x3F) << 4) | in fr_lmi_recv()
830 pvc = add_pvc(dev, dlci); in fr_lmi_recv()
881 u16 dlci; in fr_rx() local
888 dlci = q922_to_dlci(skb->data); in fr_rx()
890 if ((dlci == LMI_CCITT_ANSI_DLCI && in fr_rx()
893 (dlci == LMI_CISCO_DLCI && in fr_rx()
901 pvc = find_pvc(hdlc, dlci); in fr_rx()
905 dlci); in fr_rx()
914 dlci, fh->fecn ? "N" : "FF"); in fr_rx()
922 dlci, fh->becn ? "N" : "FF"); in fr_rx()
1065 static int fr_add_pvc(struct net_device *frad, unsigned int dlci, int type) in fr_add_pvc() argument
1072 if ((pvc = add_pvc(frad, dlci)) == NULL) { in fr_add_pvc()
1098 *(__be16*)dev->dev_addr = htons(dlci); in fr_add_pvc()
1099 dlci_to_q922(dev->broadcast, dlci); in fr_add_pvc()
1126 static int fr_del_pvc(hdlc_device *hdlc, unsigned int dlci, int type) in fr_del_pvc() argument
1131 if ((pvc = find_pvc(hdlc, dlci)) == NULL) in fr_del_pvc()
1267 if (pvc.dlci <= 0 || pvc.dlci >= 1024) in fr_ioctl()
1278 return fr_add_pvc(dev, pvc.dlci, result); in fr_ioctl()
1280 return fr_del_pvc(hdlc, pvc.dlci, result); in fr_ioctl()