|
@@ -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,
|