From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ej1-f43.google.com (mail-ej1-f43.google.com [209.85.218.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 434CD33F36D for ; Tue, 5 May 2026 07:10:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.43 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777965037; cv=none; b=o8wpqDS9lzPXm+7xOnOScJFEKdtqtAhBMYgSQLaw6dAcXy0+ZWw2+rouAn93WAU95xixUkOEfogIixX9MCMRH/sAkCYAku5ysiVfXpO1wZzNHm20E66sTiAYDh52djkd+hfLkvU6BKTLq3WusNmFGoQ0M196P3GN8US0sKUB8UA= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777965037; c=relaxed/simple; bh=IT40sORbf0ZQQhp9CFs1timHqHBAoiaj31IxLF3hF5Q=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=rll0lCMqr2QZybJftWVlak+qLa4Col5PYfaNeICgnjx+8J11D/FdiEw8tWAX/cK38Qjtoax41MWxHyTjQ6sR4rkqbFBUucvdMIN3C/4yMabSB83wbX1LyN9K5Z/UWscl3USl7zxpzE25jLMEAGk0UH9b8SlnTTefwbfyUMzhRGo= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=ElmXZTX1; arc=none smtp.client-ip=209.85.218.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ElmXZTX1" Received: by mail-ej1-f43.google.com with SMTP id a640c23a62f3a-b8f97c626aaso888555966b.2 for ; Tue, 05 May 2026 00:10:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777965035; x=1778569835; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=b+pn5g5M036sGAJchvhAuWuNpnA6lbM70mHBhN/MonA=; b=ElmXZTX12A9emKddd4W7qM4/1HpGaS65aSIt1QVjZH7vRS073lZTCKs7y7UsUfEQjt ifX8YDqzdt8jbWQLUUObNPWCozJwqlNalR/DqBW12kxXuoy3PIt9f3Cw4Cuw8IXz3EeY rI4BSeqR9QlvH9nRafrHffhHSjcHfZFG0vSAr0Hrfi/juFwgNCrxzUFK0af+STtOYAX0 yGICN+X66Y3PdG70oBa7yfzBzIAHyXj/+WOQsp84RPvpkHWbmzGWCGfnyr6Y31dlXj9y Mvk0R2Hq8xpWUg3cxnoQVN0JvIenstvP5Dz41Uafz17LXLnEDU5XvPBXyu0qXZPb/dPc nxpQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777965035; x=1778569835; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=b+pn5g5M036sGAJchvhAuWuNpnA6lbM70mHBhN/MonA=; b=slIOU+DTebVw2P2LlU44Jvj4KHgZn2N44m+S4v3hamScGLRf247N8M2ncI0pT4D+Y3 JvXgF2no249qW+PbFT4BsEycGqKGb95Te+LUx/i66mh6ua/8gSboddsTyJIyvI+fWhzA WTVQqn/X/no5VZU8/a1JjgKk8j91i1o8yyGF9owvqs3U3dhObJWMATaaTbMboWhkMmun zet3EnSwhDYw+uMgGcvUPKr1j1qWoXHhp8Zkwm0TutHCC7EqUjFYhqxbTssMXn5oRxwF 4fS61on1QzBYkTrxMnfJ7xAUaB0zSD3wMQCR+TcTQvZ7iNjOZi3HmIBKJFMbYQ3RVbEh HW4w== X-Forwarded-Encrypted: i=1; AFNElJ922hXwTqPt/GUgQk1EO40WBQQ3MAO/rC00xX72e2W+hItJpBsbXFQeYs6ggQBEvyA1eJa/WSelFnG3cBY=@vger.kernel.org X-Gm-Message-State: AOJu0YyquZOoJCO7ICyBZgb7XZbKJBWF/ojjANyxdmgybQgnwaQd6f/W QFn70ZAF3QTUqlNxKFAVBmxXeSWkSAfrva/OMsv6ARcABrfvPcy/ao0d X-Gm-Gg: AeBDiev0O67R8Tkmln8POzaNhlDLxtXSCbvKwuJk5u+CftyG4czBwWIFj5IFolYd6ap XcZRS6S+C6kYpiMJ1rSpqokWwp7rvw5kKkQ9/wV26/p3Pc+kH5q5spjY1kgvohyNcTwm0K4MSAt Iz9+t9eU9s0ltjQtryFULTO5Pysldqx1x8hPeT1/FxizYU5j4tOLsE/VGCo+xtMwiG2TRo361fx XVCUpgmAL3RKIY1sN1ZyzIlJj3uhlG7Oi8KnS6q7EGqCAgkLshaEpjlcZMP9s5xcxbPvu2akylu PNq3pGSI7TOWG3Mk0nXz2GoCPby3RSjq1ngvGi6U+ySqlYy/HKN5p8vYPZ4rvpdi4RntQSIUDXv pJ2iwWTWbt72sYfXd6q/bG81hLiBxGqimq7GFqqdsTf1taRhFmr4wGCpOCxiJ+8dbBdy6L5jUO2 sTXNKO98O3aeQEbfSfid3MAtPIGGWvULn793X+OzJ25m0hdWEL X-Received: by 2002:a17:906:9f87:b0:ba7:cc67:488b with SMTP id a640c23a62f3a-bbffab33111mr713406566b.5.1777965034265; Tue, 05 May 2026 00:10:34 -0700 (PDT) Received: from localhost.localdomain ([196.235.252.38]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-bc13421bfe3sm254129966b.56.2026.05.05.00.10.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 05 May 2026 00:10:33 -0700 (PDT) From: Salah Triki To: Jonathan Cameron , David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko Cc: linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Salah Triki Subject: [PATCH v2] iio: temperature: tsys01: fix broken PROM checksum validation Date: Tue, 5 May 2026 08:10:24 +0100 Message-ID: <20260505071025.69221-1-salah.triki@gmail.com> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The current implementation of tsys01_crc_valid() incorrectly sums the first word (n_prom[0]) repeatedly instead of iterating over the 8 words retrieved from the PROM. This leads to a checksum mismatch and probe failure on hardware. According to the TSYS01 datasheet, the PROM consists of 8 words. A valid check must iterate through all 8 words to verify the integrity of the calibration data. The current driver only checks the first word 8 times. Note: This fix was identified during a code audit and is based on datasheet specifications. It has not been tested on real hardware. Fixes: 43e53407f680 ("Add tsys01 meas-spec driver support") Signed-off-by: Salah Triki --- Changes in v2: - Update commit message to clarify that the fix is based on the datasheet analysis. - Add a note mentioning that it has not been tested on real hardware. drivers/iio/temperature/tsys01.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/iio/temperature/tsys01.c b/drivers/iio/temperature/tsys01.c index 334bba6fdae6..104dd45598b0 100644 --- a/drivers/iio/temperature/tsys01.c +++ b/drivers/iio/temperature/tsys01.c @@ -119,7 +119,7 @@ static bool tsys01_crc_valid(u16 *n_prom) u8 sum = 0; for (cnt = 0; cnt < TSYS01_PROM_WORDS_NB; cnt++) - sum += ((n_prom[0] >> 8) + (n_prom[0] & 0xFF)); + sum += ((n_prom[cnt] >> 8) + (n_prom[cnt] & 0xFF)); return (sum == 0); } -- 2.43.0