Re: [PATCH 3/5] iio: inv_mpu6050: Check WHO_AM_I register on probe

From: Jonathan Cameron
Date: Mon Apr 25 2016 - 14:09:28 EST


On 25/04/16 12:17, Crestez Dan Leonard wrote:
> On 04/24/2016 02:14 PM, Jonathan Cameron wrote:
>> On 20/04/16 14:15, Crestez Dan Leonard wrote:
>>> This can be used to distinguish mpu6500. This is a warning rather than
>>> an error because the differences are mostly irrelevant and it's nice to
>>> avoid breaking users with slightly incorrect ACPI/DT.
>>>
>>> Signed-off-by: Crestez Dan Leonard <leonard.crestez@xxxxxxxxx>
>> Would we be better off fixing their configuration though by using the right part
>> if we can identify it? So if wrong, maybe we should search the info table to
>> figure out what it is? I'm not certain on this though as then we are trying to
>> deal with unknown future cases - maybe what you have here is the best balance.
>
> I'm not sure about that. One issue is that 6000/6050/9150 have the same
> WHOAMI value and can't be distinguished this way. They also seem to
> identical interfaces. Models MPU6500 and MPU9250 report different WHOAMI
> values.
>
> Changing chip_type based on the WHOAMI would require some additional
> refactoring. Placing that in a separate patch might be worthwhile anyway.
>
Agreed.
>>> +#define INV_MPU6050_REG_WHOAMI 117
>>> +
>>> +#define INV_MPU6000_WHOAMI_VALUE 0x68
>>> +#define INV_MPU6050_WHOAMI_VALUE 0x68
>>> +#define INV_MPU6500_WHOAMI_VALUE 0x70