From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f51.google.com (mail-wr1-f51.google.com [209.85.221.51]) (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 F0CC33A75A6 for ; Tue, 12 May 2026 22:44:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.51 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778625858; cv=none; b=mvVP14Luy6KEyZ01nrg+4l66xEe/533chqBhvUIbE/Sr2Io8gyEBtEpB4WU9VWDX/ueoWQPkJyDNYur8hDfz68fdzDwh98BIoCuLFv935tZaF9w6zm43lQyCScjpa0rEwRN8nA6Mj11OubNzfWf7jlwaUeo2qJij9UxM4X8jfIQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778625858; c=relaxed/simple; bh=QkPnUvjHa1+OtKWGRGtD7MPg6uzHbcQWt5mYvvIiRZI=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=mSBihHV1nSa49Y1PX2GZYTxuphw0mr/jWf6nWu9kjlK+OOs07uuMft/X7R2IGzU0AsA64mpUwS0PH7WjDFruFj5m3BwQ8QXu1hchk9kTeDf/sqffRz9ac4VN8NSzNwNjggQhVTyhbDBnkw/KiA9Lu1eFY3KAEzUWH1xNOnMjDMk= 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=OreJbEIC; arc=none smtp.client-ip=209.85.221.51 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="OreJbEIC" Received: by mail-wr1-f51.google.com with SMTP id ffacd0b85a97d-43d7828221bso303408f8f.3 for ; Tue, 12 May 2026 15:44:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1778625855; x=1779230655; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Xgh7Qwrou5qNvOkoF1+XnxYAOb54Zebpq26aOMB+2tM=; b=OreJbEICdABUqThyVYA2XCUTjQMhakLt8klZ6JFCnMmlnIzXOBTTDQYgQhs4IgUq8C DE+iQ1WTj9F6F0Eu8NOzKGAAek47859vl3r5fmdufHe+g8bnpaJ3MT2Yx42zilW4eOU9 lMUJQ0DOJmFpm2f/DphTCpo9WegJUHtOmwtC1NPAhKXm/yS6wiLRlrz9bSz9a9YoVmPO 9U8F7jV0o6yvJquKbWWkwpbG3LkOeNxtijHmvDUFjDfHDsUNaaFpimhlTKVtBJfj6FiG IwSUK5FDF4dBcKIJWZ+4tVl1KPaKeFLNef5nmWxYgcFINpAWzHkheco2VTV1ByznofEx IaIw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778625855; x=1779230655; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Xgh7Qwrou5qNvOkoF1+XnxYAOb54Zebpq26aOMB+2tM=; b=QYXyzMZC3kRJiZNcpWF5tB1IGMbMyxZL8csTVzVyxr/6ih0aWBz5wvSHN+vPsplQMC yhN+D9LHMLbzBRIshc0gSeeJhqJFUlnyKYnqkDarICynIBKO5fO3TT56OSAzzQf4aotp J+2F0RimSdlrf20DtSLabtk3DVMhoiaHcDiH6eNT4sJfwHdMkX44Ze6lYUDmae+CChiT bSiBM7U+0wai4RUmQx14rzpuSGV24fN0R0HmCyXZ2FFEBO8wo8lHojQI7YmZW8/xJpdx SY6fNuuiGtP/ur5ArO1NpxajzYvKLvudNsPvm3iPG0JyLla+GkcbeEq4aoUMiWqmlOrW bDuQ== X-Forwarded-Encrypted: i=1; AFNElJ+8Hk7MhmkhbivjjepzKrSJd1nI+ox7b7l4xkliguEA1T/PtnxOkumbucZKslOTSY4dga8iJBK1UIW5Xuo=@vger.kernel.org X-Gm-Message-State: AOJu0Yz0z25qc981xLAO6DeQeqJHPkikG98uPUuN5j0+xUZ4rqaRgPAu 8dWY6xep2UgySWW93Atl5p6ExZxZuabVp+O2p9fB+X77uLrQLeZXT3Pc X-Gm-Gg: Acq92OFmcdi7IlAytfPVXWGVzp0EXmNNn5Nvxas1yb9k2+4ZF9muSzIMUV4nS2lDjfN GfHXE0Qe9eeAyO8IoJ1bBpE/JABGfpL5tp68FjI9HDgAxKPhoSaaQNe1bG4PfzTLWlY0B50MCzT R9Zk3MiVTZ/rXPcnhZS6G/ebAXeyu8xcvW+k8GzcT7jK3b6bPXiD+6me4fg6mOiG2zZ7QdmNjat YhYFzPXW1qU0dlBEK/M8X8Jd3QN8qi1GUnNbX/pMdto46fO3b5D1iO4Qsjsu+5ZrtejvNF+yG3b iD5qMldiQxT5lUUBXP0/rnPCLkyEC3+GXF2239hKO+32hde111+r1yTmwDVdzyYsZdZ816p5MYJ QA3u4jo5N8ua6k91mu3wYFu7D4uFdpe2Gl3cCla8gfRFzf2WrzMmygufsl5L8e5skzVfP/fY8Gc w2+SPcn9TPj9acwEKFES/KxlLZYb+npicqbJ7T/c5SNqyRucrpMTMLSsADvK3losk= X-Received: by 2002:a05:600c:1910:b0:487:1fbb:5a28 with SMTP id 5b1f17b1804b1-48fc9a09523mr5008635e9.1.1778625855234; Tue, 12 May 2026 15:44:15 -0700 (PDT) Received: from menon.v.cablecom.net (84-74-0-139.dclient.hispeed.ch. [84.74.0.139]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48fce385ea5sm3194025e9.14.2026.05.12.15.44.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 12 May 2026 15:44:14 -0700 (PDT) From: Lothar Rubusch To: thorsten.blum@linux.dev, herbert@gondor.apana.org.au, davem@davemloft.net, nicolas.ferre@microchip.com, alexandre.belloni@bootlin.com, claudiu.beznea@tuxon.dev Cc: linux-crypto@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, l.rubusch@gmail.com Subject: [PATCH 07/12] crypto: atmel - expose CONFIG zone through sysfs Date: Tue, 12 May 2026 22:43:44 +0000 Message-Id: <20260512224349.64621-8-l.rubusch@gmail.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20260512224349.64621-1-l.rubusch@gmail.com> References: <20260512224349.64621-1-l.rubusch@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Expose the CONFIG EEPROM zone through a read-only sysfs attribute for Atmel I2C crypto devices. The CONFIG zone contains device configuration state, including slot configuration and lock status, which is useful for debugging and verifying provisioning state. Reuse the generic EEPROM display helper provided by the Atmel I2C core driver to expose the CONFIG zone for both SHA204A and ECC devices. Signed-off-by: Lothar Rubusch --- drivers/crypto/atmel-ecc.c | 7 +++++++ drivers/crypto/atmel-sha204a.c | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/drivers/crypto/atmel-ecc.c b/drivers/crypto/atmel-ecc.c index b5f2d44ec74c..f08fdf284b60 100644 --- a/drivers/crypto/atmel-ecc.c +++ b/drivers/crypto/atmel-ecc.c @@ -23,6 +23,12 @@ #include #include "atmel-i2c.h" +static ssize_t config_show(struct device *dev, struct device_attribute *attr, char *buf) +{ + return atmel_i2c_eeprom_display(dev, attr, buf, ATMEL_EEPROM_CONFIG_ZONE); +} +static DEVICE_ATTR_ADMIN_RO(config); + static ssize_t otp_show(struct device *dev, struct device_attribute *attr, char *buf) { return atmel_i2c_eeprom_display(dev, attr, buf, ATMEL_EEPROM_OTP_ZONE); @@ -30,6 +36,7 @@ static ssize_t otp_show(struct device *dev, struct device_attribute *attr, char static DEVICE_ATTR_RO(otp); static struct attribute *atmel_ecc508a_attrs[] = { + &dev_attr_config.attr, &dev_attr_otp.attr, NULL }; diff --git a/drivers/crypto/atmel-sha204a.c b/drivers/crypto/atmel-sha204a.c index 4f10e826e675..341554b7b7a2 100644 --- a/drivers/crypto/atmel-sha204a.c +++ b/drivers/crypto/atmel-sha204a.c @@ -19,6 +19,12 @@ #include #include "atmel-i2c.h" +static ssize_t config_show(struct device *dev, struct device_attribute *attr, char *buf) +{ + return atmel_i2c_eeprom_display(dev, attr, buf, ATMEL_EEPROM_CONFIG_ZONE); +} +static DEVICE_ATTR_ADMIN_RO(config); + static ssize_t otp_show(struct device *dev, struct device_attribute *attr, char *buf) { @@ -27,6 +33,7 @@ static ssize_t otp_show(struct device *dev, static DEVICE_ATTR_RO(otp); static struct attribute *atmel_sha204a_attrs[] = { + &dev_attr_config.attr, &dev_attr_otp.attr, NULL }; -- 2.53.0