1. 20 9月, 2017 1 次提交
  2. 19 9月, 2017 2 次提交
    • C
      ata: pata_artop: remove redundant initialization of pio · 01bb12e4
      Colin Ian King 提交于
      pio is initialized and the data is never read, instead it is almost
      immediately being updated to a new value. Fix this by removing the
      initialization.
      
      Detected by scan-build:
      "warning: Value stored to 'pio' during its initialization is never read"
      
      Fixes: 669a5db4 ("[libata] Add a bunch of PATA drivers")
      Signed-off-by: NColin Ian King <colin.king@canonical.com>
      Signed-off-by: NTejun Heo <tj@kernel.org>
      01bb12e4
    • H
      libata: Add new med_power_with_dipm link_power_management_policy setting · f4ac6476
      Hans de Goede 提交于
      As described by Matthew Garret quite a while back:
      https://mjg59.dreamwidth.org/34868.html
      
      Intel CPUs starting with the Haswell generation need SATA links to power
      down for the "package" part of the CPU to reach low power-states like
      PC7 / P8 which bring a significant power-saving with them.
      
      The default max_performance lpm policy does not allow for these high
      PC states, both the medium_power and min_power policies do allow this.
      
      The min_power policy saves significantly more power, but there are some
      reports of some disks / SSDs not liking min_power leading to system
      crashes and in some cases even data corruption has been reported.
      
      Matthew has found a document documenting the default settings of
      Intel's IRST Windows driver with which most laptops ship:
      https://www-ssl.intel.com/content/dam/doc/reference-guide/sata-devices-implementation-recommendations.pdf
      
      Matthew wrote a patch changing med_power to match those defaults, but
      that never got anywhere as some people where reporting issues with the
      patch-set that patch was a part of.
      
      This commit is another attempt to make the default IRST driver settings
      available under Linux, but instead of changing medium_power and
      potentially introducing regressions, this commit adds a new
      med_power_with_dipm setting which is identical to the existing
      medium_power accept that it enables dipm on top, which makes it match
      the Windows IRST driver settings, which should hopefully be safe to
      use on most devices.
      
      The med_power_with_dipm setting is close to min_power, except that:
      a) It does not use host-initiated slumber mode (ASP not set),
         but it does allow device-initiated slumber
      b) It does not enable DevSlp mode
      
      On my T440s test laptop I get the following power savings when idle:
      medium_power		0.9W
      med_power_with_dipm	1.2W
      min_power		1.2W
      Suggested-by: NMatthew Garrett <mjg59@srcf.ucam.org>
      Cc: Matthew Garrett <mjg59@srcf.ucam.org>
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NTejun Heo <tj@kernel.org>
      f4ac6476
  3. 08 9月, 2017 1 次提交
  4. 07 9月, 2017 13 次提交
  5. 06 9月, 2017 21 次提交
  6. 05 9月, 2017 2 次提交
    • M
      media: get rid of removed DMX_GET_CAPS and DMX_SET_SOURCE leftovers · 4cd7d6c9
      Mauro Carvalho Chehab 提交于
      Those two ioctls were never used within the Kernel. Still, there
      used to have compat32 code there (and an if #0 block at the core).
      
      Get rid of them.
      
      Fixes: 286fe1ca ("media: dmx.h: get rid of DMX_GET_CAPS")
      Fixes: 13adefbe ("media: dmx.h: get rid of DMX_SET_SOURCE")
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      4cd7d6c9
    • R
      media: Revert "[media] v4l: async: make v4l2 coexist with devicetree nodes in a dt overlay" · 12f92866
      Rob Herring 提交于
      This reverts commit d2180e0c.
      
      The commit was flawed in that if the device_node pointers are different,
      then in fact a different device is present and the device node could be
      different in ways other than full_name.
      
      As Frank Rowand explained:
      
      "When an overlay (1) is removed, all uses and references to the nodes and
      properties in that overlay are no longer valid.  Any driver that uses any
      information from the overlay _must_ stop using any data from the overlay.
      Any driver that is bound to a new node in the overlay _must_ unbind.  Any
      driver that became bound to a pre-existing node that was modified by the
      overlay (became bound after the overlay was applied) _must_ adjust itself
      to account for any changes to that node when the overlay is removed.  One
      way to do this is to unbind when notified that the overlay is about to
      be removed, then to re-bind after the overlay is completely removed.
      
      If an overlay (2) is subsequently applied, a node with the same
      full_name as from overlay (1) may exist.  There is no guarantee
      that overlay (1) and overlay (2) are the same overlay, even if
      that node has the same full_name in both cases."
      
      Also, there's not sufficient overlay support in mainline to actually
      remove and re-apply an overlay to hit this condition as overlays can
      only be applied from in kernel APIs.
      
      Fixes: d2180e0c ("[media] v4l: async: make v4l2 coexist with devicetree nodes in a dt overlay")
      
      Cc: Javier Martinez Canillas <javier@osg.samsung.com>
      Cc: Sylwester Nawrocki <s.nawrocki@samsung.com>
      Cc: Frank Rowand <frowand.list@gmail.com>
      Signed-off-by: NRob Herring <robh@kernel.org>
      Acked-by: NJavi Merino <javi.merino@kernel.org>
      Signed-off-by: NSakari Ailus <sakari.ailus@linux.intel.com>
      Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
      12f92866