Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1683385 > unrolled thread

[PATCH 2/6] irqchip/tango: Use irq_gc_mask_disable_and_ack_set

Started byDoug Berger <opendmb@gmail.com>
First post2017-07-07 21:30 +0200
Last post2017-07-13 12:20 +0200
Articles 3 — 3 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH 2/6] irqchip/tango: Use irq_gc_mask_disable_and_ack_set Doug Berger <opendmb@gmail.com> - 2017-07-07 21:30 +0200
    Re: [PATCH 2/6] irqchip/tango: Use irq_gc_mask_disable_and_ack_set Marc Gonzalez <marc_gonzalez@sigmadesigns.com> - 2017-07-12 14:40 +0200
      Re: [PATCH 2/6] irqchip/tango: Use irq_gc_mask_disable_and_ack_set Måns Rullgård <mans@mansr.com> - 2017-07-13 12:20 +0200

#1683385 — [PATCH 2/6] irqchip/tango: Use irq_gc_mask_disable_and_ack_set

FromDoug Berger <opendmb@gmail.com>
Date2017-07-07 21:30 +0200
Subject[PATCH 2/6] irqchip/tango: Use irq_gc_mask_disable_and_ack_set
Message-ID<u0H6W-8rJ-11@gated-at.bofh.it>
From: Florian Fainelli <f.fainelli@gmail.com>

Any usage of the irq_gc_mask_disable_reg_and_ack() function should be
replaced with either the irq_gc_mask_disable_and_ack_set() or the
irq_gc_mask_set_and_ack_set() function depending on which corrects
the bugs in irq_gc_mask_disable_reg_and_ack() for a given usage.

For the Tango irqchip driver, irq_gc_mask_disable_and_ack_set() seems to
be what is intended, so use it.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Doug Berger <opendmb@gmail.com>
---
 drivers/irqchip/irq-tango.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/irqchip/irq-tango.c b/drivers/irqchip/irq-tango.c
index bdbb5c0ff7fe..0c085303a583 100644
--- a/drivers/irqchip/irq-tango.c
+++ b/drivers/irqchip/irq-tango.c
@@ -141,7 +141,7 @@ static void __init tangox_irq_init_chip(struct irq_chip_generic *gc,
 	for (i = 0; i < 2; i++) {
 		ct[i].chip.irq_ack = irq_gc_ack_set_bit;
 		ct[i].chip.irq_mask = irq_gc_mask_disable_reg;
-		ct[i].chip.irq_mask_ack = irq_gc_mask_disable_reg_and_ack;
+		ct[i].chip.irq_mask_ack = irq_gc_mask_disable_and_ack_set;
 		ct[i].chip.irq_unmask = irq_gc_unmask_enable_reg;
 		ct[i].chip.irq_set_type = tangox_irq_set_type;
 		ct[i].chip.name = gc->domain->name;
-- 
2.13.0

[toc] | [next] | [standalone]


#1685737

FromMarc Gonzalez <marc_gonzalez@sigmadesigns.com>
Date2017-07-12 14:40 +0200
Message-ID<u2p5T-8f8-7@gated-at.bofh.it>
In reply to#1683385
Hello,

I've added Mans (the code's author) to the recipient list.

Regards.

On 07/07/2017 21:20, Doug Berger wrote:

> From: Florian Fainelli <f.fainelli@gmail.com>
> 
> Any usage of the irq_gc_mask_disable_reg_and_ack() function should be
> replaced with either the irq_gc_mask_disable_and_ack_set() or the
> irq_gc_mask_set_and_ack_set() function depending on which corrects
> the bugs in irq_gc_mask_disable_reg_and_ack() for a given usage.
> 
> For the Tango irqchip driver, irq_gc_mask_disable_and_ack_set() seems to
> be what is intended, so use it.
> 
> Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
> Signed-off-by: Doug Berger <opendmb@gmail.com>
> ---
>  drivers/irqchip/irq-tango.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/irqchip/irq-tango.c b/drivers/irqchip/irq-tango.c
> index bdbb5c0ff7fe..0c085303a583 100644
> --- a/drivers/irqchip/irq-tango.c
> +++ b/drivers/irqchip/irq-tango.c
> @@ -141,7 +141,7 @@ static void __init tangox_irq_init_chip(struct irq_chip_generic *gc,
>  	for (i = 0; i < 2; i++) {
>  		ct[i].chip.irq_ack = irq_gc_ack_set_bit;
>  		ct[i].chip.irq_mask = irq_gc_mask_disable_reg;
> -		ct[i].chip.irq_mask_ack = irq_gc_mask_disable_reg_and_ack;
> +		ct[i].chip.irq_mask_ack = irq_gc_mask_disable_and_ack_set;
>  		ct[i].chip.irq_unmask = irq_gc_unmask_enable_reg;
>  		ct[i].chip.irq_set_type = tangox_irq_set_type;
>  		ct[i].chip.name = gc->domain->name;
> 

[toc] | [prev] | [next] | [standalone]


#1686434

FromMåns Rullgård <mans@mansr.com>
Date2017-07-13 12:20 +0200
Message-ID<u2JnZ-4lu-25@gated-at.bofh.it>
In reply to#1685737
Marc Gonzalez <marc_gonzalez@sigmadesigns.com> writes:

> Hello,
>
> I've added Mans (the code's author) to the recipient list.
>
> Regards.
>
> On 07/07/2017 21:20, Doug Berger wrote:
>
>> From: Florian Fainelli <f.fainelli@gmail.com>
>> 
>> Any usage of the irq_gc_mask_disable_reg_and_ack() function should be
>> replaced with either the irq_gc_mask_disable_and_ack_set() or the
>> irq_gc_mask_set_and_ack_set() function depending on which corrects
>> the bugs in irq_gc_mask_disable_reg_and_ack() for a given usage.
>> 
>> For the Tango irqchip driver, irq_gc_mask_disable_and_ack_set() seems to
>> be what is intended, so use it.
>> 
>> Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
>> Signed-off-by: Doug Berger <opendmb@gmail.com>

As I said elsewhere, this looks more correct although I haven't tested it.

Acked-by: Mans Rullgard <mans@mansr.com>

>> ---
>>  drivers/irqchip/irq-tango.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>> 
>> diff --git a/drivers/irqchip/irq-tango.c b/drivers/irqchip/irq-tango.c
>> index bdbb5c0ff7fe..0c085303a583 100644
>> --- a/drivers/irqchip/irq-tango.c
>> +++ b/drivers/irqchip/irq-tango.c
>> @@ -141,7 +141,7 @@ static void __init tangox_irq_init_chip(struct irq_chip_generic *gc,
>>  	for (i = 0; i < 2; i++) {
>>  		ct[i].chip.irq_ack = irq_gc_ack_set_bit;
>>  		ct[i].chip.irq_mask = irq_gc_mask_disable_reg;
>> -		ct[i].chip.irq_mask_ack = irq_gc_mask_disable_reg_and_ack;
>> +		ct[i].chip.irq_mask_ack = irq_gc_mask_disable_and_ack_set;
>>  		ct[i].chip.irq_unmask = irq_gc_unmask_enable_reg;
>>  		ct[i].chip.irq_set_type = tangox_irq_set_type;
>>  		ct[i].chip.name = gc->domain->name;
>> 
>

-- 
Måns Rullgård

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web