08 Apr, 2014

1 commit

  • Pull MFD updates from Lee Jones:
    "Changes to existing drivers:
    - Use of managed resources - omap, twl4030, ti_am335x_tscadc
    - Advanced error handling - omap
    - Rework clk management - omap
    - Device Tree (re-)work - tc3589x, pm8921, da9055, sec
    - IRC management overhaul and !BROKEN - pm8921
    - Convert to regmap - ssbi, pm8921
    - Use simple power-management ops - ucb1x00
    - Include file clean-up - adp5520, cs5535, janz, lpc_ich,
    - lpc_sch, max14577, mcp-sa11x0, pcf50633-adc, rc5t583,
    rdc321x-southbridge, retu, smsc-ece1099, ti-ssp, ti_am335x_tscadc,
    tps65912, vexpress-config, wm8350, ywm8350
    - Various bug fixes across the subsystem
    - NULL/invalid pointer dereference prevention
    - Resource leak mitigation,
    - Variable used initialised
    - Staticise various containers
    - Enforce return value checks

    New drivers/supported devices:
    - Add support for s2mps14 and s2mpa01 to sec
    - Add support for da9063 (v5) to da9063
    - Add support for atom-c2000 to gpio-ich
    - Add support for come-{mbt10,cbt6,chl6} to kempld
    - Add support for da9053 to da9052
    - Add support for itco-wdt (v3) and baytrail to lpc_ich
    - Add new drivers for tps65218, rtsx_usb, bcm590xx

    (Re-)moved drivers:
    - twl4030 ==> drivers/iio
    - ti-ssp ==> /dev/null"

    * tag 'mfd-for-linus-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (103 commits)
    mfd: wm5110: Correct default for HEADPHONE_DETECT_1
    mfd: arizona: Correct small errors in the DT binding documentation
    mfd: arizona: Mark DSP clocking register as volatile
    mfd: devicetree: bindings: Add pm8xxx RTC description
    mfd: kempld-core: Fix potential hang-up during boot
    mfd: sec-core: Fix uninitialized 'regmap_rtc' on S2MPA01
    mfd: tps65910: Fix regmap_irq_chip_data leak on mfd_add_devices fail
    mfd: tps65910: Fix possible invalid pointer dereference on regmap_add_irq_chip fail
    mfd: sec-core: Fix I2C dummy device resource leak on probe failure
    mfd: sec-core: Add of_compatible strings for clock MFD cells
    mfd: Remove obsolete ti-ssp driver
    Documentation: mfd: s2mps11: Describe S5M8767 and S2MPS14 clocks
    mfd: bcm590xx: Fix type argument for module device table
    mfd: lpc_ich: Add support for Intel Bay Trail SoC
    mfd: lpc_ich: Add support for NM10 GPIO
    mfd: lpc_ich: Change Avoton to iTCO v3
    watchdog: iTCO_wdt: Add support for v3 silicon
    mfd: lpc_ich: Add support for iTCO v3
    mfd: lpc_ich: Remove lpc_ich_cfg struct use
    mfd: lpc_ich: Only configure watchdog or GPIO when present
    ...

    Linus Torvalds
     

03 Apr, 2014

1 commit

  • Pull HID updates from Jiri Kosina:
    - substantial cleanup of the generic and transport layers, in the
    direction of an ultimate goal of making struct hid_device completely
    transport independent, by Benjamin Tissoires
    - cp2112 driver from David Barksdale
    - a lot of fixes and new hardware support (Dualshock 4) to hid-sony
    driver, by Frank Praznik
    - support for Win 8.1 multitouch protocol by Andrew Duggan
    - other smaller fixes / device ID additions

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (75 commits)
    HID: sony: fix force feedback mismerge
    HID: sony: Set the quriks flag for Bluetooth controllers
    HID: sony: Fix Sixaxis cable state detection
    HID: uhid: Add UHID_CREATE2 + UHID_INPUT2
    HID: hyperv: fix _raw_request() prototype
    HID: hyperv: Implement a stub raw_request() entry point
    HID: hid-sensor-hub: fix sleeping function called from invalid context
    HID: multitouch: add support for Win 8.1 multitouch touchpads
    HID: remove hid_output_raw_report transport implementations
    HID: sony: do not rely on hid_output_raw_report
    HID: cp2112: remove the last hid_output_raw_report() call
    HID: cp2112: remove various hid_out_raw_report calls
    HID: multitouch: add support of other generic collections in hid-mt
    HID: multitouch: remove pen special handling
    HID: multitouch: remove registered devices with default behavior
    HID: hidp: Add a comment that some devices depend on the current behavior of uniq
    HID: sony: Prevent duplicate controller connections.
    HID: sony: Perform a boundry check on the sixaxis battery level index.
    HID: sony: Fix work queue issues
    HID: sony: Fix multi-line comment styling
    ...

    Linus Torvalds
     

02 Apr, 2014

1 commit

  • Pull staging driver updates from Greg KH:
    "Here's the huge drivers/staging/ update for 3.15-rc1.

    Loads of cleanup fixes, a few drivers removed, and some new ones
    added.

    All have been in linux-next for a while"

    * tag 'staging-3.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (1375 commits)
    staging: xillybus: XILLYBUS_PCIE depends on PCI_MSI
    staging: xillybus: Added "select CRC32" for XILLYBUS in Kconfig
    staging: comedi: poc: remove obsolete driver
    staging: unisys: replace kzalloc/kfree with UISMALLOC/UISFREE
    staging: octeon-usb: prevent memory corruption
    staging: usbip: fix line over 80 characters
    staging: usbip: fix quoted string split across lines
    Staging: unisys: Remove RETINT macro
    Staging: unisys: Remove FAIL macro
    Staging: unisys: Remove RETVOID macro
    Staging: unisys: Remove RETPTR macro
    Staging: unisys: Remove RETBOOL macro
    Staging: unisys: Remove FAIL_WPOSTCODE_1 macro
    Staging: unisys: Cleanup macros to get rid of goto statements
    Staging: unisys: include: Remove unused macros from timskmod.h
    staging: dgap: fix the rest of the checkpatch warnings in dgap.c
    Staging: bcm: Remove unnecessary parentheses
    staging: wlags49_h2: Delete unnecessary braces
    staging: wlags49_h2: Do not use assignment in if condition
    staging: wlags49_h2: Enclose macro in a do-while loop
    ...

    Linus Torvalds
     

19 Mar, 2014

1 commit


18 Mar, 2014

1 commit


09 Mar, 2014

1 commit


07 Mar, 2014

1 commit

  • …/iio into staging-next

    Jonathan writes:

    Third IIO new drivers and cleanups series for 3.15.

    New driver
    * Xilinx XADC driver - This has been ready for a while but was awaiting
    a device tree ack (or as it turns out 3+ weeks).

    Cleanup
    * Drop some unreachable code from mag3110 highlighted by smatch.

    Fix
    * vf610 - introduced this cycle - put a possible negative error code
    into an unsigned long. Another smatch find - this one promoted by
    guilt that Dan was busy fixing all our messups.

    Greg Kroah-Hartman
     

03 Mar, 2014

3 commits


02 Mar, 2014

1 commit

  • The Xilinx XADC is a ADC that can be found in the series 7 FPGAs from Xilinx.
    The XADC has a DRP interface for communication. Currently two different
    frontends for the DRP interface exist. One that is only available on the ZYNQ
    family as a hardmacro in the SoC portion of the ZYNQ. The other one is available
    on all series 7 platforms and is a softmacro with a AXI interface. This driver
    supports both interfaces and internally has a small abstraction layer that hides
    the specifics of these interfaces from the main driver logic.

    The ADC has a couple of internal channels which are used for voltage and
    temperature monitoring of the FPGA as well as one primary and up to 16 channels
    auxiliary channels for measuring external voltages. The external auxiliary
    channels can either be directly connected each to one physical pin on the FPGA
    or they can make use of an external multiplexer which is responsible for
    multiplexing the external signals onto one pair of physical pins.

    The voltage and temperature monitoring channels also have an event capability
    which allows to generate a interrupt when their value falls below or raises
    above a set threshold.

    Buffered sampling mode is supported by the driver, but only for AXI-XADC since
    the ZYNQ XADC interface does not have capabilities for supporting buffer mode
    (no end-of-conversion interrupt). If buffered mode is supported the driver will
    register two triggers. One "xadc-samplerate" trigger which will generate samples
    with the configured samplerate. And one "xadc-convst" trigger which will
    generate one sample each time the CONVST (conversion start) signal is asserted.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Jonathan Cameron

    Lars-Peter Clausen
     

01 Mar, 2014

1 commit


26 Feb, 2014

1 commit

  • drivers/iio/magnetometer/mag3110.c:197 mag3110_read_raw()
    info: ignoring unreachable code.

    drivers/iio/magnetometer/mag3110.c
    185 case IIO_CHAN_INFO_SCALE:
    186 switch (chan->type) {
    187 case IIO_MAGN:
    188 *val = 0;
    189 *val2 = 1000;
    190 return IIO_VAL_INT_PLUS_MICRO;
    191 case IIO_TEMP:
    192 *val = 1000;
    193 return IIO_VAL_INT;
    194 default:
    195 return -EINVAL;
    196 }
    197 return IIO_VAL_INT_PLUS_MICRO;
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    introduced by f9279d3a, mag3110: Scale factor missing

    Signed-off-by: Peter Meerwald
    Reported-by: Dan Carpenter
    Signed-off-by: Jonathan Cameron

    Peter Meerwald
     

23 Feb, 2014

1 commit

  • The event code currently holds a spinlock with IRQs disabled while calling
    kfifo_to_user(). kfifo_to_user() can generate a page fault though, which means
    we have to be able to sleep, which is not possible if the interrupts are
    disabled. The good thing is that kfifo handles concurrent read and write access
    just fine as long as there is only one reader and one writer, so we do not any
    locking to protect against concurrent access from the read and writer thread. It
    is possible though that userspace is trying to read from the event FIFO from
    multiple concurrent threads, so we need to add locking to protect against this.
    This is done using a mutex. The mutex will only protect the kfifo_to_user()
    call, it will not protect the waitqueue. This means that multiple threads can be
    waiting for new data and once a new event is added to the FIFO all waiting
    threads will be woken up. If one of those threads is unable to read any data
    (because another thread already read all the data) it will go back to sleep. The
    only remaining issue is that now that the clearing of the BUSY flag and the
    emptying of the FIFO does no longer happen in one atomic step it is possible
    that a event is added to the FIFO after it has been emptied and this sample will
    be visible the next time a new event file descriptor is created. To avoid this
    rather move the emptying of the FIFO from iio_event_chrdev_release to
    iio_event_getfd().

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Jonathan Cameron

    Lars-Peter Clausen
     

22 Feb, 2014

3 commits


18 Feb, 2014

7 commits

  • name_format already contains the final name and no format characters. So the
    code basically reads:

    dev_attr->attr.name = kstrdup(GFP_KERNEL, name_format);
    if (dev_attr->attr.name == NULL)
    ...
    kfree(name_format);

    Which means we can save one alloc and free pair per attribute name if we
    directly assign name_format to dev_attr->attr.name.

    The patch also renames name_format to name to denote that this is indeed the
    final name and has no format characters in it.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Jonathan Cameron

    Lars-Peter Clausen
     
  • The extended name is channel specific and should not be included in shared
    attributes.

    Signed-off-by: Lars-Peter Clausen
    Signed-off-by: Jonathan Cameron

    Lars-Peter Clausen
     
  • The driver was not able to manage the sensor: during probe function
    and wai check, the driver stops and writes: "device name and WhoAmI mismatch."
    The correct value of L3GD20H wai is 0xd7 instead of 0xd4.
    Dropped support for the sensor.

    Signed-off-by: Denis Ciocca
    Cc: stable@vger.kernel.org
    Signed-off-by: Jonathan Cameron

    Denis CIOCCA
     
  • Integration time of cm32181 is guessed about milliseconds.
    But cm32181_read_als_it function return IIO_VAL_INT.
    So fixed to return IIO_VAL_INT_PLUS_MICRO.
    Next, add .write_raw_get_fmt callback function for call iio_str_to_fixpoint.

    v2: cm32181_write_als_id function fixed as it was.

    Cc: Kevin Tsai
    Signed-off-by: Beomho Seo
    Signed-off-by: Jonathan Cameron

    Beomho Seo
     
  • This patch is fixed [read/write] integration time function.
    cm36651 have integration time from 1 to 640 milliseconds.
    But, print more then the thousand second. when call *_integration_time attribute.
    Because read_integration_time function return IIO_VAL_INT.
    read integration time function is changed return IIO_VAL_INT_PLUS_MICRO;
    And then .write_raw_get_fmt callback function for parse a fixed-point number from a string.
    Some description is revised milliseconds unit.

    v2: cm36651_write_int_time function fixed as it was.

    Signed-off-by: Beomho Seo
    Signed-off-by: Jonathan Cameron

    Beomho Seo
     
  • Get rid of obsolete uses of goto error_ret and some empty lines.

    Signed-off-by: Hartmut Knaack
    Signed-off-by: Jonathan Cameron

    Hartmut Knaack
     
  • This patch fixes some typos in max1363_chip_info_tbl[].

    Signed-off-by: Hartmut Knaack
    Signed-off-by: Jonathan Cameron

    Hartmut Knaack
     

17 Feb, 2014

1 commit

  • Remove the hard coded indexes, instead search for usage id and
    use the index to set the power and report state.
    This will fix issue, where the report descriptor doesn't contain
    the full list of possible selector for power and report state.

    Signed-off-by: Srinivas Pandruvada
    Acked-by: Jonathan Cameron
    Signed-off-by: Jiri Kosina

    Srinivas Pandruvada
     

15 Feb, 2014

3 commits


12 Feb, 2014

1 commit

  • …/iio into staging-next

    Jonathan writes:

    First set of new drivers and cleanups for IIO in the 3.15 cycle.

    New drivers:
    * si7005 relative humidity and temperature sensor
    * Lite-on ltr501 ambient light and proximity sensor

    Cleanups
    * Clean up some dead comments in max1363
    * Drop some obsolete variables in adjd_s311 and tcs3472 left over from
    the introduction of iio_push_to_buffers_with_timestamp.
    * Drop some unneeded linux/init.h includes
    * Squish a sparse warning in mpl3115 by correctly specifying a be32 variable.
    * A number of cleanups and fixes for sca3000
    * Drop an unneed checks in mxs-lradc, ad7303 and adis16400.
    * Drop a platform_set_drvdata in viperboard after the only use of it was
    removed during a devm conversion.
    * Add a missing device name for ak8975 to comply with the ABI.
    * Put mpu6050 into the IMU menu as it slipped out into the main menu.
    * Fix a typo and some comment formatting in mpu6050.
    * Document at91 ADC clock properties.

    Greg Kroah-Hartman
     

08 Feb, 2014

10 commits


04 Feb, 2014

1 commit