Thread (30 messages) 30 messages, 4 authors, 2018-08-23

[PATCH v4 09/14] irqchip/irq-mvebu-icu: add support for System Error Interrupts (SEI)

From: miquel.raynal@bootlin.com (Miquel Raynal)
Date: 2018-08-21 09:08:25
Also in: linux-devicetree

Hi Marc,

I'm fine with the rest of the comments, please find just one last
question below.

[...]
quoted
@@ -133,12 +164,36 @@ mvebu_icu_irq_domain_translate(struct irq_domain *d, struct irq_fwspec *fwspec,
 		return -EINVAL;
 	}
 
-	/* Mask the type to prevent wrong DT configuration */
-	*type = fwspec->param[2] & IRQ_TYPE_SENSE_MASK;
+	/*
+	 * The ICU receives level-interrupts. MSI SEI are
+	 * edge-interrupts while MSI NSR are level-interrupts. Update the type
+	 * accordingly for the parent irqchip.
+	 */
+	if (msi_data->subset_data->icu_group == ICU_GRP_SEI)
+		*type = IRQ_TYPE_EDGE_RISING;  
That's interesting. How is the resampling done here?
I'm not sure to understand the question. What does 'resampling' means
in such context? MSI SEIs are of type "edge" and use the traditional
MSI signalling infrastructure. I'm asking to be sure not to ignore
something wrong in my code.
quoted
 
 	return 0;
 }
Thanks,
Miqu?l
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help