[PATCH v2 2/4] vdpa/octeon_ep: handle device config change events

From: Shijith Thotton
Date: Thu Nov 21 2024 - 08:56:08 EST


From: Satha Rao <skoteshwar@xxxxxxxxxxx>

The first interrupt of the device is used to notify the host about
device configuration changes, such as link status updates. The ISR
configuration area is updated to indicate a config change event when
triggered.

Signed-off-by: Satha Rao <skoteshwar@xxxxxxxxxxx>
Signed-off-by: Shijith Thotton <sthotton@xxxxxxxxxxx>
---
drivers/vdpa/octeon_ep/octep_vdpa_main.c | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/drivers/vdpa/octeon_ep/octep_vdpa_main.c b/drivers/vdpa/octeon_ep/octep_vdpa_main.c
index e10cb26a3206..b060df57bb59 100644
--- a/drivers/vdpa/octeon_ep/octep_vdpa_main.c
+++ b/drivers/vdpa/octeon_ep/octep_vdpa_main.c
@@ -74,6 +74,14 @@ static irqreturn_t octep_vdpa_intr_handler(int irq, void *data)
}
}

+ /* Check for config interrupt. Config uses the first interrupt */
+ if (unlikely(ring_start == 0 && ioread8(oct_hw->isr))) {
+ iowrite8(0, oct_hw->isr);
+
+ if (oct_hw->config_cb.callback)
+ oct_hw->config_cb.callback(oct_hw->config_cb.private);
+ }
+
return IRQ_HANDLED;
}

--
2.25.1