@@ -408,9 +408,8 @@ static void mvebu_gpio_irq_ack(struct irq_data *d)
408408 struct mvebu_gpio_chip * mvchip = gc -> private ;
409409 u32 mask = d -> mask ;
410410
411- irq_gc_lock ( gc );
411+ guard ( raw_spinlock )( & gc -> lock );
412412 mvebu_gpio_write_edge_cause (mvchip , ~mask );
413- irq_gc_unlock (gc );
414413}
415414
416415static void mvebu_gpio_edge_irq_mask (struct irq_data * d )
@@ -420,10 +419,9 @@ static void mvebu_gpio_edge_irq_mask(struct irq_data *d)
420419 struct irq_chip_type * ct = irq_data_get_chip_type (d );
421420 u32 mask = d -> mask ;
422421
423- irq_gc_lock ( gc );
422+ guard ( raw_spinlock )( & gc -> lock );
424423 ct -> mask_cache_priv &= ~mask ;
425424 mvebu_gpio_write_edge_mask (mvchip , ct -> mask_cache_priv );
426- irq_gc_unlock (gc );
427425}
428426
429427static void mvebu_gpio_edge_irq_unmask (struct irq_data * d )
@@ -433,11 +431,10 @@ static void mvebu_gpio_edge_irq_unmask(struct irq_data *d)
433431 struct irq_chip_type * ct = irq_data_get_chip_type (d );
434432 u32 mask = d -> mask ;
435433
436- irq_gc_lock ( gc );
434+ guard ( raw_spinlock )( & gc -> lock );
437435 mvebu_gpio_write_edge_cause (mvchip , ~mask );
438436 ct -> mask_cache_priv |= mask ;
439437 mvebu_gpio_write_edge_mask (mvchip , ct -> mask_cache_priv );
440- irq_gc_unlock (gc );
441438}
442439
443440static void mvebu_gpio_level_irq_mask (struct irq_data * d )
@@ -447,10 +444,9 @@ static void mvebu_gpio_level_irq_mask(struct irq_data *d)
447444 struct irq_chip_type * ct = irq_data_get_chip_type (d );
448445 u32 mask = d -> mask ;
449446
450- irq_gc_lock ( gc );
447+ guard ( raw_spinlock )( & gc -> lock );
451448 ct -> mask_cache_priv &= ~mask ;
452449 mvebu_gpio_write_level_mask (mvchip , ct -> mask_cache_priv );
453- irq_gc_unlock (gc );
454450}
455451
456452static void mvebu_gpio_level_irq_unmask (struct irq_data * d )
@@ -460,10 +456,9 @@ static void mvebu_gpio_level_irq_unmask(struct irq_data *d)
460456 struct irq_chip_type * ct = irq_data_get_chip_type (d );
461457 u32 mask = d -> mask ;
462458
463- irq_gc_lock ( gc );
459+ guard ( raw_spinlock )( & gc -> lock );
464460 ct -> mask_cache_priv |= mask ;
465461 mvebu_gpio_write_level_mask (mvchip , ct -> mask_cache_priv );
466- irq_gc_unlock (gc );
467462}
468463
469464/*****************************************************************************
0 commit comments