{"id":2224000,"url":"http://patchwork.ozlabs.org/api/patches/2224000/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-pwm/patch/20260416134037.3160537-4-richard.genoud@bootlin.com/","project":{"id":38,"url":"http://patchwork.ozlabs.org/api/projects/38/?format=json","name":"Linux PWM development","link_name":"linux-pwm","list_id":"linux-pwm.vger.kernel.org","list_email":"linux-pwm@vger.kernel.org","web_url":"","scm_url":"","webscm_url":"","list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20260416134037.3160537-4-richard.genoud@bootlin.com>","list_archive_url":null,"date":"2026-04-16T13:40:36","name":"[v6,3/4] arm64: dts: allwinner: h616: add PWM controller","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"5922a47ea853f77c5b00b1a191e7361bbb9dabde","submitter":{"id":88519,"url":"http://patchwork.ozlabs.org/api/people/88519/?format=json","name":"Richard GENOUD","email":"richard.genoud@bootlin.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linux-pwm/patch/20260416134037.3160537-4-richard.genoud@bootlin.com/mbox/","series":[{"id":500165,"url":"http://patchwork.ozlabs.org/api/series/500165/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-pwm/list/?series=500165","date":"2026-04-16T13:40:34","name":"Introduce Allwinner H616 PWM controller","version":6,"mbox":"http://patchwork.ozlabs.org/series/500165/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2224000/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2224000/checks/","tags":{},"related":[],"headers":{"Return-Path":"\n <linux-pwm+bounces-8619-incoming=patchwork.ozlabs.org@vger.kernel.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-pwm@vger.kernel.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=bootlin.com header.i=@bootlin.com header.a=rsa-sha256\n header.s=dkim header.b=gmIVbHzw;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c0a:e001:db::12fc:5321; helo=sea.lore.kernel.org;\n envelope-from=linux-pwm+bounces-8619-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com\n header.b=\"gmIVbHzw\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=185.171.202.116","smtp.subspace.kernel.org;\n dmarc=pass (p=reject dis=none) header.from=bootlin.com","smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=bootlin.com"],"Received":["from sea.lore.kernel.org (sea.lore.kernel.org\n [IPv6:2600:3c0a:e001:db::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fxK7L2SVvz1yG9\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 16 Apr 2026 23:46:54 +1000 (AEST)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id 853AF31D5865\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 16 Apr 2026 13:41:17 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 2D9EC3CCA12;\n\tThu, 16 Apr 2026 13:41:06 +0000 (UTC)","from smtpout-04.galae.net (smtpout-04.galae.net [185.171.202.116])\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 2CF8F396B66\n\tfor <linux-pwm@vger.kernel.org>; Thu, 16 Apr 2026 13:41:03 +0000 (UTC)","from smtpout-01.galae.net (smtpout-01.galae.net [212.83.139.233])\n\tby smtpout-04.galae.net (Postfix) with ESMTPS id E84CCC5C3CE;\n\tThu, 16 Apr 2026 13:41:40 +0000 (UTC)","from mail.galae.net (mail.galae.net [212.83.136.155])\n\tby smtpout-01.galae.net (Postfix) with ESMTPS id E9A0260495;\n\tThu, 16 Apr 2026 13:41:02 +0000 (UTC)","from [127.0.0.1] (localhost [127.0.0.1]) by localhost (Mailerdaemon)\n with ESMTPSA id C9552104591FB;\n\tThu, 16 Apr 2026 15:40:59 +0200 (CEST)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1776346866; cv=none;\n b=PsgoDqIPLcCe893bDeQwrGPGYKHCh7nirFmj9pJmhAMG/dKKQXsI67xe7qtD8FDBsLRwoo7TKSc9KO/mN+oZjpBgBUMFZXCpEGf4Gtz7i9WO0NUUfEKfTmKfyTPrE3bMprP5H7S8rpkR6zgqwjEIeFC88ZeBvqCaTBdtVXlYRDg=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1776346866; c=relaxed/simple;\n\tbh=ccFBjF/h8va7hVwllGTVGR1Ya7n+6b8hVuozzzTpGYo=;\n\th=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:\n\t MIME-Version;\n b=QC0QzPvTS05GdSWIhXVd23F+GPFrG+ksoPURw6Yq5dSxOQnrBSexTMucwbKMelcrm90+nuUloc6syKVmoi5Q/zsp1RxAYrX8HpP2o+CQW3e3YpoVgccYiCEfZf8JYx7t87meutZBl9BK7hCHx4mzJUtTedlw/bRa1jmEZDUR77E=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dmarc=pass (p=reject dis=none) header.from=bootlin.com;\n spf=pass smtp.mailfrom=bootlin.com;\n dkim=pass (2048-bit key) header.d=bootlin.com header.i=@bootlin.com\n header.b=gmIVbHzw; arc=none smtp.client-ip=185.171.202.116","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=dkim;\n\tt=1776346861; h=from:subject:date:message-id:to:cc:mime-version:\n\t content-transfer-encoding:in-reply-to:references;\n\tbh=o7thUj1C+8yEK0Fw3YtleNg2pFyzAQb0ZErKMz2sR4s=;\n\tb=gmIVbHzwYwoqYp+YGw+LL7HrsDab+lXs3mIzKerCbpxh4+5uCbx/RPt2EKjw42Ae98QdEe\n\tsODxSKJLYqkqmWMljBZ5EhtPFmKYpQ7cCOdljfUUW9qH/XjY38+H8XD2WqoWqCnkfcL7S1\n\tK4UDsr+LVK+1m5//lIyemYlk7AdS/pxYs2IBLVWG1rudaVJew7QFSJ0DRANgB67D+RCUYC\n\tORiUCv2tsiMyZo13sF7umtGTmqlDyvunijryxwpyZxubUQpxtyeuVQYpchZb99nhv9GZyF\n\t6SX9dZD9TxvYlETGuedX+f07J5POzNa2fDbt878J8mvaM848r0H0NAtE2qvGuA==","From":"Richard Genoud <richard.genoud@bootlin.com>","To":"=?utf-8?q?Uwe_Kleine-K=C3=B6nig?= <ukleinek@kernel.org>,\n Rob Herring <robh@kernel.org>, Krzysztof Kozlowski <krzk+dt@kernel.org>,\n Conor Dooley <conor+dt@kernel.org>, Chen-Yu Tsai <wens@kernel.org>,\n Jernej Skrabec <jernej.skrabec@gmail.com>,\n Samuel Holland <samuel@sholland.org>, Philipp Zabel <p.zabel@pengutronix.de>","Cc":"Paul Kocialkowski <paulk@sys-base.io>,\n\tThomas Petazzoni <thomas.petazzoni@bootlin.com>,\n\tJohn Stultz <jstultz@google.com>,\n\tJoao Schim <joao@schimsalabim.eu>,\n\tbigunclemax@gmail.com,\n\tlinux-pwm@vger.kernel.org,\n\tdevicetree@vger.kernel.org,\n\tlinux-arm-kernel@lists.infradead.org,\n\tlinux-sunxi@lists.linux.dev,\n\tlinux-kernel@vger.kernel.org,\n\tRichard Genoud <richard.genoud@bootlin.com>","Subject":"[PATCH v6 3/4] arm64: dts: allwinner: h616: add PWM controller","Date":"Thu, 16 Apr 2026 15:40:36 +0200","Message-ID":"<20260416134037.3160537-4-richard.genoud@bootlin.com>","X-Mailer":"git-send-email 2.47.3","In-Reply-To":"<20260416134037.3160537-1-richard.genoud@bootlin.com>","References":"<20260416134037.3160537-1-richard.genoud@bootlin.com>","Precedence":"bulk","X-Mailing-List":"linux-pwm@vger.kernel.org","List-Id":"<linux-pwm.vger.kernel.org>","List-Subscribe":"<mailto:linux-pwm+subscribe@vger.kernel.org>","List-Unsubscribe":"<mailto:linux-pwm+unsubscribe@vger.kernel.org>","MIME-Version":"1.0","Content-Transfer-Encoding":"8bit","X-Last-TLS-Session-Version":"TLSv1.3"},"content":"The H616 has a PWM controller that can provide PWM signals, but also\nplain clocks.\n\nAdd the PWM controller node and pins in the device tree.\n\nTested-by: John Stultz <jstultz@google.com>\nSigned-off-by: Richard Genoud <richard.genoud@bootlin.com>\n---\n .../arm64/boot/dts/allwinner/sun50i-h616.dtsi | 47 +++++++++++++++++++\n 1 file changed, 47 insertions(+)","diff":"diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi\nindex 8d1110c14bad..1c7628a6e4bb 100644\n--- a/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi\n+++ b/arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi\n@@ -236,6 +236,17 @@ watchdog: watchdog@30090a0 {\n \t\t\tclocks = <&osc24M>;\n \t\t};\n \n+\t\tpwm: pwm@300a000 {\n+\t\t\tcompatible = \"allwinner,sun50i-h616-pwm\";\n+\t\t\treg = <0x0300a000 0x400>;\n+\t\t\tclocks = <&osc24M>, <&ccu CLK_BUS_PWM>;\n+\t\t\tclock-names = \"mod\", \"bus\";\n+\t\t\tresets = <&ccu RST_BUS_PWM>;\n+\t\t\t#pwm-cells = <3>;\n+\t\t\t#clock-cells = <1>;\n+\t\t\tstatus = \"disabled\";\n+\t\t};\n+\n \t\tpio: pinctrl@300b000 {\n \t\t\tcompatible = \"allwinner,sun50i-h616-pinctrl\";\n \t\t\treg = <0x0300b000 0x400>;\n@@ -340,6 +351,42 @@ nand_rb1_pin: nand-rb1-pin {\n \t\t\t\tbias-pull-up;\n \t\t\t};\n \n+\t\t\t/omit-if-no-ref/\n+\t\t\tpwm0_pin: pwm0-pin {\n+\t\t\t\tpins = \"PD28\";\n+\t\t\t\tfunction = \"pwm0\";\n+\t\t\t};\n+\n+\t\t\t/omit-if-no-ref/\n+\t\t\tpwm1_pin: pwm1-pin {\n+\t\t\t\tpins = \"PG19\";\n+\t\t\t\tfunction = \"pwm1\";\n+\t\t\t};\n+\n+\t\t\t/omit-if-no-ref/\n+\t\t\tpwm2_pin: pwm2-pin {\n+\t\t\t\tpins = \"PH2\";\n+\t\t\t\tfunction = \"pwm2\";\n+\t\t\t};\n+\n+\t\t\t/omit-if-no-ref/\n+\t\t\tpwm3_pin: pwm3-pin {\n+\t\t\t\tpins = \"PH0\";\n+\t\t\t\tfunction = \"pwm3\";\n+\t\t\t};\n+\n+\t\t\t/omit-if-no-ref/\n+\t\t\tpwm4_pin: pwm4-pin {\n+\t\t\t\tpins = \"PI14\";\n+\t\t\t\tfunction = \"pwm4\";\n+\t\t\t};\n+\n+\t\t\t/omit-if-no-ref/\n+\t\t\tpwm5_pin: pwm5-pin {\n+\t\t\t\tpins = \"PA12\";\n+\t\t\t\tfunction = \"pwm5\";\n+\t\t\t};\n+\n \t\t\t/omit-if-no-ref/\n \t\t\tspi0_pins: spi0-pins {\n \t\t\t\tpins = \"PC0\", \"PC2\", \"PC4\";\n","prefixes":["v6","3/4"]}