1. 15 Aug, 2016 6 commits
    • Daniel Wagner's avatar
      iio: adc: Use complete() instead of complete_all() · cba4985e
      Daniel Wagner authored
      There is only one waiter for the completion, therefore there
      is no need to use complete_all(). Let's make that clear by
      using complete() instead of complete_all().
      
      The usage pattern of the completion is:
      
      waiter context                          waker context
      
      nau7802_read_irq()
        reinit_completion()
        nau7802_read_conversion()
        wait_for_completion_interruptible_timeout()
      
                                              nau7802_eoc_trigger()
                                                complete()
      Signed-off-by: default avatarDaniel Wagner <daniel.wagner@bmw-carit.de>
      Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
      cba4985e
    • Alison Schofield's avatar
      iio: accel: bma180: use iio helper function to guarantee direct mode · b75b58b4
      Alison Schofield authored
      Replace the code that guarantees the device stays in direct mode
      with iio_device_claim_direct_mode() which does same.
      Signed-off-by: default avatarAlison Schofield <amsfield22@gmail.com>
      Cc: Daniel Baluta <daniel.baluta@gmail.com>
      Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
      b75b58b4
    • Alison Schofield's avatar
      iio: humidity: hdc100x: add HDC1000 and HDC1008 to Kconfig · ca1902ff
      Alison Schofield authored
      hdc100x supports Texas Instruments HDC1000 and HDC1008 relative
      humidity and temperature sensors. Add these product names to
      Kconfig.
      Signed-off-by: default avatarAlison Schofield <amsfield22@gmail.com>
      Cc: Daniel Baluta <daniel.baluta@gmail.com>
      Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
      ca1902ff
    • Christophe JAILLET's avatar
      iio: light: us5182d: Add missing error code assignment before test · 281269f8
      Christophe JAILLET authored
      It is likely that checking the result of 'pm_runtime_set_active' is
      expected here.
      
      Fixes: f0e5f57d ("iio: light: us8152d: Add power management support")
      Signed-off-by: default avatarChristophe JAILLET <christophe.jaillet@wanadoo.fr>
      Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
      281269f8
    • Linus Walleij's avatar
      iio: magn: add a driver for AK8974 · 7c94a8b2
      Linus Walleij authored
      This adds a driver for the Asahi Kasei AK8974 and its sibling
      AMI305 magnetometers. It was deployed on scale in 2009 on a
      multitude of devices. It is distincly different from AK8973
      and AK8975 and needs its own driver.
      
      This patch is based on the long lost work of Samu Onkalo at Nokia,
      who made a misc character device driver for the Maemo/MeeGo Nokia
      devices, before the time of the IIO subsystem. It was mounted in e.g.
      the Nokia N950, N8, N86, N97 etc. It is also mounted on the
      ST-Ericsson HREF reference designs.
      
      It works nicely in sysfs:
      
      $ cat in_magn_x_raw && cat in_magn_y_raw && cat in_magn_z_raw
      -55
      -101
      161
      
      And with buffered reads using a simple HRTimer trigger:
      $ generic_buffer -c10 -a -n ak8974 -t foo
      iio device number being used is 3
      iio trigger number being used is 2
      No channels are enabled, enabling all channels
      Enabling: in_magn_x_en
      Enabling: in_magn_y_en
      Enabling: in_magn_z_en
      Enabling: in_timestamp_en
      /sys/bus/iio/devices/iio:device3 foo
      -58.000000 -102.000000 157.000000 946684970985321044
      -60.000000 -98.000000 159.000000 946684971012237548
      -60.000000 -106.000000 163.000000 946684971032257080
      -62.000000 -94.000000 169.000000 946684971052185058
      -58.000000 -98.000000 163.000000 946684971072204589
      -54.000000 -100.000000 163.000000 946684971092224121
      -53.000000 -103.000000 164.000000 946684971112731933
      -50.000000 -102.000000 165.000000 946684971132232666
      -61.000000 -101.000000 164.000000 946684971152191162
      -57.000000 -99.000000 168.000000 946684971172210693
      Disabling: in_magn_x_en
      Disabling: in_magn_y_en
      Disabling: in_magn_z_en
      Disabling: in_timestamp_en
      
      I cannot currently scale these raw values to gauss. This is
      because of lack of documentation. I have sent a request for
      a datasheet to Asahi Kasei.
      
      The driver can optionally use a DRDY line IRQ to capture data,
      else it will sleep and poll.
      
      Cc: Samu Onkalo <samu.onkalo@intel.com>
      Cc: Sebastian Reichel <sre@kernel.org>
      Cc: Peter Meerwald-Stadler <pmeerw@pmeerw.net>
      Tested-By: default avatarSebastian Reichel <sre@kernel.org>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
      7c94a8b2
    • Linus Walleij's avatar
      iio: magn: DT bindings for AK8974 · bcdf177d
      Linus Walleij authored
      This adds device tree bindings for the AK8974 magnetometer, similar
      to those for the AK8975.
      
      Cc: devicetree@vger.kernel.org
      Cc: Samu Onkalo <samu.onkalo@intel.com>
      Cc: Sebastian Reichel <sre@kernel.org>
      Cc: Peter Meerwald-Stadler <pmeerw@pmeerw.net>
      Acked-by: default avatarRob Herring <robh@kernel.org>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
      bcdf177d
  2. 24 Jul, 2016 5 commits
  3. 10 Jul, 2016 14 commits
  4. 05 Jul, 2016 2 commits
  5. 04 Jul, 2016 10 commits
  6. 03 Jul, 2016 3 commits