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

Commit 4f8d7541 authored by Lennert Buytenhek's avatar Lennert Buytenhek
Browse files

ARM: netx: irq_data conversion.

parent e981a302
Loading
Loading
Loading
Loading
+15 −15
Original line number Original line Diff line number Diff line
@@ -88,13 +88,13 @@ netx_hif_demux_handler(unsigned int irq_unused, struct irq_desc *desc)
}
}


static int
static int
netx_hif_irq_type(unsigned int _irq, unsigned int type)
netx_hif_irq_type(struct irq_data *d, unsigned int type)
{
{
	unsigned int val, irq;
	unsigned int val, irq;


	val = readl(NETX_DPMAS_IF_CONF1);
	val = readl(NETX_DPMAS_IF_CONF1);


	irq = _irq - NETX_IRQ_HIF_CHAINED(0);
	irq = d->irq - NETX_IRQ_HIF_CHAINED(0);


	if (type & IRQ_TYPE_EDGE_RISING) {
	if (type & IRQ_TYPE_EDGE_RISING) {
		DEBUG_IRQ("rising edges\n");
		DEBUG_IRQ("rising edges\n");
@@ -119,49 +119,49 @@ netx_hif_irq_type(unsigned int _irq, unsigned int type)
}
}


static void
static void
netx_hif_ack_irq(unsigned int _irq)
netx_hif_ack_irq(struct irq_data *d)
{
{
	unsigned int val, irq;
	unsigned int val, irq;


	irq = _irq - NETX_IRQ_HIF_CHAINED(0);
	irq = d->irq - NETX_IRQ_HIF_CHAINED(0);
	writel((1 << 24) << irq, NETX_DPMAS_INT_STAT);
	writel((1 << 24) << irq, NETX_DPMAS_INT_STAT);


	val = readl(NETX_DPMAS_INT_EN);
	val = readl(NETX_DPMAS_INT_EN);
	val &= ~((1 << 24) << irq);
	val &= ~((1 << 24) << irq);
	writel(val, NETX_DPMAS_INT_EN);
	writel(val, NETX_DPMAS_INT_EN);


	DEBUG_IRQ("%s: irq %d\n", __func__, _irq);
	DEBUG_IRQ("%s: irq %d\n", __func__, d->irq);
}
}


static void
static void
netx_hif_mask_irq(unsigned int _irq)
netx_hif_mask_irq(struct irq_data *d)
{
{
	unsigned int val, irq;
	unsigned int val, irq;


	irq = _irq - NETX_IRQ_HIF_CHAINED(0);
	irq = d->irq - NETX_IRQ_HIF_CHAINED(0);
	val = readl(NETX_DPMAS_INT_EN);
	val = readl(NETX_DPMAS_INT_EN);
	val &= ~((1 << 24) << irq);
	val &= ~((1 << 24) << irq);
	writel(val, NETX_DPMAS_INT_EN);
	writel(val, NETX_DPMAS_INT_EN);
	DEBUG_IRQ("%s: irq %d\n", __func__, _irq);
	DEBUG_IRQ("%s: irq %d\n", __func__, d->irq);
}
}


static void
static void
netx_hif_unmask_irq(unsigned int _irq)
netx_hif_unmask_irq(struct irq_data *d)
{
{
	unsigned int val, irq;
	unsigned int val, irq;


	irq = _irq - NETX_IRQ_HIF_CHAINED(0);
	irq = d->irq - NETX_IRQ_HIF_CHAINED(0);
	val = readl(NETX_DPMAS_INT_EN);
	val = readl(NETX_DPMAS_INT_EN);
	val |= (1 << 24) << irq;
	val |= (1 << 24) << irq;
	writel(val, NETX_DPMAS_INT_EN);
	writel(val, NETX_DPMAS_INT_EN);
	DEBUG_IRQ("%s: irq %d\n", __func__, _irq);
	DEBUG_IRQ("%s: irq %d\n", __func__, d->irq);
}
}


static struct irq_chip netx_hif_chip = {
static struct irq_chip netx_hif_chip = {
	.ack = netx_hif_ack_irq,
	.irq_ack = netx_hif_ack_irq,
	.mask = netx_hif_mask_irq,
	.irq_mask = netx_hif_mask_irq,
	.unmask = netx_hif_unmask_irq,
	.irq_unmask = netx_hif_unmask_irq,
	.set_type = netx_hif_irq_type,
	.irq_set_type = netx_hif_irq_type,
};
};


void __init netx_init_irq(void)
void __init netx_init_irq(void)