1. 22 10月, 2013 1 次提交
  2. 18 10月, 2013 1 次提交
  3. 17 10月, 2013 13 次提交
    • R
      ACPI / PM: Drop two functions that are not used any more · 2421ad48
      Rafael J. Wysocki 提交于
      Two functions defined in device_pm.c, acpi_dev_pm_add_dependent()
      and acpi_dev_pm_remove_dependent(), have no callers and may be
      dropped, so drop them.
      
      Moreover, they are the only functions adding entries to and removing
      entries from the power_dependent list in struct acpi_device, so drop
      that list too.
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      2421ad48
    • A
      ATA / ACPI: remove power dependent device handling · b08fc109
      Aaron Lu 提交于
      Previously, we wanted SCSI devices corrsponding to ATA devices to
      be runtime resumed when the power resource for those ATA device was
      turned on by some other device, so we added the SCSI device to the
      dependent device list of the ATA device's ACPI node.  However, this
      code has no effect after commit 41863fce (ACPI / power: Drop automaitc
      resume of power resource dependent devices) and the mechanism it was
      supposed to implement is regarded as a bad idea now, so drop it.
      
      [rjw: Changelog]
      Signed-off-by: NAaron Lu <aaron.lu@intel.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      b08fc109
    • Y
      driver core: Release device_hotplug_lock when store_mem_state returns EINVAL · a37f8630
      Yasuaki Ishimatsu 提交于
      When inserting a wrong value to /sys/devices/system/memory/memoryX/state file,
      following messages are shown. And device_hotplug_lock is never released.
      
      ================================================
      [ BUG: lock held when returning to user space! ]
      3.12.0-rc4-debug+ #3 Tainted: G        W
      ------------------------------------------------
      bash/6442 is leaving the kernel with locks still held!
      1 lock held by bash/6442:
       #0:  (device_hotplug_lock){+.+.+.}, at: [<ffffffff8146cbb5>] lock_device_hotplug_sysfs+0x15/0x50
      
      This issue was introdued by commit fa2be40f (drivers: base: use standard
      device online/offline for state change).
      
      This patch releases device_hotplug_lcok when store_mem_state returns EINVAL.
      Signed-off-by: NYasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>
      Reviewed-by: NToshi Kani <toshi.kani@hp.com>
      CC: Seth Jennings <sjenning@linux.vnet.ibm.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      a37f8630
    • C
      cpufreq: s3c64xx: Rename index to driver_data · 0e824432
      Charles Keepax 提交于
      The index field of cpufreq_frequency_table has been renamed to
      driver_data by commit 50701588 (cpufreq: rename index as driver_data
      in cpufreq_frequency_table).
      
      This patch updates the s3c64xx driver to match.
      Signed-off-by: NCharles Keepax <ckeepax@opensource.wolfsonmicro.com>
      Cc: 3.11+ <stable@vger.kernel.org> # 3.11+
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      0e824432
    • R
      ACPI / power: Drop automaitc resume of power resource dependent devices · 41863fce
      Rafael J. Wysocki 提交于
      The mechanism causing devices depending on a given power resource
      (that is, devices that can be in D0 only if that power resource is
      on) to be resumed automatically when the power resource is turned
      on (and their "inferred" power state becomes D0 as a result) is
      inherently racy and in fact unnecessary.
      
      It is racy, because if the power resource is turned on and then
      immediately off, the device resume triggered by the first transition
      to "on" may still happen, causing the power resource to be turned
      on again.  That again will trigger the "resume of dependent devices"
      mechanism, but if the devices in question are not in use, they will
      be suspended in the meantime causing the power resource to be turned
      off.  However, the "resume of dependent devices" will next resume
      them again and so on.  In some cases (USB port PM in particular) that
      leads to an endless busy loop of flipping the resource on and off
      continuously.
      
      It is needless, because whoever turns a power resource on will most
      likely turn it off at some point and the devices that go into "D0"
      as a result of turning it on will then go back into D3cold
      (generally, the state they were in before).
      
      Moreover, turning on all power resources a device needs to go into
      D0 is not sufficient for a full transition into D0 in general.
      Namely, _PS0 may need to be executed in addition to that in some
      cases.  This means that the whole rationale of the "resume of
      dependent devices" mechanism was incorrect to begin with and it's
      best to remove it entirely.
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      41863fce
    • R
      intel_pstate: Fix type mismatch warning · 09c87e2f
      Rafael J. Wysocki 提交于
      The expression in line 398 of intel_pstate.c causes the following
      warning to be emitted:
      
      drivers/cpufreq/intel_pstate.c:398:3: warning: left shift count >= width of type
      
      which happens because unsigned long is 32-bit on some architectures.
      
      Fix that by using a helper u64 variable and simplify the code
      slightly.
      Tested-by: NSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      09c87e2f
    • K
      Drivers: hv: vmbus: Fix a bug in channel rescind code · 90d33f3e
      K. Y. Srinivasan 提交于
      Rescind of subchannels were not being correctly handled. Fix the bug.
      Signed-off-by: NK. Y. Srinivasan <kys@microsoft.com>
      Cc: <stable@vger.kernel.org>        [3.11+]
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      90d33f3e
    • M
      usb: misc: usb3503: Fix compile error due to incorrect regmap depedency · eea88512
      Matthew Dawson 提交于
      The USB3503 driver had an incorrect depedency on REGMAP, instead of
      REGMAP_I2C.  This caused the build to fail since the necessary regmap
      i2c pieces were not available.
      Signed-off-by: NMatthew Dawson <matthew@mjdsystems.ca>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      eea88512
    • R
      usb/chipidea: fix oops on memory allocation failure · 41314fea
      Russell King - ARM Linux 提交于
      When CMA fails to initialize in v3.12-rc4, the chipidea driver oopses
      the kernel while trying to remove and put the HCD which doesn't exist:
      
      WARNING: CPU: 0 PID: 6 at /home/rmk/git/linux-rmk/arch/arm/mm/dma-mapping.c:511
      __dma_alloc+0x200/0x240()
      coherent pool not initialised!
      Modules linked in:
      CPU: 0 PID: 6 Comm: kworker/u2:0 Tainted: G        W    3.12.0-rc4+ #56
      Workqueue: deferwq deferred_probe_work_func
      Backtrace:
      [<c001218c>] (dump_backtrace+0x0/0x10c) from [<c0012328>] (show_stack+0x18/0x1c)
       r6:c05fd9cc r5:000001ff r4:00000000 r3:df86ad00
      [<c0012310>] (show_stack+0x0/0x1c) from [<c05f3a4c>] (dump_stack+0x70/0x8c)
      [<c05f39dc>] (dump_stack+0x0/0x8c) from [<c00230a8>] (warn_slowpath_common+0x6c/0x8c)
       r4:df883a60 r3:df86ad00
      [<c002303c>] (warn_slowpath_common+0x0/0x8c) from [<c002316c>] (warn_slowpath_fmt+0x38/0x40)
       r8:ffffffff r7:00001000 r6:c083b808 r5:00000000 r4:df2efe80
      [<c0023134>] (warn_slowpath_fmt+0x0/0x40) from [<c00196bc>] (__dma_alloc+0x200/0x240)
       r3:00000000 r2:c05fda00
      [<c00194bc>] (__dma_alloc+0x0/0x240) from [<c001982c>] (arm_dma_alloc+0x88/0xa0)
      [<c00197a4>] (arm_dma_alloc+0x0/0xa0) from [<c03e2904>] (ehci_setup+0x1f4/0x438)
      [<c03e2710>] (ehci_setup+0x0/0x438) from [<c03cbd60>] (usb_add_hcd+0x18c/0x664)
      [<c03cbbd4>] (usb_add_hcd+0x0/0x664) from [<c03e89f4>] (host_start+0xf0/0x180)
      [<c03e8904>] (host_start+0x0/0x180) from [<c03e7c34>] (ci_hdrc_probe+0x360/0x670
      )
       r6:df2ef410 r5:00000000 r4:df2c3010 r3:c03e8904
      [<c03e78d4>] (ci_hdrc_probe+0x0/0x670) from [<c0311044>] (platform_drv_probe+0x20/0x24)
      [<c0311024>] (platform_drv_probe+0x0/0x24) from [<c030fcac>] (driver_probe_device+0x9c/0x234)
      ...
      ---[ end trace c88ccaf3969e8422 ]---
      Unable to handle kernel NULL pointer dereference at virtual address 00000028
      pgd = c0004000
      [00000028] *pgd=00000000
      Internal error: Oops: 17 [#1] SMP ARM
      Modules linked in:
      CPU: 0 PID: 6 Comm: kworker/u2:0 Tainted: G        W    3.12.0-rc4+ #56
      Workqueue: deferwq deferred_probe_work_func
      task: df86ad00 ti: df882000 task.ti: df882000
      PC is at usb_remove_hcd+0x10/0x150
      LR is at host_stop+0x1c/0x3c
      pc : [<c03cacec>]    lr : [<c03e88e4>]    psr: 60000013
      sp : df883b50  ip : df883b78  fp : df883b74
      r10: c11f4c54  r9 : c0836450  r8 : df30c400
      r7 : fffffff4  r6 : df2ef410  r5 : 00000000  r4 : df2c3010
      r3 : 00000000  r2 : 00000000  r1 : df86b0a0  r0 : 00000000
      Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
      Control: 10c53c7d  Table: 2f29404a  DAC: 00000015
      Process kworker/u2:0 (pid: 6, stack limit = 0xdf882240)
      Stack: (0xdf883b50 to 0xdf884000)
      ...
      Backtrace:
      [<c03cacdc>] (usb_remove_hcd+0x0/0x150) from [<c03e88e4>] (host_stop+0x1c/0x3c)
       r6:df2ef410 r5:00000000 r4:df2c3010
      [<c03e88c8>] (host_stop+0x0/0x3c) from [<c03e8aa0>] (ci_hdrc_host_destroy+0x1c/0x20)
       r5:00000000 r4:df2c3010
      [<c03e8a84>] (ci_hdrc_host_destroy+0x0/0x20) from [<c03e7c80>] (ci_hdrc_probe+0x3ac/0x670)
      [<c03e78d4>] (ci_hdrc_probe+0x0/0x670) from [<c0311044>] (platform_drv_probe+0x20/0x24)
      [<c0311024>] (platform_drv_probe+0x0/0x24) from [<c030fcac>] (driver_probe_device+0x9c/0x234)
      [<c030fc10>] (driver_probe_device+0x0/0x234) from [<c030ff28>] (__device_attach+0x44/0x48)
      ...
      ---[ end trace c88ccaf3969e8423 ]---
      
      Fix this so at least we can continue booting and get to a shell prompt.
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      Tested-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      41314fea
    • O
      usb-storage: add quirk for mandatory READ_CAPACITY_16 · 32c37fc3
      Oliver Neukum 提交于
      Some USB drive enclosures do not correctly report an
      overflow condition if they hold a drive with a capacity
      over 2TB and are confronted with a READ_CAPACITY_10.
      They answer with their capacity modulo 2TB.
      The generic layer cannot cope with that. It must be told
      to use READ_CAPACITY_16 from the beginning.
      Signed-off-by: NOliver Neukum <oneukum@suse.de>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      32c37fc3
    • E
      usb: serial: option: blacklist Olivetti Olicard200 · fd8573f5
      Enrico Mioso 提交于
      Interface 6 of this device speaks QMI as per tests done by us.
      Credits go to Antonella for providing the hardware.
      Signed-off-by: NEnrico Mioso <mrkiko.rs@gmail.com>
      Signed-off-by: NAntonella Pellizzari <anto.pellizzari83@gmail.com>
      Tested-by: NDan Williams <dcbw@redhat.com>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      fd8573f5
    • R
      serial: vt8500: add missing braces · d969de8d
      Roel Kluin 提交于
      Due to missing braces on an if statement, in presence of a device_node a
      port was always assigned -1, regardless of any alias entries in the
      device tree. Conversely, if device_node was NULL, an unitialized port
      ended up being used.
      
      This patch adds the missing braces, fixing the issues.
      Signed-off-by: NRoel Kluin <roel.kluin@gmail.com>
      Acked-by: NTony Prisk <linux@prisktech.co.nz>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      d969de8d
    • O
      USB: quirks: add touchscreen that is dazzeled by remote wakeup · 614ced91
      Oliver Neukum 提交于
      The device descriptors are messed up after remote wakeup
      Signed-off-by: NOliver Neukum <oneukum@suse.de>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      614ced91
  4. 16 10月, 2013 5 次提交
  5. 15 10月, 2013 4 次提交
  6. 14 10月, 2013 5 次提交
  7. 12 10月, 2013 7 次提交
  8. 11 10月, 2013 4 次提交
    • S
      usb: musb: start musb on the udc side, too · 001dd84a
      Sebastian Andrzej Siewior 提交于
      I have am335x-evm with one port running in OTG mode. Since commit
      fe4cb091 ("usb: musb: gadget: remove hcd initialization") the loaded
      gadget does non pop up on the host. All I see is
      |usb 4-5: new high-speed USB device number 52 using ehci-pci
      |usb 4-5: device descriptor read/64, error -110
      
      Since a later commit 2cc65fea ("usb: musb: add musb_host_setup() and
      musb_host_cleanup()) the gadget shows up on the host again but only
      in OTG mode (because we have the host init code running). It does not
      work in device only mode.
      If running in OTG mode and the gadget is removed and added back (rmmod
      followed by modprobe of a gadget) then the same error is pops up on the
      host side.
      
      This patch ensures that the gadget side also executes musb_start() which
      puts the chip in "connect accept" mode. With this change the device
      works in OTG & device mode and the gadget can be added & removed
      multiple times.
      A device (if musb is in OTG mode acting as a host) is only recognized if
      it is attached during module load (musb_hdrc module). After the device
      unplugged and plugged again the host does not recognize it. We get a
      buch of errors if musb running in OTG mode, attached to a host and no
      gadget is loaded. Bah.
      This is one step forward. Host & device only mode should work. I will
      look at OTG later. I looked at this before commit fe4cb091 and OTG wasn't
      working there perfectly so I am not sure that it is a regression :)
      
      Cc: <stable@vger.kernel.org> # v3.11
      Cc: Daniel Mack <zonque@gmail.com>
      Cc: Peter Korsgaard <jacmet@sunsite.dk>
      Signed-off-by: NSebastian Andrzej Siewior <bigeasy@linutronix.de>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      001dd84a
    • A
      gpiolib: let gpiod_request() return -EPROBE_DEFER · 0204df47
      Alexandre Courbot 提交于
      Patch be1a4b brought some improvements to the GPIO error handling code,
      but also changed the return value of gpiod_request() when called on a
      not yet initialized GPIO descriptor: it now returns -EINVAL instead of
      -EPROBE_DEFER, and this affects some drivers.
      
      This patch restores the original behavior for gpiod_request(). It is
      safe to do so now that desc_to_gpio() does not rely on the GPIO
      descriptor to be initialized. Other functions changed by patch be1a4b
      do not see their return value affected, so these are not reverted.
      Signed-off-by: NAlexandre Courbot <acourbot@nvidia.com>
      Reported-by: NDr. H. Nikolaus Schaller <hns@goldelico.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      0204df47
    • A
      gpiolib: safer implementation of desc_to_gpio() · 8c0fca81
      Alexandre Courbot 提交于
      The current implementation of desc_to_gpio() relies on the chip pointer
      to be set to a valid value in order to compute the GPIO number. This
      was done in the hope that we can get rid of the gpio_desc global array,
      but this is not happening anytime soon.
      
      This patch reimplements desc_to_gpio() in a fashion similar to that of
      gpio_to_desc(). As a result, desc_to_gpio(gpio_to_desc(gpio)) == gpio is
      now always true. This allows to call desc_to_gpio() on non-initialized
      descriptors as some error-handling code currently does.
      Signed-off-by: NAlexandre Courbot <acourbot@nvidia.com>
      Reported-by: NDr. H. Nikolaus Schaller <hns@goldelico.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      8c0fca81
    • R
      ACPI / PM / Documentation: Replace outdated project links and addresses · aaf3d29f
      Rafael J. Wysocki 提交于
      Some links to projects web pages and e-mail addresses in ACPI/PM
      documentation and Kconfig are outdated, so update them.
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      aaf3d29f