diff options
author | Vladimir Oltean <vladimir.oltean@nxp.com> | 2023-04-15 20:05:45 +0300 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2023-04-17 19:01:18 -0700 |
commit | 15f93f46f31232da863316769182c699e364c45f (patch) | |
tree | b06264bea965553d4d146a07d1f9999b140561cd /drivers/net/dsa | |
parent | 3b53ada5142b62850544f039773f2890edb89fb3 (diff) | |
download | linux-15f93f46f31232da863316769182c699e364c45f.tar.gz linux-15f93f46f31232da863316769182c699e364c45f.tar.bz2 linux-15f93f46f31232da863316769182c699e364c45f.zip |
net: mscc: ocelot: export a single ocelot_mm_irq()
When the switch emits an IRQ, we don't know what caused it, and we
iterate through all ports to check the MAC Merge status.
Move that iteration inside the ocelot lib; we will change the locking in
a future change and it would be good to encapsulate that lock completely
within the ocelot lib.
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Simon Horman <simon.horman@corigine.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net/dsa')
-rw-r--r-- | drivers/net/dsa/ocelot/felix_vsc9959.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/net/dsa/ocelot/felix_vsc9959.c b/drivers/net/dsa/ocelot/felix_vsc9959.c index dddb28984bdf..478893c06f56 100644 --- a/drivers/net/dsa/ocelot/felix_vsc9959.c +++ b/drivers/net/dsa/ocelot/felix_vsc9959.c @@ -2610,12 +2610,9 @@ static const struct felix_info felix_info_vsc9959 = { static irqreturn_t felix_irq_handler(int irq, void *data) { struct ocelot *ocelot = (struct ocelot *)data; - int port; ocelot_get_txtstamp(ocelot); - - for (port = 0; port < ocelot->num_phys_ports; port++) - ocelot_port_mm_irq(ocelot, port); + ocelot_mm_irq(ocelot); return IRQ_HANDLED; } |