Commit e9d591b
net: ethernet: ti: cpsw_ale: Fix warning on some platforms
The number of register fields cannot be assumed to be ALE_FIELDS_MAX
as some platforms can have lesser fields.
Solve this by embedding the actual number of fields available
in platform data and use that instead of ALE_FIELDS_MAX.
Gets rid of the below warning on BeagleBone Black
[ 1.007735] WARNING: CPU: 0 PID: 33 at drivers/base/regmap/regmap.c:1208 regmap_field_init+0x88/0x9c
[ 1.007802] invalid empty mask defined
[ 1.007812] Modules linked in:
[ 1.007842] CPU: 0 UID: 0 PID: 33 Comm: kworker/u4:3 Not tainted 6.11.0-01459-g508403ab7b74-dirty torvalds#840
[ 1.007867] Hardware name: Generic AM33XX (Flattened Device Tree)
[ 1.007890] Workqueue: events_unbound deferred_probe_work_func
[ 1.007935] Call trace:
[ 1.007957] unwind_backtrace from show_stack+0x10/0x14
[ 1.007999] show_stack from dump_stack_lvl+0x50/0x64
[ 1.008033] dump_stack_lvl from __warn+0x70/0x124
[ 1.008077] __warn from warn_slowpath_fmt+0x194/0x1a8
[ 1.008113] warn_slowpath_fmt from regmap_field_init+0x88/0x9c
[ 1.008154] regmap_field_init from devm_regmap_field_alloc+0x48/0x64
[ 1.008193] devm_regmap_field_alloc from cpsw_ale_create+0xfc/0x320
[ 1.008251] cpsw_ale_create from cpsw_init_common+0x214/0x354
[ 1.008286] cpsw_init_common from cpsw_probe+0x4ac/0xb88
Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
Closes: https://lore.kernel.org/netdev/CAMuHMdUf-tKRDzkz2_m8qdFTFutefddU0NTratVrEjRTzA3yQQ@mail.gmail.com/
Fixes: 11cbcfe ("net: ethernet: ti: cpsw_ale: use regfields for number of Entries and Policers")
Signed-off-by: Roger Quadros <rogerq@kernel.org>
Tested-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20240924-am65-cpsw-multi-rx-fix-v1-1-0ca3fa9a1398@kernel.org
Signed-off-by: Paolo Abeni <pabeni@redhat.com>1 parent 1910bd4 commit e9d591b
2 files changed
+12
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
96 | 96 | | |
97 | 97 | | |
98 | 98 | | |
| 99 | + | |
99 | 100 | | |
100 | 101 | | |
101 | 102 | | |
| |||
104 | 105 | | |
105 | 106 | | |
106 | 107 | | |
| 108 | + | |
107 | 109 | | |
108 | 110 | | |
109 | 111 | | |
| |||
1400 | 1402 | | |
1401 | 1403 | | |
1402 | 1404 | | |
| 1405 | + | |
1403 | 1406 | | |
1404 | 1407 | | |
1405 | 1408 | | |
1406 | 1409 | | |
1407 | 1410 | | |
1408 | 1411 | | |
1409 | 1412 | | |
| 1413 | + | |
1410 | 1414 | | |
1411 | 1415 | | |
1412 | 1416 | | |
1413 | 1417 | | |
1414 | 1418 | | |
1415 | 1419 | | |
| 1420 | + | |
1416 | 1421 | | |
1417 | 1422 | | |
1418 | 1423 | | |
| |||
1421 | 1426 | | |
1422 | 1427 | | |
1423 | 1428 | | |
| 1429 | + | |
1424 | 1430 | | |
1425 | 1431 | | |
1426 | 1432 | | |
| |||
1429 | 1435 | | |
1430 | 1436 | | |
1431 | 1437 | | |
| 1438 | + | |
1432 | 1439 | | |
1433 | 1440 | | |
1434 | 1441 | | |
1435 | 1442 | | |
1436 | 1443 | | |
1437 | 1444 | | |
1438 | 1445 | | |
| 1446 | + | |
1439 | 1447 | | |
1440 | 1448 | | |
1441 | 1449 | | |
1442 | 1450 | | |
1443 | 1451 | | |
1444 | 1452 | | |
| 1453 | + | |
1445 | 1454 | | |
1446 | 1455 | | |
1447 | 1456 | | |
| |||
1477 | 1486 | | |
1478 | 1487 | | |
1479 | 1488 | | |
1480 | | - | |
| 1489 | + | |
1481 | 1490 | | |
1482 | 1491 | | |
1483 | 1492 | | |
| |||
1503 | 1512 | | |
1504 | 1513 | | |
1505 | 1514 | | |
| 1515 | + | |
1506 | 1516 | | |
1507 | 1517 | | |
1508 | 1518 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
| 27 | + | |
27 | 28 | | |
28 | 29 | | |
29 | 30 | | |
| |||
0 commit comments