How to implement the asynchronous notification in the ether drivers?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dear Greg KH,

  I am sorry, I must trouble you again.
  
  I am now developing a new CDC-ECM driver for our device, based on cdc_ether.c (drivers/net/usb/cdc_ether.c).
  
  And in our requirement, we want the driver can notify the application in user space with asynchronous notification, 
  while the USB_CDC_NOTIFY_RESPONSE_AVAILABLE  occurs.
  
  So I want to implement it with the fasync feature in the 'struct file_operations'. I declare them in our CDC-ECM driver as follows:
  
  	static struct fasync_struct *hw_irq_fasync = NULL;
  	static int hw_ether_fasync(int fd, struct file* filp, int on){
  		int retval = 0;
  		retval = fasync_helper(fd, filp, on, &hw_ether_fasync);
  		if (0 > retval)
  			return retval;
  		return 0;
  	}
  	static const struct file_operations hw_ether_ops = {
  	.owner = THIS_MODULE,
  	.fasync	= hw_ether_fasync,
  	};
  	
  But unfortunately, I don't know how to register 'hw_ether_ops' in our driver, 
   static struct usb_driver hw_cdc_driver = {
		.name =		"huawei_driver",
		.id_table =	hw_products,
		.probe =	usbnet_probe,
		.disconnect =	usbnet_disconnect,
		.suspend =	usbnet_suspend,
		.resume =	usbnet_resume,
	};
	
	Can you tell me how to register it in our driver?
	
	By the way, I also heard that, this asynchronous notification mechanism is used for Char drivers, not for ether drivers.
	Is it true? Then how to implement the asynchronous notification in the ether drivers?
	
Best Regards,

Franko Fang
2009-3-21

******************************************************************************************
 This email and its attachments contain confidential information from HUAWEI, which is intended only for the person or entity whose address is listed above. Any use of the information contained here in any way (including, but not limited to, total or partial disclosure, reproduction, or dissemination) by persons other than the intended recipient(s) is prohibited. If you receive this email in error, please notify the sender by phone or email
 immediately and delete it!
 *****************************************************************************************
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux