The part_event_bitmap register is 64 bits wide and should be read with
ioread64 instead of the 32-bit ioread32.

Reported-by: Doug Meyer <[email protected]>
Signed-off-by: Logan Gunthorpe <[email protected]>
Cc: Bjorn Helgaas <[email protected]>
Cc: Kelvin Cao <[email protected]>
---
 drivers/pci/switch/switchtec.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/pci/switch/switchtec.c b/drivers/pci/switch/switchtec.c
index 8c94cd3fd1f2..465d6afd826e 100644
--- a/drivers/pci/switch/switchtec.c
+++ b/drivers/pci/switch/switchtec.c
@@ -675,7 +675,7 @@ static int ioctl_event_summary(struct switchtec_dev *stdev,
                return -ENOMEM;
 
        s->global = ioread32(&stdev->mmio_sw_event->global_summary);
-       s->part_bitmap = ioread32(&stdev->mmio_sw_event->part_event_bitmap);
+       s->part_bitmap = ioread64(&stdev->mmio_sw_event->part_event_bitmap);
        s->local_part = ioread32(&stdev->mmio_part_cfg->part_event_summary);
 
        for (i = 0; i < stdev->partition_count; i++) {
-- 
2.20.1

Reply via email to