.. | .. |
---|
80 | 80 | struct afepll_info afepll_info_g; |
---|
81 | 81 | } __packed; |
---|
82 | 82 | |
---|
| 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 | + |
---|
83 | 92 | /* structure to store configs related to UMAC clk programming */ |
---|
84 | 93 | struct switch_clk { |
---|
85 | 94 | __le16 switch_clk_info; |
---|
.. | .. |
---|
93 | 102 | __le16 qspi_uart_clock_reg_config; |
---|
94 | 103 | } __packed; |
---|
95 | 104 | |
---|
| 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 | + |
---|
96 | 121 | struct device_clk_info { |
---|
97 | 122 | struct pll_config pll_config_g; |
---|
98 | 123 | 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; |
---|
99 | 129 | } __packed; |
---|
100 | 130 | |
---|
101 | 131 | struct bootup_params { |
---|
.. | .. |
---|
127 | 157 | __le32 max_threshold_to_avoid_sleep; |
---|
128 | 158 | u8 beacon_resedue_alg_en; |
---|
129 | 159 | } __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 | + |
---|
130 | 193 | #endif |
---|