From nobody Fri Dec 19 11:29:18 2025 Received: from mail-ot1-f46.google.com (mail-ot1-f46.google.com [209.85.210.46]) (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 E5BF818BBAE for ; Tue, 20 May 2025 21:01:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747774882; cv=none; b=Ea3jHKxvrGZtIHBSl/dkn6H+nx1sFXM3S81zxGHxb1z3cIBQPNK9qtQdDc2tQnaXFdaW8AagKjEICNn/Fsro4n8bM2p3r6CGwTj+QGPekIlJaubstNQrr4h8I8/Mr/3yPAnBz45eG2ewTaRuARjX0z3PJHATc8LffQWNpl73cCc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747774882; c=relaxed/simple; bh=Afxwdef0Jf2HSBiCXGtNVmL7wJWM8CS0UaEkxk3+CTk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ZkT+FqJVWY2tVjSzQBSf9FcA2YEytwxQ0PUEL3PodqG9QdtRXtkvu2tg93SKePGspb67Ait6Qr7+FOm9W+px7QDj/M+5s9PyJOYHZkCfxZhb6VkhK1enSDLMyZySu4cpenTC4vrQFXWMyOn8gecmjDzpd8O6/JIUX0WVkc4J0Ag= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com; spf=pass smtp.mailfrom=baylibre.com; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b=uEzqWk6h; arc=none smtp.client-ip=209.85.210.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=baylibre.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b="uEzqWk6h" Received: by mail-ot1-f46.google.com with SMTP id 46e09a7af769-72c40235c34so1993861a34.3 for ; Tue, 20 May 2025 14:01:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1747774878; x=1748379678; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=fp00wL1Y5X4So9ecfuqEeP+KnSz3366qtgJ3q9p0wb0=; b=uEzqWk6hLoYOG1/xsTIxSHbE6ApHxSubjdnzOVIGG7wG/ZAWxO4zLvY6Qkn8bpWxdx 0ysPPIyfgXHNIjT8SAdDPzDAjZWEGjtH11nJBUJ8f0gAghREC3WWmPUGMkvZwiAYHxyz rBET8CwJW+4fx1pBt+cvFWlSblh/48eovAOJfvPARDeMyhW/fogTysDpvHs/WjDOAQlX R19pG1zqfLu6FAohpMb1VmvahtM2P+Y7rGEyfuZLWjXs2gepFE9+4ANS/yuuz2uj1eD9 2z8fsBVSAIuczSmfCFHlTaOxftjIfLHmcgEidw3vAjf/oowIImXccxbA/uIf0eJZMLVz Zv3A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747774878; x=1748379678; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=fp00wL1Y5X4So9ecfuqEeP+KnSz3366qtgJ3q9p0wb0=; b=FgFco33lOMp3jbLPnlxDj/PmHZKWugOjeDjI2pNdptwdJQqLDnn7nY9WJCVKwQCyhm 4J2mvodSGrTkZCB+IKgXuOWMAZw+oq5NB5zlz8deXEId1mpDsca+/ZTpQHSDHqp4ADxH clRiI1jjXHNEtJrngLCE3K9sZq8TiwRUqMJGYwawlvKJtM5N8dPleeUNle7TOvfp9r0+ /PI+6oUkXfpTg02orgUyg9PKDSgi0Z/YjgdfetzdhJWC77g/rDLtSYOY2LaweSYwZOJt bm+TTi9D8Ft5XB8LyHKYnTQSx1bgefHI98CcovG093fmB1W6HZEeZOr5jv0CqBCqxT/c 26yg== X-Forwarded-Encrypted: i=1; AJvYcCV1qhvdafPx8+sY49cStlUSKar1aRD/cr06CqpYHyWZv6URhjGknLujznTJM/rWzS7Y+yPoSzNQn5QgB3M=@vger.kernel.org X-Gm-Message-State: AOJu0Yw3/ZZ/Bveta43oouqZEDlHq74D2z+sSplAdoFJcQ8is10DZSks OTmEMlugqmUe2Oh1ABKh/EU1ktQmGO95SMP3ZtiepEmYfkhGpJMx19X3MC/GIWoy108= X-Gm-Gg: ASbGncvG8Q9+MvspZtNK4jPj4N+1o+4thGOQYlThO6GAlH4kZxbMRXkqScaStvk9oA3 dOKCChLO/Zfx6xiMbAaaNAIr8DR5fW9wZ32Aug/muhA6Heixew7Wcl9HJF4H9GgXQlCpCmpm00b wePVpPefGkj7MT+4Bq1OO8R4wrNPwAGXOZGYKNrZtyc29EeEvYgADaGb5WxqWhJo/VBC43utGwD /t3+Useg1g8axj+xAz94KvkNC2mr110hkhrskap/q3t2S+ELmobGviNDUl4+hVFwL4rf7NdoLSs aKPIhoZyXXV5mWFZyN1fvFdbXwVJ2fIPXICuGZmUfbfk0RwdcccLbcJY X-Google-Smtp-Source: AGHT+IGSTahwpAX7LljmxRMHFEq8h6BDIh7NR6hXlQMHRupeFNvQ3f4OkyspW4HnfY3R6YHMmE2VdQ== X-Received: by 2002:a05:6870:9f0b:b0:2d5:c61f:c2db with SMTP id 586e51a60fabf-2e3c856789dmr10978508fac.34.1747774877841; Tue, 20 May 2025 14:01:17 -0700 (PDT) Received: from [127.0.1.1] ([2600:8803:e7e4:1d00:d77b:6acc:2ad1:8ff]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2e3c0b2e1a7sm2348470fac.48.2025.05.20.14.01.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 May 2025 14:01:17 -0700 (PDT) From: David Lechner Date: Tue, 20 May 2025 16:00:44 -0500 Subject: [PATCH 1/3] dt-bindings: pwm: adi,axi-pwmgen: update documentation link Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250520-pwm-axi-pwmgen-add-external-clock-v1-1-6cd63cc001c8@baylibre.com> References: <20250520-pwm-axi-pwmgen-add-external-clock-v1-0-6cd63cc001c8@baylibre.com> In-Reply-To: <20250520-pwm-axi-pwmgen-add-external-clock-v1-0-6cd63cc001c8@baylibre.com> To: Michael Hennerich , =?utf-8?q?Nuno_S=C3=A1?= , Trevor Gamblin , =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-pwm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, David Lechner X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=958; i=dlechner@baylibre.com; h=from:subject:message-id; bh=Afxwdef0Jf2HSBiCXGtNVmL7wJWM8CS0UaEkxk3+CTk=; b=owEBbQGS/pANAwAKAcLMIAH/AY/AAcsmYgBoLO2IrLVVgQ3h8rSSHUUEyxF54KwLtl/rLRTCT OAEf9luY5KJATMEAAEKAB0WIQTsGNmeYg6D1pzYaJjCzCAB/wGPwAUCaCztiAAKCRDCzCAB/wGP wE6EB/94O78sxYgWzSctw9RteUH86F2DfXA1xiszLyiQGRtJk7SeXtAjGkqO+26/tXVytEcCz6i GHvXeDef+Mbe7TT5SAzSnQJtNQO/LuPK7SUW+fbuZ0IDn0q0/0nxhiq980u7kywwCgrkifV6F07 GeecSV69FuPrW/oBynvN8VCo9OLvJZ+tGoUEcHr/kNC9UU2BqMibSrI0sORevRZeUnaCr7hs2xK V9eJSNjoVt4wCGXwmO+7H8mPahMUy1gYJ4lhWihhyBJjienA41y6eIO9rcBOSGaF/vD2Hbd3mD9 zaI3VD1PmSaDClwS+T8yZYeMEcnDlKtIUJdR3OPVgyxU1guU X-Developer-Key: i=dlechner@baylibre.com; a=openpgp; fpr=8A73D82A6A1F509907F373881F8AF88C82F77C03 Change the documentation link to point to the location with the most up-to-date information. Signed-off-by: David Lechner --- Documentation/devicetree/bindings/pwm/adi,axi-pwmgen.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/pwm/adi,axi-pwmgen.yaml b/Do= cumentation/devicetree/bindings/pwm/adi,axi-pwmgen.yaml index 45e112d0efb4663bc7fbb3a25a12d66aa8b7492d..bc44381692054f647a160a6573d= ae4cff2ee3f31 100644 --- a/Documentation/devicetree/bindings/pwm/adi,axi-pwmgen.yaml +++ b/Documentation/devicetree/bindings/pwm/adi,axi-pwmgen.yaml @@ -14,7 +14,7 @@ description: The Analog Devices AXI PWM generator can generate PWM signals with variable pulse width and period. =20 - https://wiki.analog.com/resources/fpga/docs/axi_pwm_gen + https://analogdevicesinc.github.io/hdl/library/axi_pwm_gen/index.html =20 allOf: - $ref: pwm.yaml# --=20 2.43.0 From nobody Fri Dec 19 11:29:18 2025 Received: from mail-oa1-f50.google.com (mail-oa1-f50.google.com [209.85.160.50]) (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 87FA82528FD for ; Tue, 20 May 2025 21:01:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.160.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747774882; cv=none; b=RFzlSP2F1h25iciqPRmGVENotmR+DJ9WG0wX5UG+LVYEf6VhEL0cDM8vycayY/m5HJc7f2ZeANivTgd5Ybnc7T3f8AH/Yi24LFmZMol7FHcm46tXftWrCm5EHUSWrez+a0YEd68hyDSlQ6xcYIkOYnki/INaWDi4Wqy1eWzp2Qc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747774882; c=relaxed/simple; bh=MNb997VY29duTYbBSnjPo0xjIEdAwYnJg6KevBR2KJk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Uhx5c2287dXmgUND1lScTbtU57FaRJo0rk5b8b32AuoicA2hsAP5EWckvZnbqP6hIBgXs1aHkVoyS33noL0vZrT/6C4oyhrnIa16D+oGgziM398MxSX6dSRNzQEXsApSYsLyff7mldm7i7VjEkyEMh7sVljn9Ll9E92AhQ7fGH8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com; spf=pass smtp.mailfrom=baylibre.com; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b=v7eAYllx; arc=none smtp.client-ip=209.85.160.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=baylibre.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b="v7eAYllx" Received: by mail-oa1-f50.google.com with SMTP id 586e51a60fabf-2d522f699bcso2104305fac.2 for ; Tue, 20 May 2025 14:01:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1747774878; x=1748379678; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=1AHx1N9kF4xQ7AtLhfpX6F3+VzX1t8msVEo+Vi5+ENw=; b=v7eAYllx0ujUgJqAy9LVHphZOanWxQSdhGhUqK+mslOznSk1qMITa8caP9qw9nW0fj WRIGal/UYWPzPNOpFX424JASq3NkhzQ3ywARdcsGkgmk6ENtyNb/s6Q328jtf++B+2Uq 7SxZwVdwPCDZCH+IielplsVYf/YaQFdW16En/hfJnDFaPpTTKWEZ/8X8UxkmQvFQARtO On1EHSdlKaEW9YUYHG7PR4OIoy576hqzmKMvvhnTAoidT33EUOK4ZcDugISZIZoy5laU p5T5y7CAyhT/aIbGrhI7TumgP5cRmwUEuZ2seS3vNF7RQpzmBnJPVPSts0L3N33v7y7o GZCA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747774878; x=1748379678; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1AHx1N9kF4xQ7AtLhfpX6F3+VzX1t8msVEo+Vi5+ENw=; b=nLTkpz71SyoHf8H3uYW3ZWJuMql+dLz4u6Ctruc+ifPH4E2DabGDAb6Gpqu3BSFhlr 5l2eb03b5h63kq45ZYBcO7HW2qyGnkS/QHbgJnlrQwiq03tNL+NT6sfZap6fAvv4p6ix squLte4Y5odMYxBCE/WMGWultSw3cn6y2ojdzH1pPNplFJvRFodXcHewCqi/1U7SS38V dvPh1loj//fU85BX96ei+pxEDD978odK3haCmO0O3Qw4c4We4+7tyIZiEp+IYIICS1km 61249QfX8GB2GG0OauuZ9HqBvcBDqWQYmyOZjQKwnJP4c99ppAsrKn2Xv6lNNpykt67a 4J8Q== X-Forwarded-Encrypted: i=1; AJvYcCXKQieOqnQcP8XfaKpSKLtLvYNzqw7IvlVI+G0HYQLCM37zF9JOtyE5NRGYyv5n7s2ogVmqgLoIPzFAiQo=@vger.kernel.org X-Gm-Message-State: AOJu0YxjEcdl3KGFm1a10bnJJi9APL2cpgsAfZMHycsNd6ek2sJRQdA1 Cx8GNmvSnQHD7vFp5qQU9eqWr8jPBgcGdCeawJarFoRqrHuCmA3KwpCJZkQ4qmbtoSM= X-Gm-Gg: ASbGncvGWHlN2FXESG40gIqon9Eadw1RhsjrcGtldbHX77FtvTHgqUd5vIr9E3Vih4H YivARa9jJ7Cia7Az74CTssPWWh2clKZsqKXygbWMcC3t9VJvT3qf2pkxsQbvNbUkT2olX50LgNB LoM6bcYTNMrc78yZIgR1WIDwyEyW37lYp4A6+DH15b1oSo//ZHg+NPFi7S5IRRZ938ZqjfdBqlw ZVE1FUDdhrdyvwbWfxxaaGX0uNDyrr5Smxh7KyhF/pQoGi3E5cFj0v+HXg4tvldTPGfwBbJYBkL 1aIEObG1s1ZW+FMUuzOK38VNxycbfMbIrdFWExHp7HhCsZBDHCvvtBWfwjuK1ReAF8s= X-Google-Smtp-Source: AGHT+IE1xUkgbFQC35Y0QlpuBNk/KGJh9mJSWSstsMo6EMLXlxglnHtNEPMvXcGpOG0aLqcmyYuNcw== X-Received: by 2002:a05:6871:4e82:b0:2d4:c55b:199a with SMTP id 586e51a60fabf-2e3c836ad78mr9977999fac.18.1747774878651; Tue, 20 May 2025 14:01:18 -0700 (PDT) Received: from [127.0.1.1] ([2600:8803:e7e4:1d00:d77b:6acc:2ad1:8ff]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2e3c0b2e1a7sm2348470fac.48.2025.05.20.14.01.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 May 2025 14:01:18 -0700 (PDT) From: David Lechner Date: Tue, 20 May 2025 16:00:45 -0500 Subject: [PATCH 2/3] dt-bindings: pwm: adi,axi-pwmgen: add external clock Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250520-pwm-axi-pwmgen-add-external-clock-v1-2-6cd63cc001c8@baylibre.com> References: <20250520-pwm-axi-pwmgen-add-external-clock-v1-0-6cd63cc001c8@baylibre.com> In-Reply-To: <20250520-pwm-axi-pwmgen-add-external-clock-v1-0-6cd63cc001c8@baylibre.com> To: Michael Hennerich , =?utf-8?q?Nuno_S=C3=A1?= , Trevor Gamblin , =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-pwm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, David Lechner X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2239; i=dlechner@baylibre.com; h=from:subject:message-id; bh=MNb997VY29duTYbBSnjPo0xjIEdAwYnJg6KevBR2KJk=; b=owEBbQGS/pANAwAKAcLMIAH/AY/AAcsmYgBoLO2PpGPGzaFtijjrIrK2whRmAsYzrmMYRTHdz Qnt2RGu0laJATMEAAEKAB0WIQTsGNmeYg6D1pzYaJjCzCAB/wGPwAUCaCztjwAKCRDCzCAB/wGP wGlqB/9qdtBuXL9f7pR4TQ9l8Xk5M/oD9co95D/ekxp3EZ/YS4c9MiCwA6UslD5WSfEBbWSK3L1 j9CJDV7A0PdO6b4M2KK/Af/BoMC4QiaoSqcqgfwKGSpDfW5CA08/7kyZ9ZkmqnF1NBJ00tr12lu B7Vym7rS7ZTZvyYmOwX6670IeV9dsTBP/pF6XLcRSbleiL9SpGl2TTjgIM+m8OC24NcDMd33AGo XU80Dv7yaRBOK6r2Hrkqqh50lYJfXLs/TDNUt7zBaEK2msYeW83ZasSXcm8W8v+0LtY7t+IKnVD NZU832t2I5jatD9Qck1y685jQuTdG1NIncQiWAhmItJ7Gzh5 X-Developer-Key: i=dlechner@baylibre.com; a=openpgp; fpr=8A73D82A6A1F509907F373881F8AF88C82F77C03 Add external clock to the schema. The AXI PWMGEN IP block has a compile option ASYNC_CLK_EN that allows the use of an external clock for the PWM output separate from the AXI clock that runs the peripheral. In these cases, we should specify both clocks in the device tree. The intention here is that if you specify both clocks, then you include the clock-names property and if you don't have an external clock, then you omit the clock-names property. There can't be more than one allOf: in the top level of the schema, so it is stolen from $ref since it isn't needed there and used for the more typical case of the if statement (even though technically it isn't needed there either at this time). Signed-off-by: David Lechner --- .../devicetree/bindings/pwm/adi,axi-pwmgen.yaml | 26 ++++++++++++++++++= ---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/Documentation/devicetree/bindings/pwm/adi,axi-pwmgen.yaml b/Do= cumentation/devicetree/bindings/pwm/adi,axi-pwmgen.yaml index bc44381692054f647a160a6573dae4cff2ee3f31..90f702a5cd80bd7d62e2436b2ee= d44314ab4fd53 100644 --- a/Documentation/devicetree/bindings/pwm/adi,axi-pwmgen.yaml +++ b/Documentation/devicetree/bindings/pwm/adi,axi-pwmgen.yaml @@ -16,8 +16,7 @@ description: =20 https://analogdevicesinc.github.io/hdl/library/axi_pwm_gen/index.html =20 -allOf: - - $ref: pwm.yaml# +$ref: pwm.yaml# =20 properties: compatible: @@ -30,7 +29,13 @@ properties: const: 3 =20 clocks: - maxItems: 1 + minItems: 1 + maxItems: 2 + + clock-names: + items: + - const: axi + - const: ext =20 required: - reg @@ -38,11 +43,24 @@ required: =20 unevaluatedProperties: false =20 +allOf: + - if: + required: [clock-names] + then: + properties: + clocks: + minItems: 2 + else: + properties: + clocks: + maxItems: 1 + examples: - | pwm@44b00000 { compatible =3D "adi,axi-pwmgen-2.00.a"; reg =3D <0x44b00000 0x1000>; - clocks =3D <&spi_clk>; + clocks =3D <&fpga_clk>, <&spi_clk>; + clock-names =3D "axi", "ext"; #pwm-cells =3D <3>; }; --=20 2.43.0 From nobody Fri Dec 19 11:29:18 2025 Received: from mail-oa1-f54.google.com (mail-oa1-f54.google.com [209.85.160.54]) (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 833CF25D52A for ; Tue, 20 May 2025 21:01:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.160.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747774883; cv=none; b=iAvtUKrYo3VNQAqdoWmWcM0DOQNeePhMAKvIMYP5WdNUNPIZN5ly7GdFFyQ25z/XoRGFo+bjSjwWMSY9JOMg+yJGbkPyCrge5rFecpM5jczHUXmysEMDqvieGyQ+zrQBFkfyYrjRtALUGBfjQLz/06KVCVxvee6zV6RAhoaHaW8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747774883; c=relaxed/simple; bh=TYzqLREmBgexvsz9PZQevnPssE1wDdpicIj5Bnz2/Xc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=T0bz9vHJ+sXNOZmCwOosI0zg7qm2jW7n70M++xsf9WfqZmSR7LMJdID4XUNv3DJrFksv1CdBwi1hFb46TTPCt6Q5I8bFJfJPvo/c+xrO240IfG/QsRgOitULnbRL2n11DWxGu2UYYCh1UFYmId+osBMB3pR0Jny1hjuvIMRQQdc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com; spf=pass smtp.mailfrom=baylibre.com; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b=zwP0ukwn; arc=none smtp.client-ip=209.85.160.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=baylibre.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b="zwP0ukwn" Received: by mail-oa1-f54.google.com with SMTP id 586e51a60fabf-2d5e5e21b92so2474239fac.0 for ; Tue, 20 May 2025 14:01:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1747774880; x=1748379680; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=gxw8iLrpNsBvpLOn8gYCJj5pkdF8n5zYuoMcaqPicuE=; b=zwP0ukwnWaGA7gcsLDLa114bHZ9C/P7uLkHBqueo/4PfJQVVgU1mgeVylZAQGwdQGA vQf35i+rm3Hg0Zbi0NiJo9GT7ynhq4rIi8Lh4xSzLeZK13ganEYG+f6lMGMbGKKLLO7z 2HJoTUqkh2AgVzWS8KuyJv3c3J+86KF9WiL/9LUbmh4tUPSPbDKYftUM3qjrkgDIMBXf f2IqQBCSidlL6arKgvvYdlFBoh+wJsdV298wTfkZc5VCf/PO77WPteBCEmqfCenqZkOa WRS84zAH+d0bgoK33FUKQC+JR0WThTEj4IVVWr8bWlUxOUuI+fdIKLBmUvH3iob9TVRD u6Eg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747774880; x=1748379680; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=gxw8iLrpNsBvpLOn8gYCJj5pkdF8n5zYuoMcaqPicuE=; b=KrEcrfRwKXrrj81IQ/pIniwR91pvwRCElRRSgKdPzShq6UyVTmFgU22CyAw6wH9JV9 9sOBGqzHpDAWMa1IHU+9bXDrGs40yDSJd0QgtBzZ40gUgtYZIRD6MxUQm07uJFeHmTas QOQUxjOBBvLH9kgxUOpdy9EalzTd90CmuSaQhQZv3yN5A/Sr2gMvth0ZlGJ4GV4x75sl AXhzGLvbWDB2t18KPArla+oH6kPMmwEH/4tbsYh/4jkjFBB9zsKxcd4nfoIf9v9hj+oT UZngVxpWClSXiPzICXy/FpNcHRbbaVj+akbyRT194TBXRsVbI+CklToBoxGJWFiT9w/b CoiA== X-Forwarded-Encrypted: i=1; AJvYcCW6lTnNiT48tBUWGoRkICqA4MG6+AL6p/T70tMEOEoA8CLgbMomOOBqDfdTRr+ljcSPuQBuR7+4CzZMz5A=@vger.kernel.org X-Gm-Message-State: AOJu0YxNfINVMnqty2zNTh2xKT6gq/8/2wCcKeCcEx9/ELTf6ML8eyjj 5CctDp6XnJSH7XadPsGdlbyQ3zvexf3PxuV2Y9PmUy9J69a56y0CNfHDYOeh5SvyJ/A= X-Gm-Gg: ASbGnctSfXw8AQXr5tojtqXm4ll4w7rvFNNO1zwnsjO0dt44DSQKvcFus0PMeDW38RH /aJf3KSeJEoEuDq1P0cpZQHUd/DDJFNZIA+GOe8aKbeYXTE2Xx4/jD1QqhmlmiBlwHX4j2DCaRj qt+s/FCk8CZ5CjAIxh9ycJjB80y23m0Kz4u/RJCgr2jZ7lGnj+Lb2XYu1/3F1XYGiBYbKDQJEhd LeYJ5afqrXpkFlvbOzv/3wVodtCdn1xQxrbNsm7n/08tQbpXk8JfRwRWU0gWjEVS4ijiiZOL7pO lp//f+lbRywzja4TkxHmNYpTxbzV2p1PmVf5yHTyFNgZTS8aTXfkfRO8 X-Google-Smtp-Source: AGHT+IF00yIYVhAM2/2YKzM5Wnk78+0WkOTnvtVFK4tQyxuQ27n2qodJQCyucgUhei6kcsT0uasO0A== X-Received: by 2002:a05:6870:b008:b0:2c1:5fe3:22eb with SMTP id 586e51a60fabf-2e3c1c09f18mr10511704fac.15.1747774880410; Tue, 20 May 2025 14:01:20 -0700 (PDT) Received: from [127.0.1.1] ([2600:8803:e7e4:1d00:d77b:6acc:2ad1:8ff]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2e3c0b2e1a7sm2348470fac.48.2025.05.20.14.01.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 May 2025 14:01:20 -0700 (PDT) From: David Lechner Date: Tue, 20 May 2025 16:00:46 -0500 Subject: [PATCH 3/3] pwm: axi-pwmgen: add support for external clock Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250520-pwm-axi-pwmgen-add-external-clock-v1-3-6cd63cc001c8@baylibre.com> References: <20250520-pwm-axi-pwmgen-add-external-clock-v1-0-6cd63cc001c8@baylibre.com> In-Reply-To: <20250520-pwm-axi-pwmgen-add-external-clock-v1-0-6cd63cc001c8@baylibre.com> To: Michael Hennerich , =?utf-8?q?Nuno_S=C3=A1?= , Trevor Gamblin , =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-pwm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, David Lechner X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1679; i=dlechner@baylibre.com; h=from:subject:message-id; bh=TYzqLREmBgexvsz9PZQevnPssE1wDdpicIj5Bnz2/Xc=; b=owEBbQGS/pANAwAKAcLMIAH/AY/AAcsmYgBoLO2VEzZ73OwL8J3QkRirtbm0l9ISQHAAbUU4Y L5+krhSA2CJATMEAAEKAB0WIQTsGNmeYg6D1pzYaJjCzCAB/wGPwAUCaCztlQAKCRDCzCAB/wGP wE/MB/9mrWrsGJWOY3mwNNW4D7EgEd8x2+e3B7rIxSQrzo4cFpRkXRTGMy0DagpmffQW20PReB1 YxaXDGUK9QVU8bZxz8yvgTKNnTjL2nDig9jy+W2DDJpuaoaq5L/qxfvs49XdAld9whrf82dY7SJ 9EHOpJolxK47UiogFJ86R5zMJYct6Nqi7UvlamccaE9obqr1eHyCuxdTObW3OkzqsU0qXhWI3wd i/XapIbOqjhkHIn/Omj3DVtaLcmkJQWxteflYg9phlrtAY9Up9HNIDC4SaoE9NQ5MOUDF/BETS0 vD3K84mDiSQeNuZVtpRrBdENunazADiVxqFZONJA6QBPSji1 X-Developer-Key: i=dlechner@baylibre.com; a=openpgp; fpr=8A73D82A6A1F509907F373881F8AF88C82F77C03 Add support for external clock to the AXI PWM generator driver. In most cases, there is a separate external clock that drives the PWM output separate from the peripheral clock. This allows enabling both clocks. Signed-off-by: David Lechner --- drivers/pwm/pwm-axi-pwmgen.c | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/drivers/pwm/pwm-axi-pwmgen.c b/drivers/pwm/pwm-axi-pwmgen.c index 4337c8f5acf055fc87dc134f2a70b99b0cb5ede6..67992a7561ec0440b1c1fa327f8= 44a0602872771 100644 --- a/drivers/pwm/pwm-axi-pwmgen.c +++ b/drivers/pwm/pwm-axi-pwmgen.c @@ -280,9 +280,26 @@ static int axi_pwmgen_probe(struct platform_device *pd= ev) ddata =3D pwmchip_get_drvdata(chip); ddata->regmap =3D regmap; =20 - clk =3D devm_clk_get_enabled(dev, NULL); - if (IS_ERR(clk)) - return dev_err_probe(dev, PTR_ERR(clk), "failed to get clock\n"); + /* When clock-names is present, there is a separate ext clock. */ + if (device_property_present(dev, "clock-names")) { + struct clk *axi_clk; + + axi_clk =3D devm_clk_get_enabled(dev, "axi"); + if (IS_ERR(axi_clk)) + return dev_err_probe(dev, PTR_ERR(axi_clk), + "failed to get axi clock\n"); + + clk =3D devm_clk_get_enabled(dev, "ext"); + if (IS_ERR(clk)) + return dev_err_probe(dev, PTR_ERR(clk), + "failed to get ext clock\n"); + } else { + /* Otherwise, a single clock does everything. */ + clk =3D devm_clk_get_enabled(dev, NULL); + if (IS_ERR(clk)) + return dev_err_probe(dev, PTR_ERR(clk), + "failed to get clock\n"); + } =20 ret =3D devm_clk_rate_exclusive_get(dev, clk); if (ret) --=20 2.43.0