Bluetooth: Create empty l2cap ops function

A2MP doesn't use part of the L2CAP chan ops API so we just create general
empty function instead of the A2MP specific one.

Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
This commit is contained in:
Gustavo Padovan 2012-05-29 13:19:26 -03:00 committed by Johan Hedberg
parent 8c3a4f004e
commit 7e1af8a3a5
2 changed files with 15 additions and 20 deletions

View file

@ -740,6 +740,18 @@ static inline __u16 __next_seq(struct l2cap_chan *chan, __u16 seq)
return (seq + 1) % (chan->tx_win_max + 1);
}
static inline struct l2cap_chan *l2cap_chan_no_new_connection(struct l2cap_chan *chan)
{
return NULL;
}
static inline void l2cap_chan_no_teardown(struct l2cap_chan *chan, int err)
{
}
static inline void l2cap_chan_no_ready(struct l2cap_chan *chan)
{
}
extern bool disable_ertm;

View file

@ -440,23 +440,6 @@ static struct sk_buff *a2mp_chan_alloc_skb_cb(struct l2cap_chan *chan,
return bt_skb_alloc(len, GFP_KERNEL);
}
static struct l2cap_chan *a2mp_chan_no_new_conn_cb(struct l2cap_chan *chan)
{
BT_ERR("new_connection for chan %p not implemented", chan);
return NULL;
}
static void a2mp_chan_no_teardown_cb(struct l2cap_chan *chan, int err)
{
BT_ERR("teardown for chan %p not implemented", chan);
}
static void a2mp_chan_no_ready(struct l2cap_chan *chan)
{
BT_ERR("ready for chan %p not implemented", chan);
}
static struct l2cap_ops a2mp_chan_ops = {
.name = "L2CAP A2MP channel",
.recv = a2mp_chan_recv_cb,
@ -465,9 +448,9 @@ static struct l2cap_ops a2mp_chan_ops = {
.alloc_skb = a2mp_chan_alloc_skb_cb,
/* Not implemented for A2MP */
.new_connection = a2mp_chan_no_new_conn_cb,
.teardown = a2mp_chan_no_teardown_cb,
.ready = a2mp_chan_no_ready,
.new_connection = l2cap_chan_no_new_connection,
.teardown = l2cap_chan_no_teardown,
.ready = l2cap_chan_no_ready,
};
static struct l2cap_chan *a2mp_chan_open(struct l2cap_conn *conn)