mirror of https://gitee.com/openkylin/linux.git
net: allwinner: remove redundant irqsave and irqrestore in hardIRQ
The comment "holders of db->lock must always block IRQs" and related code to do irqsave and irqrestore don't make sense since we are in a IRQ-disabled hardIRQ context. Cc: Maxime Ripard <mripard@kernel.org> Cc: Chen-Yu Tsai <wens@csie.org> Signed-off-by: Barry Song <song.bao.hua@hisilicon.com> Acked-by: Maxime Ripard <mripard@kernel.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
e4b9146849
commit
3649326912
|
@ -640,13 +640,11 @@ static irqreturn_t emac_interrupt(int irq, void *dev_id)
|
|||
struct net_device *dev = dev_id;
|
||||
struct emac_board_info *db = netdev_priv(dev);
|
||||
int int_status;
|
||||
unsigned long flags;
|
||||
unsigned int reg_val;
|
||||
|
||||
/* A real interrupt coming */
|
||||
|
||||
/* holders of db->lock must always block IRQs */
|
||||
spin_lock_irqsave(&db->lock, flags);
|
||||
spin_lock(&db->lock);
|
||||
|
||||
/* Disable all interrupts */
|
||||
writel(0, db->membase + EMAC_INT_CTL_REG);
|
||||
|
@ -680,7 +678,7 @@ static irqreturn_t emac_interrupt(int irq, void *dev_id)
|
|||
reg_val |= (0xf << 0) | (0x01 << 8);
|
||||
writel(reg_val, db->membase + EMAC_INT_CTL_REG);
|
||||
}
|
||||
spin_unlock_irqrestore(&db->lock, flags);
|
||||
spin_unlock(&db->lock);
|
||||
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue