On Fri, Jan 26, 2018 at 02:14:38PM +0900, Andi Shyti wrote: > Hi Simon and Dmitry, > > On Wed, Jan 24, 2018 at 01:32:01PM -0800, Dmitry Torokhov wrote: > > From: Simon Shields <simon@xxxxxxxxxxxxx> > > > > MMS152 has no configuration registers, but the packet format used in > > interrupts is identical to mms114. > > > > Signed-off-by: Simon Shields <simon@xxxxxxxxxxxxx> > > Patchwork-Id: 10125841 > > Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> > > also here > > Reviewed-by: Andi Shyti <andi.shyti@xxxxxxxxxxx> > Tested-by: Andi Shyti <andi.shyti@xxxxxxxxxxx> > > one small nitpick: > > > @@ -239,14 +249,33 @@ static int mms114_get_version(struct mms114_data *data) > > { > > struct device *dev = &data->client->dev; > > u8 buf[6]; > > + int group; > > int error; > > do we really need to define a new 'group' variable? I like it, that's why I added it ;) As Marcus mentioned, we cant use 'buf' to store the value as buf is unsigned and i2c_smbus_read_byte_data() may return negative error code. And I do not want to use 'error' variable because logically we are trying to get group value, not error. Hence a dedicated variable. It's gonna be optimized away anyway. Thanks. > > Andi > > > - error = __mms114_read_reg(data, MMS114_TSP_REV, 6, buf); > > - if (error < 0) > > - return error; > > + switch (data->type) { > > + case TYPE_MMS152: > > + error = __mms114_read_reg(data, MMS152_FW_REV, 3, buf); > > + if (error) > > + return error; > > + > > + group = i2c_smbus_read_byte_data(data->client, > > + MMS152_COMPAT_GROUP); > > + if (group < 0) > > + return group; > > + > > + dev_info(dev, "TSP FW Rev: bootloader 0x%x / core 0x%x / config 0x%x, Compat group: %c\n", > > + buf[0], buf[1], buf[2], group); > > + break; > > + > > + case TYPE_MMS114: > > + error = __mms114_read_reg(data, MMS114_TSP_REV, 6, buf); > > + if (error) > > + return error; > > > > - dev_info(dev, "TSP Rev: 0x%x, HW Rev: 0x%x, Firmware Ver: 0x%x\n", > > - buf[0], buf[1], buf[3]); > > + dev_info(dev, "TSP Rev: 0x%x, HW Rev: 0x%x, Firmware Ver: 0x%x\n", > > + buf[0], buf[1], buf[3]); > > + break; > > + } > > > > return 0; > > } -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html