1. 09 Mar, 2015 8 commits
  2. 08 Mar, 2015 3 commits
  3. 07 Mar, 2015 1 commit
  4. 25 Feb, 2015 3 commits
    • Srinivas Pandruvada's avatar
      iio: imu: inv_mpu6050: Create mux clients for ACPI · a35c5d1a
      Srinivas Pandruvada authored
      This is a follow up patches after adding i2c mux adapter for bypass
      mode. Potentially many different types of sensor can be attached to
      INVMPU6XXX device, which can be connected to main cpu i2c bus in
      bypass mode.
      Why do we need this?
      The system ACPI table entry will consist of only one device for
      INV6XXX, assuming that this driver will handle all connected sensors.
      That is not true for the Linux driver. There are bunch of IIO drivers
      for each sensors, hence we created a mux on this device. So to load
      these additional drivers, we need to create i2c devices for them
      in this driver using this mux adapter.
      
      There are multiple options:
      1. Use the auto detect feature, this needs a new i2c class for the
      adapter as the existing HWMON class is not acceptable. Also the
      autodetect has overhead of executing detect method for each
      matching class of adapters.
      This is a simple implementation. This option was previously submitted
      with not a happy feedback.
      
      2. Option is use ACPI magic and parse the configuration data. What
      we need to create a i2c device at a minimum is address and a name.
      Address can be obtained for secondary device in more or less in a
      standard way from using _CRS element. But there is no name. To get
      name we need to process proprietary vendor data. Not having name is
      not fun, as you have to create device using the device name of
      INVN6XXXX, respecting driver duplicate name space restriction.
      Also each client driver needs to have this name in the id table.
      Since multiple driver can be loaded, the driver should be able to
      detect its presence and gracefully exit for the other client driver
      to take it over.
      So we use two step process:
      - Use DMI to id platform and parse propritery data. This is not uncommon
      for many x86 platform specific driver. We will get both name and address.
      The change created necessary infrastructure to add more properitery vendor
      data parsing.
      - If DMI match fails, then create device on INV6XXX-client (we can't
      create with same name as INV6XXX as it will cause duplicate name and driver
      model will reject.) With this each client sensor driver which needs to get
      attached via INV6XXXX, need this name in the id table and detect the
      physical presence of sensor in probe and exit if not found.
      Signed-off-by: default avatarSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
      Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
      a35c5d1a
    • Krzysztof Kozlowski's avatar
      iio: jsa1212: Constify struct regmap_config · 9820d883
      Krzysztof Kozlowski authored
      The regmap_config struct may be const because it is not modified by the
      driver and regmap_init() accepts pointer to const.
      Signed-off-by: default avatarKrzysztof Kozlowski <k.kozlowski@samsung.com>
      Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
      9820d883
    • Krzysztof Kozlowski's avatar
      staging:iio:hmc5843: Constify register tables and struct regmap_config · 15313309
      Krzysztof Kozlowski authored
      The regmap_access_table and regmap_config structures may be const
      because they are not modified by the driver and regmap_init() accepts
      pointer to const.
      Signed-off-by: default avatarKrzysztof Kozlowski <k.kozlowski@samsung.com>
      Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
      15313309
  5. 22 Feb, 2015 1 commit
  6. 21 Feb, 2015 1 commit
  7. 14 Feb, 2015 2 commits
  8. 08 Feb, 2015 7 commits
  9. 04 Feb, 2015 2 commits
  10. 03 Feb, 2015 3 commits
  11. 02 Feb, 2015 2 commits
  12. 01 Feb, 2015 5 commits
    • Linus Torvalds's avatar
      Merge tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · fba7e994
      Linus Torvalds authored
      Pull ARM SoC fixes from Olof Johansson:
       "One more week's worth of fixes.  Worth pointing out here are:
      
         - A patch fixing detaching of iommu registrations when a device is
           removed -- earlier the ops pointer wasn't managed properly
         - Another set of Renesas boards get the same GIC setup fixup as
           others have in previous -rcs
         - Serial port aliases fixups for sunxi.  We did the same to tegra but
           we caught that in time before the merge window due to more machines
           being affected.  Here it took longer for anyone to notice.
         - A couple more DT tweaks on sunxi
         - A follow-up patch for the mvebu coherency disabling in last -rc
           batch"
      
      * tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        arm: dma-mapping: Set DMA IOMMU ops in arm_iommu_attach_device()
        ARM: shmobile: r8a7790: Instantiate GIC from C board code in legacy builds
        ARM: shmobile: r8a73a4: Instantiate GIC from C board code in legacy builds
        ARM: mvebu: don't set the PL310 in I/O coherency mode when I/O coherency is disabled
        ARM: sunxi: dt: Fix aliases
        ARM: dts: sun4i: Add simplefb node with de_fe0-de_be0-lcd0-hdmi pipeline
        ARM: dts: sun6i: ippo-q8h-v5: Fix serial0 alias
        ARM: dts: sunxi: Fix usb-phy support for sun4i/sun5i
      fba7e994
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 3441456b
      Linus Torvalds authored
      Pull input layer updates from Dmitry Torokhov:
       "Just a few quirks for PS/2 this time"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: elantech - add more Fujtisu notebooks to force crc_enabled
        Input: i8042 - add noloop quirk for Medion Akoya E7225 (MD98857)
        Input: synaptics - adjust min/max for Lenovo ThinkPad X1 Carbon 2nd
      3441456b
    • Linus Torvalds's avatar
      sched: don't cause task state changes in nested sleep debugging · 00845eb9
      Linus Torvalds authored
      Commit 8eb23b9f ("sched: Debug nested sleeps") added code to report
      on nested sleep conditions, which we generally want to avoid because the
      inner sleeping operation can re-set the thread state to TASK_RUNNING,
      but that will then cause the outer sleep loop not actually sleep when it
      calls schedule.
      
      However, that's actually valid traditional behavior, with the inner
      sleep being some fairly rare case (like taking a sleeping lock that
      normally doesn't actually need to sleep).
      
      And the debug code would actually change the state of the task to
      TASK_RUNNING internally, which makes that kind of traditional and
      working code not work at all, because now the nested sleep doesn't just
      sometimes cause the outer one to not block, but will cause it to happen
      every time.
      
      In particular, it will cause the cardbus kernel daemon (pccardd) to
      basically busy-loop doing scheduling, converting a laptop into a heater,
      as reported by Bruno Prémont.  But there may be other legacy uses of
      that nested sleep model in other drivers that are also likely to never
      get converted to the new model.
      
      This fixes both cases:
      
       - don't set TASK_RUNNING when the nested condition happens (note: even
         if WARN_ONCE() only _warns_ once, the return value isn't whether the
         warning happened, but whether the condition for the warning was true.
         So despite the warning only happening once, the "if (WARN_ON(..))"
         would trigger for every nested sleep.
      
       - in the cases where we knowingly disable the warning by using
         "sched_annotate_sleep()", don't change the task state (that is used
         for all core scheduling decisions), instead use '->task_state_change'
         that is used for the debugging decision itself.
      
      (Credit for the second part of the fix goes to Oleg Nesterov: "Can't we
      avoid this subtle change in behaviour DEBUG_ATOMIC_SLEEP adds?" with the
      suggested change to use 'task_state_change' as part of the test)
      Reported-and-bisected-by: default avatarBruno Prémont <bonbons@linux-vserver.org>
      Tested-by: default avatarRafael J Wysocki <rjw@rjwysocki.net>
      Acked-by: default avatarOleg Nesterov <oleg@redhat.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Thomas Gleixner <tglx@linutronix.de>,
      Cc: Ilya Dryomov <ilya.dryomov@inktank.com>,
      Cc: Mike Galbraith <umgwanakikbuti@gmail.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Peter Hurley <peter@hurleysoftware.com>,
      Cc: Davidlohr Bueso <dave@stgolabs.net>,
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      00845eb9
    • Rainer Koenig's avatar
      Input: elantech - add more Fujtisu notebooks to force crc_enabled · 47c1ffb2
      Rainer Koenig authored
      Add two more Fujitsu LIFEBOOK models that also ship with the Elantech
      touchpad and don't work with crc_disabled to the quirk list.
      Signed-off-by: default avatarRainer Koenig <Rainer.Koenig@ts.fujitsu.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarDmitry Torokhov <dmitry.torokhov@gmail.com>
      47c1ffb2
    • Olof Johansson's avatar
      Merge tag 'renesas-soc-fixes3-for-v3.19' of... · 28111dda
      Olof Johansson authored
      Merge tag 'renesas-soc-fixes3-for-v3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into fixes
      
      Merge "Third Round of Renesas ARM Based SoC Fixes for v3.19" from Simon Horman:
      
      * Instantiate GIC from C board code in legacy builds on r8a7790 and r8a73a4
      
      * tag 'renesas-soc-fixes3-for-v3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
        ARM: shmobile: r8a7790: Instantiate GIC from C board code in legacy builds
        ARM: shmobile: r8a73a4: Instantiate GIC from C board code in legacy builds
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      28111dda
  13. 31 Jan, 2015 2 commits
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 788807d7
      Linus Torvalds authored
      Pull i2c fixes from Wolfram Sang:
       "i2c driver bugfixes (s3c2410, slave-eeprom, sh_mobile), size
        regression "bugfix" (i2c slave), documentation bugfix (st).
      
        Also, one documentation update (da9063), so some devicetrees can now
        be verified"
      
      * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        i2c: sh_mobile: terminate DMA reads properly
        i2c: Only include slave support if selected
        i2c: s3c2410: fix ABBA deadlock by keeping clock prepared
        i2c: slave-eeprom: fix boundary check when using sysfs
        i2c: st: Rename clock reference to something that exists
        DT: i2c: Add devices handled by the da9063 MFD driver
      788807d7
    • Greg Kroah-Hartman's avatar
      Merge tag 'iio-for-3.20b' of... · 89c46826
      Greg Kroah-Hartman authored
      Merge tag 'iio-for-3.20b' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-testing
      
      Jonathan writes:
      
      Second round of IIO new drivers, functionality and cleanups for the 3.20 cycle.
      
      New drivers and device support:
      * Capella cm3232 ambient light sensor driver.
      * Freescale MMA9553 pedometer and activity monitor. Note this involved a
        refactor of the mma9551 driver to pull out shared elements.
      * Samsung sensor hub (as used in the galaxy gear 2 watch) Core support
        and initial drivers (gyro and accelerometer) more to follow.
        An additional fix was applied on top of this for a build issue
        thrown up by the autobuilders on some platforms.
      * Cosmic Circuits 10001 ADC driver
      * Qualcomm SPMI PMIC voltage ADC driver (current adc merged a while back).
      * Add binding for AK8963 (in capitals) as unfortunately there are bios'
        out there not using lower case.
      
      New functionality
      * Add newe operating mode to the core to allow for non triggered software
        buffers.  This is mostly semantics as previously drivers just claimed they
        had a hardware buffer (when they didn't).
      * Add distance channel type.
      * Add energy channel type.
      * Add velocity channel type and IIO_MOD_ROOT_SUM_SQUARED (i.e. speed when
        our channel type is velocity).
      * Add _debounce_count and _debounce_time filter attributes.  Only really
        make sense for counting types of measurements.  First use is for avoiding
        miss detection of steps prior to walking.
      * Add change event type.   This replaces the briefly present INSTANCE type
        (which hadn't gained any users).  It is more generic as it allows for
        events say every 10 steps rather than every step.
      * Add _calibweight attributes to the ABI (and core support).  Used by
        activity monitors to estimate energy use.  Can imagine there will be
        other uses for this one.
      
      Driver new functionality
      * mma9551 gains runtime pm support.
      * hid-sensors gain PM support.
      
      Cleanup
      * Change calibheight unit to m from cm.  As there are no prior users
        and this was inconsistent with other distance units, it makes sense
        to fix it before hte mma9553 driver which uses it.
      * mpu6050 cleanups and devm_ use.
      * as3935 switch over to PM ops.
      * Fix a few format strings for signed vs unsigned.
      * Fix tcs3414 missindentation
      * Typo in industrialio-event
      * Stop requiring IIO_TRIGGER for IIO_KFIFO_BUF as we have drivers that don't
        need it. No one is quite sure why that dependency was there and it
        seems to not matter.
      89c46826