2017-09-14 02:59:41

by Masahiro Yamada

[permalink] [raw]
Subject: [PATCH] gpio: thunderx: remove unused .map() hook from irq_domain_ops

This driver implements .alloc() hook, so .map() is not used.

Signed-off-by: Masahiro Yamada <[email protected]>
---

drivers/gpio/gpio-thunderx.c | 13 -------------
1 file changed, 13 deletions(-)

diff --git a/drivers/gpio/gpio-thunderx.c b/drivers/gpio/gpio-thunderx.c
index 57efb25..b5adb79 100644
--- a/drivers/gpio/gpio-thunderx.c
+++ b/drivers/gpio/gpio-thunderx.c
@@ -417,18 +417,6 @@ static struct irq_chip thunderx_gpio_irq_chip = {
.flags = IRQCHIP_SET_TYPE_MASKED
};

-static int thunderx_gpio_irq_map(struct irq_domain *d, unsigned int irq,
- irq_hw_number_t hwirq)
-{
- struct thunderx_gpio *txgpio = d->host_data;
-
- if (hwirq >= txgpio->chip.ngpio)
- return -EINVAL;
- if (!thunderx_gpio_is_gpio_nowarn(txgpio, hwirq))
- return -EPERM;
- return 0;
-}
-
static int thunderx_gpio_irq_translate(struct irq_domain *d,
struct irq_fwspec *fwspec,
irq_hw_number_t *hwirq,
@@ -455,7 +443,6 @@ static int thunderx_gpio_irq_alloc(struct irq_domain *d, unsigned int virq,
}

static const struct irq_domain_ops thunderx_gpio_irqd_ops = {
- .map = thunderx_gpio_irq_map,
.alloc = thunderx_gpio_irq_alloc,
.translate = thunderx_gpio_irq_translate
};
--
2.7.4


2017-09-14 16:59:40

by David Daney

[permalink] [raw]
Subject: Re: [PATCH] gpio: thunderx: remove unused .map() hook from irq_domain_ops

On 09/13/2017 07:37 PM, Masahiro Yamada wrote:
> This driver implements .alloc() hook, so .map() is not used.
>

Have you tested this?

I will have to test this on a real system next week before I can really
comment on it.

David.



> Signed-off-by: Masahiro Yamada <[email protected]>
> ---
>
> drivers/gpio/gpio-thunderx.c | 13 -------------
> 1 file changed, 13 deletions(-)
>
> diff --git a/drivers/gpio/gpio-thunderx.c b/drivers/gpio/gpio-thunderx.c
> index 57efb25..b5adb79 100644
> --- a/drivers/gpio/gpio-thunderx.c
> +++ b/drivers/gpio/gpio-thunderx.c
> @@ -417,18 +417,6 @@ static struct irq_chip thunderx_gpio_irq_chip = {
> .flags = IRQCHIP_SET_TYPE_MASKED
> };
>
> -static int thunderx_gpio_irq_map(struct irq_domain *d, unsigned int irq,
> - irq_hw_number_t hwirq)
> -{
> - struct thunderx_gpio *txgpio = d->host_data;
> -
> - if (hwirq >= txgpio->chip.ngpio)
> - return -EINVAL;
> - if (!thunderx_gpio_is_gpio_nowarn(txgpio, hwirq))
> - return -EPERM;
> - return 0;
> -}
> -
> static int thunderx_gpio_irq_translate(struct irq_domain *d,
> struct irq_fwspec *fwspec,
> irq_hw_number_t *hwirq,
> @@ -455,7 +443,6 @@ static int thunderx_gpio_irq_alloc(struct irq_domain *d, unsigned int virq,
> }
>
> static const struct irq_domain_ops thunderx_gpio_irqd_ops = {
> - .map = thunderx_gpio_irq_map,
> .alloc = thunderx_gpio_irq_alloc,
> .translate = thunderx_gpio_irq_translate
> };
>

2017-09-15 01:49:31

by Masahiro Yamada

[permalink] [raw]
Subject: Re: [PATCH] gpio: thunderx: remove unused .map() hook from irq_domain_ops

Hi David,

2017-09-15 1:59 GMT+09:00 David Daney <[email protected]>:
> On 09/13/2017 07:37 PM, Masahiro Yamada wrote:
>>
>> This driver implements .alloc() hook, so .map() is not used.
>>
>
> Have you tested this?


No. I do not have access to this hardware.

It is just, in my understanding,
.alloc() and .map() are exclusive.



> I will have to test this on a real system next week before I can really
> comment on it.
>
> David.
>
>
>
>
>> Signed-off-by: Masahiro Yamada <[email protected]>
>> ---
>>
>> drivers/gpio/gpio-thunderx.c | 13 -------------
>> 1 file changed, 13 deletions(-)
>>
>> diff --git a/drivers/gpio/gpio-thunderx.c b/drivers/gpio/gpio-thunderx.c
>> index 57efb25..b5adb79 100644
>> --- a/drivers/gpio/gpio-thunderx.c
>> +++ b/drivers/gpio/gpio-thunderx.c
>> @@ -417,18 +417,6 @@ static struct irq_chip thunderx_gpio_irq_chip = {
>> .flags = IRQCHIP_SET_TYPE_MASKED
>> };
>> -static int thunderx_gpio_irq_map(struct irq_domain *d, unsigned int
>> irq,
>> - irq_hw_number_t hwirq)
>> -{
>> - struct thunderx_gpio *txgpio = d->host_data;
>> -
>> - if (hwirq >= txgpio->chip.ngpio)
>> - return -EINVAL;
>> - if (!thunderx_gpio_is_gpio_nowarn(txgpio, hwirq))
>> - return -EPERM;
>> - return 0;
>> -}
>> -
>> static int thunderx_gpio_irq_translate(struct irq_domain *d,
>> struct irq_fwspec *fwspec,
>> irq_hw_number_t *hwirq,
>> @@ -455,7 +443,6 @@ static int thunderx_gpio_irq_alloc(struct irq_domain
>> *d, unsigned int virq,
>> }
>> static const struct irq_domain_ops thunderx_gpio_irqd_ops = {
>> - .map = thunderx_gpio_irq_map,
>> .alloc = thunderx_gpio_irq_alloc,
>> .translate = thunderx_gpio_irq_translate
>> };
>>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html



--
Best Regards
Masahiro Yamada

2017-09-21 11:30:31

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH] gpio: thunderx: remove unused .map() hook from irq_domain_ops

On Thu, Sep 14, 2017 at 4:37 AM, Masahiro Yamada
<[email protected]> wrote:

> This driver implements .alloc() hook, so .map() is not used.
>
> Signed-off-by: Masahiro Yamada <[email protected]>

Waiting for David to test this patch before applying.

Yours,
Linus Walleij

2017-09-21 21:54:22

by David Daney

[permalink] [raw]
Subject: Re: [PATCH] gpio: thunderx: remove unused .map() hook from irq_domain_ops

On 09/13/2017 07:37 PM, Masahiro Yamada wrote:
> This driver implements .alloc() hook, so .map() is not used.

Although this comment is true for this driver, it is unclear to me if
the statement is true in the general case.


>
> Signed-off-by: Masahiro Yamada <[email protected]>

Tested-by: David Daney <[email protected]>

> ---
>
> drivers/gpio/gpio-thunderx.c | 13 -------------
> 1 file changed, 13 deletions(-)
>
> diff --git a/drivers/gpio/gpio-thunderx.c b/drivers/gpio/gpio-thunderx.c
> index 57efb25..b5adb79 100644
> --- a/drivers/gpio/gpio-thunderx.c
> +++ b/drivers/gpio/gpio-thunderx.c
> @@ -417,18 +417,6 @@ static struct irq_chip thunderx_gpio_irq_chip = {
> .flags = IRQCHIP_SET_TYPE_MASKED
> };
>
> -static int thunderx_gpio_irq_map(struct irq_domain *d, unsigned int irq,
> - irq_hw_number_t hwirq)
> -{
> - struct thunderx_gpio *txgpio = d->host_data;
> -
> - if (hwirq >= txgpio->chip.ngpio)
> - return -EINVAL;
> - if (!thunderx_gpio_is_gpio_nowarn(txgpio, hwirq))
> - return -EPERM;
> - return 0;
> -}
> -
> static int thunderx_gpio_irq_translate(struct irq_domain *d,
> struct irq_fwspec *fwspec,
> irq_hw_number_t *hwirq,
> @@ -455,7 +443,6 @@ static int thunderx_gpio_irq_alloc(struct irq_domain *d, unsigned int virq,
> }
>
> static const struct irq_domain_ops thunderx_gpio_irqd_ops = {
> - .map = thunderx_gpio_irq_map,
> .alloc = thunderx_gpio_irq_alloc,
> .translate = thunderx_gpio_irq_translate
> };
>

2017-09-22 13:33:01

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH] gpio: thunderx: remove unused .map() hook from irq_domain_ops

On Thu, Sep 14, 2017 at 4:37 AM, Masahiro Yamada
<[email protected]> wrote:

> This driver implements .alloc() hook, so .map() is not used.
>
> Signed-off-by: Masahiro Yamada <[email protected]>

Patch applied with David's Tested-by.

Yours,
Linus Walleij