Skip to contentSkip to conversation

thermal: int340x: processor_thermal: Ack all PCI interrupts

PATCH In review Srinivas Pandruvada 2 participants 4 messages Sep 20, 2023 – Sep 21, 2023 Thermal

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 thermal: int340x: processor_thermal: Ack all PCI interrupts

All interrupts from the processor thermal PCI device requires ACK. This is done by writing 0x01 at offset 0xDC in the config space. This is already done for the thereshold interrupt. Extend this for the workload hint interrupt.

---
 .../intel/int340x_thermal/processor_thermal_device_pci.c       | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
drivers/thermal/intel/int340x_thermal/processor_thermal_device_pci.c +2 -1
index 44b179ce9bc9..3c5ced79ead0 100644
@@ -154,10 +154,11 @@ static irqreturn_t proc_thermal_irq_handler(int irq, void *devid)
 	if (status) {
 		/* Disable enable interrupt flag */
 		proc_thermal_mmio_write(pci_info, PROC_THERMAL_MMIO_INT_ENABLE_0, 0);
-		pci_write_config_byte(pci_info->pdev, 0xdc, 0x01);
 		pkg_thermal_schedule_work(&pci_info->work);
 	}
 
+	pci_write_config_byte(pci_info->pdev, 0xdc, 0x01);
+
 	return ret;
 }
 
Signature · 1 line
2.40.1
#1 lore raw
Quoted 7 lines · Srinivas Pandruvada

All interrupts from the processor thermal PCI device requires ACK. This is done by writing 0x01 at offset 0xDC in the config space. This is already done for the thereshold interrupt. Extend this for the workload hint interrupt.

Is this a fix for one of the commits in linux-next? If so, which one?

Quoted 24 lines
---
 .../intel/int340x_thermal/processor_thermal_device_pci.c       | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
drivers/thermal/intel/int340x_thermal/processor_thermal_device_pci.c +2 -2
index 44b179ce9bc9..3c5ced79ead0 100644
@@ -154,10 +154,11 @@ static irqreturn_t proc_thermal_irq_handler(int irq, void *devid)
        if (status) {
                /* Disable enable interrupt flag */
                proc_thermal_mmio_write(pci_info, PROC_THERMAL_MMIO_INT_ENABLE_0, 0);
-               pci_write_config_byte(pci_info->pdev, 0xdc, 0x01);
                pkg_thermal_schedule_work(&pci_info->work);
        }
 
+       pci_write_config_byte(pci_info->pdev, 0xdc, 0x01);
+
        return ret;
 }
 
--

2.40.1

#2 lore raw
Quoted 10 lines · Rafael J. Wysocki
Quoted 8 lines · Srinivas Pandruvada

All interrupts from the processor thermal PCI device requires ACK. This
is done by writing 0x01 at offset 0xDC in the config space. This is already done for the thereshold interrupt. Extend this for the workload
hint interrupt.

Quoted 5 lines
Quoted 2 lines

Signed-off-by: Srinivas Pandruvada
<[email protected]>

Is this a fix for one of the commits in linux-next?  If so, which one?

This is on top of workload hints patches. I marked linux-next as they are not in mainline kernel.

This can alternatively merged to
e682b86211a1 thermal: int340x: Handle workload hint interrupts

But not sure how to mark the commit id as they will change. Whatever you prefer.

Thanks,
Srinivas

Quoted 36 lines
Quoted 36 lines

---
 .../intel/int340x_thermal/processor_thermal_device_pci.c       | 3
++-

 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/thermal/intel/int340x_thermal/processor_thermal_device_pc i.c b/drivers/thermal/intel/int340x_thermal/processor_thermal_device_pc i.c
index 44b179ce9bc9..3c5ced79ead0 100644
---
a/drivers/thermal/intel/int340x_thermal/processor_thermal_device_pc i.c
+++
b/drivers/thermal/intel/int340x_thermal/processor_thermal_device_pc i.c

drivers/thermal/intel/int340x_thermal/processor_thermal_device_pci.c +2 -1
@@ -154,10 +154,11 @@ static irqreturn_t
 proc_thermal_irq_handler(int irq, void *devid)
         if (status) {
                 /* Disable enable interrupt flag */
                 proc_thermal_mmio_write(pci_info,
 PROC_THERMAL_MMIO_INT_ENABLE_0, 0);
-               pci_write_config_byte(pci_info->pdev, 0xdc, 0x01);
                 pkg_thermal_schedule_work(&pci_info->work);
         }
 
+       pci_write_config_byte(pci_info->pdev, 0xdc, 0x01);
+
         return ret;

 }

--
2.40.1

#3 lore raw
Quoted 17 lines · srinivas pandruvada
Quoted 10 lines · Rafael J. Wysocki
Quoted 8 lines · Srinivas Pandruvada

All interrupts from the processor thermal PCI device requires ACK. This
is done by writing 0x01 at offset 0xDC in the config space. This is already done for the thereshold interrupt. Extend this for the workload
hint interrupt.

Quoted 5 lines
Quoted 2 lines

Signed-off-by: Srinivas Pandruvada
<[email protected]>

Is this a fix for one of the commits in linux-next? If so, which one?

Quoted 7 lines

This is on top of workload hints patches. I marked linux-next as they are not in mainline kernel.

This can alternatively merged to
e682b86211a1 thermal: int340x: Handle workload hint interrupts

But not sure how to mark the commit id as they will change.

As a rule, commits in my linux-next branch don't change (they sometimes change, but that is not a common case), so you can use the current one. If it changes, I'll update the tag accordingly.

I'm going to add a Fixes: tag pointing to the above commit to it.

Thanks!