@@ -40,7 +40,7 @@ struct gpio_rcar_info {
4040
4141struct gpio_rcar_priv {
4242 void __iomem * base ;
43- spinlock_t lock ;
43+ raw_spinlock_t lock ;
4444 struct device * dev ;
4545 struct gpio_chip gpio_chip ;
4646 unsigned int irq_parent ;
@@ -123,7 +123,7 @@ static void gpio_rcar_config_interrupt_input_mode(struct gpio_rcar_priv *p,
123123 * "Setting Level-Sensitive Interrupt Input Mode"
124124 */
125125
126- spin_lock_irqsave (& p -> lock , flags );
126+ raw_spin_lock_irqsave (& p -> lock , flags );
127127
128128 /* Configure positive or negative logic in POSNEG */
129129 gpio_rcar_modify_bit (p , POSNEG , hwirq , !active_high_rising_edge );
@@ -142,7 +142,7 @@ static void gpio_rcar_config_interrupt_input_mode(struct gpio_rcar_priv *p,
142142 if (!level_trigger )
143143 gpio_rcar_write (p , INTCLR , BIT (hwirq ));
144144
145- spin_unlock_irqrestore (& p -> lock , flags );
145+ raw_spin_unlock_irqrestore (& p -> lock , flags );
146146}
147147
148148static int gpio_rcar_irq_set_type (struct irq_data * d , unsigned int type )
@@ -246,7 +246,7 @@ static void gpio_rcar_config_general_input_output_mode(struct gpio_chip *chip,
246246 * "Setting General Input Mode"
247247 */
248248
249- spin_lock_irqsave (& p -> lock , flags );
249+ raw_spin_lock_irqsave (& p -> lock , flags );
250250
251251 /* Configure positive logic in POSNEG */
252252 gpio_rcar_modify_bit (p , POSNEG , gpio , false);
@@ -261,7 +261,7 @@ static void gpio_rcar_config_general_input_output_mode(struct gpio_chip *chip,
261261 if (p -> info .has_outdtsel && output )
262262 gpio_rcar_modify_bit (p , OUTDTSEL , gpio , false);
263263
264- spin_unlock_irqrestore (& p -> lock , flags );
264+ raw_spin_unlock_irqrestore (& p -> lock , flags );
265265}
266266
267267static int gpio_rcar_request (struct gpio_chip * chip , unsigned offset )
@@ -347,7 +347,7 @@ static int gpio_rcar_get_multiple(struct gpio_chip *chip, unsigned long *mask,
347347 return 0 ;
348348 }
349349
350- spin_lock_irqsave (& p -> lock , flags );
350+ raw_spin_lock_irqsave (& p -> lock , flags );
351351 outputs = gpio_rcar_read (p , INOUTSEL );
352352 m = outputs & bankmask ;
353353 if (m )
@@ -356,7 +356,7 @@ static int gpio_rcar_get_multiple(struct gpio_chip *chip, unsigned long *mask,
356356 m = ~outputs & bankmask ;
357357 if (m )
358358 val |= gpio_rcar_read (p , INDT ) & m ;
359- spin_unlock_irqrestore (& p -> lock , flags );
359+ raw_spin_unlock_irqrestore (& p -> lock , flags );
360360
361361 bits [0 ] = val ;
362362 return 0 ;
@@ -367,9 +367,9 @@ static void gpio_rcar_set(struct gpio_chip *chip, unsigned offset, int value)
367367 struct gpio_rcar_priv * p = gpiochip_get_data (chip );
368368 unsigned long flags ;
369369
370- spin_lock_irqsave (& p -> lock , flags );
370+ raw_spin_lock_irqsave (& p -> lock , flags );
371371 gpio_rcar_modify_bit (p , OUTDT , offset , value );
372- spin_unlock_irqrestore (& p -> lock , flags );
372+ raw_spin_unlock_irqrestore (& p -> lock , flags );
373373}
374374
375375static void gpio_rcar_set_multiple (struct gpio_chip * chip , unsigned long * mask ,
@@ -386,12 +386,12 @@ static void gpio_rcar_set_multiple(struct gpio_chip *chip, unsigned long *mask,
386386 if (!bankmask )
387387 return ;
388388
389- spin_lock_irqsave (& p -> lock , flags );
389+ raw_spin_lock_irqsave (& p -> lock , flags );
390390 val = gpio_rcar_read (p , OUTDT );
391391 val &= ~bankmask ;
392392 val |= (bankmask & bits [0 ]);
393393 gpio_rcar_write (p , OUTDT , val );
394- spin_unlock_irqrestore (& p -> lock , flags );
394+ raw_spin_unlock_irqrestore (& p -> lock , flags );
395395}
396396
397397static int gpio_rcar_direction_output (struct gpio_chip * chip , unsigned offset ,
@@ -505,7 +505,7 @@ static int gpio_rcar_probe(struct platform_device *pdev)
505505 return - ENOMEM ;
506506
507507 p -> dev = dev ;
508- spin_lock_init (& p -> lock );
508+ raw_spin_lock_init (& p -> lock );
509509
510510 /* Get device configuration from DT node */
511511 ret = gpio_rcar_parse_dt (p , & npins );
0 commit comments