Received: by 2002:ab2:1689:0:b0:1f7:5705:b850 with SMTP id d9csp1962430lqa; Tue, 30 Apr 2024 04:51:31 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCVi0ZcatQkyWbND7WZ6Ktrh/opYiiXcHR0xVtbFWeSs/WAT2LiMt33DU7Xphj0/SPVHz8HOJ+9Ql/iWwD8bhhwULREWeiblyUkfWEl4gQ== X-Google-Smtp-Source: AGHT+IFwxLHL+p9sp6430X7TQe+JrrP1Xy17Myl5R2mePx6AtQFaP2MM0QxkC7TQ1W1qc2/vVz13 X-Received: by 2002:a17:902:e546:b0:1e5:b82:2f82 with SMTP id n6-20020a170902e54600b001e50b822f82mr19315837plf.42.1714477891483; Tue, 30 Apr 2024 04:51:31 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1714477891; cv=pass; d=google.com; s=arc-20160816; b=BbF4W6yefmFU+JwuXDbmChB71gnNCEOtODsYmg4eIQU6bU5uZykQ2elWMnatYpLeIb V5+pYVOCt5Tj1TrrNGi159AVs4uIJGC6A70zUtZ007yNsho1CpzQPSY+sQ/uCOFSgxgt +SeYmelOTY4BKurfS4a+mDO3ECP8cgJ0M2+YsCGp4lAaNRA6ZhfrnHFrX6oT+KJW6o8G OD/SIbJnAVC58OWQZgzIZwr1+XDa5GtwHZ9BEWng1DLr564o9O3jED/2/kANQKtQyvXv ErXbxJWaMhTBN5/iqEMR+HvRj3TQrPOKLExm7iIMfkkf6PIdgw9Jcw1nFFpgMB1vAc7K DOcQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=UcWrrtJOyPUrtWd0ndL/C1e1iaVtq+hs6bmt/13oPRs=; fh=aqm1mi/4lbFGCCW5q/kLXzFGYiABj3zjII+pGIaAGTo=; b=DLbbv5k6z0kVc4tdenRrl0mDWoxgB728ZxN0pKbtcZ8/Wp4Q0Qlf9BepxTgrAHprbn mUcfruagwPwJfKaOHhqkm15dYp8ADZpiKx5koZd+QoVNprXHhyBEX1AN3i/VSWj+zu4U eGw1BYZSCfgyIDswnEUeO8kjHJMRn67s3ly2h4IqZGJI9tN5e0C/zrW77ZQmW0uyCR7T n7OKwEITviMdBOdWhSsUoJKppw9VXlbWk1AA4jrY5W1rHEQktnrrmIWGCZUqIVdiFYMf 4Bl1hOxBuQYNNS3+JIL1l8AmCukRAhkeW89VcwtjIkh1CucxraBf5+w5kLg10OTzSyEi 4Tzw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=fail header.i=@kernel.org header.s=k20201202 header.b=gMotWVD+; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-crypto+bounces-3949-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-crypto+bounces-3949-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [2604:1380:45e3:2400::1]) by mx.google.com with ESMTPS id e13-20020a170903240d00b001e10a526a94si22063188plo.129.2024.04.30.04.51.31 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 30 Apr 2024 04:51:31 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto+bounces-3949-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) client-ip=2604:1380:45e3:2400::1; Authentication-Results: mx.google.com; dkim=fail header.i=@kernel.org header.s=k20201202 header.b=gMotWVD+; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-crypto+bounces-3949-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-crypto+bounces-3949-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 1E08E28315A for ; Tue, 30 Apr 2024 11:51:31 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 1EE6513D246; Tue, 30 Apr 2024 11:51:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="gMotWVD+" X-Original-To: linux-crypto@vger.kernel.org Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C46691311B0; Tue, 30 Apr 2024 11:51:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1714477881; cv=none; b=na3uTiXUcqArIW5vGtnH0oovOIx2+sTCzZqxDRrP71aofxQqSbCwCicroJRmcVqDiSzV29Rm51ROawB9hOnzSs6sQstQKScrThcwttX55M9lV5FWEGLs3RZWROU5JjfPuxUbVois38lZl0jeFhuDkQizrmcmrvOF+t+06i5ukRg= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1714477881; c=relaxed/simple; bh=vBMSAoS4FslXBKMp6Bl0M5x8r+e0FbC1+oCjbaWlU+U=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type; b=Veq64Z2g6VZ8yaZtUdsSWhHyFmhXGaYocvbq1droZ/zZNL0NxWUsQ6XOYKh0+h4Hm9Hm10r005QoeuzTDk5PgNY1/hpTTbIOoIjZA9vNmo/hH1BiJgOpdjljuf43/RlKfnX5tjZLj4RjHCl/nRRAIEHZhmbD7sHfY0mOrh9rsLU= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=gMotWVD+; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id 58150C2BBFC; Tue, 30 Apr 2024 11:51:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1714477881; bh=vBMSAoS4FslXBKMp6Bl0M5x8r+e0FbC1+oCjbaWlU+U=; h=From:List-Id:To:Cc:Subject:Date:From; b=gMotWVD+CJA+GM/SxYj9XE7Mk8Hco1CyjfuSrPqdU4hoQhynWYHtQIf0WOOfdbiSU lU++GicjvEdHyvtJ/8558SA6RYJnUoN63kWFqctUrcB7K3zk6sGEgwtD97p87r32UU bkzxDigyd5GNgegCk/2QZdxTAtFYahWogTFfgVxh86MKfx6FkmyV1PQPc4VyyNtenw CLmUjK9nDlCymDKeaptNcIMJi3bKb05F/yTrnkzPo0rGMK1ooGAhbovsZIsSUdgL5J n76Xq8hcCI/tuQIThcly+VDWJj5hmkXapZ88+F+emQBPlrTjdemHej3Mk/lC3n0TS1 /Ll+rmIzu0bHQ== From: =?UTF-8?q?Marek=20Beh=C3=BAn?= To: Gregory CLEMENT , Arnd Bergmann , soc@kernel.org, arm@kernel.org, Andy Shevchenko , Hans de Goede , =?UTF-8?q?Ilpo=20J=C3=A4rvinen?= , Alessandro Zummo , Alexandre Belloni , Bartosz Golaszewski , Christophe JAILLET , Dan Carpenter , devicetree@vger.kernel.org, Greg Kroah-Hartman , Guenter Roeck , Herbert Xu , Krzysztof Kozlowski , Linus Walleij , linux-crypto@vger.kernel.org, linux-gpio@vger.kernel.org, linux-rtc@vger.kernel.org, linux-watchdog@vger.kernel.org, Olivia Mackall , Rob Herring , Wim Van Sebroeck Cc: =?UTF-8?q?Marek=20Beh=C3=BAn?= , Andrew Lunn , Conor Dooley , Krzysztof Kozlowski , Rob Herring , Sebastian Hesselbarth , =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Subject: [PATCH v8 0/9] Turris Omnia MCU driver Date: Tue, 30 Apr 2024 13:51:02 +0200 Message-ID: <20240430115111.3453-1-kabel@kernel.org> X-Mailer: git-send-email 2.43.2 Precedence: bulk X-Mailing-List: linux-crypto@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Hello Andy, Hans, Ilpo, Arnd, Gregory, and others, this is v8 of the series adding Turris Omnia MCU driver. This series depends on the immutable branch between LEDs and locking, introducing devm_mutex_init(), see the PR https://lore.kernel.org/linux-leds/20240412084616.GR2399047@google.com/ See also cover letters for v1, v2, v3, v4, v5, v6 and v7: https://patchwork.kernel.org/project/linux-soc/cover/20230823161012.6986-1-kabel@kernel.org/ https://patchwork.kernel.org/project/linux-soc/cover/20230919103815.16818-1-kabel@kernel.org/ https://patchwork.kernel.org/project/linux-soc/cover/20231023143130.11602-1-kabel@kernel.org/ https://patchwork.kernel.org/project/linux-soc/cover/20231026161803.16750-1-kabel@kernel.org/ https://patchwork.kernel.org/project/linux-soc/cover/20240323164359.21642-1-kabel@kernel.org/ https://patchwork.kernel.org/project/linux-soc/cover/20240418121116.22184-1-kabel@kernel.org/ https://patchwork.kernel.org/project/linux-soc/cover/20240424173809.7214-1-kabel@kernel.org/ Changes since v7: - fixed wrong $id path in DT binding (patch 1) - removed resource managed IRQ mapping disposal, which is not needed, as pointed out by Andy (patches 6, 7) - added some more #includes (for linux/device.h, linux/interrupt.h, linux/hw_random.h) (patches 3, 6, 7) - dropped the Fixes tags from the DT changes (patches 8, 9), with an explanation of this added into the commit message of patch 8, as suggested by Andrew Marek BehĂșn (9): dt-bindings: firmware: add cznic,turris-omnia-mcu binding platform: cznic: Add preliminary support for Turris Omnia MCU platform: cznic: turris-omnia-mcu: Add support for MCU connected GPIOs platform: cznic: turris-omnia-mcu: Add support for poweroff and wakeup platform: cznic: turris-omnia-mcu: Add support for MCU watchdog platform: cznic: turris-omnia-mcu: Add support for MCU provided TRNG platform: cznic: turris-omnia-mcu: Add support for digital message signing via debugfs ARM: dts: turris-omnia: Add MCU system-controller node ARM: dts: turris-omnia: Add GPIO key node for front button .../ABI/testing/debugfs-turris-omnia-mcu | 13 + .../sysfs-bus-i2c-devices-turris-omnia-mcu | 126 ++ .../firmware/cznic,turris-omnia-mcu.yaml | 86 ++ MAINTAINERS | 5 + .../dts/marvell/armada-385-turris-omnia.dts | 35 +- drivers/platform/Kconfig | 2 + drivers/platform/Makefile | 1 + drivers/platform/cznic/Kconfig | 51 + drivers/platform/cznic/Makefile | 9 + .../platform/cznic/turris-omnia-mcu-base.c | 439 +++++++ .../platform/cznic/turris-omnia-mcu-debugfs.c | 207 ++++ .../platform/cznic/turris-omnia-mcu-gpio.c | 1048 +++++++++++++++++ .../cznic/turris-omnia-mcu-sys-off-wakeup.c | 258 ++++ .../platform/cznic/turris-omnia-mcu-trng.c | 101 ++ .../cznic/turris-omnia-mcu-watchdog.c | 123 ++ drivers/platform/cznic/turris-omnia-mcu.h | 188 +++ include/linux/turris-omnia-mcu-interface.h | 249 ++++ 17 files changed, 2940 insertions(+), 1 deletion(-) create mode 100644 Documentation/ABI/testing/debugfs-turris-omnia-mcu create mode 100644 Documentation/ABI/testing/sysfs-bus-i2c-devices-turris-omnia-mcu create mode 100644 Documentation/devicetree/bindings/firmware/cznic,turris-omnia-mcu.yaml create mode 100644 drivers/platform/cznic/Kconfig create mode 100644 drivers/platform/cznic/Makefile create mode 100644 drivers/platform/cznic/turris-omnia-mcu-base.c create mode 100644 drivers/platform/cznic/turris-omnia-mcu-debugfs.c create mode 100644 drivers/platform/cznic/turris-omnia-mcu-gpio.c create mode 100644 drivers/platform/cznic/turris-omnia-mcu-sys-off-wakeup.c create mode 100644 drivers/platform/cznic/turris-omnia-mcu-trng.c create mode 100644 drivers/platform/cznic/turris-omnia-mcu-watchdog.c create mode 100644 drivers/platform/cznic/turris-omnia-mcu.h create mode 100644 include/linux/turris-omnia-mcu-interface.h -- 2.43.2