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

Commit 5af3bde8 authored by Mark Brown's avatar Mark Brown Committed by Samuel Ortiz
Browse files

mfd: Convert jz4740-adc to new irq_ methods



Convert the jz4740-adc driver to use the recently introduced IRQ API
variants which are passed struct irq_data rather than an IRQ number.

Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: default avatarLars-Peter Clausen <lars@metafoo.de>
Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: default avatarSamuel Ortiz <sameo@linux.intel.com>
parent e6a4c4a4
Loading
Loading
Loading
Loading
+12 −13
Original line number Diff line number Diff line
@@ -84,31 +84,30 @@ static inline void jz4740_adc_irq_set_masked(struct jz4740_adc *adc, int irq,
	spin_unlock_irqrestore(&adc->lock, flags);
}

static void jz4740_adc_irq_mask(unsigned int irq)
static void jz4740_adc_irq_mask(struct irq_data *data)
{
	struct jz4740_adc *adc = get_irq_chip_data(irq);
	jz4740_adc_irq_set_masked(adc, irq, true);
	struct jz4740_adc *adc = irq_data_get_irq_chip_data(data);
	jz4740_adc_irq_set_masked(adc, data->irq, true);
}

static void jz4740_adc_irq_unmask(unsigned int irq)
static void jz4740_adc_irq_unmask(struct irq_data *data)
{
	struct jz4740_adc *adc = get_irq_chip_data(irq);
	jz4740_adc_irq_set_masked(adc, irq, false);
	struct jz4740_adc *adc = irq_data_get_irq_chip_data(data);
	jz4740_adc_irq_set_masked(adc, data->irq, false);
}

static void jz4740_adc_irq_ack(unsigned int irq)
static void jz4740_adc_irq_ack(struct irq_data *data)
{
	struct jz4740_adc *adc = get_irq_chip_data(irq);

	irq -= adc->irq_base;
	struct jz4740_adc *adc = irq_data_get_irq_chip_data(data);
	unsigned int irq = data->irq - adc->irq_base;
	writeb(BIT(irq), adc->base + JZ_REG_ADC_STATUS);
}

static struct irq_chip jz4740_adc_irq_chip = {
	.name = "jz4740-adc",
	.mask = jz4740_adc_irq_mask,
	.unmask = jz4740_adc_irq_unmask,
	.ack = jz4740_adc_irq_ack,
	.irq_mask = jz4740_adc_irq_mask,
	.irq_unmask = jz4740_adc_irq_unmask,
	.irq_ack = jz4740_adc_irq_ack,
};

static void jz4740_adc_irq_demux(unsigned int irq, struct irq_desc *desc)