ed-by: Alexander Sverdlin
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 9 -
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers/gpio/gpio-ep93xx.c
index 9760df7d1172..56ddf6b9baba 100644
--- a/drivers/gpio/gpio-ep93xx.c
+++ b/d
- use predefined constants instead of plain numbers
- use provided bank IRQ number instead of defined constant
for port F
Reviewed-by: Linus Walleij
Reviewed-by: Alexander Sverdlin
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 12 +++-
1 file changed, 7 insertions
Fix typo in comment.
Reviewed-by: Linus Walleij
Acked-by: Alexander Sverdlin
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers/gpio/gpio-ep93xx.c
index a69bf3100f99..9760df7d1172
As ->to_irq is redefined in gpiochip_add_irqchip, having it defined in
driver is useless, so let's drop it.
Reviewed-by: Linus Walleij
Acked-by: Alexander Sverdlin
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 6 --
1 file changed, 6 deletions(-)
diff --git a/driv
chip into
ep93xx_gpio_banks
[ cut here ]
kernel BUG at drivers/gpio/gpio-ep93xx.c:64!
---[ end trace 3f6544e133e9f5ae ]---
Fixes: fd935fc421e74 ("gpio: ep93xx: Do not pingpong irq numbers")
Reviewed-by: Alexander Sverdlin
Tested-by: Alexander Sverdlin
Signed-off-
Walleij
Acked-by: Alexander Sverdlin
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers/gpio/gpio-ep93xx.c
index 94d9fa0d6aa7..3dea4ce929ab 100644
--- a/drivers/gpio/gpio-ep93xx.c
+++ b/drivers/gpio/gp
separate irqchip for each interrupt capable gpiochip
- provided unique names for each irqchip
Fixes: d2b091961510 ("gpio: ep93xx: Pass irqchip when adding gpiochip")
Signed-off-by: Nikita Shubin
---
v5->v6:
- add devm_kasprintf() return value check and move it out from
ep93xx_init_irq_chi
v2:
https://lore.kernel.org/linux-gpio/20210127104617.1173-1-nikita.shu...@maquefel.me/
v3:
https://lore.kernel.org/linux-gpio/20210128122123.25341-1-nikita.shu...@maquefel.me/
v4:
https://lore.kernel.org/linux-gpio/20210205080507.16007-1-nikita.shu...@maquefel.me/
v5:
https://lore.kernel.org/
On Tuesday, 9 February 2021 15:46:19 MSK Andy Shevchenko wrote:
>On Tue, Feb 9, 2021 at 2:35 PM Nikita Shubin
wrote:
>> On Monday, 8 February 2021 16:20:17 MSK Andy Shevchenko wrote:
>> >On Mon, Feb 8, 2021 at 11:00 AM Nikita Shubin
>>
>> wrote:
>...
>
>
Hello Andy.
On Monday, 8 February 2021 16:20:17 MSK Andy Shevchenko wrote:
>On Mon, Feb 8, 2021 at 11:00 AM Nikita Shubin
wrote:
>> Fixes the following warnings which results in interrupts disabled on
>> port B/F:
>>
>> gpio gpiochip1: (B): detected irqchip t
separate irqchip for each interrupt capable gpiochip
- provided unique names for each irqchip
Fixes: d2b091961510 ("gpio: ep93xx: Pass irqchip when adding gpiochip")
Signed-off-by: Nikita Shubin
---
v4->v5:
- generate IRQ chip's names dynamicaly from label
---
drivers/gpio/
ed-by: Alexander Sverdlin
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 9 -
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers/gpio/gpio-ep93xx.c
index 9ac8a8b830c1..e75f7a9e40a0 100644
--- a/drivers/gpio/gpio-ep93xx.c
+++ b/d
Walleij
Acked-by: Alexander Sverdlin
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers/gpio/gpio-ep93xx.c
index 3d8eb8769470..942da366220a 100644
--- a/drivers/gpio/gpio-ep93xx.c
+++ b/drivers/gpio/gp
As ->to_irq is redefined in gpiochip_add_irqchip, having it defined in
driver is useless, so let's drop it.
Reviewed-by: Linus Walleij
Acked-by: Alexander Sverdlin
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 6 --
1 file changed, 6 deletions(-)
diff --git a/driv
- use predefined constants instead of plain numbers
- use provided bank IRQ number instead of defined constant
for port F
Reviewed-by: Linus Walleij
Reviewed-by: Alexander Sverdlin
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 12 +++-
1 file changed, 7 insertions
Fix typo in comment.
Reviewed-by: Linus Walleij
Acked-by: Alexander Sverdlin
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers/gpio/gpio-ep93xx.c
index f8b21e1d55ed..9ac8a8b830c1
v2:
https://lore.kernel.org/linux-gpio/20210127104617.1173-1-nikita.shu...@maquefel.me/
v3:
https://lore.kernel.org/linux-gpio/20210128122123.25341-1-nikita.shu...@maquefel.me/
v4:
https://lore.kernel.org/linux-gpio/20210205080507.16007-1-nikita.shu...@maquefel.me/
v4->v5 changes
[PATCH v5 1/7
chip into
ep93xx_gpio_banks
[ cut here ]
kernel BUG at drivers/gpio/gpio-ep93xx.c:64!
---[ end trace 3f6544e133e9f5ae ]---
Fixes: fd935fc421e74 ("gpio: ep93xx: Do not pingpong irq numbers")
Signed-off-by: Nikita Shubin
---
v4->v5:
- make to_ep93xx_gpio_irq_
v2:
https://lore.kernel.org/linux-gpio/20210127104617.1173-1-nikita.shu...@maquefel.me/
v3:
https://lore.kernel.org/linux-gpio/20210128122123.25341-1-nikita.shu...@maquefel.me/
v3->v4 changes
[PATCH v4 1/7] gpio: ep93xx: fix BUG_ON port F usage
As suggested Alexander and Andy, drop confusing in
Fix typo in comment.
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers/gpio/gpio-ep93xx.c
index 6208a8010ff5..d330bff4d9f9 100644
--- a/drivers/gpio/gpio-ep93xx.c
+++ b/drivers
- replace plain numbers with girq->num_parents in devm_kcalloc
- replace plain numbers with girq->num_parents for port F
- refactor i - 1 to i + 1 to make loop more readable
- combine getting IRQ's loop and setting handler's into single loop
Signed-off-by: Nikita Shubin
---
d
- use predefined constants instead of plain numbers
- use provided bank IRQ number instead of defined constant
for port F
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 15 ++-
1 file changed, 10 insertions(+), 5 deletions(-)
diff --git a/drivers/gpio/gpio-ep93xx.c
Port F irq's should be statically mapped to EP93XX_GPIO_F_IRQ_BASE.
So we need to specify girq->first otherwise:
"If device tree is used, then first_irq will be 0 and
irqs get mapped dynamically on the fly"
And that's not the thing we want.
Signed-off-by: Nikita Shubin
As ->to_irq is redefined in gpiochip_add_irqchip, having it defined in
driver is useless, so let's drop it.
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 6 --
1 file changed, 6 deletions(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers/gpio/gpio-ep93xx
separate irqchip for each interrupt capable gpiochip
- provided unique names for each irqchip
Fixes: d2b091961510 ("gpio: ep93xx: Pass irqchip when adding gpiochip")
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 38 --
1 file changed, 28
capable chip into
ep93xx_gpio_banks
[ cut here ]
kernel BUG at drivers/gpio/gpio-ep93xx.c:64!
---[ end trace 3f6544e133e9f5ae ]---
Fixes: fd935fc421e74 ("gpio: ep93xx: Do not pingpong irq numbers")
Signed-off-by: Nikita Shubin
---
v3->v4:
- drop ep93xx_gpio
- replace plain numbers with girq->num_parents in devm_kcalloc
- replace plain numbers with girq->num_parents for port F
- refactor i - 1 to i + 1 to make loop more readable
- combine getting IRQ's loop and setting handler's into single loop
Signed-off-by: Nikita Shubin
- use predefined constants instead of plain numbers
- use provided bank IRQ number instead of defined constant
for port F
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 12 +++-
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b
separate irqchip for each interrupt capable gpiochip
- provided unique names for each irqchip
- reworked ep93xx_gpio_port to make it usable before chip_add_data
in ep93xx_init_irq_chips
Fixes: d2b091961510 ("gpio: ep93xx: Pass irqchip when adding gpiochip")
Signed-off-by: Nikita Shubin
v2:
https://lore.kernel.org/linux-gpio/20210127104617.1173-1-nikita.shu...@maquefel.me/
v2->v3 changes
[PATCH v3 1/7] gpio: ep93xx: fix BUG_ON port F usage
As suggested Andy Shevchenko dropped most of commit message
[PATCH v3 2/7] gpio: ep93xx: Fix single irqchip with multi
gpiochips
- Andy S
As ->to_irq is redefined in gpiochip_add_irqchip, having it defined in
driver is useless, so let's drop it.
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 6 --
1 file changed, 6 deletions(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers/gpio/gpio-ep93xx
00022070 be825f0f
dfe0: b6f2e4e0 be825bac 00010acc b6f2e4ec
Code: e59f0060 ebfff3e1 e3540002 9a00 (e7f001f2)
---[ end trace 3f6544e133e9f5ae ]---
Fixes: fd935fc421e74 ("gpio: ep93xx: Do not pingpong irq numbers")
Signed-off-by: Nikita Shubin
---
v2->v3:
Reworded c
Fix typo in comment.
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers/gpio/gpio-ep93xx.c
index ee1cb3b894db..d69ec09cd618 100644
--- a/drivers/gpio/gpio-ep93xx.c
+++ b/drivers
Port F irq's should be statically mapped to EP93XX_GPIO_F_IRQ_BASE.
So we need to specify girq->first otherwise:
"If device tree is used, then first_irq will be 0 and
irqs get mapped dynamically on the fly"
And that's not the thing we want.
Signed-off-by: Nikita Shubin
separate irqchip for each interrupt capable gpiochip
- provided unique names for each irqchip
- reworked ep93xx_gpio_port to make it usable before chip_add_data
in ep93xx_init_irq_chips
Fixes: a8173820f441 ("gpio: gpiolib: Allow GPIO IRQs to lazy disable")
Signed-off-by: Nikita Shubin
--
As ->to_irq is redefined in gpiochip_add_irqchip, having it defined in
driver is useless, so let's drop it.
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 6 --
1 file changed, 6 deletions(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers/gpio/gpio-ep93xx
Fix typo in comment.
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers/gpio/gpio-ep93xx.c
index dee19372ebbd..8f66e3ca0cfb 100644
--- a/drivers/gpio/gpio-ep93xx.c
+++ b/drivers
Port F irq's should be statically mapped to EP93XX_GPIO_F_IRQ_BASE.
So we need to specify girq->first otherwise:
"If device tree is used, then first_irq will be 0 and
irqs get mapped dynamically on the fly"
And that's not the thing we want.
Signed-off-by: Nikita Shubin
Series of patches to fix ep93xx gpio driver to make IRQ's working.
The following are fix patches (these are enough to get gpio-ep93xx
working with modern kernel):
[PATCH v2 1/9] gpio: ep93xx: fix BUG_ON port F usage
[PATCH v2 2/9] gpio: ep93xx: Fix single irqchip with multi
gpiochips
[PATCH v2 3
Replace boolean values used for determining if gpiochip is IRQ capable
or not with index.
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 47 --
1 file changed, 25 insertions(+), 22 deletions(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers
b6f2e4ec
Code: e59f0060 ebfff3e1 e3540002 9a00 (e7f001f2)
---[ end trace 3f6544e133e9f5ae ]---
Fixes: fd935fc421e74 ("gpio: ep93xx: Do not pingpong irq numbers")
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 9 +
1 file changed, 9 insertions(+)
diff --git a/dr
- replace plain numbers with girq->num_parents in devm_kcalloc
- replace plain numbers with ARRAY_SIZE(girq->parents) for port F
- refactor i - 1 to i + 1 to make loop more readable
- combine getting IRQ's loop and setting handler's into single loop
Signed-off-by: Nikita Shubin
-
Separate IRQ's setup for port A,B,F.
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 104 +++--
1 file changed, 64 insertions(+), 40 deletions(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers/gpio/gpio-ep93xx.c
index e4270b4e5f26..b212c00
- use predefined constants instead of plain numbers
- use provided bank IRQ number instead of defined constant
for port F
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 10 ++
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b
egration")
Signed-off-by: Nikita Shubin
---
v1->v2:
- Change chip_err to chip_warn
---
drivers/gpio/gpiolib.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index 5ce0c14c637b..5a9410c2537d 100644
--- a/drivers/gpio/gpiolib.c
27.12.2020, 16:55, "Linus Walleij" :
> Paging Hartley who I think uses this chip.
>
> On Thu, Dec 24, 2020 at 12:22 PM Nikita Shubin
> wrote:
>
>> I was lucky enough to became an owner of some splendid piece's of
>> antiques called ts7250 based on the
egration")
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpiolib.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index 5ce0c14c637b..44538d1a771a 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -14
26.12.2020, 20:52, "Andy Shevchenko" :
> On Thu, Dec 24, 2020 at 1:23 PM Nikita Shubin
> wrote:
>> Since gpiolib requires having separate irqchips for each gpiochip, we
>> need to add some we definetly need a separate one for F port, and we
>
> definitely
&g
Port F irq's should be statically mapped to EP93XX_GPIO_F_IRQ_BASE.
So we need to specify girq->first otherwise:
"If device tree is used, then first_irq will be 0 and
irqs get mapped dynamically on the fly"
And that's not the thing we want.
Signed-off-by: Nikita Shubin
I was lucky enough to became an owner of some splendid piece's of
antiques called ts7250 based on the top of Cirrus Logic EP9302.
I don't know what fate expects this hardware (it's not EOL it's just Not
recommended for new designs) but i wanted to share fixes in ep93xx gpio area.
It seems ep93xx
rough bit not tottaly sure this
is a correct thing to do)
- dropped has_irq and has_hierarchical_irq and added a simple index
which we rely on when adding irq's to gpiochip's
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 407 +
1 fi
is redefined in gpiochip_add_irqchip" \
"and you shouldn't rely on it\n");
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpio-ep93xx.c | 6 --
1 file changed, 6 deletions(-)
diff --git a/drivers/gpio/gpio-ep93xx.c b/drivers/gpio/gpio-ep93xx.c
index d6db0ff16581..90afe07213ce 100644
--
k to make sure shared irqchip is detected
even if irqchip->irq_enable wasn't defined.
Fixes: a8173820f441 ("gpio: gpiolib: Allow GPIO IRQs to lazy disable")
Signed-off-by: Nikita Shubin
---
drivers/gpio/gpiolib.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/
01 (e5933000)
---[ end trace c914d6030eaa95c8 ]---
Signed-off-by: Nikita Shubin
Cc: sta...@vger.kernel.org
---
drivers/rtc/rtc-ep93xx.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/rtc/rtc-ep93xx.c b/drivers/rtc/rtc-ep93xx.c
index 8ec9ea1ca72e..6f90b85a5814
Hello Clark,
This patch breaks spi-imx on imx7d.
Toradex Colibri imx7d spi reports with:
[4.258468] inv-mpu6000-spi spi2.0: I/O Error in PIO
[4.264269] inv-mpu6000-spi spi2.0: SPI transfer failed: -110
[4.264305] spi_master spi2: failed to transfer one message from queue
55 matches
Mail list logo