Andy Shevchenko
4781f3e0e6
iio: accel: adxl345: Remove unneeded blank lines
...
Remove unneeded blank lines where they separate the data type definitions
and the macros which are using them.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Tested-by: Kai-Heng Feng <kai.heng.feng@canonical.com >
Link: https://lore.kernel.org/r/20220222090009.2060-8-andriy.shevchenko@linux.intel.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2022-02-26 19:11:39 +00:00
Andy Shevchenko
b8f83abdd2
iio: accel: adxl345: Drop comma in terminator entries
...
Terminator entries are by definition should terminate the array.
Dropping comma make this enforced at compile time.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Tested-by: Kai-Heng Feng <kai.heng.feng@canonical.com >
Link: https://lore.kernel.org/r/20220222090009.2060-7-andriy.shevchenko@linux.intel.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2022-02-26 19:11:32 +00:00
Kai-Heng Feng
b9493d5952
iio: accel: adxl345: Add ACPI HID table
...
x86 boards may use ACPI HID "ADS0345" for adxl345 device.
Analog replied:
"ADS034X is not a valid PNP ID. ADS0345 would be.
I'm not aware that this ID is already taken.
Feel free to submit a mainline Linux input mailing list patch."
So add an ACPI match table for that accordingly.
Since ACPI device may not match to any I2C ID, use the name and type
directly from ACPI ID table in absence of I2C ID.
Suggested-by: Andy Shevchenko <andy.shevchenko@gmail.com >
Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com >
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Link: https://lore.kernel.org/r/20220222090009.2060-5-andriy.shevchenko@linux.intel.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2022-02-26 19:11:20 +00:00
Andy Shevchenko
266be7cb11
iio: accel: adxl345: Make use of device properties
...
Convert the module to be property provider agnostic and allow
it to be used on non-OF platforms.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Tested-by: Kai-Heng Feng <kai.heng.feng@canonical.com >
Link: https://lore.kernel.org/r/20220222090009.2060-4-andriy.shevchenko@linux.intel.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2022-02-26 19:11:13 +00:00
Andy Shevchenko
c1db3d5cab
iio: accel: adxl345: Get rid of name parameter in adxl345_core_probe()
...
As a preparation to switch to use device properties, get rid of name
parameter in adxl345_core_probe(). Instead, choose it based on the type.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Tested-by: Kai-Heng Feng <kai.heng.feng@canonical.com >
Link: https://lore.kernel.org/r/20220222090009.2060-3-andriy.shevchenko@linux.intel.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2022-02-26 19:11:05 +00:00
Andy Shevchenko
024f5d4f0a
iio: accel: adxl345: Set driver_data for OF enumeration
...
In order to enable this driver on mode platforms, assign driver_data
field in the OF device ID table.
While at it, make sure that device type is not 0 which may be wrongly
interpreted by device property APIs in the future.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Tested-by: Kai-Heng Feng <kai.heng.feng@canonical.com >
Link: https://lore.kernel.org/r/20220222090009.2060-2-andriy.shevchenko@linux.intel.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2022-02-26 19:10:56 +00:00
Andy Shevchenko
01676b0f3b
iio: accel: adxl345: Convert to use dev_err_probe()
...
It's fine to call dev_err_probe() in ->probe() when error code is known.
Convert the driver to use dev_err_probe().
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Tested-by: Kai-Heng Feng <kai.heng.feng@canonical.com >
Link: https://lore.kernel.org/r/20220222090009.2060-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2022-02-26 19:10:40 +00:00
Jonathan Cameron
0a18114d3f
iio:accel:adxl345: Move exports into IIO_ADXL345 namespace
...
To avoid unnecessary pollution of the global symbol namespace move the
driver core exports into their own namespace and import that into the two
bus modules.
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
Link: https://lore.kernel.org/r/20220116180535.2367780-7-jic23@kernel.org
2022-02-18 11:36:54 +00:00
Alexandru Ardelean
d372e5a19a
iio: accel: adxl345: convert probe to device-managed functions
...
This driver has two parts, one for i2c and one for spi, since the chip can
operate with both wire protocols.
The core file has a common adxl345_core_remove() function which puts the
chip into a powerdown state. This can be implemented with a
devm_add_action_or_reset() hook.
Doing that means we can register the IIO device with
devm_iio_device_register() and get rid of the adxl345_core_remove()
function.
The dev_set_drvdata() call can be removed as there is no other user of this
private data anymore.
Signed-off-by: Alexandru Ardelean <aardelean@deviqon.com >
Link: https://lore.kernel.org/r/20210624080441.8710-1-aardelean@deviqon.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2021-07-19 09:51:59 +01:00
Thomas Gleixner
36edc93958
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 330
...
Based on 1 normalized pattern(s):
this file is subject to the terms and conditions of version 2 of the
gnu general public license see the file copying in the main
directory of this archive for more details
extracted by the scancode license scanner the SPDX license identifier
GPL-2.0-only
has been chosen to replace the boilerplate/reference in 55 file(s).
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
Reviewed-by: Allison Randal <allison@lohutok.net >
Reviewed-by: Alexios Zavras <alexios.zavras@intel.com >
Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org >
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190530000436.108941081@linutronix.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
2019-06-05 17:37:06 +02:00
Alexandru Ardelean
6b8471e460
iio: adxl345: move null check for i2c id at start of probe
...
Fixes ef89f4b96a ("iio: adxl345: Add support for the ADXL375").
This was found via static checker.
After looking into the code a bit, it's unlikely that there will be a NULL
dereference if the `id` object in that specific code path.
However, it's safe to add a NULL (paranoid) check just to make sure and
remove any uncertainties.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com >
Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com >
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2018-08-19 18:32:05 +01:00
Lars-Peter Clausen
ef89f4b96a
iio: adxl345: Add support for the ADXL375
...
The ADXL375 is fully register map compatible to the ADXL345 (including the
device ID register returning the same value ...).
The only difference is the resolution of the acceleration sensor. The
ADXL375 can measure up to +-200g of acceleration.
Datasheet:
http://www.analog.com/media/en/technical-documentation/data-sheets/ADXL375.PDF
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de >
Signed-off-by: Mircea Caprioru <mircea.caprioru@analog.com >
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
2018-07-15 10:18:15 +01:00
Eva Rachel Retuya
5170512cf6
iio: accel: adxl345: Split driver into core and I2C
...
Move I2C-specific code into its own file and rely on regmap to access
registers. The core code provides access to x, y, z and scale readings.
Signed-off-by: Eva Rachel Retuya <eraretuya@gmail.com >
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com >
Signed-off-by: Jonathan Cameron <jic23@kernel.org >
2017-03-04 16:45:08 +00:00