1. 27 Aug, 2013 18 commits
    • Milo Kim's avatar
      leds: lp5523: restore legacy device attributes · 45e611bf
      Milo Kim authored
      git commit db6eaf83
      (leds-lp5523: use generic firmware interface) causes an application conflict.
      This interface should be maintained for compatibility.
      
      Restored device attributes are 'engineN_mode', 'engineN_load' and
      'engineN_leds'. (N = 1, 2 or 3)
      A 'selftest' attribute macro is replaced with LP55xx common macro.
      Those are accessed when a LED pattern is run by an application.
      
      Use a mutex in lp5523_update_program_memory()
      : This function is called when an user-application writes a 'engineN_load' file
      or pattern data is loaded from generic firmware interface.
      So, writing program memory should be protected.
      If an error occurs on accessing this area, just it returns as -EINVAL quickly.
      This error code is exact same as old driver function, lp5523_do_store_load()
      because it should be kept for an user-application compatibility.
      Even the driver is changed, we can use the application without re-compiling
      sources.
      Reported-by: default avatarPali Rohár <pali.rohar@gmail.com>
      Signed-off-by: default avatarMilo Kim <milo.kim@ti.com>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      45e611bf
    • Milo Kim's avatar
      leds: lp5523: LED MUX configuration on initializing · 22460438
      Milo Kim authored
      LED MUX start and stop address should be updated in the program memory
      on LP5523 initialization.
      LED pattern doesn't work without additional MUX address configuration.
      This handling is done by new function, lp5523_init_program_engine().
      Eventually, it's called during device initialization, lp5523_post_init_device().
      
      This is a conflict after git commit 632418bf
      (leds-lp5523: clean up lp5523_configure()).
      So it should be fixed.
      
      Cc: Pali Rohár <pali.rohar@gmail.com>
      Signed-off-by: default avatarMilo Kim <milo.kim@ti.com>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      22460438
    • Milo Kim's avatar
      leds: lp5523: make separate API for loading engine · b9e1730b
      Milo Kim authored
      lp5523_load_engine()
        It is called whenever the operation mode is changed to 'load'.
        It is used for simple operation mode change.
        It will be used when engine mode and LED selection is updated in later patch.
      
      lp5523_load_engine_and_select_page()
        Change the operation mode to 'load' and select program page number.
        This is used for programming a LED pattern at a time.
        So load_engine() is replaced with new API, load_engine_and_select_page()
        in lp5523_firmware_loaded().
      Signed-off-by: default avatarMilo Kim <milo.kim@ti.com>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      b9e1730b
    • Milo Kim's avatar
      leds: lp5521: remove unnecessary writing commands · 1eca0b3a
      Milo Kim authored
      This patch reduces the number of programming commands.
      
      (Count of sending commands)
      Old code: 32 + program size (32 counts for clearing program memory)
      New code: 32
      
      Pattern buffer is initialized to 0 in this function.
      Just update new program data and remaining buffers are filled with 0.
      So it's needless to clear whole area.
      Signed-off-by: default avatarMilo Kim <milo.kim@ti.com>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      1eca0b3a
    • Milo Kim's avatar
      leds: lp5521: restore legacy device attributes · c0e5e9b5
      Milo Kim authored
      git commit 9ce7cb17
      may cause an application confict, engineN_mode and engineN_load.
      This interface should be maintained for compatibility.
      
      Restored device attributes are 'engineN_mode' and 'engineN_load'.
      A 'selftest' attribute macro is replaced with LP55xx common macro.
      
      Use a mutex in lp5521_update_program_memory()
      : This function is called when an user-application writes a 'engineN_load' file
      or pattern data is loaded from generic firmware interface.
      So, writing program memory should be protected.
      If an error occurs on accessing this area, just it returns as -EINVAL quickly.
      This error code is exact same as old driver function, lp5521_do_store_load()
      because it should be kept for an user-application compatibility.
      Even the driver is changed, we can use the application without re-compiling
      sources.
      
      'led_pattern' attribute is not included
      : engineN_mode and _load were created for custom user-application.
      'led_pattern' is an exception. I added this attribute not for custom application
      but for simple test. Now it is used only in LP5562 driver, not LP5521.
      Signed-off-by: default avatarMilo Kim <milo.kim@ti.com>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      c0e5e9b5
    • Milo Kim's avatar
      leds: lp55xx: add common macros for device attributes · 36030978
      Milo Kim authored
      This patch provides common macros for LP5521 and LP5523 device attributes and
      functions.
      
      (Device attributes)
      LP5521: 'mode', 'load' and 'selftest'
      LP5523: 'mode', 'load', 'leds' and 'selftest'
      
      (Permissions)
      mode: R/W
      load: Write-only
      leds: R/W
      selftest: Read-only
      
      Couple of lines are duplicate, so use these macros for adding device attributes
      in LP5521 and LP5523 drivers.
      Signed-off-by: default avatarMilo Kim <milo.kim@ti.com>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      36030978
    • Milo Kim's avatar
      leds: lp55xx: add common data structure for program · 6841a91d
      Milo Kim authored
      LP55xx family devices have internal three program engines which are used for
      loading LED patterns. To maintain legacy device attributes, specific data
      structure is used, 'mode' and 'led_mux'. The mode is used for showing/storing
      current engine mode such like disabled, load and run. Then led_mux is used for
      showing/storing current output LED selection.
      
      This is only for LP5523/55231.
      Signed-off-by: default avatarMilo Kim <milo.kim@ti.com>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      6841a91d
    • Sachin Kamat's avatar
      Documentation: leds: Fix a typo · e5862b9a
      Sachin Kamat authored
      __initdata should be placed between the variable name and equal
      sign for the variable to be placed in the intended section.
      Fix the example.
      Signed-off-by: default avatarSachin Kamat <sachin.kamat@linaro.org>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      e5862b9a
    • Sachin Kamat's avatar
      leds: ss4200: Fix incorrect placement of __initdata · b06cf2d7
      Sachin Kamat authored
      __initdata should be placed between the variable name and equal
      sign for the variable to be placed in the intended section.
      Signed-off-by: default avatarSachin Kamat <sachin.kamat@linaro.org>
      Cc: Dave Hansen <dave@sr71.net>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      b06cf2d7
    • Sachin Kamat's avatar
      leds: clevo-mail: Fix incorrect placement of __initdata · 939086ea
      Sachin Kamat authored
      __initdata should be placed between the variable name and equal
      sign for the variable to be placed in the intended section.
      Signed-off-by: default avatarSachin Kamat <sachin.kamat@linaro.org>
      Cc: Márton Németh <nm127@freemail.hu>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      939086ea
    • Simon Guinot's avatar
      leds: leds-netxbig: depends on ARCH_KIRKWOOD · d6d240bf
      Simon Guinot authored
      With the DT conversion, the board Kconfig symbols MACH_ are going to be
      removed. In order to prepare this removal, this patch replaces alls the
      machines dependencies for leds-netxbig by ARCH_KIRKWOOD.
      Signed-off-by: default avatarSimon Guinot <simon.guinot@sequanux.org>
      Acked-by: default avatarJason Cooper <jason@lakedaemon.net>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      d6d240bf
    • Simon Guinot's avatar
      leds: leds-ns2: depends on ARCH_KIRKWOOD · d6626d10
      Simon Guinot authored
      With the DT conversion, the board Kconfig symbols MACH_ are going to be
      removed. In order to prepare this removal, this patch replaces alls the
      machines dependencies for leds-ns2 by ARCH_KIRKWOOD.
      Signed-off-by: default avatarSimon Guinot <simon.guinot@sequanux.org>
      Acked-by: default avatarJason Cooper <jason@lakedaemon.net>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      d6626d10
    • Antonio Ospite's avatar
      leds: leds-lp3944, fix "sparse" warning "mixing different enum types" · 29ab311c
      Antonio Ospite authored
      Fix a warning from "sparse":
      
      drivers/leds/leds-lp3944.c:292:23: warning: mixing different enum types
      drivers/leds/leds-lp3944.c:292:23:     int enum led_brightness  versus
      drivers/leds/leds-lp3944.c:292:23:     int enum lp3944_status
      
      Keeping track of LP3944_LED_STATUS_OFF and LP3944_LED_STATUS_ON only in
      lp3944_led_set_brightness() is OK, as the handling of DIM (blinking)
      mode[s] is in lp3944_led_set_blink().
      Reported-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Signed-off-by: default avatarAntonio Ospite <ospite@studenti.unina.it>
      Reviewed-by: default avatarJingoo Han <jg1.han@samsung.com>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      29ab311c
    • Jingoo Han's avatar
      leds: leds-ss4200: Staticize nasgpio_led_get_attr() · 2e87c092
      Jingoo Han authored
      nasgpio_led_get_attr() is used only in this file.
      Fix the following sparse warning:
      
      drivers/leds/leds-ss4200.c:200:5: warning: symbol 'nasgpio_led_get_attr' was not declared. Should it be static?
      Signed-off-by: default avatarJingoo Han <jg1.han@samsung.com>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      2e87c092
    • Jingoo Han's avatar
      leds: use dev_get_platdata() · 87aae1ea
      Jingoo Han authored
      Use the wrapper function for retrieving the platform data instead of
      accessing dev->platform_data directly.
      Signed-off-by: default avatarJingoo Han <jg1.han@samsung.com>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      87aae1ea
    • Mark A. Greer's avatar
      leds: pca9633: Add hardware blink support · 8465b018
      Mark A. Greer authored
      Add hardware blinking support to the pca9633 driver.
      
      NOTE: Hardware blinking violates the leds infrastructure
      driver interface since the hardware only supports
      blinking all LEDs with the same delay_on/delay_off
      rates.  That is, only the LEDs that are set to blink
      will actually blink but all LEDs that are set to blink
      will blink in identical fashion.  The delay_on/delay_off
      values of the last LED that is set to blink will be used
      for all of the blinking LEDs.  If the hardware doesn't
      support the requested blinking pattern, a default of
      500ms on and off will be used.
      
      Hardware blinking is disabled by default but can be enabled
      by setting the 'blink_type' member in the platform_data
      struct to 'PCA9633_HW_BLINK' or by adding the 'nxp,hw-blink'
      property to the DTS.
      
      (fengguang.wu@intel.com: Removes unneeded semicolon.)
      Signed-off-by: default avatarMark A. Greer <mgreer@animalcreek.com>
      Reported-by: default avatarFengguang Wu <fengguang.wu@intel.com>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      8465b018
    • Kim, Milo's avatar
      leds: support new LP8501 device - another LP55xx common · 33b3a561
      Kim, Milo authored
      LP8501 can drive up to 9 channels like LP5523.
      LEDs can be controlled directly via the I2C and programmable engines are
      supported.
      
      LP55xx common driver
       LP8501 is one of LP55xx family device, so LP55xx common code are used.
       Chip specific data is defined in the structure, 'lp55xx_device_config'.
      
      Differences between LP8501 and LP5523
       Different register layout for LED output control and others.
       LP8501 specific feature for separate output power selection.
       LP8501 doesn't support external clock detection.
       Different programming engine data.
      
      LP8501 specific feature - output power selection
       Output channels are selected by power selection - Vout or Vdd.
       Separate power for VDD1-6 and VDD7-9 are available.
       It is configurable in the platform data.
       To support this feature, LP55xx DT structure and header are changed.
       Device tree binding is updated as well.
      
      LED pattern data
       Example pattern data is updated in the driver documentation.
      Signed-off-by: default avatarMilo Kim <milo.kim@ti.com>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      33b3a561
    • Tony Lindgren's avatar
      leds: Add device tree binding for pca9633 · 81d22878
      Tony Lindgren authored
      Similar to tca6507, we can just parse the standard LED
      properties for pca9633.
      
      Tested on a pca9632, which is compatible with pca9633.
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      Signed-off-by: default avatarBryan Wu <cooloney@gmail.com>
      81d22878
  2. 26 Aug, 2013 1 commit
  3. 25 Aug, 2013 4 commits
  4. 24 Aug, 2013 8 commits
  5. 23 Aug, 2013 9 commits
    • Linus Torvalds's avatar
      Merge branch 'for-3.11-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata · 89b53e50
      Linus Torvalds authored
      Pull libata fixes from Tejun Heo:
       "This contains three commits all of which are updates for specific
        devices which aren't too widespread.  Pretty limited scope and nothing
        too interesting or dangerous"
      
      * 'for-3.11-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
        sata_fsl: save irqs while coalescing
        libata: apply behavioral quirks to sil3826 PMP
        sata, highbank: fix ordering of SGPIO signals
      89b53e50
    • Linus Torvalds's avatar
      Merge branch 'for-3.11-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · e2982a04
      Linus Torvalds authored
      Pull cgroup fix from Tejun Heo:
       "A late fix for cgroup.
      
        This fixes a behavior regression visible to userland which was created
        by a commit merged during -rc1.  While the behavior change isn't too
        likely to be noticeable, the fix is relatively low risk and we'll need
        to backport it through -stable anyway if the bug gets released"
      
      * 'for-3.11-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cpuset: fix a regression in validating config change
      e2982a04
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · f07823e1
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Ben was on holidays for a week so a few nouveau regression fixes
        backed up, but they all seem necessary.
      
        Otherwise one i915 and one gma500 fix"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        gma500: Fix SDVO turning off randomly
        drm/nv04/disp: fix framebuffer pin refcounting
        drm/nouveau/mc: fix race condition between constructor and request_irq()
        drm/nouveau: fix reclocking on nv40
        drm/nouveau/ltcg: fix allocating memory as free
        drm/nouveau/ltcg: fix ltcg memory initialization after suspend
        drm/nouveau/fb: fix null derefs in nv49 and nv4e init
        drm/i915: Invalidate TLBs for the rings after a reset
      f07823e1
    • Anatolij Gustschin's avatar
      usb: phy: fix build breakage · 52d5b9ab
      Anatolij Gustschin authored
      Commit 94ae9843 (usb: phy: rename all phy drivers to phy-$name-usb.c)
      renamed drivers/usb/phy/otg_fsm.h to drivers/usb/phy/phy-fsm-usb.h
      but changed drivers/usb/phy/phy-fsm-usb.c to include not existing
      "phy-otg-fsm.h" instead of new "phy-fsm-usb.h". This breaks building:
        ...
        drivers/usb/phy/phy-fsm-usb.c:32:25: fatal error: phy-otg-fsm.h: No such file or directory
        compilation terminated.
        make[3]: *** [drivers/usb/phy/phy-fsm-usb.o] Error 1
      
      This commit also missed to modify drivers/usb/phy/phy-fsl-usb.h
      to include new "phy-fsm-usb.h" instead of "otg_fsm.h" resulting
      in another build breakage:
        ...
        In file included from drivers/usb/phy/phy-fsl-usb.c:46:0:
        drivers/usb/phy/phy-fsl-usb.h:18:21: fatal error: otg_fsm.h: No such file or directory
        compilation terminated.
        make[3]: *** [drivers/usb/phy/phy-fsl-usb.o] Error 1
      
      Fix both issues.
      Signed-off-by: default avatarAnatolij Gustschin <agust@denx.de>
      Cc: stable <stable@vger.kernel.org> # 3.10+
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      52d5b9ab
    • Alan Stern's avatar
      USB: OHCI: add missing PCI PM callbacks to ohci-pci.c · 9a11899c
      Alan Stern authored
      Commit c1117afb (USB: OHCI: make ohci-pci a separate driver)
      neglected to preserve the entries for the pci_suspend and pci_resume
      driver callbacks.  As a result, OHCI controllers don't work properly
      during suspend and after hibernation.
      
      This patch adds the missing callbacks to the driver.
      Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
      Reported-and-tested-by: default avatarSteve Cotton <steve@s.cotton.clara.co.uk>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      9a11899c
    • Ian Abbott's avatar
      staging: comedi: bug-fix NULL pointer dereference on failed attach · 3955dfa8
      Ian Abbott authored
      Commit dcd7b8bd ("staging: comedi: put
      module _after_ detach" by myself) reversed a couple of calls in
      `comedi_device_attach()` when recovering from an error returned by the
      low-level driver's 'attach' handler.  Unfortunately, that introduced a
      NULL pointer dereference bug as `dev->driver` is NULL after the call to
      `comedi_device_detach()`.   We still have a pointer to the low-level
      comedi driver structure in the `driv` variable, so use that instead.
      Signed-off-by: default avatarIan Abbott <abbotti@mev.co.uk>
      Cc: <stable@vger.kernel.org> # 3.10+
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      3955dfa8
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 41a00f79
      Linus Torvalds authored
      Merge networking fixes from David Miller:
      
       1) Revert Johannes Berg's genetlink locking fix, because it causes
          regressions.
      
          Johannes and Pravin Shelar are working on fixing things properly.
      
       2) Do not drop ipv6 ICMP messages without a redirected header option,
          they are legal.  From Duan Jiong.
      
       3) Missing error return propagation in probing of via-ircc driver.
          From Alexey Khoroshilov.
      
       4) Do not clear out broadcast/multicast/unicast/WOL bits in r8169 when
          initializing, from Peter Wu.
      
       5) realtek phy driver programs wrong interrupt status bit, from
          Giuseppe CAVALLARO.
      
       6) Fix statistics regression in AF_PACKET code, from Willem de Bruijn.
      
       7) Bridge code uses wrong bitmap length, from Toshiaki Makita.
      
       8) SFC driver uses wrong indexes to look up MAC filters, from Ben
          Hutchings.
      
       9) Don't pass stack buffers into usb control operations in hso driver,
          from Daniel Gimpelevich.
      
      10) Multiple ipv6 fragmentation headers in one packet is illegal and
          such packets should be dropped, from Hannes Frederic Sowa.
      
      11) When TCP sockets are "repaired" as part of checkpoint/restart, the
          timestamp field of SKBs need to be refreshed otherwise RTOs can be
          wildly off.  From Andrey Vagin.
      
      12) Fix memcpy args (uses 'address of pointer' instead of 'pointer') in
          hostp driver.  From Dan Carpenter.
      
      13) nl80211hdr_put() doesn't return an ERR_PTR, but some code believes
          it does.  From Dan Carpenter.
      
      14) Fix regression in wireless SME disconnects, from Johannes Berg.
      
      15) Don't use a stack buffer for DMA in zd1201 USB wireless driver, from
          Jussi Kivilinna.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (33 commits)
        ipv4: expose IPV4_DEVCONF
        ipv6: handle Redirect ICMP Message with no Redirected Header option
        be2net: fix disabling TX in be_close()
        Revert "genetlink: fix family dump race"
        hso: Fix stack corruption on some architectures
        hso: Earlier catch of error condition
        sfc: Fix lookup of default RX MAC filters when steered using ethtool
        bridge: Use the correct bit length for bitmap functions in the VLAN code
        packet: restore packet statistics tp_packets to include drops
        net: phy: rtl8211: fix interrupt on status link change
        r8169: remember WOL preferences on driver load
        via-ircc: don't return zero if via_ircc_open() failed
        macvtap: Ignore tap features when VNET_HDR is off
        macvtap: Correctly set tap features when IFF_VNET_HDR is disabled.
        macvtap: simplify usage of tap_features
        tcp: set timestamps for restored skb-s
        bnx2x: set VF DMAE when first function has 0 supported VFs
        bnx2x: Protect against VFs' ndos when SR-IOV is disabled
        bnx2x: prevent VF benign attentions
        bnx2x: Consider DCBX remote error
        ...
      41a00f79
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew Morton) · 3db0d4de
      Linus Torvalds authored
      Merge fixes from Andrew Morton:
       "A few fixes.  One is a licensing change and I don't do licensing, so
        please eyeball that one"
      
      Licensing eye-balled.
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        lib/lz4: correct the LZ4 license
        memcg: get rid of swapaccount leftovers
        nilfs2: fix issue with counting number of bio requests for BIO_EOPNOTSUPP error detection
        nilfs2: remove double bio_put() in nilfs_end_bio_write() for BIO_EOPNOTSUPP error
        drivers/platform/olpc/olpc-ec.c: initialise earlier
      3db0d4de
    • Richard Laager's avatar
      lib/lz4: correct the LZ4 license · ee8a99bd
      Richard Laager authored
      The LZ4 code is listed as using the "BSD 2-Clause License".
      Signed-off-by: default avatarRichard Laager <rlaager@wiktel.com>
      Acked-by: default avatarKyungsik Lee <kyungsik.lee@lge.com>
      Cc: Chanho Min <chanho.min@lge.com>
      Cc: Richard Yao <ryao@gentoo.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      [ The 2-clause BSD can be just converted into GPL, but that's rude and
        pointless, so don't do it   - Linus ]
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ee8a99bd