forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-01-31 f70575805708cabdedea7498aaa3f710fde4d920
kernel/drivers/net/wireless/intel/iwlwifi/iwl-context-info-gen3.h
....@@ -5,7 +5,7 @@
55 *
66 * GPL LICENSE SUMMARY
77 *
8
- * Copyright(c) 2018 Intel Corporation
8
+ * Copyright(c) 2018, 2020 Intel Corporation
99 *
1010 * This program is free software; you can redistribute it and/or modify
1111 * it under the terms of version 2 of the GNU General Public License as
....@@ -18,7 +18,7 @@
1818 *
1919 * BSD LICENSE
2020 *
21
- * Copyright(c) 2018 Intel Corporation
21
+ * Copyright(c) 2018, 2020 Intel Corporation
2222 * All rights reserved.
2323 *
2424 * Redistribution and use in source and binary forms, with or without
....@@ -93,6 +93,11 @@
9393 * @IWL_PRPH_SCRATCH_MTR_FORMAT: a mask for the size of the tfd.
9494 * There are 4 optional values: 0: 16 bit, 1: 32 bit, 2: 64 bit,
9595 * 3: 256 bit.
96
+ * @IWL_PRPH_SCRATCH_RB_SIZE_EXT_MASK: RB size full information, ignored
97
+ * by older firmware versions, so set IWL_PRPH_SCRATCH_RB_SIZE_4K
98
+ * appropriately; use the below values for this.
99
+ * @IWL_PRPH_SCRATCH_RB_SIZE_EXT_8K: 8kB RB size
100
+ * @IWL_PRPH_SCRATCH_RB_SIZE_EXT_12K: 12kB RB size
96101 */
97102 enum iwl_prph_scratch_flags {
98103 IWL_PRPH_SCRATCH_EARLY_DEBUG_EN = BIT(4),
....@@ -103,6 +108,9 @@
103108 IWL_PRPH_SCRATCH_RB_SIZE_4K = BIT(16),
104109 IWL_PRPH_SCRATCH_MTR_MODE = BIT(17),
105110 IWL_PRPH_SCRATCH_MTR_FORMAT = BIT(18) | BIT(19),
111
+ IWL_PRPH_SCRATCH_RB_SIZE_EXT_MASK = 0xf << 20,
112
+ IWL_PRPH_SCRATCH_RB_SIZE_EXT_8K = 8 << 20,
113
+ IWL_PRPH_SCRATCH_RB_SIZE_EXT_12K = 9 << 20,
106114 };
107115
108116 /*
....@@ -130,16 +138,16 @@
130138 } __packed; /* PERIPH_SCRATCH_CONTROL_S */
131139
132140 /*
133
- * struct iwl_prph_scratch_ror_cfg - ror config
134
- * @ror_base_addr: ror start address
135
- * @ror_size: ror size in DWs
141
+ * struct iwl_prph_scratch_pnvm_cfg - ror config
142
+ * @pnvm_base_addr: PNVM start address
143
+ * @pnvm_size: PNVM size in DWs
136144 * @reserved: reserved
137145 */
138
-struct iwl_prph_scratch_ror_cfg {
139
- __le64 ror_base_addr;
140
- __le32 ror_size;
146
+struct iwl_prph_scratch_pnvm_cfg {
147
+ __le64 pnvm_base_addr;
148
+ __le32 pnvm_size;
141149 __le32 reserved;
142
-} __packed; /* PERIPH_SCRATCH_ROR_CFG_S */
150
+} __packed; /* PERIPH_SCRATCH_PNVM_CFG_S */
143151
144152 /*
145153 * struct iwl_prph_scratch_hwm_cfg - hwm config
....@@ -167,14 +175,14 @@
167175 * struct iwl_prph_scratch_ctrl_cfg - prph scratch ctrl and config
168176 * @version: version information of context info and HW
169177 * @control: control flags of FH configurations
170
- * @ror_cfg: ror configuration
178
+ * @pnvm_cfg: ror configuration
171179 * @hwm_cfg: hwm configuration
172180 * @rbd_cfg: default RX queue configuration
173181 */
174182 struct iwl_prph_scratch_ctrl_cfg {
175183 struct iwl_prph_scratch_version version;
176184 struct iwl_prph_scratch_control control;
177
- struct iwl_prph_scratch_ror_cfg ror_cfg;
185
+ struct iwl_prph_scratch_pnvm_cfg pnvm_cfg;
178186 struct iwl_prph_scratch_hwm_cfg hwm_cfg;
179187 struct iwl_prph_scratch_rbd_cfg rbd_cfg;
180188 } __packed; /* PERIPH_SCRATCH_CTRL_CFG_S */
....@@ -283,4 +291,7 @@
283291 const struct fw_img *fw);
284292 void iwl_pcie_ctxt_info_gen3_free(struct iwl_trans *trans);
285293
294
+int iwl_trans_pcie_ctx_info_gen3_set_pnvm(struct iwl_trans *trans,
295
+ const void *data, u32 len);
296
+
286297 #endif /* __iwl_context_info_file_gen3_h__ */