diff options
Diffstat (limited to 'drivers/net/wireless/wl12xx/cmd.h')
-rw-r--r-- | drivers/net/wireless/wl12xx/cmd.h | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/drivers/net/wireless/wl12xx/cmd.h b/drivers/net/wireless/wl12xx/cmd.h index 5cac95d9480c..1f7037292c15 100644 --- a/drivers/net/wireless/wl12xx/cmd.h +++ b/drivers/net/wireless/wl12xx/cmd.h | |||
@@ -70,6 +70,9 @@ int wl1271_cmd_start_bss(struct wl1271 *wl); | |||
70 | int wl1271_cmd_stop_bss(struct wl1271 *wl); | 70 | int wl1271_cmd_stop_bss(struct wl1271 *wl); |
71 | int wl1271_cmd_add_sta(struct wl1271 *wl, struct ieee80211_sta *sta, u8 hlid); | 71 | int wl1271_cmd_add_sta(struct wl1271 *wl, struct ieee80211_sta *sta, u8 hlid); |
72 | int wl1271_cmd_remove_sta(struct wl1271 *wl, u8 hlid); | 72 | int wl1271_cmd_remove_sta(struct wl1271 *wl, u8 hlid); |
73 | int wl12xx_cmd_config_fwlog(struct wl1271 *wl); | ||
74 | int wl12xx_cmd_start_fwlog(struct wl1271 *wl); | ||
75 | int wl12xx_cmd_stop_fwlog(struct wl1271 *wl); | ||
73 | 76 | ||
74 | enum wl1271_commands { | 77 | enum wl1271_commands { |
75 | CMD_INTERROGATE = 1, /*use this to read information elements*/ | 78 | CMD_INTERROGATE = 1, /*use this to read information elements*/ |
@@ -107,6 +110,9 @@ enum wl1271_commands { | |||
107 | CMD_START_PERIODIC_SCAN = 50, | 110 | CMD_START_PERIODIC_SCAN = 50, |
108 | CMD_STOP_PERIODIC_SCAN = 51, | 111 | CMD_STOP_PERIODIC_SCAN = 51, |
109 | CMD_SET_STA_STATE = 52, | 112 | CMD_SET_STA_STATE = 52, |
113 | CMD_CONFIG_FWLOGGER = 53, | ||
114 | CMD_START_FWLOGGER = 54, | ||
115 | CMD_STOP_FWLOGGER = 55, | ||
110 | 116 | ||
111 | /* AP mode commands */ | 117 | /* AP mode commands */ |
112 | CMD_BSS_START = 60, | 118 | CMD_BSS_START = 60, |
@@ -575,4 +581,60 @@ struct wl1271_cmd_remove_sta { | |||
575 | u8 padding1; | 581 | u8 padding1; |
576 | } __packed; | 582 | } __packed; |
577 | 583 | ||
584 | /* | ||
585 | * Continuous mode - packets are transferred to the host periodically | ||
586 | * via the data path. | ||
587 | * On demand - Log messages are stored in a cyclic buffer in the | ||
588 | * firmware, and only transferred to the host when explicitly requested | ||
589 | */ | ||
590 | enum wl12xx_fwlogger_log_mode { | ||
591 | WL12XX_FWLOG_CONTINUOUS, | ||
592 | WL12XX_FWLOG_ON_DEMAND | ||
593 | }; | ||
594 | |||
595 | /* Include/exclude timestamps from the log messages */ | ||
596 | enum wl12xx_fwlogger_timestamp { | ||
597 | WL12XX_FWLOG_TIMESTAMP_DISABLED, | ||
598 | WL12XX_FWLOG_TIMESTAMP_ENABLED | ||
599 | }; | ||
600 | |||
601 | /* | ||
602 | * Logs can be routed to the debug pinouts (where available), to the host bus | ||
603 | * (SDIO/SPI), or dropped | ||
604 | */ | ||
605 | enum wl12xx_fwlogger_output { | ||
606 | WL12XX_FWLOG_OUTPUT_NONE, | ||
607 | WL12XX_FWLOG_OUTPUT_DBG_PINS, | ||
608 | WL12XX_FWLOG_OUTPUT_HOST, | ||
609 | }; | ||
610 | |||
611 | struct wl12xx_cmd_config_fwlog { | ||
612 | struct wl1271_cmd_header header; | ||
613 | |||
614 | /* See enum wl12xx_fwlogger_log_mode */ | ||
615 | u8 logger_mode; | ||
616 | |||
617 | /* Minimum log level threshold */ | ||
618 | u8 log_severity; | ||
619 | |||
620 | /* Include/exclude timestamps from the log messages */ | ||
621 | u8 timestamp; | ||
622 | |||
623 | /* See enum wl1271_fwlogger_output */ | ||
624 | u8 output; | ||
625 | |||
626 | /* Regulates the frequency of log messages */ | ||
627 | u8 threshold; | ||
628 | |||
629 | u8 padding[3]; | ||
630 | } __packed; | ||
631 | |||
632 | struct wl12xx_cmd_start_fwlog { | ||
633 | struct wl1271_cmd_header header; | ||
634 | } __packed; | ||
635 | |||
636 | struct wl12xx_cmd_stop_fwlog { | ||
637 | struct wl1271_cmd_header header; | ||
638 | } __packed; | ||
639 | |||
578 | #endif /* __WL1271_CMD_H__ */ | 640 | #endif /* __WL1271_CMD_H__ */ |