diff options
Diffstat (limited to 'target/linux')
| -rw-r--r-- | target/linux/adm5120/files/arch/mips/adm5120/irq.c | 6 | 
1 files changed, 2 insertions, 4 deletions
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/irq.c b/target/linux/adm5120/files/arch/mips/adm5120/irq.c index ef7b9b92e..a7a5455dc 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/irq.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/irq.c @@ -75,8 +75,6 @@ static void adm5120_intc_irq_mask(unsigned int irq)  static int adm5120_intc_irq_set_type(unsigned int irq, unsigned int flow_type)  { -	/* TODO: not yet tested */ -  	unsigned int sense;  	unsigned long mode;  	int err = 0; @@ -109,9 +107,9 @@ static int adm5120_intc_irq_set_type(unsigned int irq, unsigned int flow_type)  	case ADM5120_IRQ_GPIO4:  		mode = INTC_READ(INTC_REG_INT_MODE);  		if (sense == IRQ_TYPE_LEVEL_LOW) -			mode |= (1 << (3 + irq - ADM5120_IRQ_GPIO2)); +			mode |= (1 << (irq - ADM5120_INTC_IRQ_BASE));  		else -			mode &= (1 << (3 + irq - ADM5120_IRQ_GPIO2)); +			mode &= ~(1 << (irq - ADM5120_INTC_IRQ_BASE));  		INTC_WRITE(INTC_REG_INT_MODE, mode);  		/* fallthrough */  | 
