From 616ea9d08bebd6f0c581806d051c5562f1d50565 Mon Sep 17 00:00:00 2001 From: Rajasekaran Kalidoss Date: Wed, 6 Jun 2018 09:05:41 +0530 Subject: cnss2: Add support for USB transport Changes in state machine and boot flow to support usb bus based behaviour. Handler functions added to support USB boot flow. Change-Id: I51c4751c8d8669a8b54ae692ae3ec1bb32d1e7be Signed-off-by: Rajasekaran Kalidoss --- include/net/cnss2.h | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/net/cnss2.h b/include/net/cnss2.h index 7ca407f6b606..8dc7fc44aa02 100644 --- a/include/net/cnss2.h +++ b/include/net/cnss2.h @@ -14,6 +14,7 @@ #define _NET_CNSS2_H #include +#include #define CNSS_MAX_FILE_NAME 20 #define CNSS_MAX_TIMESTAMP_LEN 32 @@ -83,6 +84,21 @@ struct cnss_wlan_driver { const struct pci_device_id *id_table; }; +struct cnss_usb_wlan_driver { + char *name; + int (*probe)(struct usb_interface *pintf, const struct usb_device_id + *id); + void (*remove)(struct usb_interface *pintf); + int (*reinit)(struct usb_interface *pintf, const struct usb_device_id + *id); + void (*shutdown)(struct usb_interface *pintf); + void (*crash_shutdown)(struct usb_interface *pintf); + int (*suspend)(struct usb_interface *pintf, pm_message_t state); + int (*resume)(struct usb_interface *pintf); + int (*reset_resume)(struct usb_interface *pintf); + const struct usb_device_id *id_table; +}; + enum cnss_driver_status { CNSS_UNINITIALIZED, CNSS_INITIALIZED, @@ -215,5 +231,7 @@ extern int cnss_athdiag_write(struct device *dev, uint32_t offset, uint32_t mem_type, uint32_t data_len, uint8_t *input); extern int cnss_set_fw_log_mode(struct device *dev, uint8_t fw_log_mode); - +extern int cnss_usb_wlan_register_driver(struct cnss_usb_wlan_driver *driver); +extern void cnss_usb_wlan_unregister_driver(struct cnss_usb_wlan_driver * + driver); #endif /* _NET_CNSS2_H */ -- cgit v1.2.3