include/linux/mfd/sun4i-gpadc.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
The identifiers are used as IRQ resource numbers, where 0 is treated
specially.
This fixes sun4i-gpadc-iio probe failed when request irq.
The backstack:
WARNING: CPU: 3 PID: 1 at drivers/base/platform.c:451
__platform_get_irq_byname+0xb8/0xc4
0 is an invalid IRQ number
Modules linked in:
CPU: 3 PID: 1 Comm: swapper/0 Not tainted 6.7.0-rc6 #9
Hardware name: Allwinner sun8i Family
unwind_backtrace
show_stack
dump_stack_lvl
__warn
warn_slowpath_fmt
__platform_get_irq_byname
platform_get_irq_byname
sun4i_irq_init
sun4i_gpadc_probe
platform_probe
really_probe
__driver_probe_device
driver_probe_device
__driver_attach
bus_for_each_dev
bus_add_driver
driver_register
do_one_initcall
do_initcall_level
do_initcalls
kernel_init_freeable
kernel_init
Log reports:
sun4i-gpadc-iio sun6i-a31-gpadc-iio.0: error -EINVAL: IRQ FIFO_DATA_PENDING
not found
sun4i-gpadc-iio: probe of sun6i-a31-gpadc-iio.0 failed with error -22
Signed-off-by: Fuyao Kashizuku <fuyao@sjterm.com>
---
Changes in v2:
- Fix the commit message.
- Add the backstack.
- Add the log reports.
- Use the correct full name and email address.
- Correct the subsystem to mfd.
- Link to v1: https://lore.kernel.org/lkml/YwdhTlk+9h+9Mrwm@scg/
include/linux/mfd/sun4i-gpadc.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/include/linux/mfd/sun4i-gpadc.h b/include/linux/mfd/sun4i-gpadc.h
index ea0ccf33a459..021f820f9d52 100644
--- a/include/linux/mfd/sun4i-gpadc.h
+++ b/include/linux/mfd/sun4i-gpadc.h
@@ -81,8 +81,8 @@
#define SUN4I_GPADC_TEMP_DATA 0x20
#define SUN4I_GPADC_DATA 0x24
-#define SUN4I_GPADC_IRQ_FIFO_DATA 0
-#define SUN4I_GPADC_IRQ_TEMP_DATA 1
+#define SUN4I_GPADC_IRQ_FIFO_DATA 1
+#define SUN4I_GPADC_IRQ_TEMP_DATA 2
/* 10s delay before suspending the IP */
#define SUN4I_GPADC_AUTOSUSPEND_DELAY 10000
--
2.39.2
On Wed, 27 Dec 2023 10:01:17 +0800, Fuyao Kashizuku wrote:
> The identifiers are used as IRQ resource numbers, where 0 is treated
> specially.
>
> This fixes sun4i-gpadc-iio probe failed when request irq.
>
> The backstack:
> WARNING: CPU: 3 PID: 1 at drivers/base/platform.c:451
> __platform_get_irq_byname+0xb8/0xc4
> 0 is an invalid IRQ number
> Modules linked in:
> CPU: 3 PID: 1 Comm: swapper/0 Not tainted 6.7.0-rc6 #9
> Hardware name: Allwinner sun8i Family
> unwind_backtrace
> show_stack
> dump_stack_lvl
> __warn
> warn_slowpath_fmt
> __platform_get_irq_byname
> platform_get_irq_byname
> sun4i_irq_init
> sun4i_gpadc_probe
> platform_probe
> really_probe
> __driver_probe_device
> driver_probe_device
> __driver_attach
> bus_for_each_dev
> bus_add_driver
> driver_register
> do_one_initcall
> do_initcall_level
> do_initcalls
> kernel_init_freeable
> kernel_init
>
> [...]
Applied, thanks!
[1/1] mfd: sun4i-gpadc: adaptation interrupt number
commit: 112461517fa0cf4135bf242270c2923b61426b60
--
Lee Jones [李琼斯]
Dne sreda, 27. december 2023 ob 03:01:17 CET je Fuyao Kashizuku napisal(a): > The identifiers are used as IRQ resource numbers, where 0 is treated > specially. > > This fixes sun4i-gpadc-iio probe failed when request irq. > > The backstack: > WARNING: CPU: 3 PID: 1 at drivers/base/platform.c:451 > __platform_get_irq_byname+0xb8/0xc4 > 0 is an invalid IRQ number > Modules linked in: > CPU: 3 PID: 1 Comm: swapper/0 Not tainted 6.7.0-rc6 #9 > Hardware name: Allwinner sun8i Family > unwind_backtrace > show_stack > dump_stack_lvl > __warn > warn_slowpath_fmt > __platform_get_irq_byname > platform_get_irq_byname > sun4i_irq_init > sun4i_gpadc_probe > platform_probe > really_probe > __driver_probe_device > driver_probe_device > __driver_attach > bus_for_each_dev > bus_add_driver > driver_register > do_one_initcall > do_initcall_level > do_initcalls > kernel_init_freeable > kernel_init > > Log reports: > sun4i-gpadc-iio sun6i-a31-gpadc-iio.0: error -EINVAL: IRQ FIFO_DATA_PENDING > not found > sun4i-gpadc-iio: probe of sun6i-a31-gpadc-iio.0 failed with error -22 > > Signed-off-by: Fuyao Kashizuku <fuyao@sjterm.com> Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com> Best regards, Jernej > --- > Changes in v2: > - Fix the commit message. > - Add the backstack. > - Add the log reports. > - Use the correct full name and email address. > - Correct the subsystem to mfd. > - Link to v1: https://lore.kernel.org/lkml/YwdhTlk+9h+9Mrwm@scg/ > > include/linux/mfd/sun4i-gpadc.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/include/linux/mfd/sun4i-gpadc.h b/include/linux/mfd/sun4i-gpadc.h > index ea0ccf33a459..021f820f9d52 100644 > --- a/include/linux/mfd/sun4i-gpadc.h > +++ b/include/linux/mfd/sun4i-gpadc.h > @@ -81,8 +81,8 @@ > #define SUN4I_GPADC_TEMP_DATA 0x20 > #define SUN4I_GPADC_DATA 0x24 > > -#define SUN4I_GPADC_IRQ_FIFO_DATA 0 > -#define SUN4I_GPADC_IRQ_TEMP_DATA 1 > +#define SUN4I_GPADC_IRQ_FIFO_DATA 1 > +#define SUN4I_GPADC_IRQ_TEMP_DATA 2 > > /* 10s delay before suspending the IP */ > #define SUN4I_GPADC_AUTOSUSPEND_DELAY 10000 >
© 2016 - 2025 Red Hat, Inc.