RE: [PATCH v3 1/5] Input: goodix - reset device at init
From: Tirdea, Irina
Date: Thu Oct 01 2015 - 10:43:09 EST
> -----Original Message-----
> From: mrgarnacho@xxxxxxxxx [mailto:mrgarnacho@xxxxxxxxx] On Behalf Of Carlos Garnacho
> Sent: 30 September, 2015 17:02
> To: Bastien Nocera
> Cc: Tirdea, Irina; linux-input@xxxxxxxxxxxxxxx; Cosimo Cecchi; Christian Hergert; linux-kernel@xxxxxxxxxxxxxxx; Rob Herring; Pawel
> Moll; Ian Campbell; Kumar Gala; Purdila, Octavian; Dmitry Torokhov; Mark Rutland; devicetree@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH v3 1/5] Input: goodix - reset device at init
>
> Hey,
>
Hi Carlos and Bastien,
Thanks for your help and for testing these patches!
<snip>
> >> > I'm not sure how we can detect, and blacklist, those devices. At
> >> > least
> >> > my original device, the Onda v975w, and the WinBook TW100 would
> >> > have
> >> > those problems.
> >> >
> >>
> >> I can use DMI quirks to exclude these devices from using the features
> >> that
> >> depend on the gpio pins. I already have the DMI information for
> >> WinBook TW100
> >> and WinBook TW700. Could you tell me the DMI_SYS_VENDOR and
> >> DMI_PRODUCT_NAME for Onda v975w so I can add it as well?
> >
> > I don't have access to the Onda v975w anymore, but let me CC: a few
> > people that could also help with testing.
> >
> > Carlos, Cosimo, Christian, there's a patchset for you to test on the
> > Onda v975w at:
> > https://github.com/hadess/gt9xx/commits/irina-tirdea
> >
> > Doing an "rmmod goodix ; insmod ./goodix_backport.ko" should be enough
> > to test whether the patch set works. If it doesn't work correctly,
> > you'll need to reboot the machine, swap the irq_idx and rst_idx values
> > at:
> > https://github.com/hadess/gt9xx/commit/c27de79f494c2b2e7a198ff4d27976ae93669dbd#diff-
> dddc2849e36327439530f3e2faacec4fR321
> >
> > and try again.
>
> Unswapped does fail with:
>
> sep 30 15:37:29 tablet kernel: Goodix-TS i2c-GDIX1001:00: i2c test
> failed attempt 1: -121
> sep 30 15:37:29 tablet kernel: Goodix-TS i2c-GDIX1001:00: i2c test
> failed attempt 2: -121
> sep 30 15:37:29 tablet kernel: Goodix-TS i2c-GDIX1001:00: I2C
> communication failure: -121
> sep 30 15:37:29 tablet kernel: Goodix-TS: probe of i2c-GDIX1001:00
> failed with error -121
>
> Swapping the values triggers some errors:
>
> sep 30 15:48:17 tablet kernel: ------------[ cut here ]------------
> sep 30 15:48:17 tablet kernel: WARNING: CPU: 1 PID: 2341 at
> drivers/pinctrl/intel/pinctrl-baytrail.c:342
> byt_gpio_direction_output+0xa1/0xb0()
> sep 30 15:48:17 tablet kernel: Potential Error: Setting GPIO with
> direct_irq_en to output
> sep 30 15:48:17 tablet kernel: Modules linked in:
> sep 30 15:48:17 tablet kernel: goodix_backport(OE+) r8723bs(OE) nfsd
> lockd grace sunrpc [last unloaded: goodix]
> sep 30 15:48:17 tablet kernel: CPU: 1 PID: 2341 Comm: insmod Tainted:
> G OE 4.3.0-rc1+ #36
> sep 30 15:48:17 tablet kernel: Hardware name: To be filled by O.E.M.
> To be filled by O.E.M./Aptio CRB, BIOS 5.6.5 07/25/2014
> sep 30 15:48:17 tablet kernel: 00000000 00000000 d3f61c08 c13b347f
> d3f61c48 d3f61c38 c10a9e1d c20f10e0
> sep 30 15:48:17 tablet kernel: d3f61c64 00000925 c20f111c 00000156
> c13e7ce1 c13e7ce1 f80580b8 f53a4b0c
> sep 30 15:48:17 tablet kernel: 00000156 d3f61c50 c10a9e93 00000009
> d3f61c48 c20f10e0 d3f61c64 d3f61c78
> sep 30 15:48:17 tablet kernel: Call Trace:
> sep 30 15:48:17 tablet kernel: [<c13b347f>] dump_stack+0x48/0x69
> sep 30 15:48:17 tablet kernel: [<c10a9e1d>] warn_slowpath_common+0x8d/0xd0
> sep 30 15:48:17 tablet kernel: [<c13e7ce1>] ?
> byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:48:17 tablet kernel: [<c13e7ce1>] ?
> byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:48:17 tablet kernel: [<c10a9e93>] warn_slowpath_fmt+0x33/0x40
> sep 30 15:48:17 tablet kernel: [<c13e7ce1>] byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:48:17 tablet kernel: [<c13e7c40>] ? byt_gpio_irq_handler+0xb0/0xb0
> sep 30 15:48:17 tablet kernel: [<c13eabc3>]
> _gpiod_direction_output_raw+0x63/0x350
> sep 30 15:48:17 tablet kernel: [<c13eaf1a>] gpiod_direction_output+0x2a/0x50
> sep 30 15:48:17 tablet kernel: [<c112b846>] ? msleep+0x36/0x40
> sep 30 15:48:17 tablet kernel: [<f9ff38ae>] goodix_reset+0x3e/0x90
> [goodix_backport]
> sep 30 15:48:17 tablet kernel: [<f9ff40fa>]
> goodix_ts_probe+0x12a/0x5aa [goodix_backport]
> sep 30 15:48:17 tablet kernel: [<c142a5a4>] ? acpi_device_wakeup+0x7a/0x80
> sep 30 15:48:17 tablet kernel: [<c142ad84>] ? acpi_dev_pm_attach+0x71/0x87
> sep 30 15:48:17 tablet kernel: [<c1924271>] i2c_device_probe+0x121/0x1d0
> sep 30 15:48:17 tablet kernel: [<c1c77da2>] ? _raw_spin_unlock+0x22/0x30
> sep 30 15:48:17 tablet kernel: [<f9ff3fd0>] ?
> goodix_config_cb+0xc0/0xc0 [goodix_backport]
> sep 30 15:48:17 tablet kernel: [<c15b2125>] ? driver_sysfs_add+0x75/0xa0
> sep 30 15:48:17 tablet kernel: [<c15b2b24>] driver_probe_device+0x204/0x4c0
> sep 30 15:48:17 tablet kernel: [<c15b2e3c>] ? __driver_attach+0x5c/0xa0
> sep 30 15:48:17 tablet kernel: [<c15b2e3c>] ? __driver_attach+0x5c/0xa0
> sep 30 15:48:17 tablet kernel: [<c15b2e79>] __driver_attach+0x99/0xa0
> sep 30 15:48:17 tablet kernel: [<c15b2de0>] ? driver_probe_device+0x4c0/0x4c0
> sep 30 15:48:17 tablet kernel: [<c15b092f>] bus_for_each_dev+0x4f/0x80
> sep 30 15:48:17 tablet kernel: [<c15b22de>] driver_attach+0x1e/0x20
> sep 30 15:48:17 tablet kernel: [<c15b2de0>] ? driver_probe_device+0x4c0/0x4c0
> sep 30 15:48:17 tablet kernel: [<c15b1e77>] bus_add_driver+0x1f7/0x2a0
> sep 30 15:48:17 tablet kernel: [<f9ff7000>] ? 0xf9ff7000
> sep 30 15:48:17 tablet kernel: [<f9ff7000>] ? 0xf9ff7000
> sep 30 15:48:17 tablet kernel: [<c15b398d>] driver_register+0x5d/0xf0
> sep 30 15:48:17 tablet kernel: [<c1924daa>] i2c_register_driver+0x2a/0xa0
> sep 30 15:48:17 tablet kernel: [<c100045f>] ? do_one_initcall+0x9f/0x1f0
> sep 30 15:48:17 tablet kernel: [<f9ff7012>]
> goodix_ts_driver_init+0x12/0x14 [goodix_backport]
> sep 30 15:48:17 tablet kernel: [<c100046a>] do_one_initcall+0xaa/0x1f0
> sep 30 15:48:17 tablet kernel: [<f9ff7000>] ? 0xf9ff7000
> sep 30 15:48:17 tablet kernel: [<c10d2486>] ? __might_sleep+0x36/0xa0
> sep 30 15:48:17 tablet kernel: [<c1103fd4>] ?
> trace_hardirqs_on_caller+0x14/0x220
> sep 30 15:48:17 tablet kernel: [<c11c1c5c>] ? free_pages_prepare+0x19c/0x380
> sep 30 15:48:17 tablet kernel: [<c120bce8>] ? kmem_cache_alloc_trace+0xa8/0x2a0
> sep 30 15:48:17 tablet kernel: [<c11bac3f>] ? do_init_module+0x21/0x1b0
> sep 30 15:48:17 tablet kernel: [<c11bac6e>] do_init_module+0x50/0x1b0
> sep 30 15:48:17 tablet kernel: [<c114b69b>] load_module+0x13db/0x1980
> sep 30 15:48:17 tablet kernel: [<c114be29>] SyS_finit_module+0x89/0xd0
> sep 30 15:48:17 tablet kernel: [<c11d9532>] ? vm_mmap_pgoff+0x62/0x80
> sep 30 15:48:17 tablet kernel: [<c1c787f0>] sysenter_do_call+0x12/0x12
> sep 30 15:48:17 tablet kernel: ---[ end trace e0f66305648b0639 ]---
> sep 30 15:48:17 tablet kernel: ------------[ cut here ]------------
> sep 30 15:48:17 tablet kernel: WARNING: CPU: 1 PID: 2341 at
> drivers/pinctrl/intel/pinctrl-baytrail.c:342
> byt_gpio_direction_output+0xa1/0xb0()
> sep 30 15:48:17 tablet kernel: Potential Error: Setting GPIO with
> direct_irq_en to output
> sep 30 15:48:17 tablet kernel: Modules linked in:
> sep 30 15:48:17 tablet kernel: goodix_backport(OE+) r8723bs(OE) nfsd
> lockd grace sunrpc [last unloaded: goodix]
> sep 30 15:48:17 tablet kernel: CPU: 1 PID: 2341 Comm: insmod Tainted:
> G W OE 4.3.0-rc1+ #36
> sep 30 15:48:17 tablet kernel: Hardware name: To be filled by O.E.M.
> To be filled by O.E.M./Aptio CRB, BIOS 5.6.5 07/25/2014
> sep 30 15:48:17 tablet kernel: 00000000 00000000 d3f61bfc c13b347f
> d3f61c3c d3f61c2c c10a9e1d c20f10e0
> sep 30 15:48:17 tablet kernel: d3f61c58 00000925 c20f111c 00000156
> c13e7ce1 c13e7ce1 f80580b8 f53a4b0c
> sep 30 15:48:17 tablet kernel: 00000156 d3f61c44 c10a9e93 00000009
> d3f61c3c c20f10e0 d3f61c58 d3f61c6c
> sep 30 15:48:17 tablet kernel: Call Trace:
> sep 30 15:48:17 tablet kernel: [<c13b347f>] dump_stack+0x48/0x69
> sep 30 15:48:17 tablet kernel: [<c10a9e1d>] warn_slowpath_common+0x8d/0xd0
> sep 30 15:48:17 tablet kernel: [<c13e7ce1>] ?
> byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:48:17 tablet kernel: [<c13e7ce1>] ?
> byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:48:17 tablet kernel: [<c10a9e93>] warn_slowpath_fmt+0x33/0x40
> sep 30 15:48:17 tablet kernel: [<c13e7ce1>] byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:48:17 tablet kernel: [<c13e7c40>] ? byt_gpio_irq_handler+0xb0/0xb0
> sep 30 15:48:17 tablet kernel: [<c13eabc3>]
> _gpiod_direction_output_raw+0x63/0x350
> sep 30 15:48:17 tablet kernel: [<c13e7853>] ?
> byt_gpio_direction_input+0x43/0x50
> sep 30 15:48:17 tablet kernel: [<c13eaf1a>] gpiod_direction_output+0x2a/0x50
> sep 30 15:48:17 tablet kernel: [<f9ff37e4>]
> goodix_int_sync.isra.4+0x14/0x30 [goodix_backport]
> sep 30 15:48:17 tablet kernel: [<f9ff38f5>] goodix_reset+0x85/0x90
> [goodix_backport]
> sep 30 15:48:17 tablet kernel: [<f9ff40fa>]
> goodix_ts_probe+0x12a/0x5aa [goodix_backport]
> sep 30 15:48:17 tablet kernel: [<c142a5a4>] ? acpi_device_wakeup+0x7a/0x80
> sep 30 15:48:17 tablet kernel: [<c142ad84>] ? acpi_dev_pm_attach+0x71/0x87
> sep 30 15:48:17 tablet kernel: [<c1924271>] i2c_device_probe+0x121/0x1d0
> sep 30 15:48:17 tablet kernel: [<c1c77da2>] ? _raw_spin_unlock+0x22/0x30
> sep 30 15:48:17 tablet kernel: [<f9ff3fd0>] ?
> goodix_config_cb+0xc0/0xc0 [goodix_backport]
> sep 30 15:48:17 tablet kernel: [<c15b2125>] ? driver_sysfs_add+0x75/0xa0
> sep 30 15:48:17 tablet kernel: [<c15b2b24>] driver_probe_device+0x204/0x4c0
> sep 30 15:48:17 tablet kernel: [<c15b2e3c>] ? __driver_attach+0x5c/0xa0
> sep 30 15:48:17 tablet kernel: [<c15b2e3c>] ? __driver_attach+0x5c/0xa0
> sep 30 15:48:17 tablet kernel: [<c15b2e79>] __driver_attach+0x99/0xa0
> sep 30 15:48:17 tablet kernel: [<c15b2de0>] ? driver_probe_device+0x4c0/0x4c0
> sep 30 15:48:17 tablet kernel: [<c15b092f>] bus_for_each_dev+0x4f/0x80
> sep 30 15:48:17 tablet kernel: [<c15b22de>] driver_attach+0x1e/0x20
> sep 30 15:48:17 tablet kernel: [<c15b2de0>] ? driver_probe_device+0x4c0/0x4c0
> sep 30 15:48:17 tablet kernel: [<c15b1e77>] bus_add_driver+0x1f7/0x2a0
> sep 30 15:48:17 tablet kernel: [<f9ff7000>] ? 0xf9ff7000
> sep 30 15:48:17 tablet kernel: [<f9ff7000>] ? 0xf9ff7000
> sep 30 15:48:17 tablet kernel: [<c15b398d>] driver_register+0x5d/0xf0
> sep 30 15:48:17 tablet kernel: [<c1924daa>] i2c_register_driver+0x2a/0xa0
> sep 30 15:48:17 tablet kernel: [<c100045f>] ? do_one_initcall+0x9f/0x1f0
> sep 30 15:48:17 tablet kernel: [<f9ff7012>]
> goodix_ts_driver_init+0x12/0x14 [goodix_backport]
> sep 30 15:48:17 tablet kernel: [<c100046a>] do_one_initcall+0xaa/0x1f0
> sep 30 15:48:17 tablet kernel: [<f9ff7000>] ? 0xf9ff7000
> sep 30 15:48:17 tablet kernel: [<c10d2486>] ? __might_sleep+0x36/0xa0
> sep 30 15:48:17 tablet kernel: [<c1103fd4>] ?
> trace_hardirqs_on_caller+0x14/0x220
> sep 30 15:48:17 tablet kernel: [<c11c1c5c>] ? free_pages_prepare+0x19c/0x380
> sep 30 15:48:17 tablet kernel: [<c120bce8>] ? kmem_cache_alloc_trace+0xa8/0x2a0
> sep 30 15:48:17 tablet kernel: [<c11bac3f>] ? do_init_module+0x21/0x1b0
> sep 30 15:48:17 tablet kernel: [<c11bac6e>] do_init_module+0x50/0x1b0
> sep 30 15:48:17 tablet kernel: [<c114b69b>] load_module+0x13db/0x1980
> sep 30 15:48:17 tablet kernel: [<c114be29>] SyS_finit_module+0x89/0xd0
> sep 30 15:48:17 tablet kernel: [<c11d9532>] ? vm_mmap_pgoff+0x62/0x80
> sep 30 15:48:17 tablet kernel: [<c1c787f0>] sysenter_do_call+0x12/0x12
> sep 30 15:48:17 tablet kernel: ---[ end trace e0f66305648b063a ]---
> sep 30 15:48:17 tablet kernel: Goodix-TS i2c-GDIX1001:00: ID 9271, version: 1020
> sep 30 15:48:17 tablet kernel: Goodix-TS i2c-GDIX1001:00: Direct
> firmware load for goodix_9271_cfg.bin failed with error -2
> sep 30 15:48:17 tablet kernel: Goodix-TS i2c-GDIX1001:00: Falling back
> to user helper
>
> ... and after a while:
>
> sep 30 15:49:17 tablet kernel: input: Goodix Capacitive TouchScreen as
> /devices/platform/80860F41:05/i2c-5/i2c-GDIX1001:00/input/input6
> sep 30 15:49:17 tablet kernel: ------------[ cut here ]------------
> sep 30 15:49:17 tablet kernel: WARNING: CPU: 1 PID: 75 at
> drivers/pinctrl/intel/pinctrl-baytrail.c:342
> byt_gpio_direction_output+0xa1/0xb0()
> sep 30 15:49:17 tablet kernel: Potential Error: Setting GPIO with
> direct_irq_en to output
> sep 30 15:49:17 tablet kernel: Modules linked in:
> sep 30 15:49:17 tablet kernel: goodix_backport(OE) r8723bs(OE) nfsd
> lockd grace sunrpc [last unloaded: goodix]
> sep 30 15:49:17 tablet kernel: CPU: 1 PID: 75 Comm: kworker/1:2
> Tainted: G W OE 4.3.0-rc1+ #36
> sep 30 15:49:17 tablet kernel: Hardware name: To be filled by O.E.M.
> To be filled by O.E.M./Aptio CRB, BIOS 5.6.5 07/25/2014
> sep 30 15:49:17 tablet kernel: Workqueue: events request_firmware_work_func
> sep 30 15:49:17 tablet kernel: 00000000 00000000 f7219ce8 c13b347f
> f7219d28 f7219d18 c10a9e1d c20f10e0
> sep 30 15:49:17 tablet kernel: f7219d44 0000004b c20f111c 00000156
> c13e7ce1 c13e7ce1 f80580b8 f53a4b0c
> sep 30 15:49:17 tablet kernel: 00000156 f7219d30 c10a9e93 00000009
> f7219d28 c20f10e0 f7219d44 f7219d58
> sep 30 15:49:17 tablet kernel: Call Trace:
> sep 30 15:49:17 tablet kernel: [<c13b347f>] dump_stack+0x48/0x69
> sep 30 15:49:17 tablet kernel: [<c10a9e1d>] warn_slowpath_common+0x8d/0xd0
> sep 30 15:49:17 tablet kernel: [<c13e7ce1>] ?
> byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:49:17 tablet kernel: [<c13e7ce1>] ?
> byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:49:17 tablet kernel: [<c10a9e93>] warn_slowpath_fmt+0x33/0x40
> sep 30 15:49:17 tablet kernel: [<c13e7ce1>] byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:49:17 tablet kernel: [<c13e7c40>] ? byt_gpio_irq_handler+0xb0/0xb0
> sep 30 15:49:17 tablet kernel: [<c13eabc3>]
> _gpiod_direction_output_raw+0x63/0x350
> sep 30 15:49:17 tablet kernel: [<c111d30b>] ? free_irq+0x4b/0xc0
> sep 30 15:49:17 tablet kernel: [<c142a87d>] ?
> acpi_dev_runtime_suspend+0x7b/0x7b
> sep 30 15:49:17 tablet kernel: [<c13eaf1a>] gpiod_direction_output+0x2a/0x50
> sep 30 15:49:17 tablet kernel: [<f9ff32d0>] goodix_suspend+0x50/0x100
> [goodix_backport]
> sep 30 15:49:17 tablet kernel: [<c15bc0fd>] ? __rpm_callback+0x5d/0x80
> sep 30 15:49:17 tablet kernel: [<c15ba3a2>]
> pm_generic_runtime_suspend+0x22/0x40
> sep 30 15:49:17 tablet kernel: [<c142a88d>]
> acpi_subsys_runtime_suspend+0x10/0x1e
> sep 30 15:49:17 tablet kernel: [<c15bc0d2>] __rpm_callback+0x32/0x80
> sep 30 15:49:17 tablet kernel: [<c142a87d>] ?
> acpi_dev_runtime_suspend+0x7b/0x7b
> sep 30 15:49:17 tablet kernel: [<c15bc148>] rpm_callback+0x28/0x90
> sep 30 15:49:17 tablet kernel: [<c142a87d>] ?
> acpi_dev_runtime_suspend+0x7b/0x7b
> sep 30 15:49:17 tablet kernel: [<c15bce3a>] rpm_suspend+0x12a/0x720
> sep 30 15:49:17 tablet kernel: [<c10fffbb>] ? trace_hardirqs_off+0xb/0x10
> sep 30 15:49:17 tablet kernel: [<c10f3fd4>] ? __wake_up+0x44/0x50
> sep 30 15:49:17 tablet kernel: [<c15bd5a6>] rpm_idle+0xa6/0x410
> sep 30 15:49:17 tablet kernel: [<c15be1ab>] update_autosuspend+0x3b/0x60
> sep 30 15:49:17 tablet kernel: [<c15be218>]
> pm_runtime_set_autosuspend_delay+0x48/0x60
> sep 30 15:49:17 tablet kernel: [<c10c4942>] ? process_one_work+0x132/0x5e0
> sep 30 15:49:17 tablet kernel: [<f9ff3f82>]
> goodix_config_cb+0x72/0xc0 [goodix_backport]
> sep 30 15:49:17 tablet kernel: [<c15c81ab>]
> request_firmware_work_func+0x2b/0x50
> sep 30 15:49:17 tablet kernel: [<c10c49e0>] process_one_work+0x1d0/0x5e0
> sep 30 15:49:17 tablet kernel: [<c10c4942>] ? process_one_work+0x132/0x5e0
> sep 30 15:49:17 tablet kernel: [<c10c4e29>] worker_thread+0x39/0x430
> sep 30 15:49:17 tablet kernel: [<c10c4df0>] ? process_one_work+0x5e0/0x5e0
> sep 30 15:49:17 tablet kernel: [<c10cae16>] kthread+0xa6/0xc0
> sep 30 15:49:17 tablet kernel: [<c1c77e17>] ? _raw_spin_unlock_irq+0x27/0x40
> sep 30 15:49:17 tablet kernel: [<c1c78721>] ret_from_kernel_thread+0x21/0x30
> sep 30 15:49:17 tablet kernel: [<c10cad70>] ?
> kthread_create_on_node+0x130/0x130
> sep 30 15:49:17 tablet kernel: ---[ end trace e0f66305648b063b ]---
> sep 30 15:49:17 tablet kernel: ------------[ cut here ]------------
> sep 30 15:49:17 tablet kernel: WARNING: CPU: 2 PID: 2353 at
> drivers/pinctrl/intel/pinctrl-baytrail.c:342
> byt_gpio_direction_output+0xa1/0xb0()
> sep 30 15:49:17 tablet kernel: Potential Error: Setting GPIO with
> direct_irq_en to output
> sep 30 15:49:17 tablet kernel: Modules linked in:
> sep 30 15:49:17 tablet kernel: goodix_backport(OE) r8723bs(OE) nfsd
> lockd grace sunrpc [last unloaded: goodix]
> sep 30 15:49:17 tablet kernel: CPU: 2 PID: 2353 Comm: systemd-udevd
> Tainted: G W OE 4.3.0-rc1+ #36
> sep 30 15:49:17 tablet kernel: Hardware name: To be filled by O.E.M.
> To be filled by O.E.M./Aptio CRB, BIOS 5.6.5 07/25/2014
> sep 30 15:49:17 tablet kernel: 00000000 00000000 d8bbdc70 c13b347f
> d8bbdcb0 d8bbdca0 c10a9e1d c20f10e0
> sep 30 15:49:17 tablet kernel: d8bbdccc 00000931 c20f111c 00000156
> c13e7ce1 c13e7ce1 f80580b8 f53a4b0c
> sep 30 15:49:17 tablet kernel: 00000156 d8bbdcb8 c10a9e93 00000009
> d8bbdcb0 c20f10e0 d8bbdccc d8bbdce0
> sep 30 15:49:17 tablet kernel: Call Trace:
> sep 30 15:49:17 tablet kernel: [<c13b347f>] dump_stack+0x48/0x69
> sep 30 15:49:17 tablet kernel: [<c10a9e1d>] warn_slowpath_common+0x8d/0xd0
> sep 30 15:49:17 tablet kernel: [<c13e7ce1>] ?
> byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:49:17 tablet kernel: [<c13e7ce1>] ?
> byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:49:17 tablet kernel: [<c10a9e93>] warn_slowpath_fmt+0x33/0x40
> sep 30 15:49:17 tablet kernel: [<c13e7ce1>] byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:49:17 tablet kernel: [<c13e7c40>] ? byt_gpio_irq_handler+0xb0/0xb0
> sep 30 15:49:17 tablet kernel: [<c13eabc3>]
> _gpiod_direction_output_raw+0x63/0x350
> sep 30 15:49:17 tablet kernel: [<c142a6aa>] ? acpi_dev_runtime_resume+0x37/0x37
> sep 30 15:49:17 tablet kernel: [<c13eaf1a>] gpiod_direction_output+0x2a/0x50
> sep 30 15:49:17 tablet kernel: [<c142a5a4>] ? acpi_device_wakeup+0x7a/0x80
> sep 30 15:49:17 tablet kernel: [<f9ff3827>] goodix_resume+0x27/0x70
> [goodix_backport]
> sep 30 15:49:17 tablet kernel: [<c15ba3e2>] pm_generic_runtime_resume+0x22/0x40
> sep 30 15:49:17 tablet kernel: [<c142a6c5>]
> acpi_subsys_runtime_resume+0x1b/0x1e
> sep 30 15:49:17 tablet kernel: [<c15bc0d2>] __rpm_callback+0x32/0x80
> sep 30 15:49:17 tablet kernel: [<c142a6aa>] ? acpi_dev_runtime_resume+0x37/0x37
> sep 30 15:49:17 tablet kernel: [<c15bc148>] rpm_callback+0x28/0x90
> sep 30 15:49:17 tablet kernel: [<c142a6aa>] ? acpi_dev_runtime_resume+0x37/0x37
> sep 30 15:49:17 tablet kernel: [<c15bcab3>] rpm_resume+0x503/0x760
> sep 30 15:49:17 tablet kernel: [<c10f4710>] ? wake_atomic_t_function+0x70/0x70
> sep 30 15:49:17 tablet kernel: [<c15bde1e>] __pm_runtime_resume+0x4e/0x90
> sep 30 15:49:17 tablet kernel: [<f9ff3777>] goodix_open+0x37/0x90
> [goodix_backport]
> sep 30 15:49:17 tablet kernel: [<c18f9e3f>] input_open_device+0x7f/0xa0
> sep 30 15:49:17 tablet kernel: [<c1902c5b>] evdev_open+0x16b/0x1a0
> sep 30 15:49:17 tablet kernel: [<c121b9fd>] chrdev_open+0x8d/0x1a0
> sep 30 15:49:17 tablet kernel: [<c121b970>] ? cdev_put+0x20/0x20
> sep 30 15:49:17 tablet kernel: [<c1215230>] do_dentry_open.isra.16+0x130/0x2d0
> sep 30 15:49:17 tablet kernel: [<c121b970>] ? cdev_put+0x20/0x20
> sep 30 15:49:17 tablet kernel: [<c121670f>] vfs_open+0x4f/0x60
> sep 30 15:49:17 tablet kernel: [<c1225e22>] path_openat+0x1a2/0x10b0
> sep 30 15:49:17 tablet kernel: [<c11e9224>] ? unmap_single_vma+0x3d4/0x560
> sep 30 15:49:17 tablet kernel: [<c11cb182>] ? release_pages+0xb2/0x1c0
> sep 30 15:49:17 tablet kernel: [<c1227d42>] do_filp_open+0x62/0xc0
> sep 30 15:49:17 tablet kernel: [<c1c77da2>] ? _raw_spin_unlock+0x22/0x30
> sep 30 15:49:17 tablet kernel: [<c12381b7>] ? __alloc_fd+0x97/0x160
> sep 30 15:49:17 tablet kernel: [<c1216ac8>] do_sys_open+0x118/0x210
> sep 30 15:49:17 tablet kernel: [<c1216be2>] SyS_open+0x22/0x30
> sep 30 15:49:17 tablet kernel: [<c1c787f0>] sysenter_do_call+0x12/0x12
> sep 30 15:49:17 tablet kernel: ---[ end trace e0f66305648b063c ]---
> sep 30 15:49:17 tablet kernel: ------------[ cut here ]------------
> sep 30 15:49:17 tablet kernel: WARNING: CPU: 2 PID: 2353 at
> drivers/pinctrl/intel/pinctrl-baytrail.c:342
> byt_gpio_direction_output+0xa1/0xb0()
> sep 30 15:49:17 tablet kernel: Potential Error: Setting GPIO with
> direct_irq_en to output
> sep 30 15:49:17 tablet kernel: Modules linked in:
> sep 30 15:49:17 tablet kernel: goodix_backport(OE) r8723bs(OE) nfsd
> lockd grace sunrpc [last unloaded: goodix]
> sep 30 15:49:17 tablet kernel: CPU: 2 PID: 2353 Comm: systemd-udevd
> Tainted: G W OE 4.3.0-rc1+ #36
> sep 30 15:49:17 tablet kernel: Hardware name: To be filled by O.E.M.
> To be filled by O.E.M./Aptio CRB, BIOS 5.6.5 07/25/2014
> sep 30 15:49:17 tablet kernel: 00000000 00000000 d8bbdc64 c13b347f
> d8bbdca4 d8bbdc94 c10a9e1d c20f10e0
> sep 30 15:49:17 tablet kernel: d8bbdcc0 00000931 c20f111c 00000156
> c13e7ce1 c13e7ce1 f80580b8 f53a4b0c
> sep 30 15:49:17 tablet kernel: 00000156 d8bbdcac c10a9e93 00000009
> d8bbdca4 c20f10e0 d8bbdcc0 d8bbdcd4
> sep 30 15:49:17 tablet kernel: Call Trace:
> sep 30 15:49:17 tablet kernel: [<c13b347f>] dump_stack+0x48/0x69
> sep 30 15:49:17 tablet kernel: [<c10a9e1d>] warn_slowpath_common+0x8d/0xd0
> sep 30 15:49:17 tablet kernel: [<c13e7ce1>] ?
> byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:49:17 tablet kernel: [<c13e7ce1>] ?
> byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:49:17 tablet kernel: [<c10a9e93>] warn_slowpath_fmt+0x33/0x40
> sep 30 15:49:17 tablet kernel: [<c13e7ce1>] byt_gpio_direction_output+0xa1/0xb0
> sep 30 15:49:17 tablet kernel: [<c13e7c40>] ? byt_gpio_irq_handler+0xb0/0xb0
> sep 30 15:49:17 tablet kernel: [<c13eabc3>]
> _gpiod_direction_output_raw+0x63/0x350
> sep 30 15:49:17 tablet kernel: [<c1c76ef4>] ?
> schedule_hrtimeout_range_clock+0x104/0x280
> sep 30 15:49:17 tablet kernel: [<c142a6aa>] ? acpi_dev_runtime_resume+0x37/0x37
> sep 30 15:49:17 tablet kernel: [<c13eaf1a>] gpiod_direction_output+0x2a/0x50
> sep 30 15:49:17 tablet kernel: [<f9ff37e4>]
> goodix_int_sync.isra.4+0x14/0x30 [goodix_backport]
> sep 30 15:49:17 tablet kernel: [<f9ff3847>] goodix_resume+0x47/0x70
> [goodix_backport]
> sep 30 15:49:17 tablet kernel: [<c15ba3e2>] pm_generic_runtime_resume+0x22/0x40
> sep 30 15:49:17 tablet kernel: [<c142a6c5>]
> acpi_subsys_runtime_resume+0x1b/0x1e
> sep 30 15:49:17 tablet kernel: [<c15bc0d2>] __rpm_callback+0x32/0x80
> sep 30 15:49:17 tablet kernel: [<c142a6aa>] ? acpi_dev_runtime_resume+0x37/0x37
> sep 30 15:49:17 tablet kernel: [<c15bc148>] rpm_callback+0x28/0x90
> sep 30 15:49:17 tablet kernel: [<c142a6aa>] ? acpi_dev_runtime_resume+0x37/0x37
> sep 30 15:49:17 tablet kernel: [<c15bcab3>] rpm_resume+0x503/0x760
> sep 30 15:49:17 tablet kernel: [<c10f4710>] ? wake_atomic_t_function+0x70/0x70
> sep 30 15:49:17 tablet kernel: [<c15bde1e>] __pm_runtime_resume+0x4e/0x90
> sep 30 15:49:17 tablet kernel: [<f9ff3777>] goodix_open+0x37/0x90
> [goodix_backport]
> sep 30 15:49:17 tablet kernel: [<c18f9e3f>] input_open_device+0x7f/0xa0
> sep 30 15:49:17 tablet kernel: [<c1902c5b>] evdev_open+0x16b/0x1a0
> sep 30 15:49:17 tablet kernel: [<c121b9fd>] chrdev_open+0x8d/0x1a0
> sep 30 15:49:17 tablet kernel: [<c121b970>] ? cdev_put+0x20/0x20
> sep 30 15:49:17 tablet kernel: [<c1215230>] do_dentry_open.isra.16+0x130/0x2d0
> sep 30 15:49:17 tablet kernel: [<c121b970>] ? cdev_put+0x20/0x20
> sep 30 15:49:17 tablet kernel: [<c121670f>] vfs_open+0x4f/0x60
> sep 30 15:49:17 tablet kernel: [<c1225e22>] path_openat+0x1a2/0x10b0
> sep 30 15:49:17 tablet kernel: [<c11e9224>] ? unmap_single_vma+0x3d4/0x560
> sep 30 15:49:17 tablet kernel: [<c11cb182>] ? release_pages+0xb2/0x1c0
> sep 30 15:49:17 tablet kernel: [<c1227d42>] do_filp_open+0x62/0xc0
> sep 30 15:49:17 tablet kernel: [<c1c77da2>] ? _raw_spin_unlock+0x22/0x30
> sep 30 15:49:17 tablet kernel: [<c12381b7>] ? __alloc_fd+0x97/0x160
> sep 30 15:49:17 tablet kernel: [<c1216ac8>] do_sys_open+0x118/0x210
> sep 30 15:49:17 tablet kernel: [<c1216be2>] SyS_open+0x22/0x30
> sep 30 15:49:17 tablet kernel: [<c1c787f0>] sysenter_do_call+0x12/0x12
> sep 30 15:49:17 tablet kernel: ---[ end trace e0f66305648b063d ]---
>
> The touchscreen works though after this. This is all over ~4.3.0-rc1
> (a7d5c1897198, a couple of weeks old)
>
This is what I expected to happen. However, it is rather annoying to receive
this baytrail pinctrl warning every time gpiod_direction_output is called for
the interrupt gpio pin (not to mention delays in initialization). I think the safest
way is to remove the newly added functionality for this device as well.
> >
> > If all that fails, could you please send the output of "dmidecode" to
> > Irina?
>
> Attached.
>
Apparently the system vendor and product name are not set for this device
("To be filled by O.E.M."). Although it is not as reliable, I will do the dmi match
using BIOS vendor, product UUID, board vendor and board name. Please let
me know if you see any problem with this approach.
I will send a new version of patches in which the functionality that depends
on the gpio pins is skipped for Onda v975w, WinBook TW100 and
WinBook TW700.
Thanks,
Irina
> Cheers,
> Carlos