aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorJussi Kivilinna <jussi.kivilinna@mbnet.fi>2008-01-25 17:51:01 -0500
committerDavid S. Miller <davem@davemloft.net>2008-01-31 22:26:55 -0500
commita842edaca3985698b177e61115aee91bdf893f1d (patch)
treed5c50a044c715e3b9384757e1182aff7f59c8056 /drivers/net
parent9ff55874fea71f483581f48990658d3929adb034 (diff)
rndis_host: Fix rndis packet filter flags.
RNDIS packet filter flags are not exactly the same as CDC flags so we cannot reuse them. Signed-off-by: Jussi Kivilinna <jussi.kivilinna@mbnet.fi> Signed-off-by: Bjorge Dijkstra <bjd@jooz.net> Acked-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/usb/rndis_host.c23
1 files changed, 22 insertions, 1 deletions
diff --git a/drivers/net/usb/rndis_host.c b/drivers/net/usb/rndis_host.c
index c6860250521b..12daf9cfb77b 100644
--- a/drivers/net/usb/rndis_host.c
+++ b/drivers/net/usb/rndis_host.c
@@ -256,6 +256,27 @@ struct rndis_keepalive_c { /* IN (optionally OUT) */
256#define OID_GEN_MAXIMUM_FRAME_SIZE ccpu2(0x00010106) 256#define OID_GEN_MAXIMUM_FRAME_SIZE ccpu2(0x00010106)
257#define OID_GEN_CURRENT_PACKET_FILTER ccpu2(0x0001010e) 257#define OID_GEN_CURRENT_PACKET_FILTER ccpu2(0x0001010e)
258 258
259/* packet filter bits used by OID_GEN_CURRENT_PACKET_FILTER */
260#define RNDIS_PACKET_TYPE_DIRECTED ccpu2(0x00000001)
261#define RNDIS_PACKET_TYPE_MULTICAST ccpu2(0x00000002)
262#define RNDIS_PACKET_TYPE_ALL_MULTICAST ccpu2(0x00000004)
263#define RNDIS_PACKET_TYPE_BROADCAST ccpu2(0x00000008)
264#define RNDIS_PACKET_TYPE_SOURCE_ROUTING ccpu2(0x00000010)
265#define RNDIS_PACKET_TYPE_PROMISCUOUS ccpu2(0x00000020)
266#define RNDIS_PACKET_TYPE_SMT ccpu2(0x00000040)
267#define RNDIS_PACKET_TYPE_ALL_LOCAL ccpu2(0x00000080)
268#define RNDIS_PACKET_TYPE_GROUP ccpu2(0x00001000)
269#define RNDIS_PACKET_TYPE_ALL_FUNCTIONAL ccpu2(0x00002000)
270#define RNDIS_PACKET_TYPE_FUNCTIONAL ccpu2(0x00004000)
271#define RNDIS_PACKET_TYPE_MAC_FRAME ccpu2(0x00008000)
272
273/* default filter used with RNDIS devices */
274#define RNDIS_DEFAULT_FILTER ( \
275 RNDIS_PACKET_TYPE_DIRECTED | \
276 RNDIS_PACKET_TYPE_BROADCAST | \
277 RNDIS_PACKET_TYPE_ALL_MULTICAST | \
278 RNDIS_PACKET_TYPE_PROMISCUOUS)
279
259/* 280/*
260 * RNDIS notifications from device: command completion; "reverse" 281 * RNDIS notifications from device: command completion; "reverse"
261 * keepalives; etc 282 * keepalives; etc
@@ -551,7 +572,7 @@ static int rndis_bind(struct usbnet *dev, struct usb_interface *intf)
551 u.set->oid = OID_GEN_CURRENT_PACKET_FILTER; 572 u.set->oid = OID_GEN_CURRENT_PACKET_FILTER;
552 u.set->len = ccpu2(4); 573 u.set->len = ccpu2(4);
553 u.set->offset = ccpu2((sizeof *u.set) - 8); 574 u.set->offset = ccpu2((sizeof *u.set) - 8);
554 *(__le32 *)(u.buf + sizeof *u.set) = ccpu2(DEFAULT_FILTER); 575 *(__le32 *)(u.buf + sizeof *u.set) = RNDIS_DEFAULT_FILTER;
555 576
556 retval = rndis_command(dev, u.header); 577 retval = rndis_command(dev, u.header);
557 if (unlikely(retval < 0)) { 578 if (unlikely(retval < 0)) {