forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-13 9d77db3c730780c8ef5ccd4b66403ff5675cfe4e
kernel/drivers/net/wireless/rsi/rsi_boot_params.h
....@@ -80,6 +80,15 @@
8080 struct afepll_info afepll_info_g;
8181 } __packed;
8282
83
+struct pll_config_9116 {
84
+ __le16 pll_ctrl_set_reg;
85
+ __le16 pll_ctrl_clr_reg;
86
+ __le16 pll_modem_conig_reg;
87
+ __le16 soc_clk_config_reg;
88
+ __le16 adc_dac_strm1_config_reg;
89
+ __le16 adc_dac_strm2_config_reg;
90
+} __packed;
91
+
8392 /* structure to store configs related to UMAC clk programming */
8493 struct switch_clk {
8594 __le16 switch_clk_info;
....@@ -93,9 +102,30 @@
93102 __le16 qspi_uart_clock_reg_config;
94103 } __packed;
95104
105
+#define RSI_SWITCH_TASS_CLK BIT(0)
106
+#define RSI_SWITCH_QSPI_CLK BIT(1)
107
+#define RSI_SWITCH_SLP_CLK_2_32 BIT(2)
108
+#define RSI_SWITCH_WLAN_BBP_LMAC_CLK_REG BIT(3)
109
+#define RSI_SWITCH_ZBBT_BBP_LMAC_CLK_REG BIT(4)
110
+#define RSI_SWITCH_BBP_LMAC_CLK_REG BIT(5)
111
+#define RSI_MODEM_CLK_160MHZ BIT(6)
112
+
113
+struct switch_clk_9116 {
114
+ __le32 switch_clk_info;
115
+ __le32 tass_clock_reg;
116
+ __le32 wlan_bbp_lmac_clk_reg_val;
117
+ __le32 zbbt_bbp_lmac_clk_reg_val;
118
+ __le32 bbp_lmac_clk_en_val;
119
+} __packed;
120
+
96121 struct device_clk_info {
97122 struct pll_config pll_config_g;
98123 struct switch_clk switch_clk_g;
124
+} __packed;
125
+
126
+struct device_clk_info_9116 {
127
+ struct pll_config_9116 pll_config_9116_g;
128
+ struct switch_clk_9116 switch_clk_9116_g;
99129 } __packed;
100130
101131 struct bootup_params {
....@@ -127,4 +157,37 @@
127157 __le32 max_threshold_to_avoid_sleep;
128158 u8 beacon_resedue_alg_en;
129159 } __packed;
160
+
161
+struct bootup_params_9116 {
162
+ __le16 magic_number;
163
+#define LOADED_TOKEN 0x5AA5 /* Bootup params are installed by host
164
+ * or OTP/FLASH (Bootloader)
165
+ */
166
+#define ROM_TOKEN 0x55AA /* Bootup params are taken from ROM
167
+ * itself in MCU mode.
168
+ */
169
+ __le16 crystal_good_time;
170
+ __le32 valid;
171
+ __le32 reserved_for_valids;
172
+ __le16 bootup_mode_info;
173
+#define BT_COEXIST BIT(0)
174
+#define BOOTUP_MODE (BIT(2) | BIT(1))
175
+#define CUR_DEV_MODE_9116 (bootup_params_9116.bootup_mode_info >> 1)
176
+ __le16 digital_loop_back_params;
177
+ __le16 rtls_timestamp_en;
178
+ __le16 host_spi_intr_cfg;
179
+ struct device_clk_info_9116 device_clk_info_9116[1];
180
+ __le32 buckboost_wakeup_cnt;
181
+ __le16 pmu_wakeup_wait;
182
+ u8 shutdown_wait_time;
183
+ u8 pmu_slp_clkout_sel;
184
+ __le32 wdt_prog_value;
185
+ __le32 wdt_soc_rst_delay;
186
+ __le32 dcdc_operation_mode;
187
+ __le32 soc_reset_wait_cnt;
188
+ __le32 waiting_time_at_fresh_sleep;
189
+ __le32 max_threshold_to_avoid_sleep;
190
+ u8 beacon_resedue_alg_en;
191
+} __packed;
192
+
130193 #endif