diff options
Diffstat (limited to 'drivers/input/misc')
| -rw-r--r-- | drivers/input/misc/bma150.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/input/misc/bma150.c b/drivers/input/misc/bma150.c index 52d3a9b28f0b..b36831c828d3 100644 --- a/drivers/input/misc/bma150.c +++ b/drivers/input/misc/bma150.c | |||
| @@ -70,6 +70,7 @@ | |||
| 70 | #define BMA150_CFG_5_REG 0x11 | 70 | #define BMA150_CFG_5_REG 0x11 |
| 71 | 71 | ||
| 72 | #define BMA150_CHIP_ID 2 | 72 | #define BMA150_CHIP_ID 2 |
| 73 | #define BMA180_CHIP_ID 3 | ||
| 73 | #define BMA150_CHIP_ID_REG BMA150_DATA_0_REG | 74 | #define BMA150_CHIP_ID_REG BMA150_DATA_0_REG |
| 74 | 75 | ||
| 75 | #define BMA150_ACC_X_LSB_REG BMA150_DATA_2_REG | 76 | #define BMA150_ACC_X_LSB_REG BMA150_DATA_2_REG |
| @@ -539,7 +540,7 @@ static int bma150_probe(struct i2c_client *client, | |||
| 539 | } | 540 | } |
| 540 | 541 | ||
| 541 | chip_id = i2c_smbus_read_byte_data(client, BMA150_CHIP_ID_REG); | 542 | chip_id = i2c_smbus_read_byte_data(client, BMA150_CHIP_ID_REG); |
| 542 | if (chip_id != BMA150_CHIP_ID) { | 543 | if (chip_id != BMA150_CHIP_ID && chip_id != BMA180_CHIP_ID) { |
| 543 | dev_err(&client->dev, "BMA150 chip id error: %d\n", chip_id); | 544 | dev_err(&client->dev, "BMA150 chip id error: %d\n", chip_id); |
| 544 | return -EINVAL; | 545 | return -EINVAL; |
| 545 | } | 546 | } |
| @@ -643,6 +644,7 @@ static UNIVERSAL_DEV_PM_OPS(bma150_pm, bma150_suspend, bma150_resume, NULL); | |||
| 643 | 644 | ||
| 644 | static const struct i2c_device_id bma150_id[] = { | 645 | static const struct i2c_device_id bma150_id[] = { |
| 645 | { "bma150", 0 }, | 646 | { "bma150", 0 }, |
| 647 | { "bma180", 0 }, | ||
| 646 | { "smb380", 0 }, | 648 | { "smb380", 0 }, |
| 647 | { "bma023", 0 }, | 649 | { "bma023", 0 }, |
| 648 | { } | 650 | { } |
