1. 29 1月, 2017 2 次提交
  2. 28 1月, 2017 3 次提交
    • W
      iio: stx104: Utilize devm_ functions in driver probe callback · b2d226ca
      William Breathitt Gray 提交于
      The devm_ resource manager functions allow memory to be automatically
      released when a device is unbound. This patch takes advantage of the
      resource manager functions and replaces the gpiochip_add_data call and
      iio_device_register call with the devm_gpiochip_add_data call and
      devm_iio_device_register call respectively. In addition, the
      stx104_remove function has been removed as no longer necessary due to
      the use of the relevant devm_ resource manager functions.
      Signed-off-by: NWilliam Breathitt Gray <vilhelm.gray@gmail.com>
      Signed-off-by: NJonathan Cameron <jic23@kernel.org>
      b2d226ca
    • M
      iio: adc: add a driver for the SAR ADC found in Amlogic Meson SoCs · 3adbf342
      Martin Blumenstingl 提交于
      This adds support for the SAR (Successive Approximation Register) ADC
      on the Amlogic Meson SoCs.
      
      The code is based on the public S805 (Meson8b) and S905 (GXBB)
      datasheets (see [0] and [1]), as well as by reading (various versions
      of) the vendor driver and by inspecting the registers on the vendor
      kernels of my testing-hardware.
      
      Currently the GXBB, GXL and GXM SoCs are supported. GXBB hardware has
      10-bit ADC resolution, while GXL and GXM have 12-bit ADC resolution.
      The code was written to support older SoCs (Meson8 and Meson8b) as well,
      but due to lack of actual testing-hardware no of_device_id was added for
      these.
      
      Two "features" from the vendor driver are currently missing:
      - the vendor driver uses channel #7 for calibration (this improves the
        accuracy of the results - in my tests the results were less than 3%
        off without calibration compared to the vendor driver). Adding support
        for this should be easy, but is not required for most applications.
      - channel #6 is connected to the SoCs internal temperature sensor.
        Adding support for this is probably not so easy since (based on the
        u-boot sources) most SoC versions are using different registers and
        algorithms for the conversion from "ADC value" to temperature.
      
      Supported by the hardware but currently not supported by the driver:
      - reading multiple channels at the same time (the hardware has a FIFO
        buffer which stores multiple results)
      - continuous sampling (this would require a way to enable this
        individually because otherwise the ADC would be drawing power
        constantly)
      - interrupt support (similar to the vendor driver this new driver is
        polling the results. It is unclear if the IRQ-mode is supported on
        older (Meson6 or Meson8) hardware as well or if there are any errata)
      
      [0]
      http://dn.odroid.com/S805/Datasheet/S805_Datasheet%20V0.8%2020150126.pdf
      [1] http://dn.odroid.com/S905/DataSheet/S905_Public_Datasheet_V1.1.4.pdfSigned-off-by: NMartin Blumenstingl <martin.blumenstingl@googlemail.com>
      Tested-by: NNeil Armstrong <narmstrong@baylibre.com>
      Signed-off-by: NJonathan Cameron <jic23@kernel.org>
      3adbf342
    • M
      iio: adc: Add Renesas GyroADC driver · 059c53b3
      Marek Vasut 提交于
      Add IIO driver for the Renesas RCar GyroADC block. This block is a
      simple 4/8-channel ADC which samples 12/15/24 bits of data every
      cycle from all channels.
      Signed-off-by: NMarek Vasut <marek.vasut+renesas@gmail.com>
      Cc: Geert Uytterhoeven <geert+renesas@glider.be>
      Cc: Simon Horman <horms+renesas@verge.net.au>
      Cc: Jonathan Cameron <jic23@kernel.org>
      Cc: linux-renesas-soc@vger.kernel.org
      Cc: Wolfram Sang <wsa@the-dreams.de>
      Signed-off-by: NJonathan Cameron <jic23@kernel.org>
      059c53b3
  3. 22 1月, 2017 3 次提交
  4. 21 1月, 2017 1 次提交
  5. 15 1月, 2017 2 次提交
  6. 11 1月, 2017 7 次提交
  7. 31 12月, 2016 1 次提交
  8. 11 12月, 2016 2 次提交
  9. 03 12月, 2016 2 次提交
  10. 19 11月, 2016 2 次提交
  11. 13 11月, 2016 1 次提交
  12. 12 11月, 2016 1 次提交
  13. 06 11月, 2016 2 次提交
  14. 24 10月, 2016 1 次提交
  15. 09 10月, 2016 1 次提交
  16. 28 9月, 2016 3 次提交
  17. 25 9月, 2016 1 次提交
  18. 18 9月, 2016 1 次提交
    • J
      iio: adc: men_z188_adc: constify iio_info structures · 52ceb773
      Julia Lawall 提交于
      Check for iio_info structures that are only stored in the info field of a
      iio_dev structure.  This field is declared const, so iio_info structures
      that have this property can be declared as const also.
      
      The semantic patch that makes this change is as follows:
      (http://coccinelle.lip6.fr/)
      
      // <smpl>
      @r disable optional_qualifier@
      identifier i;
      position p;
      @@
      static struct iio_info i@p = { ... };
      
      @ok@
      identifier r.i;
      struct iio_dev e;
      position p;
      @@
      e.info = &i@p;
      
      @bad@
      position p != {r.p,ok.p};
      identifier r.i;
      struct iio_info e;
      @@
      e@i@p
      
      @depends on !bad disable optional_qualifier@
      identifier r.i;
      @@
      static
      +const
       struct iio_info i = { ... };
      // </smpl>
      
      The result of size on this file before the change is:
         text	      data     bss     dec         hex	  filename
         1529	       312       0    1841         731
         drivers/iio/adc/men_z188_adc.o
      
      and after the change it is:
         text	     data        bss	    dec	    hex	filename
         1689       168          0       1857     741
         drivers/iio/adc/men_z188_adc.o
      Signed-off-by: NJulia Lawall <Julia.Lawall@lip6.fr>
      Signed-off-by: NJonathan Cameron <jic23@kernel.org>
      52ceb773
  19. 06 9月, 2016 2 次提交
  20. 04 9月, 2016 1 次提交
    • W
      iio: stx104: Add IIO support for the ADC channels · 4075a283
      William Breathitt Gray 提交于
      The Apex Embedded Systems STX104 features 16 channels of single-ended (8
      channels of true differential) 16-bit analog input. Differential input
      configuration may be selected via a physical jumper on the device.
      Similarly, input polarity (unipolar/bipolar) is configured via a
      physical jumper on the device.
      
      Input gain selection is available to the user via software, thus
      allowing eight possible input ranges: +-10V, +-5V, +-2.5V, +-1.25V,
      0 to 10V, 0 to 5V, 0 to 2.5V, and 0 to 1.25V. Four input gain
      configurations are supported: x1, x2, x4, and x8.
      
      This ADC resolution is 16-bits (1/65536 of full scale). Analog input
      samples are taken on software trigger; neither FIFO sampling nor
      interrupt triggering is supported by this driver.
      
      The Apex Embedded Systems STX104 is primarily an analog-to-digital
      converter device. The STX104 IIO driver was initially placed in the DAC
      directory because only the DAC portion of the STX104 was supported at
      the time. Now that ADC support has been added to the STX104 IIO driver,
      the driver should be moved to the more appropriate ADC directory.
      Signed-off-by: NWilliam Breathitt Gray <vilhelm.gray@gmail.com>
      Signed-off-by: NJonathan Cameron <jic23@kernel.org>
      4075a283
  21. 03 9月, 2016 1 次提交