Improve probing of the cma3000 chip, by checking the revision of the
device.

v4: Add ACKs to patch

v2: Fixes suggested by Jonathan Cameron
        -Remove WhoamI pr_info

Acked-by: Jonathan Cameron <[email protected]>
Signed-off-by: Ricardo Ribalda Delgado <[email protected]>
---
 drivers/input/misc/cma3000_d0x.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/drivers/input/misc/cma3000_d0x.c b/drivers/input/misc/cma3000_d0x.c
index e66036d..97e36fa 100644
--- a/drivers/input/misc/cma3000_d0x.c
+++ b/drivers/input/misc/cma3000_d0x.c
@@ -27,6 +27,8 @@
 
 #include "cma3000_d0x.h"
 
+#define CMA3000_REV         0x10
+
 #define CMA3000_WHOAMI      0x00
 #define CMA3000_REVID       0x01
 #define CMA3000_CTRL        0x02
@@ -420,7 +422,11 @@ struct cma3000_accl_data *cma3000_init(struct device *dev, 
int irq,
                error = rev;
                goto err_free_mem;
        }
-
+       if (rev != CMA3000_REV) {
+               error = -EINVAL;
+               pr_err("CMA3000 Accelerometer: Unknown Revision %x\n", rev);
+               goto err_free_mem;
+       }
        pr_info("CMA3000 Accelerometer: Revision %x\n", rev);
 
        error = request_threaded_irq(irq, NULL, cma3000_thread_irq,
-- 
1.7.7.1

_______________________________________________
devicetree-discuss mailing list
[email protected]
https://lists.ozlabs.org/listinfo/devicetree-discuss

Reply via email to