1. 20 12月, 2019 4 次提交
  2. 19 12月, 2019 9 次提交
  3. 18 12月, 2019 23 次提交
  4. 17 12月, 2019 4 次提交
    • C
      drm/i915/gem: Keep request alive while attaching fences · e14177f1
      Chris Wilson 提交于
      Since commit e5dadff4 ("drm/i915: Protect request retirement with
      timeline->mutex"), the request retirement can happen outside of the
      struct_mutex serialised only by the timeline->mutex. We drop the
      timeline->mutex on submitting the request (i915_request_add) so after
      that point, it is liable to be freed. Make sure our local reference is
      kept alive until we have finished attaching it to the signalers. (Note
      that this erodes the argument that i915_request_add should consume the
      reference, but that is a slightly larger patch!)
      
      Fixes: e5dadff4 ("drm/i915: Protect request retirement with timeline->mutex")
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Cc: Matthew Auld <matthew.auld@intel.com>
      Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
      Reviewed-by: NMatthew Auld <matthew.auld@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20191217134729.3297818-1-chris@chris-wilson.co.uk
      e14177f1
    • H
      drm/i915: DSI: select correct PWM controller to use based on the VBT · b6941311
      Hans de Goede 提交于
      At least Bay Trail (BYT) and Cherry Trail (CHT) devices can use 1 of 2
      different PWM controllers for controlling the LCD's backlight brightness.
      Either the one integrated into the PMIC or the one integrated into the
      SoC (the 1st LPSS PWM controller).
      
      So far in the LPSS code on BYT we have skipped registering the LPSS PWM
      controller "pwm_backlight" lookup entry when a Crystal Cove PMIC is
      present, assuming that in this case the PMIC PWM controller will be used.
      
      On CHT we have been relying on only 1 of the 2 PWM controllers being
      enabled in the DSDT at the same time; and always registered the lookup.
      
      So far this has been working, but the correct way to determine which PWM
      controller needs to be used is by checking a bit in the VBT table and
      recently I've learned about 2 different BYT devices:
      Point of View MOBII TAB-P800W
      Acer Switch 10 SW5-012
      
      Which use a Crystal Cove PMIC, yet the LCD is connected to the SoC/LPSS
      PWM controller (and the VBT correctly indicates this), so here our old
      heuristics fail.
      
      This commit fixes using the wrong PWM controller on these devices by
      calling pwm_get() for the right PWM controller based on the
      VBT dsi.config.pwm_blc bit.
      
      Note this is part of a series which contains 2 other patches which renames
      the PWM lookup for the 1st SoC/LPSS PWM from "pwm_backlight" to
      "pwm_pmic_backlight" and the PWM lookup for the Crystal Cove PMIC PWM
      from "pwm_backlight" to "pwm_pmic_backlight".
      Acked-by: NJani Nikula <jani.nikula@intel.com>
      Reviewed-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20191216202906.1662893-4-hdegoede@redhat.com
      b6941311
    • H
      mfd: intel_soc_pmic: Rename pwm_backlight pwm-lookup to pwm_pmic_backlight · 2f093958
      Hans de Goede 提交于
      At least Bay Trail (BYT) and Cherry Trail (CHT) devices can use 1 of 2
      different PWM controllers for controlling the LCD's backlight brightness.
      
      Either the one integrated into the PMIC or the one integrated into the
      SoC (the 1st LPSS PWM controller).
      
      So far in the LPSS code on BYT we have skipped registering the LPSS PWM
      controller "pwm_backlight" lookup entry when a Crystal Cove PMIC is
      present, assuming that in this case the PMIC PWM controller will be used.
      
      On CHT we have been relying on only 1 of the 2 PWM controllers being
      enabled in the DSDT at the same time; and always registered the lookup.
      
      So far this has been working, but the correct way to determine which PWM
      controller needs to be used is by checking a bit in the VBT table and
      recently I've learned about 2 different BYT devices:
      Point of View MOBII TAB-P800W
      Acer Switch 10 SW5-012
      
      Which use a Crystal Cove PMIC, yet the LCD is connected to the SoC/LPSS
      PWM controller (and the VBT correctly indicates this), so here our old
      heuristics fail.
      
      Since only the i915 driver has access to the VBT, this commit renames
      the "pwm_backlight" lookup entries for the Crystal Cove PMIC's PWM
      controller to "pwm_pmic_backlight" so that the i915 driver can do a
      pwm_get() for the right controller depending on the VBT bit, instead of
      the i915 driver relying on a "pwm_backlight" lookup getting registered
      which magically points to the right controller.
      Acked-by: NJani Nikula <jani.nikula@intel.com>
      Reviewed-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Acked-by: NLee Jones <lee.jones@linaro.org>
      Link: https://patchwork.freedesktop.org/patch/msgid/20191216202906.1662893-3-hdegoede@redhat.com
      2f093958
    • H
      ACPI / LPSS: Rename pwm_backlight pwm-lookup to pwm_soc_backlight · b2147a3a
      Hans de Goede 提交于
      At least Bay Trail (BYT) and Cherry Trail (CHT) devices can use 1 of 2
      different PWM controllers for controlling the LCD's backlight brightness.
      Either the one integrated into the PMIC or the one integrated into the
      SoC (the 1st LPSS PWM controller).
      
      So far in the LPSS code on BYT we have skipped registering the LPSS PWM
      controller "pwm_backlight" lookup entry when a Crystal Cove PMIC is
      present, assuming that in this case the PMIC PWM controller will be used.
      
      On CHT we have been relying on only 1 of the 2 PWM controllers being
      enabled in the DSDT at the same time; and always registered the lookup.
      
      So far this has been working, but the correct way to determine which PWM
      controller needs to be used is by checking a bit in the VBT table and
      recently I've learned about 2 different BYT devices:
      Point of View MOBII TAB-P800W
      Acer Switch 10 SW5-012
      
      Which use a Crystal Cove PMIC, yet the LCD is connected to the SoC/LPSS
      PWM controller (and the VBT correctly indicates this), so here our old
      heuristics fail.
      
      Since only the i915 driver has access to the VBT, this commit renames
      the "pwm_backlight" lookup entries for the 1st BYT/CHT LPSS PWM controller
      to "pwm_soc_backlight" so that the i915 driver can do a pwm_get() for
      the right controller depending on the VBT bit, instead of the i915 driver
      relying on a "pwm_backlight" lookup getting registered which magically
      points to the right controller.
      Acked-by: NJani Nikula <jani.nikula@intel.com>
      Reviewed-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Acked-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20191216202906.1662893-2-hdegoede@redhat.com
      b2147a3a