* i2c_designware doesn't recover from subdevice driver unload @ 2015-11-19 15:56 Andy Lutomirski 2015-11-19 16:57 ` Andy Lutomirski 0 siblings, 1 reply; 5+ messages in thread From: Andy Lutomirski @ 2015-11-19 15:56 UTC (permalink / raw) To: linux-pci@vger.kernel.org, Jingoo Han, Pratyush Anand I unloaded and reloaded hid_multitouch (on a Skylake laptop where the HID device is behind an integrated designware controller) and I got: [39545.054684] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. [39545.061728] i2c_designware i2c_designware.1: i2c_dw_handle_tx_abort: lost arbitration [39545.061734] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. [39545.061944] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. [39545.062373] i2c_hid i2c-DLL0704:01: error in i2c_hid_init_report size:6 / ret_size:4 [39545.062564] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. [39545.062636] input: DLL0704:01 06CB:76AE UNKNOWN as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-7/i2c-DLL0704:01/0018:06CB:76AE.0005/input/input20 [39545.063212] hid-multitouch 0018:06CB:76AE.0005: input,hidraw1: <UNKNOWN> HID v1.00 Mouse [DLL0704:01 06CB:76AE] on [40178.534814] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. [40178.541848] i2c_designware i2c_designware.1: i2c_dw_handle_tx_abort: lost arbitration [40178.541853] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. [40179.542135] i2c_designware i2c_designware.1: controller timed out [40179.542166] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. [40180.542909] i2c_designware i2c_designware.1: controller timed out [40180.542942] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. [40181.543697] i2c_designware i2c_designware.1: controller timed out after that, I just keep seeing "controller timed out" messages. This is Linux 4.3.0. --Andy ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: i2c_designware doesn't recover from subdevice driver unload 2015-11-19 15:56 i2c_designware doesn't recover from subdevice driver unload Andy Lutomirski @ 2015-11-19 16:57 ` Andy Lutomirski 2015-11-19 20:39 ` Andy Lutomirski 0 siblings, 1 reply; 5+ messages in thread From: Andy Lutomirski @ 2015-11-19 16:57 UTC (permalink / raw) To: Andy Lutomirski Cc: linux-pci@vger.kernel.org, Jingoo Han, Pratyush Anand, Andy Shevchenko, Mika Westerberg, Heikki Krogerus, Jarkko Nikula On Thu, Nov 19, 2015 at 7:56 AM, Andy Lutomirski <luto@kernel.org> wrote: > I unloaded and reloaded hid_multitouch (on a Skylake laptop where the > HID device is behind an integrated designware controller) and I got: > > [39545.054684] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. > [39545.061728] i2c_designware i2c_designware.1: > i2c_dw_handle_tx_abort: lost arbitration > [39545.061734] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. > [39545.061944] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. > [39545.062373] i2c_hid i2c-DLL0704:01: error in i2c_hid_init_report > size:6 / ret_size:4 > [39545.062564] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. > [39545.062636] input: DLL0704:01 06CB:76AE UNKNOWN as > /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-7/i2c-DLL0704:01/0018:06CB:76AE.0005/input/input20 > [39545.063212] hid-multitouch 0018:06CB:76AE.0005: input,hidraw1: > <UNKNOWN> HID v1.00 Mouse [DLL0704:01 06CB:76AE] on > [40178.534814] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. > [40178.541848] i2c_designware i2c_designware.1: > i2c_dw_handle_tx_abort: lost arbitration > [40178.541853] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. > [40179.542135] i2c_designware i2c_designware.1: controller timed out > [40179.542166] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. > [40180.542909] i2c_designware i2c_designware.1: controller timed out > [40180.542942] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. > [40181.543697] i2c_designware i2c_designware.1: controller timed out > > after that, I just keep seeing "controller timed out" messages. > > This is Linux 4.3.0. This just happened again (after a reboot) on its own without any rmmod. Reloading the i2c_designware drivers didn't help, so I'm wondering if it's a bug lower in the stack instead. Reloading intel-lpss-acpi after the failure says: [ 695.955911] idma64 idma64.0: Found Intel integrated DMA 64-bit [ 695.966755] idma64 idma64.1: Found Intel integrated DMA 64-bit [ 696.967468] i2c_designware i2c_designware.1: controller timed out [ 696.967550] i2c_hid i2c-DLL0704:01: hid_descr_cmd failed This is a Dell XPS 13 9350. --Andy ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: i2c_designware doesn't recover from subdevice driver unload 2015-11-19 16:57 ` Andy Lutomirski @ 2015-11-19 20:39 ` Andy Lutomirski 2015-11-20 7:35 ` Jarkko Nikula 0 siblings, 1 reply; 5+ messages in thread From: Andy Lutomirski @ 2015-11-19 20:39 UTC (permalink / raw) To: Andy Lutomirski Cc: linux-pci@vger.kernel.org, Jingoo Han, Pratyush Anand, Andy Shevchenko, Mika Westerberg, Heikki Krogerus, Jarkko Nikula On Thu, Nov 19, 2015 at 8:57 AM, Andy Lutomirski <luto@amacapital.net> wrote: > On Thu, Nov 19, 2015 at 7:56 AM, Andy Lutomirski <luto@kernel.org> wrote: >> I unloaded and reloaded hid_multitouch (on a Skylake laptop where the >> HID device is behind an integrated designware controller) and I got: >> >> [39545.054684] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >> [39545.061728] i2c_designware i2c_designware.1: >> i2c_dw_handle_tx_abort: lost arbitration >> [39545.061734] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >> [39545.061944] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >> [39545.062373] i2c_hid i2c-DLL0704:01: error in i2c_hid_init_report >> size:6 / ret_size:4 >> [39545.062564] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >> [39545.062636] input: DLL0704:01 06CB:76AE UNKNOWN as >> /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-7/i2c-DLL0704:01/0018:06CB:76AE.0005/input/input20 >> [39545.063212] hid-multitouch 0018:06CB:76AE.0005: input,hidraw1: >> <UNKNOWN> HID v1.00 Mouse [DLL0704:01 06CB:76AE] on >> [40178.534814] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >> [40178.541848] i2c_designware i2c_designware.1: >> i2c_dw_handle_tx_abort: lost arbitration >> [40178.541853] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >> [40179.542135] i2c_designware i2c_designware.1: controller timed out >> [40179.542166] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >> [40180.542909] i2c_designware i2c_designware.1: controller timed out >> [40180.542942] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >> [40181.543697] i2c_designware i2c_designware.1: controller timed out >> >> after that, I just keep seeing "controller timed out" messages. >> >> This is Linux 4.3.0. > > This just happened again (after a reboot) on its own without any > rmmod. Reloading the i2c_designware drivers didn't help, so I'm > wondering if it's a bug lower in the stack instead. > > Reloading intel-lpss-acpi after the failure says: > > [ 695.955911] idma64 idma64.0: Found Intel integrated DMA 64-bit > [ 695.966755] idma64 idma64.1: Found Intel integrated DMA 64-bit > [ 696.967468] i2c_designware i2c_designware.1: controller timed out > [ 696.967550] i2c_hid i2c-DLL0704:01: hid_descr_cmd failed > > > This is a Dell XPS 13 9350. I think the docs for all of this stuff are here: https://download.01.org/future-platform-configuration-hub/skylake/register-definitions/332219-002.pdf There's a reset register at offset 0x204 in I2C MMIO space. Should the driver be using it? --Andy ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: i2c_designware doesn't recover from subdevice driver unload 2015-11-19 20:39 ` Andy Lutomirski @ 2015-11-20 7:35 ` Jarkko Nikula 2015-12-04 16:33 ` Andy Lutomirski 0 siblings, 1 reply; 5+ messages in thread From: Jarkko Nikula @ 2015-11-20 7:35 UTC (permalink / raw) To: Andy Lutomirski, Andy Lutomirski Cc: linux-pci@vger.kernel.org, Jingoo Han, Pratyush Anand, Andy Shevchenko, Mika Westerberg, Heikki Krogerus Hi On 11/19/2015 10:39 PM, Andy Lutomirski wrote: > On Thu, Nov 19, 2015 at 8:57 AM, Andy Lutomirski <luto@amacapital.net> wrote: >> On Thu, Nov 19, 2015 at 7:56 AM, Andy Lutomirski <luto@kernel.org> wrote: >>> I unloaded and reloaded hid_multitouch (on a Skylake laptop where the >>> HID device is behind an integrated designware controller) and I got: >>> >>> [39545.054684] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >>> [39545.061728] i2c_designware i2c_designware.1: >>> i2c_dw_handle_tx_abort: lost arbitration >>> [39545.061734] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >>> [39545.061944] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >>> [39545.062373] i2c_hid i2c-DLL0704:01: error in i2c_hid_init_report >>> size:6 / ret_size:4 >>> [39545.062564] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >>> [39545.062636] input: DLL0704:01 06CB:76AE UNKNOWN as >>> /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-7/i2c-DLL0704:01/0018:06CB:76AE.0005/input/input20 >>> [39545.063212] hid-multitouch 0018:06CB:76AE.0005: input,hidraw1: >>> <UNKNOWN> HID v1.00 Mouse [DLL0704:01 06CB:76AE] on >>> [40178.534814] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >>> [40178.541848] i2c_designware i2c_designware.1: >>> i2c_dw_handle_tx_abort: lost arbitration >>> [40178.541853] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >>> [40179.542135] i2c_designware i2c_designware.1: controller timed out >>> [40179.542166] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >>> [40180.542909] i2c_designware i2c_designware.1: controller timed out >>> [40180.542942] i2c_hid i2c-DLL0704:01: failed to retrieve report from device. >>> [40181.543697] i2c_designware i2c_designware.1: controller timed out >>> >>> after that, I just keep seeing "controller timed out" messages. >>> >>> This is Linux 4.3.0. >> >> This just happened again (after a reboot) on its own without any >> rmmod. Reloading the i2c_designware drivers didn't help, so I'm >> wondering if it's a bug lower in the stack instead. >> I guess this is either related to touch panel or bus timings (we have seen both cases recently) as it works here on development machine with another panel. Could you try does following commit from v4.4-rc1 help? 6d4f5440a3a2 ("HID: multitouch: Fetch feature reports on demand for Win8 devices") > I think the docs for all of this stuff are here: > > https://download.01.org/future-platform-configuration-hub/skylake/register-definitions/332219-002.pdf > Yes, this is the right document for Skylake. > There's a reset register at offset 0x204 in I2C MMIO space. Should > the driver be using it? > We use it in probe and resume paths in drivers/mfd/intel-lpss.c which manages these LPSS host controller (UART/SPI/I2C) + integrated DMA engine compound devices. -- Jarkko ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: i2c_designware doesn't recover from subdevice driver unload 2015-11-20 7:35 ` Jarkko Nikula @ 2015-12-04 16:33 ` Andy Lutomirski 0 siblings, 0 replies; 5+ messages in thread From: Andy Lutomirski @ 2015-12-04 16:33 UTC (permalink / raw) To: Jarkko Nikula Cc: Andy Lutomirski, linux-pci@vger.kernel.org, Jingoo Han, Pratyush Anand, Andy Shevchenko, Mika Westerberg, Heikki Krogerus On Thu, Nov 19, 2015 at 11:35 PM, Jarkko Nikula <jarkko.nikula@linux.intel.com> wrote: > Hi > > > On 11/19/2015 10:39 PM, Andy Lutomirski wrote: >> >> On Thu, Nov 19, 2015 at 8:57 AM, Andy Lutomirski <luto@amacapital.net> >> wrote: >>> >>> On Thu, Nov 19, 2015 at 7:56 AM, Andy Lutomirski <luto@kernel.org> wrote: >>>> >>>> I unloaded and reloaded hid_multitouch (on a Skylake laptop where the >>>> HID device is behind an integrated designware controller) and I got: >>>> >>>> [39545.054684] i2c_hid i2c-DLL0704:01: failed to retrieve report from >>>> device. >>>> [39545.061728] i2c_designware i2c_designware.1: >>>> i2c_dw_handle_tx_abort: lost arbitration >>>> [39545.061734] i2c_hid i2c-DLL0704:01: failed to retrieve report from >>>> device. >>>> [39545.061944] i2c_hid i2c-DLL0704:01: failed to retrieve report from >>>> device. >>>> [39545.062373] i2c_hid i2c-DLL0704:01: error in i2c_hid_init_report >>>> size:6 / ret_size:4 >>>> [39545.062564] i2c_hid i2c-DLL0704:01: failed to retrieve report from >>>> device. >>>> [39545.062636] input: DLL0704:01 06CB:76AE UNKNOWN as >>>> >>>> /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-7/i2c-DLL0704:01/0018:06CB:76AE.0005/input/input20 >>>> [39545.063212] hid-multitouch 0018:06CB:76AE.0005: input,hidraw1: >>>> <UNKNOWN> HID v1.00 Mouse [DLL0704:01 06CB:76AE] on >>>> [40178.534814] i2c_hid i2c-DLL0704:01: failed to retrieve report from >>>> device. >>>> [40178.541848] i2c_designware i2c_designware.1: >>>> i2c_dw_handle_tx_abort: lost arbitration >>>> [40178.541853] i2c_hid i2c-DLL0704:01: failed to retrieve report from >>>> device. >>>> [40179.542135] i2c_designware i2c_designware.1: controller timed out >>>> [40179.542166] i2c_hid i2c-DLL0704:01: failed to retrieve report from >>>> device. >>>> [40180.542909] i2c_designware i2c_designware.1: controller timed out >>>> [40180.542942] i2c_hid i2c-DLL0704:01: failed to retrieve report from >>>> device. >>>> [40181.543697] i2c_designware i2c_designware.1: controller timed out >>>> >>>> after that, I just keep seeing "controller timed out" messages. >>>> >>>> This is Linux 4.3.0. >>> >>> >>> This just happened again (after a reboot) on its own without any >>> rmmod. Reloading the i2c_designware drivers didn't help, so I'm >>> wondering if it's a bug lower in the stack instead. >>> > I guess this is either related to touch panel or bus timings (we have seen > both cases recently) as it works here on development machine with another > panel. > > Could you try does following commit from v4.4-rc1 help? > > 6d4f5440a3a2 ("HID: multitouch: Fetch feature reports on demand for Win8 > devices") I've been running that commit for a couple weeks and I haven't seen the problem recur. Thanks! --Andy ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2015-12-04 16:34 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2015-11-19 15:56 i2c_designware doesn't recover from subdevice driver unload Andy Lutomirski 2015-11-19 16:57 ` Andy Lutomirski 2015-11-19 20:39 ` Andy Lutomirski 2015-11-20 7:35 ` Jarkko Nikula 2015-12-04 16:33 ` Andy Lutomirski
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).