1. 25 4月, 2017 13 次提交
  2. 23 4月, 2017 7 次提交
  3. 22 4月, 2017 6 次提交
  4. 21 4月, 2017 8 次提交
  5. 20 4月, 2017 5 次提交
    • H
      mmc: sdhci-esdhc-imx: increase the pad I/O drive strength for DDR50 card · 9f327845
      Haibo Chen 提交于
      Currently for DDR50 card, it need tuning in default. We meet tuning fail
      issue for DDR50 card and some data CRC error when DDR50 sd card works.
      
      This is because the default pad I/O drive strength can't make sure DDR50
      card work stable. So increase the pad I/O drive strength for DDR50 card,
      and use pins_100mhz.
      
      This fixes DDR50 card support for IMX since DDR50 tuning was enabled from
      commit 9faac7b9 ("mmc: sdhci: enable tuning for DDR50")
      Tested-and-reported-by: NTim Harvey <tharvey@gateworks.com>
      Signed-off-by: NHaibo Chen <haibo.chen@nxp.com>
      Cc: stable@vger.kernel.org # v4.4+
      Acked-by: NDong Aisheng <aisheng.dong@nxp.com>
      Acked-by: NAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      9f327845
    • J
      HID: wacom: Override incorrect logical maximum contact identifier · 6f107fab
      Jason Gerecke 提交于
      It apears that devices designed around Wacom's G11 chipset (e.g. Lenovo
      ThinkPad Yoga 260, Lenovo ThinkPad X1 Yoga, Dell XPS 12 9250, Dell Venue
      8 Pro 5855, etc.) suffer from a common issue in their HID descriptors.
      The logical maximum is not updated for the "Contact Identifier" usage,
      leaving it as just "1" despite these devices being capable of tracking
      far more touches.
      
      Commit 60a22186 began ignoring usages with out-of-range values,
      causing problems for devices based on this chipset. Touches after
      the first will have an out-of-range Contact Identifier, and ignoring
      that usage will cause the kernel to incorrectly slot each finger's
      events (along with all the knock-on userspace effects that entails).
      
      This commit checks for these buggy descriptors and updates the maximum
      where required. Prior chipsets have used "255" as the maximum (and the
      G11, at least, doesn't seem to actually use IDs outside the range of
      1..CONTACTMAX) so continue using this value.
      
      Cc: stable@vger.kernel.org
      Fixes: 60a22186 ("HID: wacom: generic: add support for touchring")
      Signed-off-by: NJason Gerecke <jason.gerecke@wacom.com>
      Signed-off-by: NJiri Kosina <jkosina@suse.cz>
      6f107fab
    • A
      ACPI / power: Avoid maybe-uninitialized warning · fe8c470a
      Arnd Bergmann 提交于
      gcc -O2 cannot always prove that the loop in acpi_power_get_inferred_state()
      is enterered at least once, so it assumes that cur_state might not get
      initialized:
      
      drivers/acpi/power.c: In function 'acpi_power_get_inferred_state':
      drivers/acpi/power.c:222:9: error: 'cur_state' may be used uninitialized in this function [-Werror=maybe-uninitialized]
      
      This sets the variable to zero at the start of the loop, to ensure that
      there is well-defined behavior even for an empty list. This gets rid of
      the warning.
      
      The warning first showed up when the -Os flag got removed in a bug fix
      patch in linux-4.11-rc5.
      
      I would suggest merging this addon patch on top of that bug fix to avoid
      introducing a new warning in the stable kernels.
      
      Fixes: 61b79e16 (ACPI: Fix incompatibility with mcount-based function graph tracing)
      Cc: All applicable <stable@vger.kernel.org>
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      fe8c470a
    • M
      mtip32xx: pass BLK_MQ_F_NO_SCHED · 4981d04d
      Ming Lei 提交于
      The recent introduced MQ IO scheduler breaks mtip32xx in the
      following way.
      
      mtip32xx use the 'request_index' passed to .init_request() as
      hardware tag index for initializing hardware queue, and it
      actually require that rq->tag is always same with 'request_index'
      passed to .init_request(). Current blk-mq IO scheduler can't
      guarantee this point, so this patch passes BLK_MQ_F_NO_SCHED
      and at least make mtip32xx working.
      
      This patch fixes the following strange hardware failure. The
      issue can be triggered easily when doing I/O with mq-deadline
      enabled.
      
      [  186.972578] {1}[Hardware Error]: Hardware error from APEI Generic Hardware Error Source: 32993
      [  186.972578] {1}[Hardware Error]: event severity: fatal
      [  186.972579] {1}[Hardware Error]:  Error 0, type: fatal
      [  186.972580] {1}[Hardware Error]:   section_type: PCIe error
      [  186.972580] {1}[Hardware Error]:   port_type: 0, PCIe end point
      [  186.972581] {1}[Hardware Error]:   version: 1.0
      [  186.972581] {1}[Hardware Error]:   command: 0x0407, status: 0x0010
      [  186.972582] {1}[Hardware Error]:   device_id: 0000:07:00.0
      [  186.972582] {1}[Hardware Error]:   slot: 4
      [  186.972583] {1}[Hardware Error]:   secondary_bus: 0x00
      [  186.972583] {1}[Hardware Error]:   vendor_id: 0x1344, device_id: 0x5150
      [  186.972584] {1}[Hardware Error]:   class_code: 008001
      [  186.972585] Kernel panic - not syncing: Fatal hardware error!
      Reported-by: NJozef Mikovic <jmikovic@redhat.com>
      Signed-off-by: NMing Lei <ming.lei@redhat.com>
      Signed-off-by: NJens Axboe <axboe@fb.com>
      4981d04d
    • G
      backlight: pwm_bl: Fix GPIO out for unimplemented .get_direction() · 892c7788
      Geert Uytterhoeven 提交于
      Commit 7613c922 ("backlight: pwm_bl: Move the checks for initial
      power state to a separate function") not just moved some code, but made
      slight changes in semantics.
      
      If a gpiochip doesn't implement the optional .get_direction() callback,
      gpiod_get_direction always returns -EINVAL, which is never equal to
      GPIOF_DIR_IN, leading to the GPIO not being configured for output.
      
      To avoid this, invert the test and check for not GPIOF_DIR_OUT instead,
      like the original code did.
      
      This restores the display on r8a7740/armadillo.
      
      Fixes: 7613c922 ("backlight: pwm_bl: Move the checks for initial power state to a separate function")
      Signed-off-by: NGeert Uytterhoeven <geert+renesas@glider.be>
      Reviewed-by: NPeter Ujfalusi <peter.ujfalusi@ti.com>
      Acked-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      Acked-by: NDaniel Thompson <daniel.thompson@linaro.org>
      Signed-off-by: NDaniel Thompson <daniel.thompson@linaro.org>
      892c7788
  6. 19 4月, 2017 1 次提交
    • J
      HID: wacom: Treat HID_DG_TOOLSERIALNUMBER as unsigned · 286f3f47
      Jason Gerecke 提交于
      Because HID_DG_TOOLSERIALNUMBER doesn't first cast the value recieved from HID
      to an unsigned type, sign-extension rules can cause the value of
      wacom_wac->serial[0] to inadvertently wind up with all 32 of its highest bits
      set if the highest bit of "value" was set.
      
      This can cause problems for Tablet PC devices which use AES sensors and the
      xf86-input-wacom userspace driver. It is not uncommon for AES sensors to send a
      serial number of '0' while the pen is entering or leaving proximity. The
      xf86-input-wacom driver ignores events with a serial number of '0' since it
      cannot match them up to an in-use tool.  To ensure the xf86-input-wacom driver
      does not ignore the final out-of-proximity event, the kernel does not send
      MSC_SERIAL events when the value of wacom_wac->serial[0] is '0'. If the highest
      bit of HID_DG_TOOLSERIALNUMBER is set by an in-prox pen which later leaves
      proximity and sends a '0' for HID_DG_TOOLSERIALNUMBER, then only the lowest 32
      bits of wacom_wac->serial[0] are actually cleared, causing the kernel to send
      an MSC_SERIAL event. Since the 'input_event' function takes an 'int' as
      argument, only those lowest (now-cleared) 32 bits of wacom_wac->serial[0] are
      sent to userspace, causing xf86-input-wacom to ignore the event. If the event
      was the final out-of-prox event, then xf86-input-wacom may remain in a state
      where it believes the pen is in proximity and refuses to allow other devices
      under its control (e.g. the touchscreen) to move the cursor.
      
      It should be noted that EMR devices and devices which use both the
      HID_DG_TOOLSERIALNUMBER and WACOM_HID_WD_SERIALHI usages (in that order) would
      be immune to this issue. It appears only AES devices are affected.
      
      Fixes: f85c9dc6 ("HID: wacom: generic: Support tool ID and additional tool types")
      Cc: stable@vger.kernel.org
      Signed-off-by: NJason Gerecke <jason.gerecke@wacom.com>
      Acked-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com>
      Signed-off-by: NJiri Kosina <jkosina@suse.cz>
      286f3f47