Thread (13 messages) 13 messages, 2 authors, 2022-05-27

Re: [PATCH 4/5] Input: zinitix - Read and cache device version numbers

From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2022-05-27 05:47:17

On Sun, Apr 10, 2022 at 02:00:58PM +0200, Linus Walleij wrote:
 static int zinitix_init_touch(struct bt541_ts_data *bt541)
 {
 	struct i2c_client *client = bt541->client;
 	int i;
 	int error;
+	static bool read_static = false;
This needs to be per-device state.
quoted hunk ↗ jump to hunk
 
 	error = zinitix_write_cmd(client, ZINITIX_SWRESET_CMD);
 	if (error) {
@@ -203,6 +222,24 @@ static int zinitix_init_touch(struct bt541_ts_data *bt541)
 		return error;
 	}
 
+	/*
+	 * Read and cache the chip revision and firmware version the first time
+	 * we get here.
+	 */
+	if (!read_static) {
+		bt541->chip_revision = zinitix_get_u16_reg(bt541,
+					ZINITIX_CHIP_REVISION);
+		bt541->firmware_version = zinitix_get_u16_reg(bt541,
+					ZINITIX_FIRMWARE_VERSION);
+		bt541->regdata_version = zinitix_get_u16_reg(bt541,
+					ZINITIX_DATA_VERSION_REG);
+		dev_info(bt541->dev,
+			 "chip revision %04x firmware version %04x regdata version %04x\n",
+			 bt541->chip_revision, bt541->firmware_version,
+			 bt541->regdata_version);
Is this only for bringup efforts?
+		read_static = true;
+	}
+
 	error = zinitix_write_u16(client, ZINITIX_INT_ENABLE_FLAG, 0x0);
 	if (error) {
 		dev_err(bt541->dev,
-- 
2.35.1
Thanks.

-- 
Dmitry
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help