Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (43 commits) [IPSEC]: Fix BEET output [ICMP]: Dst entry leak in icmp_send host re-lookup code (v2). [AX25]: Remove obsolete references to BKL from TODO file. [NET]: Fix multicast device ioctl checks [IRDA]: Store irnet_socket termios properly. [UML]: uml-net: don't set IFF_ALLMULTI in set_multicast_list [VLAN]: Don't copy ALLMULTI/PROMISC flags from underlying device netxen, phy/marvell, skge: minor checkpatch fixes S2io: Handle TX completions on the same CPU as the sender for MIS-X interrupts b44: Truncate PHY address skge napi->poll() locking bug rndis_host: fix oops when query for OID_GEN_PHYSICAL_MEDIUM fails cxgb3: Fix lockdep problems with sge.reg_lock ehea: Fix IPv6 support dm9000: Support promisc and all-multi modes dm9601: configure MAC to drop invalid (crc/length) packets dm9601: add Hirose USB-100 device ID Marvell PHY m88e1111 driver fix netxen: fix rx dropped stats netxen: remove low level tx lock ...
This commit is contained in:
@@ -341,7 +341,7 @@ static void dm9601_set_multicast(struct net_device *net)
|
||||
/* We use the 20 byte dev->data for our 8 byte filter buffer
|
||||
* to avoid allocating memory that is tricky to free later */
|
||||
u8 *hashes = (u8 *) & dev->data;
|
||||
u8 rx_ctl = 0x01;
|
||||
u8 rx_ctl = 0x31;
|
||||
|
||||
memset(hashes, 0x00, DM_MCAST_SIZE);
|
||||
hashes[DM_MCAST_SIZE - 1] |= 0x80; /* broadcast address */
|
||||
@@ -562,6 +562,10 @@ static const struct usb_device_id products[] = {
|
||||
USB_DEVICE(0x0a46, 0x8515), /* ADMtek ADM8515 USB NIC */
|
||||
.driver_info = (unsigned long)&dm9601_info,
|
||||
},
|
||||
{
|
||||
USB_DEVICE(0x0a47, 0x9601), /* Hirose USB-100 */
|
||||
.driver_info = (unsigned long)&dm9601_info,
|
||||
},
|
||||
{}, // END
|
||||
};
|
||||
|
||||
|
@@ -283,7 +283,7 @@ generic_rndis_bind(struct usbnet *dev, struct usb_interface *intf, int flags)
|
||||
struct rndis_set_c *set_c;
|
||||
struct rndis_halt *halt;
|
||||
} u;
|
||||
u32 tmp, *phym;
|
||||
u32 tmp, phym_unspec, *phym;
|
||||
int reply_len;
|
||||
unsigned char *bp;
|
||||
|
||||
@@ -363,12 +363,15 @@ generic_rndis_bind(struct usbnet *dev, struct usb_interface *intf, int flags)
|
||||
goto halt_fail_and_release;
|
||||
|
||||
/* Check physical medium */
|
||||
phym = NULL;
|
||||
reply_len = sizeof *phym;
|
||||
retval = rndis_query(dev, intf, u.buf, OID_GEN_PHYSICAL_MEDIUM,
|
||||
0, (void **) &phym, &reply_len);
|
||||
if (retval != 0)
|
||||
if (retval != 0 || !phym) {
|
||||
/* OID is optional so don't fail here. */
|
||||
*phym = RNDIS_PHYSICAL_MEDIUM_UNSPECIFIED;
|
||||
phym_unspec = RNDIS_PHYSICAL_MEDIUM_UNSPECIFIED;
|
||||
phym = &phym_unspec;
|
||||
}
|
||||
if ((flags & FLAG_RNDIS_PHYM_WIRELESS) &&
|
||||
*phym != RNDIS_PHYSICAL_MEDIUM_WIRELESS_LAN) {
|
||||
if (netif_msg_probe(dev))
|
||||
|
Reference in New Issue
Block a user