|
@@ -112,6 +112,17 @@ struct brcmf_bus_msgbuf {
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
+ * struct brcmf_bus_stats - bus statistic counters.
|
|
|
|
+ *
|
|
|
|
+ * @pktcowed: packets cowed for extra headroom/unorphan.
|
|
|
|
+ * @pktcow_failed: packets dropped due to failed cow-ing.
|
|
|
|
+ */
|
|
|
|
+struct brcmf_bus_stats {
|
|
|
|
+ atomic_t pktcowed;
|
|
|
|
+ atomic_t pktcow_failed;
|
|
|
|
+};
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* struct brcmf_bus - interface structure between common and bus layer
|
|
* struct brcmf_bus - interface structure between common and bus layer
|
|
*
|
|
*
|
|
@@ -120,8 +131,8 @@ struct brcmf_bus_msgbuf {
|
|
* @dev: device pointer of bus device.
|
|
* @dev: device pointer of bus device.
|
|
* @drvr: public driver information.
|
|
* @drvr: public driver information.
|
|
* @state: operational state of the bus interface.
|
|
* @state: operational state of the bus interface.
|
|
|
|
+ * @stats: statistics shared between common and bus layer.
|
|
* @maxctl: maximum size for rxctl request message.
|
|
* @maxctl: maximum size for rxctl request message.
|
|
- * @tx_realloc: number of tx packets realloced for headroom.
|
|
|
|
* @chip: device identifier of the dongle chip.
|
|
* @chip: device identifier of the dongle chip.
|
|
* @always_use_fws_queue: bus wants use queue also when fwsignal is inactive.
|
|
* @always_use_fws_queue: bus wants use queue also when fwsignal is inactive.
|
|
* @wowl_supported: is wowl supported by bus driver.
|
|
* @wowl_supported: is wowl supported by bus driver.
|
|
@@ -137,8 +148,8 @@ struct brcmf_bus {
|
|
struct device *dev;
|
|
struct device *dev;
|
|
struct brcmf_pub *drvr;
|
|
struct brcmf_pub *drvr;
|
|
enum brcmf_bus_state state;
|
|
enum brcmf_bus_state state;
|
|
|
|
+ struct brcmf_bus_stats stats;
|
|
uint maxctl;
|
|
uint maxctl;
|
|
- atomic_t tx_realloc;
|
|
|
|
u32 chip;
|
|
u32 chip;
|
|
u32 chiprev;
|
|
u32 chiprev;
|
|
bool always_use_fws_queue;
|
|
bool always_use_fws_queue;
|