{"id":2233322,"url":"http://patchwork.ozlabs.org/api/1.2/patches/2233322/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-gpio/patch/20260506-upstream_pinctrl-v9-2-0636e22343ad@aspeedtech.com/","project":{"id":42,"url":"http://patchwork.ozlabs.org/api/1.2/projects/42/?format=json","name":"Linux GPIO development","link_name":"linux-gpio","list_id":"linux-gpio.vger.kernel.org","list_email":"linux-gpio@vger.kernel.org","web_url":"","scm_url":"","webscm_url":"","list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20260506-upstream_pinctrl-v9-2-0636e22343ad@aspeedtech.com>","list_archive_url":null,"date":"2026-05-06T08:06:19","name":"[v9,2/3] dt-bindings: mfd: aspeed,ast2x00-scu: Describe AST2700 SCU0","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"9a6d18419cde8b3011d052c23c805299696074d9","submitter":{"id":80235,"url":"http://patchwork.ozlabs.org/api/1.2/people/80235/?format=json","name":"Billy Tsai","email":"billy_tsai@aspeedtech.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linux-gpio/patch/20260506-upstream_pinctrl-v9-2-0636e22343ad@aspeedtech.com/mbox/","series":[{"id":502935,"url":"http://patchwork.ozlabs.org/api/1.2/series/502935/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-gpio/list/?series=502935","date":"2026-05-06T08:06:20","name":"pinctrl: aspeed: Add AST2700 SoC0 support","version":9,"mbox":"http://patchwork.ozlabs.org/series/502935/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2233322/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2233322/checks/","tags":{},"related":[],"headers":{"Return-Path":"\n <linux-gpio+bounces-36265-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-gpio@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c09:e001:a7::12fc:5321; helo=sto.lore.kernel.org;\n envelope-from=linux-gpio+bounces-36265-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=211.20.114.72","smtp.subspace.kernel.org;\n dmarc=pass (p=quarantine dis=none) header.from=aspeedtech.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=aspeedtech.com"],"Received":["from sto.lore.kernel.org (sto.lore.kernel.org\n [IPv6:2600:3c09:e001:a7::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g9SmK63jqz1yJq\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 06 May 2026 18:12:33 +1000 (AEST)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sto.lore.kernel.org (Postfix) with ESMTP id CEF7230055B2\n\tfor <incoming@patchwork.ozlabs.org>; Wed,  6 May 2026 08:12:24 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 9E6153E3D88;\n\tWed,  6 May 2026 08:12:14 +0000 (UTC)","from twmbx01.aspeedtech.com (mail.aspeedtech.com [211.20.114.72])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id A19E53E3C41;\n\tWed,  6 May 2026 08:12:12 +0000 (UTC)","from TWMBX01.aspeed.com (192.168.0.62) by TWMBX01.aspeed.com\n (192.168.0.62) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1748.10; Wed, 6 May\n 2026 16:06:58 +0800","from [127.0.1.1] (192.168.10.13) by TWMBX01.aspeed.com\n (192.168.0.62) with Microsoft SMTP Server id 15.2.1748.10 via Frontend\n Transport; Wed, 6 May 2026 16:06:58 +0800"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1778055134; cv=none;\n b=ZKliovSy9gFxWAS4cTS69M1zNWtnXBwlRMitXwKf1dZqGfZ4pvFbwtTDM47O0fuZ8zGOe0xJb+SGik9oM00gd69z+tbD0MOOAIK67XfZgOIcNXqSajJbYyidhitizobPSfweQZrfSNajzYLyoVCmEzyfk7FRNxQY9Y5MJFNEQDE=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1778055134; c=relaxed/simple;\n\tbh=ruVKvpSBaq4Bcz/8i9J/C5cM6Jsi0IxDofl/fqhw4Bs=;\n\th=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References:\n\t In-Reply-To:To:CC;\n b=NCLGgacGjSx+HrTT8HVNW4RqI31l6XrOwyomhiX06sV7HIt0TIO9ls3cKwtvvpb9smmKSIFvh12999n7SaYvGDl3vcWCa4NrQDJVfVH405vUsrRkWDTyk/jQlh7QTX49yGskhEGwx043dhGUDnhRfyq0PBSmLJSssXqswBxzVQo=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=quarantine dis=none) header.from=aspeedtech.com;\n spf=pass smtp.mailfrom=aspeedtech.com; arc=none smtp.client-ip=211.20.114.72","From":"Billy Tsai <billy_tsai@aspeedtech.com>","Date":"Wed, 6 May 2026 16:06:19 +0800","Subject":"[PATCH v9 2/3] dt-bindings: mfd: aspeed,ast2x00-scu: Describe\n AST2700 SCU0","Precedence":"bulk","X-Mailing-List":"linux-gpio@vger.kernel.org","List-Id":"<linux-gpio.vger.kernel.org>","List-Subscribe":"<mailto:linux-gpio+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-gpio+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"7bit","Message-ID":"<20260506-upstream_pinctrl-v9-2-0636e22343ad@aspeedtech.com>","References":"<20260506-upstream_pinctrl-v9-0-0636e22343ad@aspeedtech.com>","In-Reply-To":"<20260506-upstream_pinctrl-v9-0-0636e22343ad@aspeedtech.com>","To":"Lee Jones <lee@kernel.org>, Rob Herring <robh@kernel.org>, \"Krzysztof\n Kozlowski\" <krzk+dt@kernel.org>, Conor Dooley <conor+dt@kernel.org>, \"Joel\n Stanley\" <joel@jms.id.au>, Andrew Jeffery <andrew@codeconstruct.com.au>,\n\t\"Linus Walleij\" <linusw@kernel.org>, Billy Tsai <billy_tsai@aspeedtech.com>,\n\t\"Bartosz Golaszewski\" <brgl@kernel.org>, Ryan Chen <ryan_chen@aspeedtech.com>","CC":"Andrew Jeffery <andrew@aj.id.au>, <devicetree@vger.kernel.org>,\n\t<linux-arm-kernel@lists.infradead.org>, <linux-aspeed@lists.ozlabs.org>,\n\t<linux-kernel@vger.kernel.org>, <openbmc@lists.ozlabs.org>,\n\t<linux-gpio@vger.kernel.org>, <linux-clk@vger.kernel.org>","X-Mailer":"b4 0.14.3","X-Developer-Signature":"v=1; a=ed25519-sha256; t=1778054817; l=5341;\n i=billy_tsai@aspeedtech.com; s=20251118; h=from:subject:message-id;\n bh=ruVKvpSBaq4Bcz/8i9J/C5cM6Jsi0IxDofl/fqhw4Bs=;\n b=g4mts3EpgRaqlZT68vfmeJIROUXUeVmr2BXXASjDlKn4DkI0PF/HKeFkamE+fA9GKE4/2H1vF\n e5Dv8klvwk1BtAF7fHxHNJ+EC1LVVOFpN/ivA0euuuOEJTClBMilRyn","X-Developer-Key":"i=billy_tsai@aspeedtech.com; a=ed25519;\n pk=/A8qvgZ6CPfnwKgT6/+k+nvXOkN477MshEGJvVdzeeQ="},"content":"AST2700 consists of two interconnected SoC instances, each with its own\nSystem Control Unit (SCU). The SCU0 provides pin control, interrupt\ncontrollers, clocks, resets, and address-space mappings for the\nSecondary and Tertiary Service Processors (SSP and TSP).\n\nDescribe the SSP/TSP address mappings using the standard\nmemory-region and memory-region-names properties.\n\nDisallow legacy child nodes that are not present on AST2700, including\np2a-control and smp-memram. The latter is unnecessary as software can\naccess the scratch registers via the SCU syscon.\n\nAlso allow the AST2700 SoC0 pin controller to be described as a child\nnode of the SCU0, and add an example illustrating the SCU0 layout,\nincluding reserved-memory, interrupt controllers, and pinctrl.\n\nReviewed-by: Rob Herring (Arm) <robh@kernel.org>\nSigned-off-by: Billy Tsai <billy_tsai@aspeedtech.com>\n---\n .../bindings/mfd/aspeed,ast2x00-scu.yaml           | 114 +++++++++++++++++++++\n 1 file changed, 114 insertions(+)","diff":"diff --git a/Documentation/devicetree/bindings/mfd/aspeed,ast2x00-scu.yaml b/Documentation/devicetree/bindings/mfd/aspeed,ast2x00-scu.yaml\nindex a87f31fce019..0d5e168b0309 100644\n--- a/Documentation/devicetree/bindings/mfd/aspeed,ast2x00-scu.yaml\n+++ b/Documentation/devicetree/bindings/mfd/aspeed,ast2x00-scu.yaml\n@@ -46,6 +46,18 @@ properties:\n   '#reset-cells':\n     const: 1\n \n+  memory-region:\n+    items:\n+      - description: Region mapped through the first SSP address window.\n+      - description: Region mapped through the second SSP address window.\n+      - description: Region mapped through the TSP address window.\n+\n+  memory-region-names:\n+    items:\n+      - const: ssp-0\n+      - const: ssp-1\n+      - const: tsp\n+\n patternProperties:\n   '^p2a-control@[0-9a-f]+$':\n     description: >\n@@ -87,6 +99,7 @@ patternProperties:\n             - aspeed,ast2400-pinctrl\n             - aspeed,ast2500-pinctrl\n             - aspeed,ast2600-pinctrl\n+            - aspeed,ast2700-soc0-pinctrl\n \n     required:\n       - compatible\n@@ -156,6 +169,30 @@ required:\n   - '#clock-cells'\n   - '#reset-cells'\n \n+allOf:\n+  - if:\n+      properties:\n+        compatible:\n+          contains:\n+            enum:\n+              - aspeed,ast2700-scu0\n+              - aspeed,ast2700-scu1\n+    then:\n+      patternProperties:\n+        '^p2a-control@[0-9a-f]+$': false\n+        '^smp-memram@[0-9a-f]+$': false\n+\n+  - if:\n+      not:\n+        properties:\n+          compatible:\n+            contains:\n+              const: aspeed,ast2700-scu0\n+    then:\n+      properties:\n+        memory-region: false\n+        memory-region-names: false\n+\n additionalProperties: false\n \n examples:\n@@ -180,4 +217,81 @@ examples:\n             reg = <0x7c 0x4>, <0x150 0x8>;\n         };\n     };\n+\n+  - |\n+    / {\n+        #address-cells = <2>;\n+        #size-cells = <2>;\n+\n+        reserved-memory {\n+            #address-cells = <2>;\n+            #size-cells = <2>;\n+            ranges;\n+\n+            ssp_region_0: memory@400000000 {\n+                reg = <0x4 0x00000000 0x0 0x01000000>;\n+                no-map;\n+            };\n+\n+            ssp_region_1: memory@401000000 {\n+                reg = <0x4 0x01000000 0x0 0x01000000>;\n+                no-map;\n+            };\n+\n+            tsp_region: memory@402000000 {\n+                reg = <0x4 0x02000000 0x0 0x01000000>;\n+                no-map;\n+            };\n+        };\n+\n+        bus {\n+            #address-cells = <2>;\n+            #size-cells = <2>;\n+\n+            syscon@12c02000 {\n+                compatible = \"aspeed,ast2700-scu0\", \"syscon\", \"simple-mfd\";\n+                reg = <0 0x12c02000 0 0x1000>;\n+                ranges = <0x0 0x0 0x12c02000 0x1000>;\n+                #address-cells = <1>;\n+                #size-cells = <1>;\n+                #clock-cells = <1>;\n+                #reset-cells = <1>;\n+\n+                memory-region = <&ssp_region_0>, <&ssp_region_1>,\n+                                <&tsp_region>;\n+                memory-region-names = \"ssp-0\", \"ssp-1\", \"tsp\";\n+\n+                silicon-id@0 {\n+                    compatible = \"aspeed,ast2700-silicon-id\", \"aspeed,silicon-id\";\n+                    reg = <0x0 0x4>;\n+                };\n+\n+                interrupt-controller@1b0 {\n+                    compatible = \"aspeed,ast2700-scu-ic0\";\n+                    reg = <0x1b0 0x4>;\n+                    #interrupt-cells = <1>;\n+                    interrupts-extended = <&intc0 97>;\n+                    interrupt-controller;\n+                };\n+\n+                interrupt-controller@1e0 {\n+                    compatible = \"aspeed,ast2700-scu-ic1\";\n+                    reg = <0x1e0 0x4>;\n+                    #interrupt-cells = <1>;\n+                    interrupts-extended = <&intc0 98>;\n+                    interrupt-controller;\n+                };\n+\n+                pinctrl@400 {\n+                    compatible = \"aspeed,ast2700-soc0-pinctrl\";\n+                    reg = <0x400 0x318>;\n+                    emmc-state {\n+                        function = \"EMMC\";\n+                        groups = \"EMMCG1\";\n+                    };\n+                };\n+            };\n+        };\n+    };\n+\n ...\n","prefixes":["v9","2/3"]}