Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7a948c5e authored by Grégor Boirie's avatar Grégor Boirie Committed by Jonathan Cameron
Browse files

iio:pressure:ms5611: complete DT support



Add device-tree ID tables and document bindings.

Signed-off-by: default avatarGregor Boirie <gregor.boirie@parrot.com>
Acked-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarJonathan Cameron <jic23@kernel.org>
parent 844a6563
Loading
Loading
Loading
Loading
+19 −0
Original line number Diff line number Diff line
MEAS ms5611 family pressure sensors

Pressure sensors from MEAS Switzerland with SPI and I2C bus interfaces.

Required properties:
- compatible: "meas,ms5611" or "meas,ms5607"
- reg: the I2C address or SPI chip select the device will respond to

Optional properties:
- vdd-supply: an optional regulator that needs to be on to provide VDD
  power to the sensor.

Example:

ms5607@77 {
	compatible = "meas,ms5607";
	reg = <0x77>;
	vdd-supply = <&ldo_3v3_gnss>;
};
+1 −0
Original line number Diff line number Diff line
@@ -136,6 +136,7 @@ lsi LSI Corp. (LSI Logic)
lltc	Linear Technology Corporation
marvell	Marvell Technology Group Ltd.
maxim	Maxim Integrated Products
meas	Measurement Specialties
mediatek	MediaTek Inc.
melexis	Melexis N.V.
merrii	Merrii Technology Co., Ltd.
+13 −0
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
#include <linux/delay.h>
#include <linux/i2c.h>
#include <linux/module.h>
#include <linux/of_device.h>

#include "ms5611.h"

@@ -113,6 +114,17 @@ static int ms5611_i2c_remove(struct i2c_client *client)
	return ms5611_remove(i2c_get_clientdata(client));
}

#if defined(CONFIG_OF)
static const struct of_device_id ms5611_i2c_matches[] = {
	{ .compatible = "meas,ms5611" },
	{ .compatible = "ms5611" },
	{ .compatible = "meas,ms5607" },
	{ .compatible = "ms5607" },
	{ }
};
MODULE_DEVICE_TABLE(of, ms5611_i2c_matches);
#endif

static const struct i2c_device_id ms5611_id[] = {
	{ "ms5611", MS5611 },
	{ "ms5607", MS5607 },
@@ -123,6 +135,7 @@ MODULE_DEVICE_TABLE(i2c, ms5611_id);
static struct i2c_driver ms5611_driver = {
	.driver = {
		.name = "ms5611",
		.of_match_table = of_match_ptr(ms5611_i2c_matches)
	},
	.id_table = ms5611_id,
	.probe = ms5611_i2c_probe,
+13 −0
Original line number Diff line number Diff line
@@ -12,6 +12,7 @@
#include <linux/delay.h>
#include <linux/module.h>
#include <linux/spi/spi.h>
#include <linux/of_device.h>

#include "ms5611.h"

@@ -114,6 +115,17 @@ static int ms5611_spi_remove(struct spi_device *spi)
	return ms5611_remove(spi_get_drvdata(spi));
}

#if defined(CONFIG_OF)
static const struct of_device_id ms5611_spi_matches[] = {
	{ .compatible = "meas,ms5611" },
	{ .compatible = "ms5611" },
	{ .compatible = "meas,ms5607" },
	{ .compatible = "ms5607" },
	{ }
};
MODULE_DEVICE_TABLE(of, ms5611_spi_matches);
#endif

static const struct spi_device_id ms5611_id[] = {
	{ "ms5611", MS5611 },
	{ "ms5607", MS5607 },
@@ -124,6 +136,7 @@ MODULE_DEVICE_TABLE(spi, ms5611_id);
static struct spi_driver ms5611_driver = {
	.driver = {
		.name = "ms5611",
		.of_match_table = of_match_ptr(ms5611_spi_matches)
	},
	.id_table = ms5611_id,
	.probe = ms5611_spi_probe,