Add Armada8K reset controller support
From: | Wilson Ding <dingwei-AT-marvell.com> | |
To: | <linux-kernel-AT-vger.kernel.org>, <devicetree-AT-vger.kernel.org>, <linux-arm-kernel-AT-lists.infradead.org> | |
Subject: | [PATCH v3 0/3] Add Armada8K reset controller support | |
Date: | Thu, 27 Feb 2025 11:25:33 -0800 | |
Message-ID: | <20250227192536.2426490-1-dingwei@marvell.com> | |
Cc: | <andrew-AT-lunn.ch>, <gregory.clement-AT-bootlin.com>, <sebastian.hesselbarth-AT-gmail.com>, <robh-AT-kernel.org>, <krzk+dt-AT-kernel.org>, <conor+dt-AT-kernel.org>, <p.zabel-AT-pengutronix.de>, <salee-AT-marvell.com>, <gakula-AT-marvell.com>, Wilson Ding <dingwei-AT-marvell.com> | |
Archive-link: | Article |
Armada8K has one simple register for unit soft reset, which is part of the system controller register area. The simple reset code doesn't support register access via regmap for the syscon devices. This patch series created a new driver based on the simple reset code, and add Armada8K support then. Thanks, Wilson --- Changes in v3: - Abandoned the use of the 'offset' property to specify the register offset. - Dropped the changes to 'cp110-system-controller.txt'. - Created a new dt-binding head file to define the reset lines. - Fixed the errors and warnings reported by dt_binding_check and dtbs_check. Changes in v2: - Created a new driver for SYSCON device instead of extending the simple reset code. - Allow to retreive the register offset from the 'reg' property as an alternative to the 'offset' property. - Allow to retrevie the register size from the 'reg' property to calculate the number of reset lines. - Added the new dt-binding files to document the device-tree scheme and fix DT check issues. - Updated the device-tree node name to 'reset-controller' to follow the name conventions. Changes in v1: - Init version. Wilson Ding (3): dt-bindings: reset: Add Armada8K reset controller reset: Add support for Armada8K reset controller arm64: dts: marvell: cp11x: Add reset controller node .../reset/marvell,armada8k-reset.yaml | 48 +++++ arch/arm64/boot/dts/marvell/armada-cp11x.dtsi | 8 + drivers/reset/Kconfig | 12 ++ drivers/reset/Makefile | 1 + drivers/reset/reset-simple-syscon.c | 188 ++++++++++++++++++ .../reset/marvell,armada8k-reset.h | 27 +++ include/linux/reset/reset-simple.h | 3 + 7 files changed, 287 insertions(+) create mode 100644 Documentation/devicetree/bindings/reset/marvell,armada8k-reset.yaml create mode 100644 drivers/reset/reset-simple-syscon.c create mode 100644 include/dt-bindings/reset/marvell,armada8k-reset.h -- 2.43.0