1. 21 Mar, 2020 14 commits
  2. 20 Mar, 2020 10 commits
  3. 19 Mar, 2020 14 commits
  4. 18 Mar, 2020 2 commits
    • Greg Kroah-Hartman's avatar
      Merge tag 'iio-5.7a' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next · 281d90e2
      Greg Kroah-Hartman authored
      Jonathan writes:
      
      First set of new IIO device support, fatures and cleanups for the 5.7 cycle
      
      Includes changes for the counter subsystem
      
      Core Feature
      * Explicitly handle sysfs values in dB, including correctly handling the
        needed postfix dB.
      * Add a TODO to suggest suitable activities for new contributors to IIO now
        the vast majority of drivers are out of staging (and the remaining ones
        there are 'hard'). Also update the TODO in staging to remove stale entries.
      
      Staging graduations
      * ad7192 ADC.
      
      New device support
      * ad5770r
        - New driver for this 6 channel DAC including DT bindings.
      * ad8366
        - Add supprot for the hmc1119 attenuator.
      * al3010
        - New driver supporting this Dyna-image light sensors.
        - Power management and DT bindings added in additional patches.
      * atlas-sensor
        - Add support for atlas DO-SM device.  Reads disolved oxygen in a solution.
      * gpap002x00f
        - New driver and bindings to support the GP2AP002A00F and GP2AP002S00F light
          and proximity sensors. There is some limited existing support in
          input.  The intent is to drop this driver once IIO driver is in place.
      * hmc425a
        - New driver for this attenuator.
      * icp10100
        - New driver for this presure sensor.
      * ltc2632
        - Add support for the ltc2636 8 channel DAC. Includes bindings and some
          tidying up of the driver.
      * inv_mpu6050
        - Support IAM20680, ICM20609, ICM20689 and ICM20690.
          Includes related tidy up and rework of low pass filter bandwidth
          handling to give suitable values for all chips.
      
      Binding conversions to yaml or missing bindings docs.
      * atlas-sensor, including consolidation of previous 3 separate docs into 1.
      * ad7923, previously no doc.
      * max1363, split into max1238 and max1363 to simplify yaml.
      * stm32-adc
      
      Features
      * (counter) 104-quad-8
        - Support a filter clock prescaler.
        - Support reporting of encoder cable status.
      * ad7124
        - Low pass filter support.
        - Debugfs interface to access registers directly.
      * ad8366
        - Support control of hardware gain.
      * inv_mpu6050
        - Runtime pm with autosuspend.
      * npcm adc
        - Add reset support. This is a breaking change if DT is not in sync,
          however this device is a BMC so the ecosystem is closed enought that
          this should not be a problem.
      * srf04
        - Add power management with DT bindings for the GPIO.
      * stm32-timer-trigger
        - Power management.
      * (counter) stm32-timer-cnt
        - Power management.
      * vcnl4000
        - Enable runtime PM for devices that don't use on demand measurement.
      
      Cleanups and minor fixes
      * core
        - Avoid double read when using debugfs.  Whilst we provide no guarantees
          on lack of side effects using the debugfs interfaces, this one is
          generate unexpected results so let us tidy it up.
      * dac/Kconfig
        - Alphabetic order.
      * ad5755
        - Grammar and minor other fixes.
      * ad7124
        - Fail probe if get_voltage fails as no meaningful readings can be had
          without knowing the external reference.
        - Switch to selection between different channel attributes rather than
          building the arrays at runtime.
        - Remove the spi_device_id table as the driver cannot be probled without
          more information that can be provided without dt.
        - Update sysfs docs to provide more inormation and bring remaining docs for
          this part out of staging.
      * ad9292
        - Use new SPI transfer delay structure.
      * adis library
        - Add unlocked version of adis_initial_startup and refactor the function.
        - Add a product ID santiy check.
        - Add support for different self test registers.
        - Use new SPI delay structure.
        - Add new docs and tidy up existing.
      * adis16136
        - Initialize adis_data statically.
      * adis16400
        - Initialize adis_data statically.
      * adis16460
        - Use core __adis_initial_Startup now it supports everything needed.
      * adis16480
        - Initialize adis_data statically.
        - Use core __adis_initial_startup now it supports everything needed.
      * al3320a
        - Add missing DT binding docs.
        - Tidy up code formatting.
        - Simplify error paths using devm_add_action_or_reset.
        - Ensure autoloading works by adding the of_match_table.
      * atlas-sensor
        - Drop false requirement for interrupt line, the value can be polled using
          a sysfs or hrtimer type trigger.
      * exynos-adc
        - Silence warning message on deferring probe.
      * gp2ap002
        - Greatly simplify the Lux LUT.
        - Reorder actions around buffer setup and tear down as part of a sub-system
          wide standardization of these.
      * inv_mpu6050
        - Various lttle tidyups.
        - Simpliy I2C aux MUX handling by enabling it only at startup. It never
          needs to be disabled.
        - Simplify polling rate when magnetometer enabled by putting only under
          control of userspace.
        - Always execute full reset on devices supporting spi. It does no harm
          when using i2c and makes for simpler code.
        - Reduce over the top sleep times for vddio regulator power up.
        - Greatly simplify power and engine management.
        - Fix some delays in polled reads (only visible due to other changes)
        - Stop preventing sampling rate changes whilst running as there is no
          adverse consequence of doing so.
        - Prevent attempting to read the temperature if neither accel nor
          gyro is enabled.
      * lmp9100
        - Reorder actions around buffer setup and tear down as part of a sub-system
          wide standardization of these.
      * max1118
        - Use new SPI transfer delay structure.
      * mcp320x
        - Use new SPI transfer delay structure.
      * si1133
        - Read full 24 bit signed integer instead o dropping last 8 bits of value.
          Not a critical fix as just adds precision.
      * st_sensors
        - Use st_sensors_dev_name_probe instead of open coded version in st_accel
        - Handle potential memory allocation failure.
      * st_lsm6dsx
        - Fix some wrong structure element naming in documentation.
        - Add missing return value check.
      * stm32_timer_cnt
        - Drop some unused left over IIO headers from this count subsystem driver.
        - Ensure the clock is enabled in master mode.  Theoretical issue rather
          than one known to happen in the wild.
      * tlc4541
        - Use new SPI delay structure.
      
      * tag 'iio-5.7a' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio: (98 commits)
        iio: dac: Kconfig: sort symbols alphabetically
        iio: light: gp2ap020a00f: fix iio_triggered_buffer_{predisable,postenable} positions
        iio: potentiostat: lmp9100: fix iio_triggered_buffer_{predisable,postenable} positions
        iio: trigger: stm32-timer: add power management support
        iio: trigger: stm32-timer: rename enabled flag
        iio: add a TODO
        counter: 104-quad-8: Support Differential Encoder Cable Status
        counter: 104-quad-8: Support Filter Clock Prescaler
        iio: pressure: icp10100: add driver for InvenSense ICP-101xx
        iio: industrialio-core: Fix debugfs read
        iio: imu: adis: add a note better explaining state_lock
        iio: imu: adis: update 'adis_data' struct doc-string
        iio: imu: adis: add doc-string for 'adis' struct
        iio: imu: adis_buffer: Use new structure for SPI transfer delays
        iio: adc: ti-tlc4541: Use new structure for SPI transfer delays
        iio: adc: mcp320x: Use new structure for SPI transfer delays
        iio: adc: max1118: Use new structure for SPI transfer delays
        iio: adc: ad9292: Use new structure for SPI transfer delays
        iio: adc: exynos: Silence warning about regulators during deferred probe
        staging: iio: update TODO
        ...
      281d90e2
    • Sergio Paracuellos's avatar
      staging: mt7621-pci: fix io space and properly set resource limits · 09dd629e
      Sergio Paracuellos authored
      Function 'mt7621_pci_parse_request_of_pci_ranges' is using
      'of_pci_range_to_resource' to get both mem and io resources.
      Internally this function calls to 'pci_address_to_pio' which
      returns -1 if io space address is an address > IO_SPACE_LIMIT
      which is 0xFFFF for mips. This mt7621 soc has io space in physical
      address 0x1e160000. In order to fix this, overwrite invalid io
      0xffffffff  with properly values from the device tree and set
      mapped address of this resource as io port base memory address
      calling 'set_io_port_base' function. There is also need to properly
      setup resource limits and io and memory windows with properly
      parsed values instead of set them as 'no limit' which it is wrong.
      For any reason I don't really know legacy driver sets up mem window
      as 0xFFFFFFFF and any other value seems to does not work as expected,
      so set up also here with same values.
      Signed-off-by: default avatarSergio Paracuellos <sergio.paracuellos@gmail.com>
      Link: https://lore.kernel.org/r/20200318094445.19669-1-sergio.paracuellos@gmail.comSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      09dd629e