forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-10 37f49e37ab4cb5d0bc4c60eb5c6d4dd57db767bb
kernel/drivers/staging/vt6656/mac.c
....@@ -22,90 +22,40 @@
2222 #include "mac.h"
2323 #include "usbpipe.h"
2424
25
-/*
26
- * Description:
27
- * Write MAC Multicast Address Mask
28
- *
29
- * Parameters:
30
- * In:
31
- * mc_filter (mac filter)
32
- * Out:
33
- * none
34
- *
35
- * Return Value: none
36
- *
37
- */
38
-void vnt_mac_set_filter(struct vnt_private *priv, u64 mc_filter)
25
+int vnt_mac_set_filter(struct vnt_private *priv, u64 mc_filter)
3926 {
4027 __le64 le_mc = cpu_to_le64(mc_filter);
4128
42
- vnt_control_out(priv, MESSAGE_TYPE_WRITE, MAC_REG_MAR0,
43
- MESSAGE_REQUEST_MACREG, sizeof(le_mc), (u8 *)&le_mc);
29
+ return vnt_control_out(priv, MESSAGE_TYPE_WRITE, MAC_REG_MAR0,
30
+ MESSAGE_REQUEST_MACREG, sizeof(le_mc),
31
+ (u8 *)&le_mc);
4432 }
4533
46
-/*
47
- * Description:
48
- * Shut Down MAC
49
- *
50
- * Parameters:
51
- * In:
52
- * Out:
53
- * none
54
- *
55
- *
56
- */
57
-void vnt_mac_shutdown(struct vnt_private *priv)
34
+int vnt_mac_shutdown(struct vnt_private *priv)
5835 {
59
- vnt_control_out(priv, MESSAGE_TYPE_MACSHUTDOWN, 0, 0, 0, NULL);
36
+ return vnt_control_out(priv, MESSAGE_TYPE_MACSHUTDOWN, 0, 0, 0, NULL);
6037 }
6138
62
-void vnt_mac_set_bb_type(struct vnt_private *priv, u8 type)
39
+int vnt_mac_set_bb_type(struct vnt_private *priv, u8 type)
6340 {
6441 u8 data[2];
6542
6643 data[0] = type;
6744 data[1] = EnCFG_BBType_MASK;
6845
69
- vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, MAC_REG_ENCFG0,
70
- MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
46
+ return vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, MAC_REG_ENCFG0,
47
+ MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data),
48
+ data);
7149 }
7250
73
-/*
74
- * Description:
75
- * Disable the Key Entry by MISCFIFO
76
- *
77
- * Parameters:
78
- * In:
79
- * dwIoBase - Base Address for MAC
80
- *
81
- * Out:
82
- * none
83
- *
84
- * Return Value: none
85
- *
86
- */
87
-void vnt_mac_disable_keyentry(struct vnt_private *priv, u8 entry_idx)
51
+int vnt_mac_disable_keyentry(struct vnt_private *priv, u8 entry_idx)
8852 {
89
- vnt_control_out(priv, MESSAGE_TYPE_CLRKEYENTRY, 0, 0,
90
- sizeof(entry_idx), &entry_idx);
53
+ return vnt_control_out(priv, MESSAGE_TYPE_CLRKEYENTRY, 0, 0,
54
+ sizeof(entry_idx), &entry_idx);
9155 }
9256
93
-/*
94
- * Description:
95
- * Set the Key by MISCFIFO
96
- *
97
- * Parameters:
98
- * In:
99
- * dwIoBase - Base Address for MAC
100
- *
101
- * Out:
102
- * none
103
- *
104
- * Return Value: none
105
- *
106
- */
107
-void vnt_mac_set_keyentry(struct vnt_private *priv, u16 key_ctl, u32 entry_idx,
108
- u32 key_idx, u8 *addr, u8 *key)
57
+int vnt_mac_set_keyentry(struct vnt_private *priv, u16 key_ctl, u32 entry_idx,
58
+ u32 key_idx, u8 *addr, u8 *key)
10959 {
11060 struct vnt_mac_set_key set_key;
11161 u16 offset;
....@@ -124,113 +74,112 @@
12474 dev_dbg(&priv->usb->dev, "offset %d key ctl %d set key %24ph\n",
12575 offset, key_ctl, (u8 *)&set_key);
12676
127
- vnt_control_out(priv, MESSAGE_TYPE_SETKEY, offset,
128
- (u16)key_idx, sizeof(struct vnt_mac_set_key),
129
- (u8 *)&set_key);
77
+ return vnt_control_out(priv, MESSAGE_TYPE_SETKEY, offset,
78
+ (u16)key_idx, sizeof(struct vnt_mac_set_key),
79
+ (u8 *)&set_key);
13080 }
13181
132
-void vnt_mac_reg_bits_off(struct vnt_private *priv, u8 reg_ofs, u8 bits)
82
+int vnt_mac_reg_bits_off(struct vnt_private *priv, u8 reg_ofs, u8 bits)
13383 {
13484 u8 data[2];
13585
13686 data[0] = 0;
13787 data[1] = bits;
13888
139
- vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK,
140
- reg_ofs, MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data),
141
- data);
89
+ return vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, reg_ofs,
90
+ MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
14291 }
14392
144
-void vnt_mac_reg_bits_on(struct vnt_private *priv, u8 reg_ofs, u8 bits)
93
+int vnt_mac_reg_bits_on(struct vnt_private *priv, u8 reg_ofs, u8 bits)
14594 {
14695 u8 data[2];
14796
14897 data[0] = bits;
14998 data[1] = bits;
15099
151
- vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, reg_ofs,
152
- MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
100
+ return vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, reg_ofs,
101
+ MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
153102 }
154103
155
-void vnt_mac_write_word(struct vnt_private *priv, u8 reg_ofs, u16 word)
104
+int vnt_mac_write_word(struct vnt_private *priv, u8 reg_ofs, u16 word)
156105 {
157106 u8 data[2];
158107
159108 data[0] = (u8)(word & 0xff);
160109 data[1] = (u8)(word >> 8);
161110
162
- vnt_control_out(priv, MESSAGE_TYPE_WRITE, reg_ofs,
163
- MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
111
+ return vnt_control_out(priv, MESSAGE_TYPE_WRITE, reg_ofs,
112
+ MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
164113 }
165114
166
-void vnt_mac_set_bssid_addr(struct vnt_private *priv, u8 *addr)
115
+int vnt_mac_set_bssid_addr(struct vnt_private *priv, u8 *addr)
167116 {
168
- vnt_control_out(priv, MESSAGE_TYPE_WRITE, MAC_REG_BSSID0,
169
- MESSAGE_REQUEST_MACREG, ETH_ALEN, addr);
117
+ return vnt_control_out(priv, MESSAGE_TYPE_WRITE, MAC_REG_BSSID0,
118
+ MESSAGE_REQUEST_MACREG, ETH_ALEN, addr);
170119 }
171120
172
-void vnt_mac_enable_protect_mode(struct vnt_private *priv)
121
+int vnt_mac_enable_protect_mode(struct vnt_private *priv)
173122 {
174123 u8 data[2];
175124
176125 data[0] = EnCFG_ProtectMd;
177126 data[1] = EnCFG_ProtectMd;
178127
179
- vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, MAC_REG_ENCFG0,
180
- MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
128
+ return vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, MAC_REG_ENCFG0,
129
+ MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
181130 }
182131
183
-void vnt_mac_disable_protect_mode(struct vnt_private *priv)
132
+int vnt_mac_disable_protect_mode(struct vnt_private *priv)
184133 {
185134 u8 data[2];
186135
187136 data[0] = 0;
188137 data[1] = EnCFG_ProtectMd;
189138
190
- vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, MAC_REG_ENCFG0,
191
- MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
139
+ return vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, MAC_REG_ENCFG0,
140
+ MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
192141 }
193142
194
-void vnt_mac_enable_barker_preamble_mode(struct vnt_private *priv)
143
+int vnt_mac_enable_barker_preamble_mode(struct vnt_private *priv)
195144 {
196145 u8 data[2];
197146
198147 data[0] = EnCFG_BarkerPream;
199148 data[1] = EnCFG_BarkerPream;
200149
201
- vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, MAC_REG_ENCFG2,
202
- MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
150
+ return vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, MAC_REG_ENCFG2,
151
+ MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
203152 }
204153
205
-void vnt_mac_disable_barker_preamble_mode(struct vnt_private *priv)
154
+int vnt_mac_disable_barker_preamble_mode(struct vnt_private *priv)
206155 {
207156 u8 data[2];
208157
209158 data[0] = 0;
210159 data[1] = EnCFG_BarkerPream;
211160
212
- vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, MAC_REG_ENCFG2,
213
- MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
161
+ return vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, MAC_REG_ENCFG2,
162
+ MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
214163 }
215164
216
-void vnt_mac_set_beacon_interval(struct vnt_private *priv, u16 interval)
165
+int vnt_mac_set_beacon_interval(struct vnt_private *priv, u16 interval)
217166 {
218167 u8 data[2];
219168
220169 data[0] = (u8)(interval & 0xff);
221170 data[1] = (u8)(interval >> 8);
222171
223
- vnt_control_out(priv, MESSAGE_TYPE_WRITE, MAC_REG_BI,
224
- MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
172
+ return vnt_control_out(priv, MESSAGE_TYPE_WRITE, MAC_REG_BI,
173
+ MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
225174 }
226175
227
-void vnt_mac_set_led(struct vnt_private *priv, u8 state, u8 led)
176
+int vnt_mac_set_led(struct vnt_private *priv, u8 state, u8 led)
228177 {
229178 u8 data[2];
230179
231180 data[0] = led;
232181 data[1] = state;
233182
234
- vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, MAC_REG_PAPEDELAY,
235
- MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
183
+ return vnt_control_out(priv, MESSAGE_TYPE_WRITE_MASK, MAC_REG_PAPEDELAY,
184
+ MESSAGE_REQUEST_MACREG, ARRAY_SIZE(data), data);
236185 }