Mircea Caprioru [Tue, 25 Jun 2019 08:11:24 +0000 (11:11 +0300)]
iio: adc: ad7124: Remove input number limitation
The driver limits the user to use only 4/8 differential inputs, but this
device has the option to use pseudo-differential channels. This will
increase the number of channels to be equal with the number of inputs so 8
channels for ad7124-4 and 16 for ad7124-8.
This patch removes the check between channel nodes and num_inputs value.
Signed-off-by: Mircea Caprioru <mircea.caprioru@analog.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
All current ADIS162XX drivers have incorrect values defined via comments.
Also, when an error is reported the printed value is incorrect.
The functionality itself isn't affected, so it's not a critical issue.
And since the change is trivial, it was included in a single patch that
fixes these in one go. All values were correlated with the ones specified
in the data-sheets.
Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
iio: core: no need to check return value of debugfs_create functions
When calling debugfs functions, there is no need to ever check the
return value. The function can work or not, but the code logic should
never do something different based on this.
Cc: Jonathan Cameron <jic23@kernel.org> Cc: Hartmut Knaack <knaack.h@gmx.de> Cc: Lars-Peter Clausen <lars@metafoo.de> Cc: Peter Meerwald-Stadler <pmeerw@pmeerw.net> Cc: linux-iio@vger.kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Fabrice Gasnier [Wed, 19 Jun 2019 12:29:55 +0000 (14:29 +0200)]
iio: adc: stm32-adc: add missing vdda-supply
Add missing vdda-supply, analog power supply, to STM32 ADC. When vdda is
an independent supply, it needs to be properly turned on or off to supply
the ADC.
Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com> Fixes: 1add69880240 ("iio: adc: Add support for STM32 ADC core"). Cc: <Stable@vger.kernel.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Olivier Moysan [Wed, 19 Jun 2019 13:03:50 +0000 (15:03 +0200)]
iio: adc: stm32-dfsdm: add fast mode support
The use of fast mode allows to get a larger set of solution
for filter parameters. This can be useful to reach a better
output sample resolution, when fast mode can be used.
Fast mode is selected at startup if it is relevant.
The startup is performed in postenable callback context,
where there are too tight time constraints for filter parameters
computation. For this reason both fast and non fast filter parameters
are pre-computed previously.
Olivier Moysan [Wed, 19 Jun 2019 13:03:49 +0000 (15:03 +0200)]
iio: adc: stm32-dfsdm: manage data resolution in trigger mode
Add output sample resolution management in scan mode.
Add stm32_dfsdm_process_data() function to share sample
processing between continuous and trigger modes.
Olivier Moysan [Wed, 19 Jun 2019 13:03:48 +0000 (15:03 +0200)]
iio: adc: stm32-dfsdm: fix data type
Fix the data type as DFSDM raw output is complements 2,
24bits left aligned in a 32-bit register.
This change does not affect AUDIO path
- Set data as signed for IIO (as for AUDIO)
- Set 8 bit right shift for IIO.
The 8 LSBs bits of data contains channel info and are masked.
Olivier Moysan [Wed, 19 Jun 2019 13:03:47 +0000 (15:03 +0200)]
iio: adc: stm32-dfsdm: fix output resolution
In buffered mode, output samples are shifted left
unconditionally. This works for filter order 3,
but this shift is not adapted for other filter orders.
Compute required shift, left or right, and shift
output data accordingly.
Add also saturation management to avoid wrap-around
when maximum positive sample is reached.
Signed-off-by: Olivier Moysan <olivier.moysan@st.com> Fixes: eca949800d2d ("IIO: ADC: add stm32 DFSDM support for PDM microphone") Acked-by: Fabrice Gasnier <fabrice.gasnier@st.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Tomasz Duszynski [Thu, 20 Jun 2019 19:50:10 +0000 (21:50 +0200)]
dt-bindings: iio: chemical: sps30: convert bindings to yaml
Convert existing device tree bindings to yaml.
Signed-off-by: Tomasz Duszynski <tduszyns@gmail.com> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Dan Carpenter [Fri, 21 Jun 2019 09:18:28 +0000 (12:18 +0300)]
iio: sca3000: Potential endian bug in sca3000_read_event_value()
The problem is that "ret" is an int but we're casting it as
"(unsigned long *)&ret" when we do the for_each_set_bit() loop. This
will not work on big endian 64 bit systems.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
The iio_triggered_buffer_{predisable,postenable} functions attach/detach
the poll functions.
For the predisable hook, the disable code should occur before detaching
the poll func, and for the postenable hook, the poll func should be
attached before the enable code.
Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com> Acked-by: Denis Ciocca <denis.ciocca@st.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Robert Hancock [Mon, 10 Jun 2019 16:23:44 +0000 (10:23 -0600)]
iio: adc: xilinx: support all platforms
Since the XADC logic can be used with standalone Xilinx FPGAs, this
driver can potentially be used with many different platforms, not just
the Zynq and MicroBlaze platforms this driver was allowed to be built
for. There should be no platform-specific code in this driver, so just
delete the platform dependency.
Signed-off-by: Robert Hancock <hancock@sedsystems.ca> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Shobhit Kukreti [Tue, 11 Jun 2019 03:55:57 +0000 (20:55 -0700)]
iio: humidity: Replace older GPIO APIs with GPIO Consumer APIs for the dht11 sensor
The dht11 driver uses a single gpio to make measurements. It was
using the older global gpio numberspace. The patch replaces the
old gpio api with the new gpio descriptor based api.
Removed header files "linux/gpio.h" and "linux/of_gpio.h"
Signed-off-by: Shobhit Kukreti <shobhitkukreti@gmail.com> Acked-by: Harald Geyer <harald@ccbib.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Melissa Wen [Fri, 14 Jun 2019 16:32:21 +0000 (13:32 -0300)]
staging: iio: ad7150: use FIELD_GET and GENMASK
Use the bitfield macro FIELD_GET, and GENMASK to do the shift and mask in
one go. This makes the code more readable than explicit masking followed
by a shift.
Signed-off-by: Melissa Wen <melissa.srw@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
iio: amplifiers: ad8366: Add support for ADL5240 VGA
The ADL5240 is a high performance, digitally controlled variable gain
amplifier (VGA) operating from 100 MHz to 4000 MHz. The VGA integrates a
high performance, 20 dB gain, internally matched amplifier (AMP) with a
6-bit digital step attenuator (DSA) that has a gain control range of
31.5 dB in 0.5 dB steps with ±0.25 dB step accuracy.
Paul Cercueil [Thu, 30 May 2019 13:18:11 +0000 (16:18 +0300)]
iio: amplifiers: ad8366: Add support for the ADA4961 DGA
This change adds support for the ADA4961 BiCMOS RF Digital Gain Amplifier,
(DGA), which is optimized for driving heavy loads out 2.0 GHz and beyond.
The device typically achieves -90 dBc IMD3 performance at 500 MHz and
-85 dBc at 1.5 GHz.
This change re-uses the existing ad8366 driver, as most logic is similar.
Also, this chip has a reset pin which is initialized during probe.
Signed-off-by: Paul Cercueil <paul.cercueil@analog.com> Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
iio: amplifiers: ad8366: rework driver to allow other chips
The SPI gain amplifiers are simple devices, with 1 or 2 channels, to which
are read-from/written-to.
The gain computation in ad8366_write_raw() has been updated to compute gain
in dB for negative values.
This driver will be extended to support other chips as well.
To do that, this rework handles the AD8366 device as a special-case (via
switch-statements). This will make things easier when adding new chips.
Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
The iio_triggered_buffer_{predisable,postenable} functions attach/detach
the poll functions.
For the predisable hook, the disable code should occur before detaching
the poll func, and for the postenable hook, the poll func should be
attached before the enable code.
Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Stefan Popa [Tue, 4 Jun 2019 14:58:21 +0000 (17:58 +0300)]
dt-bindings: iio: frequency: Add docs for ADF4371 PLL
Document support for Analog Devices ADF4371 SPI Wideband Synthesizer.
Signed-off-by: Stefan Popa <stefan.popa@analog.com> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
The ADF4371 is a frequency synthesizer with an integrated voltage
controlled oscillator (VCO) for phase-locked loops (PLLs). The ADF4371
has an integrated VCO with a fundamental output frequency ranging from
4000 MHz to 8000 MHz. In addition, the VCO frequency is connected to
divide by 1, 2, 4, 8, 16, 32, or 64 circuits that allows the user to
generate radio frequency (RF) output frequencies as low as 62.5 MHz at
RF8x. A frequency multiplier at RF16x generates from 8 GHz to 16 GHz. A
frequency quadrupler generates frequencies from 16 GHz to 32 GHz at RF32x.
RFAUX8x duplicates the frequency range of RF8x or permits direct access to
the VCO output.
The driver takes the reference input frequency from the device tree and
uses it to calculate and maximize the PFD frequency (frequency of the phase
frequency detector). The PFD frequency is further used to calculate the
timeouts: synthesizer lock, VCO band selection, automatic level
calibration (ALC) and PLL settling time.
This initial driver exposes the attributes for setting the frequency and
enabling/disabling the different adf4371 channels.
iio: imu: st_lsm6dsx: get device name from st_lsm6dsx_sensor_settings
Introduce sensor name in st_lsm6dsx_sensor_settings table. This is
a preliminary patch to add I3C support to st_lsm6dsx since i3c_device_id
data structure does not contain a name field
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Fabio Estevam [Mon, 3 Jun 2019 19:34:30 +0000 (16:34 -0300)]
iio: imx7d_adc: Remove unneeded error message
In case of ioremap failure, the core code will take care of printing
the error message, so there is no need for having a local error
message in the driver.
Signed-off-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Young Xiao [Tue, 4 Jun 2019 12:40:00 +0000 (20:40 +0800)]
iio:core: Fix bug in length of event info_mask and catch unhandled bits set in masks.
The incorrect limit for the for_each_set_bit loop was noticed whilst fixing
this other case. Note that as we only have 3 possible entries a the moment
and the value was set to 4, the bug would not have any effect currently.
It will bite fairly soon though, so best fix it now.
See commit ef4b4856593f ("iio:core: Fix bug in length of event info_mask and
catch unhandled bits set in masks.") for details.
Signed-off-by: Young Xiao <92siuyang@gmail.com> Reviewed-by: Alexandru Ardelean <alexandru.ardelean@analog.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Beniamin Bia [Mon, 27 May 2019 12:56:47 +0000 (15:56 +0300)]
iio: adc: ad7606: Move oversampling and scale options to chip info
The device dependent options which are going to be different for devices
which will be supported in the future by this driver,
were moved in chip info for a more generic driver. This patch allows
supporting more devices by the driver. Also, it is an intermediate
step of adding support for ad7616 in software mode.
Signed-off-by: Beniamin Bia <beniamin.bia@analog.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Neil Armstrong [Mon, 27 May 2019 13:43:14 +0000 (15:43 +0200)]
iio: adc: meson_saradc: update with SPDX Licence identifier
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
This patch adds a YAML binding for the Analog Devices AD7780/1 and
AD7170/1 analog-to-digital converters.
Signed-off-by: Renato Lui Geh <renatogeh@gmail.com> Acked-by: Michael Hennerich <michael.hennerich@analog.com> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
iio: accel: add missing sensor for some 2-in-1 based ultrabooks
Some ultrabooks, like Teclast F6 Pro, use KIOX010A sensor on display
and KIOX020A sensor on keyboard base, to detect tablet mode or screen
orientation.
Signed-off-by: Luís Ferreira <luis@aurorafoss.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Eddie James [Tue, 21 May 2019 02:13:34 +0000 (21:13 -0500)]
iio: dps310: Add pressure sensing capability
The DPS310 supports measurement of pressure, so support that in the
driver. Use background measurement like the temperature sensing and
default to lowest precision and lowest measurement rate.
Signed-off-by: Eddie James <eajames@linux.ibm.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Add a manufacturer's suggested workaround to deal with early revisions
of chip that don't indicate correct temperature. Readings can be in the
~60C range when they should be in the ~20's.
Signed-off-by: Christopher Bostic <cbostic@linux.vnet.ibm.com> Signed-off-by: Joel Stanley <joel@jms.id.au> Signed-off-by: Eddie James <eajames@linux.ibm.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Joel Stanley [Tue, 21 May 2019 02:13:32 +0000 (21:13 -0500)]
iio: Add driver for Infineon DPS310
The DPS310 is a temperature and pressure sensor. It can be accessed over
i2c and SPI, but this driver only supports polling over i2c.
Signed-off-by: Eddie James <eajames@linux.ibm.com> Signed-off-by: Joel Stanley <joel@jms.id.au> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
João Seckler [Sat, 18 May 2019 22:27:33 +0000 (19:27 -0300)]
staging: iio: ad7746: add device tree support
Add a of_device_id struct variable and subsequent call to
MODULE_DEVICE_TABLE macro to support device tree.
Signed-off-by: João Seckler <joaoseckler@gmail.com> Signed-off-by: Lucas Oshiro <lucasseikioshiro@gmail.com> Co-developed-by: Lucas Oshiro <lucasseikioshiro@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Create structure of type of_device_id in order to register all devices
the driver is able to manage.
Signed-off-by: Bárbara Fernandes <barbara.fernandes@usp.br> Signed-off-by: Wilson Sales <spoonm@spoonm.org> Co-developed-by: Wilson Sales <spoonm@spoonm.org> Acked-by: Alexandru Ardelean <alexandru.ardelean@analog.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Add a of_device_id struct array of_match_table variable and subsequent
call to MODULE_DEVICE_TABLE macro to enable explicit device tree support.
Co-developed-by: Thiago L. A. Miller <tmiller@mochsl.org.br> Signed-off-by: Thiago L. A. Miller <tmiller@mochsl.org.br> Co-developed-by: Osvaldo M. Yasuda <omyasuda@yahoo.com.br> Signed-off-by: Osvaldo M. Yasuda <omyasuda@yahoo.com.br> Signed-off-by: João Victor Marques de Oliveira <joao.marques.oliveira@usp.br> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Hariprasad Kelam [Wed, 22 May 2019 17:05:30 +0000 (22:35 +0530)]
staging: unisys: visornic: Replace GFP_ATOMIC with GFP_KERNEL
As per below information
GFP_KERNEL FLAG
This is a normal allocation and might block. This is the flag to use in
process context code when it is safe to sleep.
GFP_ATOMIC FLAG
The allocation is high-priority and does not sleep. This is the flag to
use in interrupt handlers, bottom halves and other situations where you
cannot sleep
And we can take advantage of GFP_KERNEL , as when system is in low
memory chances of getting success is high compared to GFP_ATOMIC.
As visornic_probe is in process context we can use GPF_KERNEL.
Geordan Neukum [Wed, 22 May 2019 12:14:02 +0000 (12:14 +0000)]
staging: kpc2000: kpc_i2c: add static qual to local symbols in kpc_i2c.c
kpc_i2c.c declares:
- two functions
- pi2c_probe()
- pi2c_remove()
- one struct
- i2c_plat_driver_i
which are local to the file, yet missing the static qualifier. Add the
static qualifier to these symbols.
Geordan Neukum [Wed, 22 May 2019 12:14:01 +0000 (12:14 +0000)]
staging: kpc2000: kpc_i2c: Remove unnecessary function tracing prints
Many of the functions in kpc_i2c log debug-level messages to the
kernel log message buffer upon invocation. This is unnecessary, as
debugging tools like kgdb, kdb, etc. or the tracing tool ftrace
should be able to provide this same information. Therefore, remove
these print statements.
Geordan Neukum [Wed, 22 May 2019 12:13:59 +0000 (12:13 +0000)]
staging: kpc2000: kpc_i2c: newline fixups to meet linux style guide
The linux coding style document states:
1) That braces should not be used where a single single statement
will do. Therefore all instances of single block statements
wrapped in braces that do not meet the qualifications of any
of the exceptions to the rule should be fixed up.
2) That the declaration of variables local to a given function
should be immediately followed by a blank newline. Therefore,
the single instance of this in kpc2000_i2c.c should be fixed
up.
staging: rtl8192u: Remove an unnecessary NULL check
Clang warns:
drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c:2663:47: warning:
address of array 'param->u.wpa_ie.data' will always evaluate to 'true'
[-Wpointer-bool-conversion]
(param->u.wpa_ie.len && !param->u.wpa_ie.data))
~~~~~~~~~~~~~~~~~^~~~
This was exposed by commit deabe03523a7 ("Staging: rtl8192u: ieee80211:
Use !x in place of NULL comparisons") because we disable the warning
that would have pointed out the comparison against NULL is also false:
drivers/staging/rtl8192u/ieee80211/ieee80211_softmac.c:2663:46: warning:
comparison of array 'param->u.wpa_ie.data' equal to a null pointer is
always false [-Wtautological-pointer-compare]
(param->u.wpa_ie.len && param->u.wpa_ie.data == NULL))
~~~~~~~~~~~~~~~~^~~~ ~~~~
Jeremy Sowden [Tue, 21 May 2019 10:35:24 +0000 (11:35 +0100)]
staging: kpc2000: removed superfluous NULL checks from device attribute call-backs.
All the attribute show call-backs check whether pcard is NULL. However,
pci_set_drvdata(pdev, pcard) is called before the sysfs files are
created during probe, and pci_set_drvdata(pdev, NULL) is not called
until after they are destroyed during remove; therefore, pcard will not
be NULL, and we can drop the checks.
Signed-off-by: Jeremy Sowden <jeremy@azazel.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Since to_pci_dev is a wrapper for container_of, it will not return NULL,
and since pci_get_drvdata just calls dev_get_drvdata on the dev member
of pdev, this is equivalent to:
Jeremy Sowden [Tue, 21 May 2019 10:35:22 +0000 (11:35 +0100)]
staging: kpc2000: use IDA to assign card numbers.
Previously the next card number was assigned from a static int local
variable. Replaced it with an IDA. Avoids the assignment of ever-
increasing card-numbers by allowing them to be reused.
Updated TODO.
Corrected format-specifier for unsigned pcard->card_num.
Signed-off-by: Jeremy Sowden <jeremy@azazel.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Jeremy Sowden [Tue, 21 May 2019 10:35:21 +0000 (11:35 +0100)]
staging: kpc2000: added separate show functions for readable kp device attributes, defined them as read-only, and declared them static.
Defined separate simple show functions for each attribute instead of
having a one big one containing a chain of conditionals.
Replaced calls to scnprintf with sprintf since all the outputs are
single integers.
All the readable device attributes are read-only, so used DEVICE_ATTR_RO
to define them.
The definitions are only used to populate the kp_attr_list attribute
array, so declared them as static.
Fixes the following sparse warnings:
drivers/staging/kpc2000/kpc2000/core.c:152:1: warning: symbol 'dev_attr_ssid' was not declared. Should it be static?
drivers/staging/kpc2000/kpc2000/core.c:153:1: warning: symbol 'dev_attr_ddna' was not declared. Should it be static?
drivers/staging/kpc2000/kpc2000/core.c:154:1: warning: symbol 'dev_attr_card_id' was not declared. Should it be static?
drivers/staging/kpc2000/kpc2000/core.c:155:1: warning: symbol 'dev_attr_hw_rev' was not declared. Should it be static?
drivers/staging/kpc2000/kpc2000/core.c:156:1: warning: symbol 'dev_attr_build' was not declared. Should it be static?
drivers/staging/kpc2000/kpc2000/core.c:157:1: warning: symbol 'dev_attr_build_date' was not declared. Should it be static?
drivers/staging/kpc2000/kpc2000/core.c:158:1: warning: symbol 'dev_attr_build_time' was not declared. Should it be static?
drivers/staging/kpc2000/kpc2000/core.c:159:1: warning: symbol 'dev_attr_cpld_reg' was not declared. Should it be static?
drivers/staging/kpc2000/kpc2000/core.c:161:1: warning: symbol 'dev_attr_cpld_reconfigure' was not declared. Should it be static?
Signed-off-by: Jeremy Sowden <jeremy@azazel.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Jeremy Sowden [Tue, 21 May 2019 10:35:19 +0000 (11:35 +0100)]
staging: kpc2000: improved formatting of core.c.
* Indented with tabs.
* Broke lines over 80 columns where possible.
* Removed braces from one-statement blocks.
* Tidied up some comments.
* Removed multiple blank lines.
Signed-off-by: Jeremy Sowden <jeremy@azazel.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reported-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Colin Ian King [Tue, 21 May 2019 13:17:06 +0000 (14:17 +0100)]
staging: wilc1000: remove redundant masking of pkt_offset
The masking update of pkg_offset is redundant as the updated
value is never read and pkg_offset is re-assigned on the next
iteration of the loop. Clean this up by removing the redundant
assignment.
Addresses-Coverity: ("Unused value") Signed-off-by: Colin Ian King <colin.king@canonical.com> Reviewed-by: Adham Abozaeid <adham.abozaeid@microchip.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The arcx-anybus's registers are accessed via a memory-mapped
IO region. A regmap associated with this region is created
using custom reg_read() / reg_write() callbacks.
However, an abstraction which creates a memory-mapped IO
region backed regmap already exists: devm_regmap_init_mmio().
Replace the custom regmap with the existing kernel abstraction.
As a pleasant side-effect, sparse warnings now disappear.
Signed-off-by: Sven Van Asbroeck <TheSven73@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>