1. 09 Oct, 2019 6 commits
  2. 04 Oct, 2019 2 commits
  3. 02 Oct, 2019 1 commit
    • Evan Green's avatar
      Input: atmel_mxt_ts - disable IRQ across suspend · 463fa44e
      Evan Green authored
      Across suspend and resume, we are seeing error messages like the following:
      
      atmel_mxt_ts i2c-PRP0001:00: __mxt_read_reg: i2c transfer failed (-121)
      atmel_mxt_ts i2c-PRP0001:00: Failed to read T44 and T5 (-121)
      
      This occurs because the driver leaves its IRQ enabled. Upon resume, there
      is an IRQ pending, but the interrupt is serviced before both the driver and
      the underlying I2C bus have been resumed. This causes EREMOTEIO errors.
      
      Disable the IRQ in suspend, and re-enable it on resume. If there are cases
      where the driver enters suspend with interrupts disabled, that's a bug we
      should fix separately.
      Signed-off-by: default avatarEvan Green <evgreen@chromium.org>
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      463fa44e
  4. 06 Sep, 2019 2 commits
  5. 02 Sep, 2019 11 commits
  6. 29 Aug, 2019 1 commit
    • Stephen Boyd's avatar
      Input: i8042 - enable wakeup on a stable struct device · c8a144b2
      Stephen Boyd authored
      We don't know when the device will be added with device_add() in
      serio_add_port() because serio_add_port() is called from a workqueue
      that this driver schedules by calling serio_register_port(). The best we
      can know is that the device will definitely not have been added yet when
      the start callback is called on the serio device.
      
      While it hasn't been shown to be a problem, proactively move the wakeup
      enabling calls to the start hook so that we don't race with the
      workqueue calling device_add(). This will avoid racy situations where
      code tries to add wakeup sysfs attributes for this device from
      dpm_sysfs_add() but the path in device_set_wakeup_capable() has already
      done so.
      Signed-off-by: default avatarStephen Boyd <swboyd@chromium.org>
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      c8a144b2
  7. 20 Aug, 2019 4 commits
  8. 16 Aug, 2019 1 commit
  9. 14 Aug, 2019 1 commit
    • Stephen Boyd's avatar
      Input: remove dev_err() usage after platform_get_irq() · 0bec8b7e
      Stephen Boyd authored
      We don't need dev_err() messages when platform_get_irq() fails now that
      platform_get_irq() prints an error message itself when something goes
      wrong. Let's remove these prints with a simple semantic patch.
      
      // <smpl>
      @@
      expression ret;
      struct platform_device *E;
      @@
      
      ret =
      (
      platform_get_irq(E, ...)
      |
      platform_get_irq_byname(E, ...)
      );
      
      if ( \( ret < 0 \| ret <= 0 \) )
      {
      (
      -if (ret != -EPROBE_DEFER)
      -{ ...
      -dev_err(...);
      -... }
      |
      ...
      -dev_err(...);
      )
      ...
      }
      // </smpl>
      
      While we're here, remove braces on if statements that only have one
      statement (manually).
      Signed-off-by: default avatarStephen Boyd <swboyd@chromium.org>
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      0bec8b7e
  10. 12 Aug, 2019 10 commits
  11. 11 Aug, 2019 1 commit