dev->cdc_filter = 0x000f; 
dev->cdc_filter = DEFAULT_FILTER; 
eth_set_config (struct eth_dev *dev, unsigned number, int gfp_flags){	int			result = 0;	struct usb_gadget	*gadget = dev->gadget;	if (number == dev->config)		return 0;	if (gadget_is_sa1100 (gadget)			&& dev->config			&& atomic_read (&dev->tx_qlen) != 0) {		/* tx fifo is full, but we can't clear it...*/		INFO (dev, "can't change configurations\n");		return -ESPIPE;	}	eth_reset_config (dev);	/* default:  pass all packets, no multicast filtering */	dev->cdc_filter = 0x000f;	switch (number) {	case DEV_CONFIG_VALUE:		dev->rndis = 0;		result = set_ether_config (dev, gfp_flags);		break;#ifdef	CONFIG_USB_ETH_RNDIS	case DEV_RNDIS_CONFIG_VALUE:		dev->rndis = 1;		result = set_ether_config (dev, gfp_flags);		break;#endif	default:		result = -EINVAL;		/* FALL THROUGH */	case 0:		break;	}	if (result) {		if (number)			eth_reset_config (dev);		usb_gadget_vbus_draw(dev->gadget,				dev->gadget->is_otg ? 8 : 100);	} else {		char *speed;		unsigned power;		power = 2 * eth_config.bMaxPower;		usb_gadget_vbus_draw(dev->gadget, power);		switch (gadget->speed) {		case USB_SPEED_FULL:	speed = "full"; break;#ifdef CONFIG_USB_GADGET_DUALSPEED		case USB_SPEED_HIGH:	speed = "high"; break;#endif		default: 		speed = "?"; break;		}		dev->config = number;		INFO (dev, "%s speed config #%d: %d mA, %s, using %s\n",				speed, number, power, driver_desc,				dev->rndis					? "RNDIS"					: (dev->cdc						? "CDC Ethernet"						: "CDC Ethernet Subset"));	}	return result;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/6cdee106e7571751ecc0e9f96606322f88b64a8d/ether.c/buggy/drivers/usb/gadget/ether.c