Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fe52b2d2 authored by Thomas Gleixner's avatar Thomas Gleixner
Browse files

x86: Convert dmar affinity setting to new chip function



Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Reviewed-by: default avatarIngo Molnar <mingo@elte.hu>
Cc: David Woodhouse <dwmw2@infradead.org>
parent b5d1c465
Loading
Loading
Loading
Loading
+12 −13
Original line number Original line Diff line number Diff line
@@ -3488,18 +3488,17 @@ void arch_teardown_msi_irq(unsigned int irq)


#if defined (CONFIG_DMAR) || defined (CONFIG_INTR_REMAP)
#if defined (CONFIG_DMAR) || defined (CONFIG_INTR_REMAP)
#ifdef CONFIG_SMP
#ifdef CONFIG_SMP
static int dmar_msi_set_affinity(unsigned int irq, const struct cpumask *mask)
static int
dmar_msi_set_affinity(struct irq_data *data, const struct cpumask *mask,
		      bool force)
{
{
	struct irq_desc *desc = irq_to_desc(irq);
	struct irq_cfg *cfg = data->chip_data;
	struct irq_cfg *cfg;
	unsigned int dest, irq = data->irq;
	struct msi_msg msg;
	struct msi_msg msg;
	unsigned int dest;


	if (__ioapic_set_affinity(&desc->irq_data, mask, &dest))
	if (__ioapic_set_affinity(data, mask, &dest))
		return -1;
		return -1;


	cfg = get_irq_desc_chip_data(desc);

	dmar_msi_read(irq, &msg);
	dmar_msi_read(irq, &msg);


	msg.data &= ~MSI_DATA_VECTOR_MASK;
	msg.data &= ~MSI_DATA_VECTOR_MASK;
@@ -3520,7 +3519,7 @@ static struct irq_chip dmar_msi_type = {
	.irq_mask		= dmar_msi_mask,
	.irq_mask		= dmar_msi_mask,
	.irq_ack		= ack_apic_edge,
	.irq_ack		= ack_apic_edge,
#ifdef CONFIG_SMP
#ifdef CONFIG_SMP
	.set_affinity = dmar_msi_set_affinity,
	.irq_set_affinity	= dmar_msi_set_affinity,
#endif
#endif
	.irq_retrigger		= ioapic_retrigger_irq,
	.irq_retrigger		= ioapic_retrigger_irq,
};
};