1*b06ebda0SMatthew Dillon /*
2*b06ebda0SMatthew Dillon  * ng_l2cap_ulpi.h
3*b06ebda0SMatthew Dillon  */
4*b06ebda0SMatthew Dillon 
5*b06ebda0SMatthew Dillon /*-
6*b06ebda0SMatthew Dillon  * Copyright (c) Maksim Yevmenkin <m_evmenkin@yahoo.com>
7*b06ebda0SMatthew Dillon  * All rights reserved.
8*b06ebda0SMatthew Dillon  *
9*b06ebda0SMatthew Dillon  * Redistribution and use in source and binary forms, with or without
10*b06ebda0SMatthew Dillon  * modification, are permitted provided that the following conditions
11*b06ebda0SMatthew Dillon  * are met:
12*b06ebda0SMatthew Dillon  * 1. Redistributions of source code must retain the above copyright
13*b06ebda0SMatthew Dillon  *    notice, this list of conditions and the following disclaimer.
14*b06ebda0SMatthew Dillon  * 2. Redistributions in binary form must reproduce the above copyright
15*b06ebda0SMatthew Dillon  *    notice, this list of conditions and the following disclaimer in the
16*b06ebda0SMatthew Dillon  *    documentation and/or other materials provided with the distribution.
17*b06ebda0SMatthew Dillon  *
18*b06ebda0SMatthew Dillon  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
19*b06ebda0SMatthew Dillon  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20*b06ebda0SMatthew Dillon  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21*b06ebda0SMatthew Dillon  * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
22*b06ebda0SMatthew Dillon  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23*b06ebda0SMatthew Dillon  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24*b06ebda0SMatthew Dillon  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25*b06ebda0SMatthew Dillon  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26*b06ebda0SMatthew Dillon  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27*b06ebda0SMatthew Dillon  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28*b06ebda0SMatthew Dillon  * SUCH DAMAGE.
29*b06ebda0SMatthew Dillon  *
30*b06ebda0SMatthew Dillon  * $Id: ng_l2cap_ulpi.h,v 1.1 2002/11/24 19:47:06 max Exp $
31*b06ebda0SMatthew Dillon  * $FreeBSD: src/sys/netgraph/bluetooth/l2cap/ng_l2cap_ulpi.h,v 1.3 2005/01/07 01:45:43 imp Exp $
32*b06ebda0SMatthew Dillon  */
33*b06ebda0SMatthew Dillon 
34*b06ebda0SMatthew Dillon #ifndef _NETGRAPH_L2CAP_ULPI_H_
35*b06ebda0SMatthew Dillon #define _NETGRAPH_L2CAP_ULPI_H_
36*b06ebda0SMatthew Dillon 
37*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_con_req     (ng_l2cap_p, struct ng_mesg *);
38*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_con_rsp    (ng_l2cap_chan_p, u_int32_t, u_int16_t, u_int16_t);
39*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_con_rsp_req (ng_l2cap_p, struct ng_mesg *);
40*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_con_rsp_rsp (ng_l2cap_chan_p, u_int32_t, u_int16_t);
41*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_con_ind     (ng_l2cap_chan_p);
42*b06ebda0SMatthew Dillon 
43*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_cfg_req     (ng_l2cap_p, struct ng_mesg *);
44*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_cfg_rsp     (ng_l2cap_chan_p, u_int32_t, u_int16_t);
45*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_cfg_rsp_req (ng_l2cap_p, struct ng_mesg *);
46*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_cfg_rsp_rsp (ng_l2cap_chan_p, u_int32_t, u_int16_t);
47*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_cfg_ind     (ng_l2cap_chan_p);
48*b06ebda0SMatthew Dillon 
49*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_write_req   (ng_l2cap_p, struct mbuf *);
50*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_write_rsp  (ng_l2cap_chan_p, u_int32_t, u_int16_t, u_int16_t);
51*b06ebda0SMatthew Dillon 
52*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_receive     (ng_l2cap_con_p);
53*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_clt_receive (ng_l2cap_con_p);
54*b06ebda0SMatthew Dillon 
55*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_qos_ind     (ng_l2cap_chan_p);
56*b06ebda0SMatthew Dillon 
57*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_discon_req  (ng_l2cap_p, struct ng_mesg *);
58*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_discon_rsp  (ng_l2cap_chan_p, u_int32_t, u_int16_t);
59*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_discon_ind  (ng_l2cap_chan_p);
60*b06ebda0SMatthew Dillon 
61*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_grp_create  (ng_l2cap_p, struct ng_mesg *);
62*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_grp_close   (ng_l2cap_p, struct ng_mesg *);
63*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_grp_add_member_req (ng_l2cap_p, struct ng_mesg *);
64*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_grp_add_member_rsp (ng_l2cap_chan_p, u_int32_t, u_int16_t);
65*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_grp_rem_member  (ng_l2cap_p, struct ng_mesg *);
66*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_grp_get_members (ng_l2cap_p, struct ng_mesg *);
67*b06ebda0SMatthew Dillon 
68*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_ping_req     (ng_l2cap_p, struct ng_mesg *);
69*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_ping_rsp     (ng_l2cap_con_p, u_int32_t, u_int16_t,
70*b06ebda0SMatthew Dillon 					struct mbuf *);
71*b06ebda0SMatthew Dillon 
72*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_get_info_req (ng_l2cap_p, struct ng_mesg *);
73*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_get_info_rsp (ng_l2cap_con_p, u_int32_t, u_int16_t,
74*b06ebda0SMatthew Dillon 					struct mbuf *);
75*b06ebda0SMatthew Dillon 
76*b06ebda0SMatthew Dillon int ng_l2cap_l2ca_enable_clt   (ng_l2cap_p, struct ng_mesg *);
77*b06ebda0SMatthew Dillon 
78*b06ebda0SMatthew Dillon #endif /* ndef _NETGRAPH_L2CAP_ULPI_H_ */
79*b06ebda0SMatthew Dillon 
80