Re: [PATCH v2 2/3] Input: aw86938 - add driver for Awinic AW86938

From: Konrad Dybcio

Date: Mon Feb 02 2026 - 05:15:17 EST


On 2/1/26 2:49 AM, Dmitry Torokhov wrote:
> Hi Griffin,
>
> On Wed, Jan 28, 2026 at 04:51:14PM +0100, Griffin Kroah-Hartman wrote:
>> @@ -717,9 +746,19 @@ static int aw86927_detect(struct aw86927_data *haptics)
>>
>> chip_id = be16_to_cpu(read_buf);
>>
>> - if (chip_id != AW86927_CHIPID) {
>> - dev_err(haptics->dev, "Unexpected CHIPID value 0x%x\n", chip_id);
>> - return -ENODEV;
>> + switch (haptics->model) {
>> + case AW86927:
>> + if (chip_id != AW86927_CHIPID) {
>> + dev_err(haptics->dev, "Unexpected CHIPID value 0x%x\n", chip_id);
>> + return -ENODEV;
>> + }
>
> If we are able to query chip ID why do we need to have separate
> compatibles? I would define chip data structure with differences between
> variants and assign and use it instead of having separate compatible.

dt-bindings guidelines explicitly call for this, a chipid comparison
then works as a safety net

Konrad