diff options
author | Rakesh Pillai <pillair@qti.qualcomm.com> | 2017-12-11 09:22:55 -0500 |
---|---|---|
committer | Kalle Valo <kvalo@qca.qualcomm.com> | 2017-12-14 10:33:24 -0500 |
commit | 03a72288c546289cfa0eb1e3613fb9cdb302b4f9 (patch) | |
tree | 8cb2613eade51b28f3c22b976ff3727711556ef4 | |
parent | 9f2992fea580a48135591873e5e3ac7e01444207 (diff) |
ath10k: wmi: add hw params entry for wcn3990
Add hw params entry for wcn3990 and populate various
target specific values for wcn3990.
Signed-off-by: Rakesh Pillai <pillair@qti.qualcomm.com>
Signed-off-by: Govind Singh <govinds@qti.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
-rw-r--r-- | drivers/net/wireless/ath/ath10k/core.c | 18 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath10k/hw.c | 2 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath10k/hw.h | 10 |
3 files changed, 30 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath10k/core.c b/drivers/net/wireless/ath/ath10k/core.c index 762012d6c78f..6d065f8d7f78 100644 --- a/drivers/net/wireless/ath/ath10k/core.c +++ b/drivers/net/wireless/ath/ath10k/core.c | |||
@@ -405,6 +405,24 @@ static const struct ath10k_hw_params ath10k_hw_params_list[] = { | |||
405 | .ast_skid_limit = 0x10, | 405 | .ast_skid_limit = 0x10, |
406 | .num_wds_entries = 0x20, | 406 | .num_wds_entries = 0x20, |
407 | }, | 407 | }, |
408 | { | ||
409 | .id = WCN3990_HW_1_0_DEV_VERSION, | ||
410 | .dev_id = 0, | ||
411 | .name = "wcn3990 hw1.0", | ||
412 | .continuous_frag_desc = true, | ||
413 | .tx_chain_mask = 0x7, | ||
414 | .rx_chain_mask = 0x7, | ||
415 | .max_spatial_stream = 4, | ||
416 | .fw = { | ||
417 | .dir = WCN3990_HW_1_0_FW_DIR, | ||
418 | }, | ||
419 | .sw_decrypt_mcast_mgmt = true, | ||
420 | .hw_ops = &wcn3990_ops, | ||
421 | .decap_align_bytes = 1, | ||
422 | .num_peers = TARGET_HL_10_TLV_NUM_PEERS, | ||
423 | .ast_skid_limit = TARGET_HL_10_TLV_AST_SKID_LIMIT, | ||
424 | .num_wds_entries = TARGET_HL_10_TLV_NUM_WDS_ENTRIES, | ||
425 | }, | ||
408 | }; | 426 | }; |
409 | 427 | ||
410 | static const char *const ath10k_core_fw_feature_str[] = { | 428 | static const char *const ath10k_core_fw_feature_str[] = { |
diff --git a/drivers/net/wireless/ath/ath10k/hw.c b/drivers/net/wireless/ath/ath10k/hw.c index 88955bbe20bd..c31eea632777 100644 --- a/drivers/net/wireless/ath/ath10k/hw.c +++ b/drivers/net/wireless/ath/ath10k/hw.c | |||
@@ -931,3 +931,5 @@ const struct ath10k_hw_ops qca6174_ops = { | |||
931 | .set_coverage_class = ath10k_hw_qca988x_set_coverage_class, | 931 | .set_coverage_class = ath10k_hw_qca988x_set_coverage_class, |
932 | .enable_pll_clk = ath10k_hw_qca6174_enable_pll_clock, | 932 | .enable_pll_clk = ath10k_hw_qca6174_enable_pll_clock, |
933 | }; | 933 | }; |
934 | |||
935 | const struct ath10k_hw_ops wcn3990_ops = {}; | ||
diff --git a/drivers/net/wireless/ath/ath10k/hw.h b/drivers/net/wireless/ath/ath10k/hw.h index fedb6c799374..90ad39bdeec4 100644 --- a/drivers/net/wireless/ath/ath10k/hw.h +++ b/drivers/net/wireless/ath/ath10k/hw.h | |||
@@ -128,6 +128,10 @@ enum qca9377_chip_id_rev { | |||
128 | #define QCA4019_HW_1_0_BOARD_DATA_FILE "board.bin" | 128 | #define QCA4019_HW_1_0_BOARD_DATA_FILE "board.bin" |
129 | #define QCA4019_HW_1_0_PATCH_LOAD_ADDR 0x1234 | 129 | #define QCA4019_HW_1_0_PATCH_LOAD_ADDR 0x1234 |
130 | 130 | ||
131 | /* WCN3990 1.0 definitions */ | ||
132 | #define WCN3990_HW_1_0_DEV_VERSION ATH10K_HW_WCN3990 | ||
133 | #define WCN3990_HW_1_0_FW_DIR ATH10K_FW_DIR "/WCN3990/hw3.0" | ||
134 | |||
131 | #define ATH10K_FW_FILE_BASE "firmware" | 135 | #define ATH10K_FW_FILE_BASE "firmware" |
132 | #define ATH10K_FW_API_MAX 6 | 136 | #define ATH10K_FW_API_MAX 6 |
133 | #define ATH10K_FW_API_MIN 2 | 137 | #define ATH10K_FW_API_MIN 2 |
@@ -571,6 +575,7 @@ struct ath10k_hw_ops { | |||
571 | extern const struct ath10k_hw_ops qca988x_ops; | 575 | extern const struct ath10k_hw_ops qca988x_ops; |
572 | extern const struct ath10k_hw_ops qca99x0_ops; | 576 | extern const struct ath10k_hw_ops qca99x0_ops; |
573 | extern const struct ath10k_hw_ops qca6174_ops; | 577 | extern const struct ath10k_hw_ops qca6174_ops; |
578 | extern const struct ath10k_hw_ops wcn3990_ops; | ||
574 | 579 | ||
575 | extern const struct ath10k_hw_clk_params qca6174_clk[]; | 580 | extern const struct ath10k_hw_clk_params qca6174_clk[]; |
576 | 581 | ||
@@ -667,6 +672,11 @@ ath10k_rx_desc_get_l3_pad_bytes(struct ath10k_hw_params *hw, | |||
667 | #define TARGET_TLV_NUM_MSDU_DESC (1024 + 32) | 672 | #define TARGET_TLV_NUM_MSDU_DESC (1024 + 32) |
668 | #define TARGET_TLV_NUM_WOW_PATTERNS 22 | 673 | #define TARGET_TLV_NUM_WOW_PATTERNS 22 |
669 | 674 | ||
675 | /* Target specific defines for WMI-HL-1.0 firmware */ | ||
676 | #define TARGET_HL_10_TLV_NUM_PEERS 14 | ||
677 | #define TARGET_HL_10_TLV_AST_SKID_LIMIT 6 | ||
678 | #define TARGET_HL_10_TLV_NUM_WDS_ENTRIES 2 | ||
679 | |||
670 | /* Diagnostic Window */ | 680 | /* Diagnostic Window */ |
671 | #define CE_DIAG_PIPE 7 | 681 | #define CE_DIAG_PIPE 7 |
672 | 682 | ||