aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging
AgeCommit message (Collapse)AuthorFilesLines
2019-04-16staging: rtl8712: remove unnecessary NULL checkHimadri Pandya1-2/+0
List wlan_network is built properly with init_list_head and list_add_tail which cancels out its probability of being NULL because of the precence of list_head at the top of this structure. Hence, the NULL test can be omitted. Signed-off-by: Himadri Pandya <himadri18.07@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: android: vsoc: fix copy_from_user overrunVincent Stehlé1-1/+2
The `np->permission' structure is smaller than the `np' structure but sizeof(*np) worth of data is copied in there. Fix the size passed to copy_from_user() to avoid overrun. Fixes: 3d2ec9dcd553 ("staging: Android: Add 'vsoc' driver for cuttlefish.") Signed-off-by: Vincent Stehlé <vincent.stehle@laposte.net> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Reviewed-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: most: Documentation: update driver documentationChristian Gromm2-41/+274
This patch updates the driver documentation files to reflect the latest changes regarding configfs. Signed-off-by: Christian Gromm <christian.gromm@microchip.com> v2: - changed kernel version to 5.2 v3: v4: Signed-off-by: Christian Gromm <christian.gromm@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: most: configfs: add code for link removalChristian Gromm1-2/+36
This patch adds code that cleans up established links whenever the destroy attribute is set or if the config_item (directory) is being removed. Signed-off-by: Christian Gromm <christian.gromm@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: most: configfs: make create attributes write-onlyChristian Gromm1-15/+2
Reading the create attribute that triggers the creation of a link to a certain channel is not necessary. Hence, it is being removed. Signed-off-by: Christian Gromm <christian.gromm@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: most: allow speculative configurationChristian Gromm4-30/+53
This patch makes the driver accept a link configuration eventhough no device is attached to the bus. Instead the configuration is being applied as soon as a device is being registered with the core. Signed-off-by: Christian Gromm <christian.gromm@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: most: core: remove attribute add_linkChristian Gromm1-61/+0
This patch removes the driver attribute add_link. It is not needed, because the link management is now done via configfs. Signed-off-by: Christian Gromm <christian.gromm@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: most: usb: remove prefix from description tagChristian Gromm1-1/+1
This patch cuts off the usb_device prefix of the description string. It is not needed, as the interface type is already available with the interface attribute of a channel. Signed-off-by: Christian Gromm <christian.gromm@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: most: core: make sysfs attributes read-onlyChristian Gromm1-115/+7
This patch changes the access flags of the channel attributes to read-only. This is needed, because configuration is done via configfs. Signed-off-by: Christian Gromm <christian.gromm@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: most: enable configfs supportChristian Gromm5-3/+19
This patch enables the configfs functionality of the driver by registering the configfs subsystems and compiling the configfs part of the sources. Signed-off-by: Christian Gromm <christian.gromm@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: most: sound: introduce new sound adapter managementChristian Gromm1-18/+23
This patch adapts the sound card management to the configfs changes. Signed-off-by: Christian Gromm <christian.gromm@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: most: core: add configfs interface functionsChristian Gromm2-1/+157
This patch adds the core's interface to configfs file. Signed-off-by: Christian Gromm <christian.gromm@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: most: change signature of function probe_channelChristian Gromm6-8/+12
This patch adds the param argument to the function parameter of the call-back probe_channel. This parameter is needed to configure the channels of an attached device. Signed-off-by: Christian Gromm <christian.gromm@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: most: add new file configfs.cChristian Gromm1-0/+627
This patch adds the file configfs.c to the driver directory. The file registers the necessary subsystems with configfs in order to move the driver configuration from sysfs to configfs. Signed-off-by: Christian Gromm <christian.gromm@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: greybus: power_supply: fix prop-descriptor request sizeJohan Hovold1-1/+1
Since moving the message buffers off the stack, the dynamically allocated get-prop-descriptor request buffer is incorrectly sized due to using the pointer rather than request-struct size when creating the operation. Fortunately, the pointer size is always larger than this one-byte request, but this could still cause trouble on the remote end due to the unexpected message size. Fixes: 9d15134d067e ("greybus: power_supply: rework get descriptors") Cc: stable <stable@vger.kernel.org> # 4.9 Cc: Rui Miguel Silva <rui.silva@linaro.org> Signed-off-by: Johan Hovold <johan@kernel.org> Reviewed-by: Rui Miguel Silva <rmfrfs@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16Staging: gasket: Use DIV_ROUND_UPMadhumitha Prabakaran1-3/+2
Use DIV_ROUND_UP in-kernel function to make code simple and more understandable. Issue found using Coccinelle. Signed-off-by: Madhumitha Prabakaran <madhumithabiw@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: wilc1000: fix spelling mistake "dissconect" -> "disconnect"Colin Ian King1-1/+1
There is a spelling mistake in a netdev_err error message, fix it. Signed-off-by: Colin Ian King <colin.king@canonical.com> Reviewed-by: Mukesh Ojha <mojha@codeaurora.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: wilc1000: give usleep_range a rangeNicholas Mc Guire1-2/+2
usleep_range() is called in non-atomic context so there is little point in setting min==max as the jitter of hrtimer is determined by interruptions anyway. usleep_range can only perform the intended coalescence if some room for placing the hrtimer is provided. Given the range of milliseconds the delay will be 2+ anyway - so make it 2-2.5 ms which gives hrtimers space to optimize without negatively impacting performance. Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: wilc1000: Avoid GFP_KERNEL allocation from atomic context.Tetsuo Handa1-1/+1
Since wilc_set_multicast_list() is called with dev->addr_list_lock spinlock held, we can't use GFP_KERNEL memory allocation. Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp> Fixes: e624c58cf8eb ("staging: wilc1000: refactor code to avoid use of wilc_set_multicast_list global") Cc: Ajay Singh <ajay.kathat@microchip.com> Reviewed-by: Adham Abozaeid <adham.abozaeid@microchip.com> Cc: stable <stable@vger.kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: wilc1000: drop explicit conversion to boolNicholas Mc Guire1-1/+1
As the expression evaluates to a boolean anyway (relational and logical operators) conversion with the ternary operator is not needed here as coccinelle notes (boolconv.cocci) Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org> Reviewed-by: Julian Calaby <julian.calaby@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: comedi: vmk80xx: Fix possible double-free of ->usb_rx_bufIan Abbott1-3/+1
`vmk80xx_alloc_usb_buffers()` is called from `vmk80xx_auto_attach()` to allocate RX and TX buffers for USB transfers. It allocates `devpriv->usb_rx_buf` followed by `devpriv->usb_tx_buf`. If the allocation of `devpriv->usb_tx_buf` fails, it frees `devpriv->usb_rx_buf`, leaving the pointer set dangling, and returns an error. Later, `vmk80xx_detach()` will be called from the core comedi module code to clean up. `vmk80xx_detach()` also frees both `devpriv->usb_rx_buf` and `devpriv->usb_tx_buf`, but `devpriv->usb_rx_buf` may have already been freed, leading to a double-free error. Fix it by removing the call to `kfree(devpriv->usb_rx_buf)` from `vmk80xx_alloc_usb_buffers()`, relying on `vmk80xx_detach()` to free the memory. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Cc: stable <stable@vger.kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: comedi: vmk80xx: Fix use of uninitialized semaphoreIan Abbott1-2/+2
If `vmk80xx_auto_attach()` returns an error, the core comedi module code will call `vmk80xx_detach()` to clean up. If `vmk80xx_auto_attach()` successfully allocated the comedi device private data, `vmk80xx_detach()` assumes that a `struct semaphore limit_sem` contained in the private data has been initialized and uses it. Unfortunately, there are a couple of places where `vmk80xx_auto_attach()` can return an error after allocating the device private data but before initializing the semaphore, so this assumption is invalid. Fix it by initializing the semaphore just after allocating the private data in `vmk80xx_auto_attach()` before any other errors can be returned. I believe this was the cause of the following syzbot crash report <https://syzkaller.appspot.com/bug?extid=54c2f58f15fe6876b6ad>: usb 1-1: config 0 has no interface number 0 usb 1-1: New USB device found, idVendor=10cf, idProduct=8068, bcdDevice=e6.8d usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 usb 1-1: config 0 descriptor?? vmk80xx 1-1:0.117: driver 'vmk80xx' failed to auto-configure device. INFO: trying to register non-static key. the code is fine but needs lockdep annotation. turning off the locking correctness validator. CPU: 0 PID: 12 Comm: kworker/0:1 Not tainted 5.1.0-rc4-319354-g9a33b36 #3 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: usb_hub_wq hub_event Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0xe8/0x16e lib/dump_stack.c:113 assign_lock_key kernel/locking/lockdep.c:786 [inline] register_lock_class+0x11b8/0x1250 kernel/locking/lockdep.c:1095 __lock_acquire+0xfb/0x37c0 kernel/locking/lockdep.c:3582 lock_acquire+0x10d/0x2f0 kernel/locking/lockdep.c:4211 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline] _raw_spin_lock_irqsave+0x44/0x60 kernel/locking/spinlock.c:152 down+0x12/0x80 kernel/locking/semaphore.c:58 vmk80xx_detach+0x59/0x100 drivers/staging/comedi/drivers/vmk80xx.c:829 comedi_device_detach+0xed/0x800 drivers/staging/comedi/drivers.c:204 comedi_device_cleanup.part.0+0x68/0x140 drivers/staging/comedi/comedi_fops.c:156 comedi_device_cleanup drivers/staging/comedi/comedi_fops.c:187 [inline] comedi_free_board_dev.part.0+0x16/0x90 drivers/staging/comedi/comedi_fops.c:190 comedi_free_board_dev drivers/staging/comedi/comedi_fops.c:189 [inline] comedi_release_hardware_device+0x111/0x140 drivers/staging/comedi/comedi_fops.c:2880 comedi_auto_config.cold+0x124/0x1b0 drivers/staging/comedi/drivers.c:1068 usb_probe_interface+0x31d/0x820 drivers/usb/core/driver.c:361 really_probe+0x2da/0xb10 drivers/base/dd.c:509 driver_probe_device+0x21d/0x350 drivers/base/dd.c:671 __device_attach_driver+0x1d8/0x290 drivers/base/dd.c:778 bus_for_each_drv+0x163/0x1e0 drivers/base/bus.c:454 __device_attach+0x223/0x3a0 drivers/base/dd.c:844 bus_probe_device+0x1f1/0x2a0 drivers/base/bus.c:514 device_add+0xad2/0x16e0 drivers/base/core.c:2106 usb_set_configuration+0xdf7/0x1740 drivers/usb/core/message.c:2021 generic_probe+0xa2/0xda drivers/usb/core/generic.c:210 usb_probe_device+0xc0/0x150 drivers/usb/core/driver.c:266 really_probe+0x2da/0xb10 drivers/base/dd.c:509 driver_probe_device+0x21d/0x350 drivers/base/dd.c:671 __device_attach_driver+0x1d8/0x290 drivers/base/dd.c:778 bus_for_each_drv+0x163/0x1e0 drivers/base/bus.c:454 __device_attach+0x223/0x3a0 drivers/base/dd.c:844 bus_probe_device+0x1f1/0x2a0 drivers/base/bus.c:514 device_add+0xad2/0x16e0 drivers/base/core.c:2106 usb_new_device.cold+0x537/0xccf drivers/usb/core/hub.c:2534 hub_port_connect drivers/usb/core/hub.c:5089 [inline] hub_port_connect_change drivers/usb/core/hub.c:5204 [inline] port_event drivers/usb/core/hub.c:5350 [inline] hub_event+0x138e/0x3b00 drivers/usb/core/hub.c:5432 process_one_work+0x90f/0x1580 kernel/workqueue.c:2269 worker_thread+0x9b/0xe20 kernel/workqueue.c:2415 kthread+0x313/0x420 kernel/kthread.c:253 ret_from_fork+0x3a/0x50 arch/x86/entry/entry_64.S:352 Reported-by: syzbot+54c2f58f15fe6876b6ad@syzkaller.appspotmail.com Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Cc: stable <stable@vger.kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: comedi: adv_pci1710: fix spelling mistake: "droput" -> "dropout"Colin Ian King1-1/+1
There is a spelling mistake in a dev_error message. Fix it. Signed-off-by: Colin Ian King <colin.king@canonical.com> Reviewed-by: Mukesh Ojha <mojha@codeaurora.org> Reviewed-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: comedi: dt2811: Fix spelling mistakeHariprasad Kelam1-1/+1
changes interupts --> interrupts to fix warning reported by checkpatch tool Signed-off-by: Hariprasad Kelam <hariprasad.kelam@gmail.com> Reviewed-by: Mukesh Ojha <mojha@codeaurora.org> Reviewed-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-16staging: comedi: dyna_pci10xx: remove set but not used variables 'chan' and range'YueHaibing1-4/+0
Fixes gcc '-Wunused-but-set-variable' warning: drivers/staging/comedi/drivers/dyna_pci10xx.c: In function 'dyna_pci10xx_insn_write_ao': drivers/staging/comedi/drivers/dyna_pci10xx.c:109:21: warning: variable 'range' set but not used [-Wunused-but-set-variable] unsigned int chan, range; drivers/staging/comedi/drivers/dyna_pci10xx.c:109:15: warning: variable 'chan' set but not used [-Wunused-but-set-variable] unsigned int chan, range; They are never used since introduction in commit 16a7373a8e14 ("Staging: comedi: add dyna_pci10xx driver") Signed-off-by: YueHaibing <yuehaibing@huawei.com> Reviewed-by: Ian Abbott <abbotti@mev.co.uk> Reviewed-by: Mukesh Ojha <mojha@codeaurora.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-15BackMerge v5.1-rc5 into drm-nextDave Airlie43-4587/+276
Need rc5 for udl fix to add udl cleanups on top. Signed-off-by: Dave Airlie <airlied@redhat.com>
2019-04-14staging: iio: ad9832: use clock framework for clock referenceMarcelo Schmitt2-13/+25
Previously external clock were set through platform_data struct. Now device uses clk struct defined in include/linux/clk.h to handle external clock source. It also removes mclk from platform_data struct. Signed-off-by: Marcelo Schmitt <marcelo.schmitt1@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-14staging: iio: ad9832: organize includesMarcelo Schmitt1-6/+8
Organize includes to list them in lexicographic order. Signed-off-by: Marcelo Schmitt <marcelo.schmitt1@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-14staging: iio: frequency: ad9834: Remove unnecessary parenthesesMelissa Wen1-1/+1
Remove unneeded parentheses around the arguments of ||. This reduces clutter and code behave in the same way. Change suggested by checkpatch.pl. CHECK: Unnecessary parentheses around 'st->devid == ID_AD9833' CHECK: Unnecessary parentheses around 'st->devid == ID_AD9837' Signed-off-by: Melissa Wen <melissa.srw@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-08drivers: Remove explicit invocations of mmiowb()Will Deacon6-11/+0
mmiowb() is now implied by spin_unlock() on architectures that require it, so there is no reason to call it from driver code. This patch was generated using coccinelle: @mmiowb@ @@ - mmiowb(); and invoked as: $ for d in drivers include/linux/qed sound; do \ spatch --include-headers --sp-file mmiowb.cocci --dir $d --in-place; done NOTE: mmiowb() has only ever guaranteed ordering in conjunction with spin_unlock(). However, pairing each mmiowb() removal in this patch with the corresponding call to spin_unlock() is not at all trivial, so there is a small chance that this change may regress any drivers incorrectly relying on mmiowb() to order MMIO writes between CPUs using lock-free synchronisation. If you've ended up bisecting to this commit, you can reintroduce the mmiowb() calls using wmb() instead, which should restore the old behaviour on all architectures other than some esoteric ia64 systems. Acked-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Will Deacon <will.deacon@arm.com>
2019-04-05Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netDavid S. Miller43-4589/+276
Minor comment merge conflict in mlx5. Staging driver has a fixup due to the skb->xmit_more changes in 'net-next', but was removed in 'net'. Signed-off-by: David S. Miller <davem@davemloft.net>
2019-04-04Merge tag 'iio-for-5.2a-2' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-nextGreg Kroah-Hartman9-497/+227
Jonathan writes: First set of new device support, features and fixes for IIO in the 5.2 cycle Staging graduations * ad7780 - Move this ADC driver out of staging. Included adding some new features along the way (see below). Also added DT bindings. New device support * adis16480 - Support the ADIS16495 and ADIS16497 IMU devices making heavy use of refactoring of various aspects of the driver in precursor patches. * lsm6dsx - Support for the ASM330LHH 6-axis (accelerometer + gyro) sensor. - Support for the LSM6DS0X * matbotix mb1232 - New driver for this ultrasound ranging device family. Including bindings. - Supports mb1202, mb1212, mb1222, mb1232, mb1242, mb7040 and mb7137. * max31856 - New driver for this thermocouple temperature sensor. * meson saradc - Support the Meson-G12A (ID addition only). * stmpe-adc - New driver supporting generic ADC alongside touchscreen support which previously existed. Includes DT bindings. * vcnl4000 - Support for the vcln4040 proximity and light sensor, including adding DT bindings for this and parts previously supported. Features * core - Allow reading of mount matrices from ACPI in addition to DT. - Common binding for theromcouple types. * ad5933 - Add ABI docs as there are a few 'unsual' elements about this device - perhaps because it's our only impedance analyser. * ad7780 - Add gain and filter gpio support + readback of current gain and filter. * adis16480 - Allow selection fo the dataready pin to be used. - Device tree ID table and binding documentation. - Support external clock modes, including new bindings. * bma180 - Mount matrix support. * bmc150 - Mount matrix support. * bmg160 - Mount matrix support. - DT id table and bindings doc. * bmp280 - Put calibration data into the entropy pool. * hmc5843 - Mount matrix support. * itg3200 - Mount matrix support. * kxcjk1013 - Device tree id table, and binding docs. * lpc32xx - Add scale when regulator specified including DT docs for regulator. * pms7003 - Add device IDs for all supported parts to driver and binding. * stm32-dfsdm - Enable hw consumer support, scan mode control and a complex set of triggered buffer modes. - Power management. * stm32-lptimer-counter - power management. - Document the pinctrl sleep state binding. * ti-ads7950 - GPIO pin support. Cleanups, minor fixes * core - Use bitmap_zalloc to make it explicit that is what we are doing. - Tidy up all the Kconfig files (which had slowly gotten messy) - Fix a forwards definition missing issue in iio/driver.h * ad sigma delta core - Improve handling of SPI bus locking vs CS assertion. This has been wrong a long time so not rushing this in. * ad5064 - Mlock to local lock. * ad5933 (staging cleanup) - Multiline comment fixes. - Include ordering. - SPDX. - Tidy up Kconfig help which was a bit missleading. - Change some non standard attributes to ABI defined ones. * ad7124 - White space fix. * ad7192 - White space. - Use DT clock binding. - Improve error reporting. - Platform data to DT conversion. - Use read_avail callback, mostly to avoid the endless series of patches from new contributors trying to falsely put spaces around the negative sign. * ad7280a - Add brackets to macros to avoid potential precedence isseus. - Add temp vars for event codes to reduce indent and improved readability. - Clean out som CamelCase notation. - White space. * ad7606 - Fix broken file naming in MAINTAINERS. * ad7780 - Missing switch defaults to supress warnings and harden the code slightly. - Set pattern masks more directly. - Add ID values and masks for all supported chips. - SPDX + add Renato as a copyright holder as he has done a lot of work on this driver. - Add brackets to macros to avoid potential precedence issues. * ad7923 - White space fixes. - Use BIT macro to improve readability. - Add brackets to macros to avoid potential precedence issues. - Tidy up a null comparisom. * ad9523 - Fix a typo in naming of variables. * adis16400 - Combine trigger file into main code as no advantage in separate files. Rename core file to just adis16400. - Squash the header into the c file now there is only one file. - Generalize burst mode to support new variants. * ak8975 - Local variable to improve readability around mount matrix support. * as3935 - Avoid potential race by ensuring remove does exact opposite of probe rather than a slightly different order. * cross_ec - Drop some unnecessary includes. - Fix some warning and the slightly 'unusual' code. - Add some docs for non obvious function. - SPDX * hmc5843 - Potential unhandled error case. * iio trigger core - Print an error if there is no available irq due to max consumers per trigger being set to low. * iio loop trigger - Drop an unlikely on IS_ERR as IS_ERR already has the annotation. * ingenic-adc - Drop a redundant dev_err call as devm_ioremap_resource reports the same internally. * lmp91000 - Drop some unncessary parentheses and white space tidy up. - Invert and if statement to improve readability. - Fix a wrong error message. * lpc32xx - Header sorting + drop some unused ones. * mma8542 - Mark a switch fallthrough. * mpu6050 - Add a local variable to improve code readability around mount matrix support. * mxs-lradc-adc - Handle devm_iio_trigger_alloc failure. * sps30 - Fix up a kernel version in the ABI docs. * srf04 - DT binding doc converted to yaml. * ssp_sensors - Supress a clang build warning due to lack of visibility of conditional within a iio_push_to_buffers_with_timestamp. (reasonable false warning!) * st_accel - Drop pointless less than 0 comparisom of unsigned int. * stm32-dfsdm - Improve accuracy of spi_master_frequency calculation. - Improve calculation fo sampling frequency. - Rework various internals to simplify adding triggered buffer support. - Claim direct mode to avoid racing around read_raw and being in buffered mode. * stmpe - Fix a clang false positive warning. * ti-ads7950 - Use local lock rather than using the core mlock when not locking around the device mode. * vcnl4000 - Use word writes instead of byte writes. It seems byte writes are fine for some parts (undocument) but not others that the driver will shortly support. Other * mailmap - Add email address change for Sean Nyekjaer. Update in relevant drivers * tag 'iio-for-5.2a-2' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio: (129 commits) iio: ad_sigma_delta: Properly handle SPI bus locking vs CS assertion iio: adc: stm32-dfsdm: add PM support iio: adc: stm32-dfsdm: improve sampling frequency accuracy staging: iio: adc: ad7280a: Tab alignment MAINTAINERS: Fix the link to ad7606 dt-bindings iio:temperature: Add MAX31856 thermocouple support iio:temperature:max31856:Add device tree bind info dt-bindings: iio/temperature: Add thermocouple types (and doc) devantech-srf04.yaml: transform DT binding to YAML iio: frequency: ad9523: Fix typo in ad9523_platform_data iio: Make possible to include driver.h first dt-bindings: iio: add Bosch BMG160 gyroscope sensor iio: gyro: bmg160: add device tree compatibility table staging: iio: adc: ad7192: Use read_avail for available attributes dt-bindings: iio: light: add vcnl4040 devicetree bindings iio: light: vcnl4000 add support for the VCNL4040 proximity and light sensor dt-bindings: iio: light: add vcnl4000 devicetree bindings iio: light: vcnl4000 add devicetree hooks iio: light: vcnl4000 use word writes instead of byte writes iio: adc: stm32-dfsdm: claim direct mode for raw read and settings ...
2019-04-04staging: iio: adc: ad7280a: Tab alignmentCristian Sicilia1-18/+18
Aligned some parameters. Signed-off-by: Cristian Sicilia <sicilia.cristian@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: adc: ad7192: Use read_avail for available attributesMircea Caprioru1-38/+61
This patch removes the in_voltage-voltage_scale_available and in_voltage_scale_available attributes. These are replaced with available attributes added in info_mask_shared_by_type_available. With this modification the iio core will be responsible with naming the attributes thus removing the checkpatch warning related to in_voltage-voltage_scale_available naming. Signed-off-by: Mircea Caprioru <mircea.caprioru@analog.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: ad5933: change attributes to match ABIMarcelo Schmitt1-12/+12
Change device attributes' names to match ABI documentation. Names were chosen such that they tend to be similar to existing ABI so it should be easier to standardize them when necessary. Signed-off-by: Marcelo Schmitt <marcelo.schmitt1@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: adc: ad7280a: Remove CamelCase notationCristian Sicilia1-6/+5
Fix CamelCase naming. Signed-off-by: Cristian Sicilia <sicilia.cristian@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: adc: ad7280a: Adding temp var to improve readabilityCristian Sicilia1-30/+25
Creating a temporary variable to improve readability Signed-off-by: Cristian Sicilia <sicilia.cristian@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: adc: ad7280a: Avoid precedence issues in macroCristian Sicilia1-3/+4
Enclosing parameter with parenthesis due to avoid possible precedence issue. Signed-off-by: Cristian Sicilia <sicilia.cristian@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: ad5933: add ABI documentationMarcelo Schmitt1-30/+0
Add an ABI documentation for the ad5933 driver. Signed-off-by: Marcelo Schmitt <marcelo.schmitt1@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: ad5933: change help rule messageMarcelo Schmitt1-1/+1
Remove the previous comment about direct access via sysfs which would lead one think ad5933 driver has limitations it actually doesn't. Signed-off-by: Marcelo Schmitt <marcelo.schmitt1@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: ad5933: add SPDX identifierMarcelo Schmitt1-2/+1
Add SPDX identifier of GPL-2.0 for the ad5933 driver. Signed-off-by: Marcelo Schmitt <marcelo.schmitt1@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: ad5933: organize includesMarcelo Schmitt1-9/+9
Organize includes to list them in lexicographic order. Signed-off-by: Marcelo Schmitt <marcelo.schmitt1@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: ad5933: change multi-line comment styleMarcelo Schmitt1-3/+6
Make multi-line comments compliant with the preferred code style. Signed-off-by: Marcelo Schmitt <marcelo.schmitt1@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: ad7780: moving ad7780 out of stagingRenato Lui Geh3-390/+0
Move ad7780 ADC driver out of staging and into the mainline. The ad7780 is a sigma-delta analog to digital converter. This driver provides reading voltage values and status bits from both the ad778x and ad717x series. Its interface also allows writing on the FILTER and GAIN GPIO pins on the ad778x. Signed-off-by: Renato Lui Geh <renatogeh@gmail.com> Signed-off-by: Giuliano Belinassi <giuliano.belinassi@usp.br> Co-developed-by: Giuliano Belinassi <giuliano.belinassi@usp.br> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: ad7780: add new copyright holderRenato Lui Geh1-0/+1
This patch adds a new copyright holder to the ad7780 driver. Signed-off-by: Renato Lui Geh <renatogeh@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: ad7780: add SPDX identifierRenato Lui Geh1-2/+1
Add SPDX identifier (GPL-2.0) to the AD7780 driver. Signed-off-by: Renato Lui Geh <renatogeh@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: ad7780: move regulator to after GPIO initRenato Lui Geh1-10/+10
To maintain consistency between ad7780_probe and ad7780_remove orders, regulator initialization has been moved to after GPIO initializations. Signed-off-by: Renato Lui Geh <renatogeh@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging:iio:ad7780: add chip ID values and maskRenato Lui Geh1-0/+6
The ad7780 supports both the ad778x and ad717x families. Each chip has a corresponding ID. This patch provides a mask for extracting ID values from the status bits and also macros for the correct values for the ad7170, ad7171, ad7780 and ad7781. Signed-off-by: Renato Lui Geh <renatogeh@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: ad7780: set pattern values and masks directlyRenato Lui Geh1-11/+9
The AD7780 driver contains status pattern bits designed for checking whether serial transfers have been correctly performed. Pattern macros were previously generated through bit fields. This patch sets good pattern values directly and masks through GENMASK. Signed-off-by: Renato Lui Geh <renatogeh@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2019-04-04staging: iio: ad7780: add filter reading to ad778xRenato Lui Geh1-4/+14
This patch adds the new feature of reading the filter odr value for ad778x chips. This value is stored in the chip's state struct whenever a read or write call is performed on the chip's driver. This feature requires sharing SAMP_FREQ. Since the ad717x does not have a filter option, the driver only shares the relevant info mask for the ad778x family. Signed-off-by: Renato Lui Geh <renatogeh@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>