10 #define USB2_DE_EMP_ON 1
11 #define USB2_PRE_EMP_ON 2
12 #define USB2_DE_EMP_ON_PRE_EMP_ON 3
15 #define USB2_FULL_BIT_PRE_EMP 0
16 #define USB2_HALF_BIT_PRE_EMP 1
19 #define USB2_BIAS_0MV 0
20 #define USB2_BIAS_11P25MV 1
21 #define USB2_BIAS_16P9MV 2
22 #define USB2_BIAS_28P15MV 3
23 #define USB2_BIAS_39P35MV 5
24 #define USB2_BIAS_45MV 6
25 #define USB2_BIAS_56P3MV 7
57 #define USB2_PORT_EMPTY { \
60 .tx_bias = USB2_BIAS_0MV, \
61 .tx_emp_enable = USB2_EMP_OFF, \
62 .pre_emp_bias = USB2_BIAS_0MV, \
63 .pre_emp_bit = USB2_HALF_BIT_PRE_EMP, \
67 #define USB2_PORT_LONG(pin) { \
70 .tx_bias = USB2_BIAS_39P35MV, \
71 .tx_emp_enable = USB2_PRE_EMP_ON, \
72 .pre_emp_bias = USB2_BIAS_56P3MV, \
73 .pre_emp_bit = USB2_HALF_BIT_PRE_EMP, \
77 #define USB2_PORT_MID(pin) { \
80 .tx_bias = USB2_BIAS_0MV, \
81 .tx_emp_enable = USB2_PRE_EMP_ON, \
82 .pre_emp_bias = USB2_BIAS_56P3MV, \
83 .pre_emp_bit = USB2_HALF_BIT_PRE_EMP, \
87 #define USB2_PORT_SHORT(pin) { \
90 .tx_bias = USB2_BIAS_39P35MV, \
91 .tx_emp_enable = USB2_PRE_EMP_ON | USB2_DE_EMP_ON, \
92 .pre_emp_bias = USB2_BIAS_39P35MV, \
93 .pre_emp_bit = USB2_FULL_BIT_PRE_EMP, \
97 #define USB2_PORT_MAX(pin) { \
100 .tx_bias = USB2_BIAS_56P3MV, \
101 .tx_emp_enable = USB2_PRE_EMP_ON, \
102 .pre_emp_bias = USB2_BIAS_56P3MV, \
103 .pre_emp_bit = USB2_HALF_BIT_PRE_EMP, \
108 #define USB2_PORT_TYPE_C(pin) { \
111 .tx_bias = USB2_BIAS_0MV, \
112 .tx_emp_enable = USB2_PRE_EMP_ON, \
113 .pre_emp_bias = USB2_BIAS_56P3MV, \
114 .pre_emp_bit = USB2_HALF_BIT_PRE_EMP, \
135 #define USB3_PORT_EMPTY { \
139 .tx_downscale_amp = 0x00, \
140 .gen2_tx_rate0_uniq_tran_enable = 0, \
141 .gen2_tx_rate0_uniq_tran = 0x00, \
142 .gen2_tx_rate1_uniq_tran_enable = 0, \
143 .gen2_tx_rate1_uniq_tran = 0x00, \
144 .gen2_tx_rate2_uniq_tran_enable = 0, \
145 .gen2_tx_rate2_uniq_tran = 0x00, \
146 .gen2_tx_rate3_uniq_tran_enable = 0, \
147 .gen2_tx_rate3_uniq_tran = 0x00, \
148 .gen2_rx_tuning_enable = 0, \
149 .gen2_rx_tuning_params = 0x00, \
150 .gen2_rx_filter_sel = 0x00, \
153 #define USB3_PORT_DEFAULT(pin) { \
157 .tx_downscale_amp = 0x00, \
158 .gen2_tx_rate0_uniq_tran_enable = 0, \
159 .gen2_tx_rate0_uniq_tran = 0x00, \
160 .gen2_tx_rate1_uniq_tran_enable = 0, \
161 .gen2_tx_rate1_uniq_tran = 0x00, \
162 .gen2_tx_rate2_uniq_tran_enable = 0, \
163 .gen2_tx_rate2_uniq_tran = 0x00, \
164 .gen2_tx_rate3_uniq_tran_enable = 0, \
165 .gen2_tx_rate3_uniq_tran = 0x00, \
166 .gen2_rx_tuning_enable = 0, \
167 .gen2_rx_tuning_params = 0x00, \
168 .gen2_rx_filter_sel = 0x00, \
171 #define USB3_PORT_GEN2_DEFAULT(pin) { \
175 .tx_downscale_amp = 0x00, \
176 .gen2_tx_rate0_uniq_tran_enable = 0, \
177 .gen2_tx_rate0_uniq_tran = 0x00, \
178 .gen2_tx_rate1_uniq_tran_enable = 0, \
179 .gen2_tx_rate1_uniq_tran = 0x00, \
180 .gen2_tx_rate2_uniq_tran_enable = 1, \
181 .gen2_tx_rate2_uniq_tran = 0x4C, \
182 .gen2_tx_rate3_uniq_tran_enable = 0, \
183 .gen2_tx_rate3_uniq_tran = 0x00, \
184 .gen2_rx_tuning_enable = 0x0F, \
185 .gen2_rx_tuning_params = 0x15, \
186 .gen2_rx_filter_sel = 0x44, \
194 #define USB_PORT_WAKE_ENABLE(x) (1 << ((x) - 1))
uint8_t gen2_tx_rate0_uniq_tran_enable
uint8_t gen2_tx_rate3_uniq_tran_enable
uint8_t gen2_tx_rate1_uniq_tran
uint8_t gen2_tx_rate2_uniq_tran_enable
uint8_t gen2_tx_rate1_uniq_tran_enable
uint8_t gen2_tx_rate3_uniq_tran
uint8_t gen2_tx_rate0_uniq_tran
uint8_t gen2_rx_tuning_enable
uint8_t gen2_rx_tuning_params
uint8_t gen2_tx_rate2_uniq_tran
uint8_t gen2_rx_filter_sel