summaryrefslogtreecommitdiffstats
path: root/drivers/i2c/busses/i2c-mxs.c
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2018-10-06 10:25:39 +0200
committerWolfram Sang <wsa@the-dreams.de>2018-10-11 23:05:09 +0200
commitb30f2f65568f840e5ca522d98ba2ad73b8f59cde (patch)
tree1b5dba69b7bf61a239681feeb79faa2d42bb4bd6 /drivers/i2c/busses/i2c-mxs.c
parenti2c: core: remove level of indentation in i2c_transfer (diff)
downloadlinux-b30f2f65568f840e5ca522d98ba2ad73b8f59cde.tar.xz
linux-b30f2f65568f840e5ca522d98ba2ad73b8f59cde.zip
i2c: designware: Set IRQF_NO_SUSPEND flag for all BYT and CHT controllers
On some Cherry Trail systems the GPU ACPI fwnode has power-resources which point to the PMIC, which is connected over a LPSS I2C controller. The GPU is a PCI device and PCI devices are powered-on at the resume_noirq resume phase. Since the GPU power-resources need the I2C controller, recent acpi_lpss.c changes now also power-up the LPSS I2C controllers on BYT and CHT devices in the resume_noirq resume phase. But during this phase the IRQ of the controller is disabled leading to these errors: i2c_designware 808622C1:06: controller timed out ACPI Error: AE_ERROR, Returned by Handler for [UserDefinedRegion] ACPI Error: Method parse/execution failed \_SB.P18W._ON, AE_ERROR video LNXVIDEO:00: Failed to change power state to D0 This commit makes the i2c-designware controller set the IRQF_NO_SUSPEND flag when requesting the interrupt on BYT and CHT devices, so that the IRQ is left enabled during the noirq phase, fixing this. Tested-by: Jarkko Nikula <jarkko.nikula@linux.intel.com> Acked-by: Jarkko Nikula <jarkko.nikula@linux.intel.com> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Diffstat (limited to 'drivers/i2c/busses/i2c-mxs.c')
0 files changed, 0 insertions, 0 deletions