@@ -214,66 +214,61 @@ static int dsa_dst_complete(struct dsa_switch_tree *dst)
214
214
return 0 ;
215
215
}
216
216
217
- static int dsa_dsa_port_apply (struct dsa_port * port , u32 index ,
218
- struct dsa_switch * ds )
217
+ static int dsa_dsa_port_apply (struct dsa_port * port )
219
218
{
219
+ struct dsa_switch * ds = port -> ds ;
220
220
int err ;
221
221
222
- err = dsa_cpu_dsa_setup (ds , ds -> dev , port , index );
222
+ err = dsa_cpu_dsa_setup (ds , ds -> dev , port , port -> index );
223
223
if (err ) {
224
224
dev_warn (ds -> dev , "Failed to setup dsa port %d: %d\n" ,
225
- index , err );
225
+ port -> index , err );
226
226
return err ;
227
227
}
228
228
229
- memset (& ds -> ports [index ].devlink_port , 0 ,
230
- sizeof (ds -> ports [index ].devlink_port ));
229
+ memset (& port -> devlink_port , 0 , sizeof (port -> devlink_port ));
231
230
232
- return devlink_port_register (ds -> devlink ,
233
- & ds -> ports [index ].devlink_port ,
234
- index );
231
+ return devlink_port_register (ds -> devlink , & port -> devlink_port ,
232
+ port -> index );
235
233
}
236
234
237
- static void dsa_dsa_port_unapply (struct dsa_port * port , u32 index ,
238
- struct dsa_switch * ds )
235
+ static void dsa_dsa_port_unapply (struct dsa_port * port )
239
236
{
240
- devlink_port_unregister (& ds -> ports [ index ]. devlink_port );
237
+ devlink_port_unregister (& port -> devlink_port );
241
238
dsa_cpu_dsa_destroy (port );
242
239
}
243
240
244
- static int dsa_cpu_port_apply (struct dsa_port * port , u32 index ,
245
- struct dsa_switch * ds )
241
+ static int dsa_cpu_port_apply (struct dsa_port * port )
246
242
{
243
+ struct dsa_switch * ds = port -> ds ;
247
244
int err ;
248
245
249
- err = dsa_cpu_dsa_setup (ds , ds -> dev , port , index );
246
+ err = dsa_cpu_dsa_setup (ds , ds -> dev , port , port -> index );
250
247
if (err ) {
251
248
dev_warn (ds -> dev , "Failed to setup cpu port %d: %d\n" ,
252
- index , err );
249
+ port -> index , err );
253
250
return err ;
254
251
}
255
252
256
- ds -> cpu_port_mask |= BIT (index );
253
+ ds -> cpu_port_mask |= BIT (port -> index );
257
254
258
- memset (& ds -> ports [index ].devlink_port , 0 ,
259
- sizeof (ds -> ports [index ].devlink_port ));
260
- err = devlink_port_register (ds -> devlink , & ds -> ports [index ].devlink_port ,
261
- index );
255
+ memset (& port -> devlink_port , 0 , sizeof (port -> devlink_port ));
256
+ err = devlink_port_register (ds -> devlink , & port -> devlink_port ,
257
+ port -> index );
262
258
return err ;
263
259
}
264
260
265
- static void dsa_cpu_port_unapply (struct dsa_port * port , u32 index ,
266
- struct dsa_switch * ds )
261
+ static void dsa_cpu_port_unapply (struct dsa_port * port )
267
262
{
268
- devlink_port_unregister (& ds -> ports [ index ]. devlink_port );
263
+ devlink_port_unregister (& port -> devlink_port );
269
264
dsa_cpu_dsa_destroy (port );
270
- ds -> cpu_port_mask &= ~BIT (index );
265
+ port -> ds -> cpu_port_mask &= ~BIT (port -> index );
271
266
272
267
}
273
268
274
- static int dsa_user_port_apply (struct dsa_port * port , u32 index ,
275
- struct dsa_switch * ds )
269
+ static int dsa_user_port_apply (struct dsa_port * port )
276
270
{
271
+ struct dsa_switch * ds = port -> ds ;
277
272
const char * name = port -> name ;
278
273
int err ;
279
274
@@ -282,35 +277,32 @@ static int dsa_user_port_apply(struct dsa_port *port, u32 index,
282
277
if (!name )
283
278
name = "eth%d" ;
284
279
285
- err = dsa_slave_create (ds , ds -> dev , index , name );
280
+ err = dsa_slave_create (ds , ds -> dev , port -> index , name );
286
281
if (err ) {
287
282
dev_warn (ds -> dev , "Failed to create slave %d: %d\n" ,
288
- index , err );
289
- ds -> ports [ index ]. netdev = NULL ;
283
+ port -> index , err );
284
+ port -> netdev = NULL ;
290
285
return err ;
291
286
}
292
287
293
- memset (& ds -> ports [index ].devlink_port , 0 ,
294
- sizeof (ds -> ports [index ].devlink_port ));
295
- err = devlink_port_register (ds -> devlink , & ds -> ports [index ].devlink_port ,
296
- index );
288
+ memset (& port -> devlink_port , 0 , sizeof (port -> devlink_port ));
289
+ err = devlink_port_register (ds -> devlink , & port -> devlink_port ,
290
+ port -> index );
297
291
if (err )
298
292
return err ;
299
293
300
- devlink_port_type_eth_set (& ds -> ports [index ].devlink_port ,
301
- ds -> ports [index ].netdev );
294
+ devlink_port_type_eth_set (& port -> devlink_port , port -> netdev );
302
295
303
296
return 0 ;
304
297
}
305
298
306
- static void dsa_user_port_unapply (struct dsa_port * port , u32 index ,
307
- struct dsa_switch * ds )
299
+ static void dsa_user_port_unapply (struct dsa_port * port )
308
300
{
309
- devlink_port_unregister (& ds -> ports [ index ]. devlink_port );
310
- if (ds -> ports [ index ]. netdev ) {
311
- dsa_slave_destroy (ds -> ports [ index ]. netdev );
312
- ds -> ports [ index ]. netdev = NULL ;
313
- ds -> enabled_port_mask &= ~(1 << index );
301
+ devlink_port_unregister (& port -> devlink_port );
302
+ if (port -> netdev ) {
303
+ dsa_slave_destroy (port -> netdev );
304
+ port -> netdev = NULL ;
305
+ port -> ds -> enabled_port_mask &= ~(1 << port -> index );
314
306
}
315
307
}
316
308
@@ -370,20 +362,20 @@ static int dsa_ds_apply(struct dsa_switch_tree *dst, struct dsa_switch *ds)
370
362
continue ;
371
363
372
364
if (dsa_port_is_dsa (port )) {
373
- err = dsa_dsa_port_apply (port , index , ds );
365
+ err = dsa_dsa_port_apply (port );
374
366
if (err )
375
367
return err ;
376
368
continue ;
377
369
}
378
370
379
371
if (dsa_port_is_cpu (port )) {
380
- err = dsa_cpu_port_apply (port , index , ds );
372
+ err = dsa_cpu_port_apply (port );
381
373
if (err )
382
374
return err ;
383
375
continue ;
384
376
}
385
377
386
- err = dsa_user_port_apply (port , index , ds );
378
+ err = dsa_user_port_apply (port );
387
379
if (err )
388
380
continue ;
389
381
}
@@ -402,16 +394,16 @@ static void dsa_ds_unapply(struct dsa_switch_tree *dst, struct dsa_switch *ds)
402
394
continue ;
403
395
404
396
if (dsa_port_is_dsa (port )) {
405
- dsa_dsa_port_unapply (port , index , ds );
397
+ dsa_dsa_port_unapply (port );
406
398
continue ;
407
399
}
408
400
409
401
if (dsa_port_is_cpu (port )) {
410
- dsa_cpu_port_unapply (port , index , ds );
402
+ dsa_cpu_port_unapply (port );
411
403
continue ;
412
404
}
413
405
414
- dsa_user_port_unapply (port , index , ds );
406
+ dsa_user_port_unapply (port );
415
407
}
416
408
417
409
if (ds -> slave_mii_bus && ds -> ops -> phy_read )
0 commit comments