From nobody Tue Oct 7 18:24:29 2025 Received: from mail-wr1-f50.google.com (mail-wr1-f50.google.com [209.85.221.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 526531FBE8B; Mon, 7 Jul 2025 20:01:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918482; cv=none; b=F36oVnVvPU9W3JOo6uN1Hjoy0ubz/EreTOEcLGIOXXtf0RXz2cMcf05+NlPPciegxLQgxlc4BEHoa0YBQfbaNZdb6HBVSzzhdetBjjkGT5gFClLQm21JwnsLfmPamKtBrVHY+JqjZ56KS9z7WloFaCVhqYIooojNQDpI3foTqdM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918482; c=relaxed/simple; bh=zGKV4TwmffsXGBRMR3PvlsnxcqwJncNj70mdpBwnyPQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=nROiJgGznyk/SeRaOD+zJahH8UdnpFdKU6Z4DNZi1PkA9riyUhgbt5V18t+XN+FYFWVtNtHgCJSo+0czBhSAno48YMhkyGY6RvABfBR4S1F03GkOcVhxBD8rAIeasnSxU0lc7m8y61a+hc1bli592XZj4pVQRykOQXGNpUfV66w= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=e/KYcZbr; arc=none smtp.client-ip=209.85.221.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="e/KYcZbr" Received: by mail-wr1-f50.google.com with SMTP id ffacd0b85a97d-3a525eee2e3so2292338f8f.2; Mon, 07 Jul 2025 13:01:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751918478; x=1752523278; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=cABofFObtx+y5oVEMq6EwPs/kt7P1VPzpWliJASsVxE=; b=e/KYcZbrANpHwzdfSOwATIoDrD0nSiQGjRRTnFImylJHM7V1D3/T8ou9kMF/jguz6E IIBAXgw2fbpSHzY/v3lovBhKWucaHkYMTLJWefW60QNalBxWckw0QLTjoRTIzwZ+xfw5 hpe7oyo24ytBFuP81t7zMR+Z4gqpVBYf7Q8492pGR/t3Bi9SmbOgRS4ESwHH8R6TnTUA 1/kIb1R6Xwo2Bfj4b2xQl9sBnL7VBafzV1T7Fr60OUDvFuvGynTwNHkVCKg8UAb+YrXZ FTs7mMvey6edl5kK9jY/Q1QCYMJAp9xvyXnMONYcsAo2dtKw9EaxMbmiBvHpzTxLpkEo PvLQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751918478; x=1752523278; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=cABofFObtx+y5oVEMq6EwPs/kt7P1VPzpWliJASsVxE=; b=nEMiJHzx7WZ/1of8+RpMnK0OFku1MC9DxrMySngwwiZZNUt85+M0V5k7UltEEX9hhe 0UYYG68OP3exykUvFhWZNLHijL/uT+vKxpmstZoUkCCpkc+ERbyaf5YIeKrmnpIuWES7 t7GvXF9TTJdVdQqAZwYI14vq6qXTXuceD/zLg8d5nO9QRABxu4JBnSjNncsd3E6JrTgX ADprE3bkVHXGG4ESahJG6M9Wrxb3DtigswOuhBUbLMgVvkImJyTNAGMPJQLqpWI/kWah hNKkLyZKIgGH426BCn4joOisRGgQP54OnaNFT/LNFRT9ZXMRvnwwGSAk913nmZOZy/lp 0X6w== X-Forwarded-Encrypted: i=1; AJvYcCUvIrkiyZdih1iHDI1I+JhyK3VAatZtUWmSR4t27OXoow26YryRL8M/58ZKGwMCx1b/0HKi0ahhpXZnu8fusFjMPMo=@vger.kernel.org, AJvYcCXiipc1s9or1D4Es5iZW/LGolqNxnlF2xP9w7e8nxOojmenoGBG4fAmkfSzvSIA415aFRVHdFFQNUEfVChU22Y=@vger.kernel.org, AJvYcCXmazvCySGSycbQ0JOvf7Z/t2KQMATeZQpgjTVN/2/eQo2J/97JfYsljazn1lDgWokQ3pu5zxCzXmAZLbA=@vger.kernel.org X-Gm-Message-State: AOJu0YyGdXkTSwBk0TKctImuhelPQRm8rVPA4gszAsY8+4S9MA2OgvrM sYbzjeXYiZY9J80KWV7+HpbauPqUNKVZAgdwyjoHQWJclzya8vjILwCV X-Gm-Gg: ASbGncsrPjG4czq00BFTjSffi73Y3y4C6CWYN8DTgjiYqrz+PB0a0omTTanjAug7tej eGzCmQ741mcu+qrRW+tbvZX9JF+jJCi70D5X6xtZYdtvNoaT9Rd5tn+aEXSsn1dYFCQFOfFiKqa Mfc3JmoU6UkLFg3RtOs9i7ySRRG+l7CNuvK5topqXWjm67JcMsx08ikG22BcR8PRTdn0IwdomBO w4w3VGAJ5M9RLMYX14Vee7fRpgAE5n4sa7o7SfO0saGCvCMxsdGdcjFQUITLh90eYCcWtaoa+cc vCZwrVEMrK8D7HLaHQ1dv88hBnHqbL2WvrK4SsGi6wnuh6jhrn6yx/Dpxjz60z5WzeObpQMNW0J QhQAYuldBNjyMQfy6xEE= X-Google-Smtp-Source: AGHT+IFE/Ft4DBmWyWWjCBFV/SYDTTq4qLNkAzzM1a8qBGgTDH87LKKWzzV+YEL2RXuX+KNTaYgZhg== X-Received: by 2002:a05:6000:288e:b0:3a4:d274:1d9b with SMTP id ffacd0b85a97d-3b5dde928a2mr109505f8f.25.1751918477743; Mon, 07 Jul 2025 13:01:17 -0700 (PDT) Received: from iku.example.org ([2a06:5906:61b:2d00:d418:e5eb:1bc:30dd]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b471b97376sm11268995f8f.61.2025.07.07.13.01.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Jul 2025 13:01:17 -0700 (PDT) From: Prabhakar X-Google-Original-From: Prabhakar To: Wim Van Sebroeck , Guenter Roeck , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Philipp Zabel , Wolfram Sang , linux-watchdog@vger.kernel.org Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, Prabhakar , Biju Das , Fabrizio Castro , Lad Prabhakar Subject: [PATCH 1/9] dt-bindings: watchdog: renesas,wdt: Add support for RZ/T2H and RZ/N2H Date: Mon, 7 Jul 2025 21:01:03 +0100 Message-ID: <20250707200111.329663-2-prabhakar.mahadev-lad.rj@bp.renesas.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> References: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Lad Prabhakar Extend the Renesas WDT device tree bindings to support the watchdog timer found on the RZ/T2H (R9A09G077) and RZ/N2H (R9A09G087) SoCs. The RZ/T2H WDT is mostly compatible with the one found on the RZ/V2H(P), but includes an additional register and differs in the clock division ratio settings for the WDTCR[CKS] field. To reflect these differences, introduce a new compatible string, "renesas,r9a09g077-wdt". The binding schema is updated accordingly. On RZ/T2H, the WDT does not require the "resets" property. It also requires two register regions and the presence of a "power-domains" property. The "clock-names" property is limited to a single entry, "pclk", for this SoC. The RZ/N2H SoC uses the same WDT IP as the RZ/T2H. It is supported by using "renesas,r9a09g087-wdt" as the primary compatible string, with "renesas,r9a09g077-wdt" listed as a fallback to describe the shared hardware features. Signed-off-by: Lad Prabhakar Reviewed-by: Rob Herring (Arm) --- .../bindings/watchdog/renesas,wdt.yaml | 37 +++++++++++++++++-- 1 file changed, 34 insertions(+), 3 deletions(-) diff --git a/Documentation/devicetree/bindings/watchdog/renesas,wdt.yaml b/= Documentation/devicetree/bindings/watchdog/renesas,wdt.yaml index 78874b90c88c..ce439a401c12 100644 --- a/Documentation/devicetree/bindings/watchdog/renesas,wdt.yaml +++ b/Documentation/devicetree/bindings/watchdog/renesas,wdt.yaml @@ -81,10 +81,17 @@ properties: - renesas,r9a09g056-wdt # RZ/V2N - const: renesas,r9a09g057-wdt # RZ/V2H(P) =20 - - const: renesas,r9a09g057-wdt # RZ/V2H(P) + - enum: + - renesas,r9a09g057-wdt # RZ/V2H(P) + - renesas,r9a09g077-wdt # RZ/T2H + + - items: + - const: renesas,r9a09g087-wdt # RZ/N2H + - const: renesas,r9a09g077-wdt # RZ/T2H =20 reg: - maxItems: 1 + minItems: 1 + maxItems: 2 =20 interrupts: minItems: 1 @@ -132,6 +139,7 @@ allOf: compatible: contains: enum: + - renesas,r9a09g077-wdt - renesas,rza-wdt - renesas,rzn1-wdt then: @@ -183,7 +191,9 @@ allOf: properties: compatible: contains: - const: renesas,r9a09g057-wdt + enum: + - renesas,r9a09g057-wdt + - renesas,r9a09g077-wdt then: properties: interrupts: false @@ -192,6 +202,27 @@ allOf: required: - interrupts =20 + - if: + properties: + compatible: + contains: + const: renesas,r9a09g077-wdt + then: + properties: + resets: false + clock-names: + items: + - const: pclk + reg: + minItems: 2 + required: + - clock-names + - power-domains + else: + properties: + reg: + maxItems: 1 + additionalProperties: false =20 examples: --=20 2.49.0 From nobody Tue Oct 7 18:24:29 2025 Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (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 B5A581F3BB5; Mon, 7 Jul 2025 20:01:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918482; cv=none; b=mfijwAy5okZRtLMzmT75FGWepsgI/xqSF++7Xof/RjLqO18d6WsGWKAECva3tBw4JgGw8ckh5sDIS0yIlQhjv0pofbtGfomumOaKkowFUnu/N9uPqalHajmfXb7LQi73CCPa018yZBhZVvrNe3YX4D78ehyrdMvsK8ul/kERzKA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918482; c=relaxed/simple; bh=V6IQ2gg8theLQKhy0pSAfQIVT4+2x1DClOMYvHnbKTw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ugn7t77eBlqpKoZWQ2WzITQDeNn7UxwNTNNtmUFu5FdnQi3FeqfdFBuPzhJsrtGRwJAu1sQP2StmgGgyUQCiOoBUoDBtlf3mzU3dnL5N8Af7BgxEekPd71Ham9ouEcOQ6/1BBCMzJqL7r9AF3JhyZUrSbx4cyHJT18uY/U/44mc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=dH8lqmC6; arc=none smtp.client-ip=209.85.128.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="dH8lqmC6" Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-454ac069223so22865075e9.1; Mon, 07 Jul 2025 13:01:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751918479; x=1752523279; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=LP8bmMp57OA6IhQ6YmNAhKyLYtPMaSr+eZSmls4pM8M=; b=dH8lqmC6soXAKbaBmdXG5iOa8BVf0+egejy30Y8E0xIxvarm4a1Jt04VGYNpiUTZuy YrdyscwmSZoE4Zc3L8EQlbeHGpw1X/irsSgJcXr3ve/S3R0ud3hui9oepNLK/F7agyJp Mz2odF2iyy7ThVV5aEVbE4y4MQC1JKtCjDvTU70FrcowEPjKDOS+6eiJQf6/fG9b3rp+ npiKlXKbSXcUMuEBtEnzUmxUrOo7fOauI5Qiv58kMWKQ2t0+gNtUz/JAt+3dG0rFf0JI 6ArRaG7MCeXxwwh393b9jx4ASJRE2OhnQxyz8rbZAP4gefMHx4ZKfzLYwUIbKut0OGtQ WAxw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751918479; x=1752523279; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=LP8bmMp57OA6IhQ6YmNAhKyLYtPMaSr+eZSmls4pM8M=; b=wLeMAK9jbcKvKME0fynd5LCSIAAWIdb9oR6mGshyID72SONHXiKNkTAiuiREW5eB8H ARZu2kH0Dy+HNuVc+2qF7CRxzugAea157j0aB8zFPqtOC1Q8EFSwmfiOU1NG29gStY/B ilTYVwzs4r5gdlkQ2Z+X+cUpPbG7KC9jbX67gkxyFakqCo0yJ7vsClaVbWwYgE7LnCeM dYcTIp9A7fyqQNiSMywNA3o+M7N3TZMSIUpKAmIc9g+X4Tzb5rFTj9xU4LOTBkhwKvVb R5L8GUKFCuAFcAcYJcASgpHO1XA0UvGd3LCwbnQO0SWz1qo5RS1J9YMo8llqCskLnmuL WtGA== X-Forwarded-Encrypted: i=1; AJvYcCUIBzOU4G8e7cskC7BlCt7mC05HJFD4OZVCaY2z1ne0kPjXH4PPSoNPrzTt+sx2wo2RWokcWQpv3blcQ+WHPKS/vRg=@vger.kernel.org, AJvYcCVOgsSKkOqxEZprvwaUqN1atgTzuEPftSBUwm3OYaSZBLqF4OK1iL2M3Fm7IJ0Bk5vx1b5p5LU75ywP92JV+L0=@vger.kernel.org, AJvYcCWniAtRQZDHnwTikOqb96/+Vd5zHd9uwTsZR3W4r5bFvAkhWw/St2Xu47cvwjGCxiUOjgPooYOrBQarHuk=@vger.kernel.org X-Gm-Message-State: AOJu0YwZCac2z4I5qm+X7pxv26JO6umAFbhlzj2dKYQciSUxQiom7HjI WtbZ7S9xHy8+14JVSdUm6KE3TWv9j7YlIRP0WOZQoegItQUKnIuBKrPl X-Gm-Gg: ASbGnctTlN+ouhusG3ySU1n+J0mDCoxVmlMOEdghPifATpF4lQvSPqGXor+u4JGnIBh nTkPpePbNPR95+cxDZ1wQfnrWiUANmlv5f+CQYI2B6AiBPdy0idXlYusXygSrPKMNHrS5Axu5jq lByho50vCuAnLnvnab1xIu1A4mGy6KpY957hlvQh2ImZbsGGLG5T7l1uOD8iCH284BN9GVtlSPe oFlrZJ/LE2avJ/P3u+a1tLcelvkNnOIficmbN548Yeyz46itSei0a8riq9i+XTMtB0iLPlk+GfK EZo3KXgRcbEsS+bNMVgwozXjv7/YV55wJrKka3ETo1HSv4lkhltzlkPalVTuSVSTmne/fe/o0tU hfvEp02ROb0+jmllhIkc= X-Google-Smtp-Source: AGHT+IErr9J27PXfYeZhimqyOaDoekqacPSEV+vEQRLL/v5ULwP2Kxqx3EaJZU6S+5WtEKbFalI82Q== X-Received: by 2002:a05:600c:3e85:b0:43c:f3e1:a729 with SMTP id 5b1f17b1804b1-454cd691516mr225575e9.12.1751918478674; Mon, 07 Jul 2025 13:01:18 -0700 (PDT) Received: from iku.example.org ([2a06:5906:61b:2d00:d418:e5eb:1bc:30dd]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b471b97376sm11268995f8f.61.2025.07.07.13.01.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Jul 2025 13:01:18 -0700 (PDT) From: Prabhakar X-Google-Original-From: Prabhakar To: Wim Van Sebroeck , Guenter Roeck , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Philipp Zabel , Wolfram Sang , linux-watchdog@vger.kernel.org Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, Prabhakar , Biju Das , Fabrizio Castro , Lad Prabhakar Subject: [PATCH 2/9] watchdog: rzv2h_wdt: Obtain clock-divider ranges from OF match data Date: Mon, 7 Jul 2025 21:01:04 +0100 Message-ID: <20250707200111.329663-3-prabhakar.mahadev-lad.rj@bp.renesas.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> References: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Lad Prabhakar Move the clock division ratio values into OF match data instead of hardcoding them in the driver. Introduce `rzv2h_of_data` to hold `cks_min` and `cks_max`, populated via the device tree match table. In probe, call `of_device_get_match_data()` to retrieve these values for setting up the watchdog. This refactoring is transparent for existing RZ/V2H(P) usage and facilitates adding RZ/T2H support with different divider ranges. Signed-off-by: Lad Prabhakar Reviewed-by: Fabrizio Castro --- drivers/watchdog/rzv2h_wdt.c | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/drivers/watchdog/rzv2h_wdt.c b/drivers/watchdog/rzv2h_wdt.c index 8defd0241213..d64d29709160 100644 --- a/drivers/watchdog/rzv2h_wdt.c +++ b/drivers/watchdog/rzv2h_wdt.c @@ -45,12 +45,18 @@ module_param(nowayout, bool, 0); MODULE_PARM_DESC(nowayout, "Watchdog cannot be stopped once started (defau= lt=3D" __MODULE_STRING(WATCHDOG_NOWAYOUT) ")"); =20 +struct rzv2h_of_data { + u8 cks_min; + u8 cks_max; +}; + struct rzv2h_wdt_priv { void __iomem *base; struct clk *pclk; struct clk *oscclk; struct reset_control *rstc; struct watchdog_device wdev; + const struct rzv2h_of_data *of_data; }; =20 static int rzv2h_wdt_ping(struct watchdog_device *wdev) @@ -106,7 +112,7 @@ static int rzv2h_wdt_start(struct watchdog_device *wdev) * - RPES[9:8] - Window End Position Select - 11b: 0% * - TOPS[1:0] - Timeout Period Select - 11b: 16384 cycles (3FFFh) */ - rzv2h_wdt_setup(wdev, WDTCR_CKS_CLK_256 | WDTCR_RPSS_100 | + rzv2h_wdt_setup(wdev, priv->of_data->cks_max | WDTCR_RPSS_100 | WDTCR_RPES_0 | WDTCR_TOPS_16384); =20 /* @@ -184,7 +190,7 @@ static int rzv2h_wdt_restart(struct watchdog_device *wd= ev, * - RPES[9:8] - Window End Position Select - 00b: 75% * - TOPS[1:0] - Timeout Period Select - 00b: 1024 cycles (03FFh) */ - rzv2h_wdt_setup(wdev, WDTCR_CKS_CLK_1 | WDTCR_RPSS_25 | + rzv2h_wdt_setup(wdev, priv->of_data->cks_min | WDTCR_RPSS_25 | WDTCR_RPES_75 | WDTCR_TOPS_1024); =20 rzv2h_wdt_ping(wdev); @@ -213,6 +219,8 @@ static int rzv2h_wdt_probe(struct platform_device *pdev) if (!priv) return -ENOMEM; =20 + priv->of_data =3D of_device_get_match_data(dev); + priv->base =3D devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(priv->base)) return PTR_ERR(priv->base); @@ -254,8 +262,13 @@ static int rzv2h_wdt_probe(struct platform_device *pde= v) return devm_watchdog_register_device(dev, &priv->wdev); } =20 +static const struct rzv2h_of_data rzv2h_wdt_of_data =3D { + .cks_min =3D WDTCR_CKS_CLK_1, + .cks_max =3D WDTCR_CKS_CLK_256, +}; + static const struct of_device_id rzv2h_wdt_ids[] =3D { - { .compatible =3D "renesas,r9a09g057-wdt", }, + { .compatible =3D "renesas,r9a09g057-wdt", .data =3D &rzv2h_wdt_of_data }, { /* sentinel */ } }; MODULE_DEVICE_TABLE(of, rzv2h_wdt_ids); --=20 2.49.0 From nobody Tue Oct 7 18:24:29 2025 Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) (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 82F2821765B; Mon, 7 Jul 2025 20:01:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918483; cv=none; b=NRWKA0LVWnHsP/vzecmHt0Wg71Qxl6sy78XHuRup29zs1X5SB9aDeCF7W6XtKY794zH5expxzHaT+PeQzLanWU1uaTeIMnVlSxc+fdOy4BLiCe+18sR/RBCOUV2wGLKTGDdjdfzbQPvV91HwnqMbTLmZidXg/6mdeiEa0NeoIns= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918483; c=relaxed/simple; bh=U9n0UvTr/t+VGQ7z8U4zcE4CQNRSCzffzpdEn6vdQdw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=kEj65Yhr80nWB1iE2kV5dfI4Z3dPKVeP7S6Fv1342y4ZGjfmLS/K2YsLMoeFkryYQ6ERGc6WKzAyokaYDvwJ1lIozv/CcjoawwoIP94VafXa5YxVvAV6PJfurIfywiweYB8xZ1fvmVp9CdgsnUetC/UeCPpteorjW0K/GBp9Qoc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Y5l0sGlp; arc=none smtp.client-ip=209.85.128.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Y5l0sGlp" Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-453608ed113so39968815e9.0; Mon, 07 Jul 2025 13:01:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751918480; x=1752523280; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=w1Xoo1ntlvceZQYRguTvASHl7I+9j6IPVbVdRicARhE=; b=Y5l0sGlpWeJyQt5tot1plbCXs5kZPSrrQYQsk0SXJyfAS9A5HA4jqRHde3VAbAyAlq OJvYsVLAqVy+pA8g1UofS7fEARikwNbDwD38C0UolT93RpbmPT0yWqWbhPjm1nTfpLw0 tAHe/sNOHNAuTtrDIu+6rjuMJSeAzmbDnsxbdpYCPZI07vZ/Uq5EnBJEw0YRTNPNt1Qq vcUXn8Cj7v9hA2v0Bz+j6AjOrZyCC8uffnj8UwVAiaDF4wFtoUNDqvGCKxT47H9UpA7l fYMH5a+OOMmsQw7es8Y/YEX1H0NKRaE87g2iWoA2QS/QopFmXNBqsxiSY2wHgof6J0Zn cD4w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751918480; x=1752523280; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=w1Xoo1ntlvceZQYRguTvASHl7I+9j6IPVbVdRicARhE=; b=vfxeCKwc7ytJEZMx1ZE94a52qG1E7/yPVGudoYWjiqoF4eavB8uX1pYAI2W3clBl2D PTTAx9ThVCcnQkdON0Of3H/plr0kGIe2G7TIyr0h5NEPalg5eGgL8FdWilMGAUShA6jV YkTZrmpbadxV+ki6/qHZW+izo7y32csqnjNX+c3Fc3HNG8d8m8xf8AThz4dI1xm8jC/R 2HLpIH4s3N57VsHZp1tdgkSv8WyPcm8a4K5QFj1MWtuViIULGBCflYGy9PtCX6sHch8Z WNoW8/TPJ00KFILMUo/ZhzzgQGwozY+qvNVP53vhidyGgfQwQEUD96Qq43TzDWHGqeqO gxEA== X-Forwarded-Encrypted: i=1; AJvYcCU7+D7MvTSH/lIiSNbJM3c4+MiEP/IvJy86B7NOCO1mySTMb38VYbeeziMl92cu6dv3351+lpWvynlBc8bHFK0=@vger.kernel.org, AJvYcCXH//mI1rnL2uQTX5vrXE3KbST6PcPgZLBqsXa4Ny92HOwjIl27VeEWjZ93BwE/uzbZY3ecI3XEaPQ4jqQ=@vger.kernel.org, AJvYcCXbZx/cwE7kBOAvK20UnR8Zv7HuomOIR0NClIm1WddVWGUWltmvXLKhzFg5rdfiXiwak28mzqoRN1eRHuSeezEPfgU=@vger.kernel.org X-Gm-Message-State: AOJu0YwfdyS7rC+L0cgZU9+RMe8NViMfxqc1H3P9W1UeBVkuyuhRrZm4 didkWTZwVOfR/ZZVSBobAB+nBLQ7v3zcabUAhNd9z12GgBE6fOYi9zzu X-Gm-Gg: ASbGncsa9KSP/G4YJw7H7KIeNy/mU4uAMKEL237EdTPkCi7EiEc8eJ6VFKVueyVb8OS oZnuHRCu/8aQBEm/wIfP9dPBmOsR/tHJFQuoovzUlslOPqoiBt1YvZcLoUw/5JFd/6ncrUaH0T9 xGQLtpqsHzL0XOwB0kO09Cnh+FGQKDm73UY+mP0TbDhNep2on3iqhQDuIDPshqrdrcxUiNlTTJx Y0rwfBa5SSReEcW4k6QwXhPpqFzSNl7eOpPC8vA/Zr7GBVFuWaipjHZvCS9dNr0Rosx3hB/shEC PJX5XLn2VAJhF+S/Ag47RriI9XEvgWvEXKatIHYTrfuiancUoo99hsqIddRnz84Uy9UmY9V7Rfx u1jx9/8nwAe1sxgCTkEw= X-Google-Smtp-Source: AGHT+IGTG+HvUhHQB4d34CJIXt07l9odI1qWSzTFctw0FQBsGmQGP/eE0+0G4Qu/cJSDZSXo5nID+A== X-Received: by 2002:a05:600c:3493:b0:442:cd03:3e2 with SMTP id 5b1f17b1804b1-454b306a122mr134904985e9.2.1751918479615; Mon, 07 Jul 2025 13:01:19 -0700 (PDT) Received: from iku.example.org ([2a06:5906:61b:2d00:d418:e5eb:1bc:30dd]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b471b97376sm11268995f8f.61.2025.07.07.13.01.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Jul 2025 13:01:19 -0700 (PDT) From: Prabhakar X-Google-Original-From: Prabhakar To: Wim Van Sebroeck , Guenter Roeck , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Philipp Zabel , Wolfram Sang , linux-watchdog@vger.kernel.org Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, Prabhakar , Biju Das , Fabrizio Castro , Lad Prabhakar Subject: [PATCH 3/9] watchdog: rzv2h_wdt: Obtain CKS divider via OF data Date: Mon, 7 Jul 2025 21:01:05 +0100 Message-ID: <20250707200111.329663-4-prabhakar.mahadev-lad.rj@bp.renesas.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> References: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Lad Prabhakar Update the rzv2h_wdt driver to obtain the clock division ratio (`cks_div`) from OF match data instead of using a hardcoded value. This allows the driver to support SoCs where the clock divider differs from the default value of 256. This change is a preparatory step for supporting the RZ/T2H SoC, which requires a divider value of 8192. Signed-off-by: Lad Prabhakar --- drivers/watchdog/rzv2h_wdt.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/watchdog/rzv2h_wdt.c b/drivers/watchdog/rzv2h_wdt.c index d64d29709160..c2f39dd56687 100644 --- a/drivers/watchdog/rzv2h_wdt.c +++ b/drivers/watchdog/rzv2h_wdt.c @@ -36,7 +36,6 @@ #define WDTRCR_RSTIRQS BIT(7) =20 #define MAX_TIMEOUT_CYCLES 16384 -#define CLOCK_DIV_BY_256 256 =20 #define WDT_DEFAULT_TIMEOUT 60U =20 @@ -48,6 +47,7 @@ MODULE_PARM_DESC(nowayout, "Watchdog cannot be stopped on= ce started (default=3D" struct rzv2h_of_data { u8 cks_min; u8 cks_max; + u16 cks_div; }; =20 struct rzv2h_wdt_priv { @@ -238,7 +238,7 @@ static int rzv2h_wdt_probe(struct platform_device *pdev) return dev_err_probe(dev, PTR_ERR(priv->rstc), "failed to get cpg reset"); =20 - priv->wdev.max_hw_heartbeat_ms =3D (MILLI * MAX_TIMEOUT_CYCLES * CLOCK_DI= V_BY_256) / + priv->wdev.max_hw_heartbeat_ms =3D (MILLI * MAX_TIMEOUT_CYCLES * priv->of= _data->cks_div) / clk_get_rate(priv->oscclk); dev_dbg(dev, "max hw timeout of %dms\n", priv->wdev.max_hw_heartbeat_ms); =20 @@ -265,6 +265,7 @@ static int rzv2h_wdt_probe(struct platform_device *pdev) static const struct rzv2h_of_data rzv2h_wdt_of_data =3D { .cks_min =3D WDTCR_CKS_CLK_1, .cks_max =3D WDTCR_CKS_CLK_256, + .cks_div =3D 256, }; =20 static const struct of_device_id rzv2h_wdt_ids[] =3D { --=20 2.49.0 From nobody Tue Oct 7 18:24:29 2025 Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.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 EFAF121CFF4; Mon, 7 Jul 2025 20:01:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918484; cv=none; b=cqbLnC2gc6NcmPXwlCl6p/d0aW5uZSi05qcWNXpUdTMLaWpzYvdrcTsOJe+HphELlV9XrKNxm+oWTfSDU2AbpJP8bqdqe1LsvA0ZAc6geBmrrPMqYJdLR6uFU1miBRwdHyVUKi+34M8hLJ2A1/J246doIDELH0wS7Nhwqnbs/Fc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918484; c=relaxed/simple; bh=digq2XYTXh1y8LY/b1TYiVlpRxYzxkHlsWdTXzF8KcQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=bWn/w9iD67MITmbfaZMMQyYLNPRfCnELTgB9j57S2gOgV64/J9juzf1Rmv/76EaOELkxHEkcidy2rJzWI4fIKD1plGTR47SidelxqK5cq+NejBokLMBEUHqvChrcc4M5L/tfa+HaW+q8xfNdR+U/xop/OdWGlWkUvU4C+xNsJIs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=aOLyI8R5; arc=none smtp.client-ip=209.85.128.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="aOLyI8R5" Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-450ce3a2dd5so32087385e9.3; Mon, 07 Jul 2025 13:01:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751918481; x=1752523281; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=9FPegA29oM0Yk1/YQWrh5958YiJTYamLd51GkQvjIU4=; b=aOLyI8R5lGfh3JSv7k4D5EJjQOfv3ix9vb7ELf+EnovKH6yaoUQhM8znfXoAdQzfNz QcRjW8naLWT952k79foDVw3AEDEGGfJCQsF8qnL6/Scrm11KeCQEKsi+9Gq9n3T4aR/Q C+40LN6uxVH8tLEcz8adNE+c7+D7ENntn8w+vTuAC8cB8wnFgnACdlMLufSThvAokv/Q fCDUtVFNN1uhTyhZ/avaDRHC/c0CtPRXfaQFcfbaJ7z8CmlzCgdapkhMue2Gsa0is6hi r+WenQUuXFAn1KxDh7Hly8gczCdj68sl0lAnshBw/2QeYQfGuR/wqItr/sRcNaY2IVqo ktow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751918481; x=1752523281; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=9FPegA29oM0Yk1/YQWrh5958YiJTYamLd51GkQvjIU4=; b=N+NuAYomVOPqm9m0SDXY3temkByDt1H+l5pmERhnvThbkoS6yjmWpZmkCghnQN5/Fp xPKOunbBtvDfw/ys+vCgFJuy1LFCVfWnTmsAL0Dy2Sap6UGWSJk5TurUg+vJA+Hdmq2Q Vd+PPu4ucQ02NbFas0TvhKNEFXjBI5jGrPIRjve974LU3MavXH0EUCjItOJPZUPRoqiz VVMLSu+nZXBa9pUfCusI8L1gA604MqnIFVP5hJY37ooAHMGBkMByfDch3bb2YzmjYv5S HWpJ8fd53Rg2KjuWn7OKEkXxGsGlRlWsKzw/iW7vrU/6HKf1y1XWDLOkDmBu/PNOEPVH VNTg== X-Forwarded-Encrypted: i=1; AJvYcCVPMNIK6ty2ZVBqULsAWeLxpBmzz2nsVpJrgKLapbTx4LQRcmnOBfmOyAe6rvvn/obOXxdmJ8pj1U0UaaU=@vger.kernel.org, AJvYcCWxtqBN8tas1+4iAqiQzw5qQJL80eQcEOsH7g7pG01fTL2j53nQ9V9Ft3EoKNmUYaNI1Ed4fO4AVi56FxRdd+w=@vger.kernel.org, AJvYcCXkLc+kCdpvLApfCVdijtVkbvBAvoMVj/I9RBpSpUvRJHAylUNaSTF+4CHEzCLw2DwnQM1dDeNwiIpt156DLBJd1Tw=@vger.kernel.org X-Gm-Message-State: AOJu0Yz13/uchz1uFwsbmpqc/Ha6LSUHNAdAFPWy/xNyoUN/WxM5qs9Z yssVVJAKw4QXElCtDsJC5vqxViLeUgfupUqYqFee+sL8sqV7iF0qC9Vt X-Gm-Gg: ASbGnct0U8TRSEYzRen1IQH5f2w3pOgZbCgAn5HzyL3EZkm8BIW7JLxehblqOpj7Oyh EvTQBYkooaHAUP7vz367c3VngKTVDHOt7RGXzzBkVi1YSzmc4mx7ZfcpM2jINkCfVwBrrbaX/3F kWWl/+ZVXhU4NnCLLX1MaK9q7C5Lh+xUDubdmRaj8s3zJAf6RGQqzvaoFcppENy2MFWH4PyvJ2w 3Bt4dmEmp7CEOyi/qO9noThtkSizTZoMN/p8oXR3Hqd/snEJnMQSNT6BRjjdG9uz6CZAucqHEkF v33MKfXGsNMBit3dkLRI56fx1AvncHdkRca0bC9SAirH9wLl2WFRTLRZTTG1+CWIDIqJJtg/brI fUYwxE7YFyiLxHmXbQUA= X-Google-Smtp-Source: AGHT+IHqDK3BFNoKsr7OWoM1bsM+W/eTnsVdqnD+cEVrJIcWY6Qet0nToGTFbGn3POVWgVo9IrlIIw== X-Received: by 2002:a05:600c:540c:b0:450:c20d:64c3 with SMTP id 5b1f17b1804b1-454b4ead0bfmr139034805e9.18.1751918480792; Mon, 07 Jul 2025 13:01:20 -0700 (PDT) Received: from iku.example.org ([2a06:5906:61b:2d00:d418:e5eb:1bc:30dd]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b471b97376sm11268995f8f.61.2025.07.07.13.01.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Jul 2025 13:01:20 -0700 (PDT) From: Prabhakar X-Google-Original-From: Prabhakar To: Wim Van Sebroeck , Guenter Roeck , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Philipp Zabel , Wolfram Sang , linux-watchdog@vger.kernel.org Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, Prabhakar , Biju Das , Fabrizio Castro , Lad Prabhakar Subject: [PATCH 4/9] watchdog: rzv2h_wdt: Make "oscclk" an optional clock Date: Mon, 7 Jul 2025 21:01:06 +0100 Message-ID: <20250707200111.329663-5-prabhakar.mahadev-lad.rj@bp.renesas.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> References: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Lad Prabhakar Update the driver to obtain the "oscclk" clock using devm_clk_get_optional_prepared() instead of devm_clk_get_prepared(). This allows the driver to handle cases where the "oscclk" clock is not present in the hardware or device tree. This change is in preparation for adding support for the RZ/T2H SoC, which does not provide the "oscclk" clock. Signed-off-by: Lad Prabhakar --- drivers/watchdog/rzv2h_wdt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/watchdog/rzv2h_wdt.c b/drivers/watchdog/rzv2h_wdt.c index c2f39dd56687..baf9d64510b9 100644 --- a/drivers/watchdog/rzv2h_wdt.c +++ b/drivers/watchdog/rzv2h_wdt.c @@ -229,7 +229,7 @@ static int rzv2h_wdt_probe(struct platform_device *pdev) if (IS_ERR(priv->pclk)) return dev_err_probe(dev, PTR_ERR(priv->pclk), "no pclk"); =20 - priv->oscclk =3D devm_clk_get_prepared(dev, "oscclk"); + priv->oscclk =3D devm_clk_get_optional_prepared(dev, "oscclk"); if (IS_ERR(priv->oscclk)) return dev_err_probe(dev, PTR_ERR(priv->oscclk), "no oscclk"); =20 --=20 2.49.0 From nobody Tue Oct 7 18:24:29 2025 Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) (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 9604321E098; Mon, 7 Jul 2025 20:01:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918485; cv=none; b=KfghoFSYfRLchDZpuwMueV3i1/omSOlptU/kiP06GLPNMEqd3BL5ZqVNy27FSo3tWjOkWz62py1ShlI7HfkmxJpX15eU7t7k/xzrVcYGQfdNDX0+6i6zftzENm5SwN1pgV+XcYapomuvSwvUSspdpCGWtIOY8r2WDqUtq93CDtQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918485; c=relaxed/simple; bh=4lmK5H5FTLM5fVLs5snSbjXGVL+7VYM6oP9exb/h0es=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ie9JOBloCTORZxSkL0tHmAE5GBohnCuz8ZM27wfGfJP4CZxeZY/51fUaoGTIzv8p5vNl8h8MGJscMjISwSXloA/6wKrSLKG+67ftppMqIqJYSK/b9RDeQ9+2EMRX4mlFdxr2z1kRAXFln3RbDVagsi0+Q8hhkHe7g31v9EuHajg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Keiz0CQu; arc=none smtp.client-ip=209.85.128.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Keiz0CQu" Received: by mail-wm1-f48.google.com with SMTP id 5b1f17b1804b1-453398e90e9so24529395e9.1; Mon, 07 Jul 2025 13:01:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751918482; x=1752523282; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=I/kwCuB4RTIwn+d7r5g8B9awVScIvJKrhWRX83EqinE=; b=Keiz0CQu0Vg1QlxAWRLXs/VK3/U1vrOeE0NbMSE8UPWnSBizlSt9pU50k28o4YdqMN e2knC//bj+8g37OCvoThXCrL4tJLwgN4Lhz9VMaeXKzOREn8R4g+7o4vTyAMarDKeNQj VBOrQCzwu+8PGCsHA+vy+fjT1kYl7g67PvOS5lcxxVsUSF13PA5TrVB6Ge9sl97J85NQ avU0fKmg908ru/1dGZOjVGllGGj/JQPWzIcWDd38yUyPsGFV+7yyeEg5Ju6qH+9khk3W /Ov19627V9u534Mhbq+4nu3zYotZNuFfjLM8JdXnkj2G3Xgi8wGbML/1ICX75qwD7oDh ia6Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751918482; x=1752523282; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=I/kwCuB4RTIwn+d7r5g8B9awVScIvJKrhWRX83EqinE=; b=T/h/s8lz1gPob4K0USvJdK37adtFx23NJcTOegHkEO+I/Kpi+u6flBNpnP8Fsm5lwW tDgN9sk2TCSwvGmjchFmStYLH/JRmbWxCysVbmD9Rn5r7jtiEfDMvq8E9vZnV9ksbrzi pBBb22PK4UBWGUcS1XwUbB7CpsHBPgaAuNGmZ/fA/3hSCqjQs+O4k4lnjmEryPFtsHBD +kEk2i2US1wLhh9crfpwFfwIPEh269b/bb+5GhvOMWCoHcUwbcuTiR5F7QQ138W2Cjms YiljhoI5D2IYoPt3OwcP+W6FMonP7H41t+j7rIg8HQnp55HTkZcqiX58d5/tnUUqSdja uH+g== X-Forwarded-Encrypted: i=1; AJvYcCUVAYjba/PnEdRa/ox3eQTbsSpvWjEiOI0qcxKVtu3QeEwkApAFDrqiPNPuF37ZSTAw64B04Qwd+/6vk23yHQg=@vger.kernel.org, AJvYcCW3O8f4Gz3nbkkULO4CtQlzoxP0M2/pO/bERHb5OCjJJDdXbHMCr3gkwsRRjCFVt60w4q+lJjZar+Ut8c0=@vger.kernel.org, AJvYcCWp3alftrkuD+bApgE1C7Wl8K3Bt2S1uuTOqvxwPi7EwdJclJTmn1NWYC5bvGYM/M40f7IC/1diPlm7L6A2D0np9X4=@vger.kernel.org X-Gm-Message-State: AOJu0Yw7k3NdknuM+0hYJALJd+E5rYNpTwLZYVp1fZTYIMdrlKJsibwe TaOYFFPD9W+XR1z9zqsjXJ2aw/v3hZxIB4/npcaYZFDnrWPNVtRiec2g X-Gm-Gg: ASbGncu1u7I82/y30wKihorMJg3xi0xUVXFv/utIShr6sMdgLdBHHHlLeymagtbUj71 yRKxOjjSs60rE2LE+VEkSUnD+Jo8eTG5TtlHXUOoeghhGNZbA3WnqXJfc/qEmEn9SgvNs+vVekw kS5SQEEM8vnWs81YaA+vTRnDLhd0XYFdEETpcGcIk1CHzaf2U5PLFpemsU1mwJMaxmf35YohARu DzXBI2CopRsUKr81yjkormzse1yO95OeUoV1n196bfZiG0Ah/UszNXwEA5KzM1BuztlKv2ubG5w /SPjqZnZWUhvN/62RUUVkewt2ZNrI8LZe1WO2fi7YU75KCm3d/GYavlK1HFTuwLA5eS17Uhi3lz RS9ZEBW19Ua8TvMaxEA8= X-Google-Smtp-Source: AGHT+IG9nktah2TRCvvPkN6TvRcs8DyouEWw3ogE870zPPJzDoQQwS6p4bajVo+HkNKZi8GuVlz5eg== X-Received: by 2002:a05:600c:1e02:b0:442:f4a3:9388 with SMTP id 5b1f17b1804b1-454ccc4a47emr8622835e9.19.1751918481702; Mon, 07 Jul 2025 13:01:21 -0700 (PDT) Received: from iku.example.org ([2a06:5906:61b:2d00:d418:e5eb:1bc:30dd]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b471b97376sm11268995f8f.61.2025.07.07.13.01.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Jul 2025 13:01:21 -0700 (PDT) From: Prabhakar X-Google-Original-From: Prabhakar To: Wim Van Sebroeck , Guenter Roeck , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Philipp Zabel , Wolfram Sang , linux-watchdog@vger.kernel.org Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, Prabhakar , Biju Das , Fabrizio Castro , Lad Prabhakar Subject: [PATCH 5/9] watchdog: rzv2h_wdt: Add support for configurable count clock source Date: Mon, 7 Jul 2025 21:01:07 +0100 Message-ID: <20250707200111.329663-6-prabhakar.mahadev-lad.rj@bp.renesas.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> References: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Lad Prabhakar Add support for selecting the count clock source used by the watchdog timer. The RZ/V2H(P) SoC uses the LOCO as the count source, whereas on RZ/T2H and RZ/N2H SoCs, the count source is the peripheral clock (PCLKL). Introduce a `count_source` field in the SoC-specific data structure and refactor the clock rate selection logic accordingly. This prepares the driver for supporting the RZ/T2H and RZ/N2H SoCs, which differ in their watchdog clocking architecture from RZ/V2H(P). Signed-off-by: Lad Prabhakar --- drivers/watchdog/rzv2h_wdt.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/drivers/watchdog/rzv2h_wdt.c b/drivers/watchdog/rzv2h_wdt.c index baf9d64510b9..cb584ac5860f 100644 --- a/drivers/watchdog/rzv2h_wdt.c +++ b/drivers/watchdog/rzv2h_wdt.c @@ -44,10 +44,16 @@ module_param(nowayout, bool, 0); MODULE_PARM_DESC(nowayout, "Watchdog cannot be stopped once started (defau= lt=3D" __MODULE_STRING(WATCHDOG_NOWAYOUT) ")"); =20 +enum rzv2h_wdt_count_source { + COUNT_SOURCE_LOCO, + COUNT_SOURCE_PCLK, +}; + struct rzv2h_of_data { u8 cks_min; u8 cks_max; u16 cks_div; + enum rzv2h_wdt_count_source count_source; }; =20 struct rzv2h_wdt_priv { @@ -213,6 +219,7 @@ static int rzv2h_wdt_probe(struct platform_device *pdev) { struct device *dev =3D &pdev->dev; struct rzv2h_wdt_priv *priv; + struct clk *count_clk; int ret; =20 priv =3D devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); @@ -238,8 +245,18 @@ static int rzv2h_wdt_probe(struct platform_device *pde= v) return dev_err_probe(dev, PTR_ERR(priv->rstc), "failed to get cpg reset"); =20 + switch (priv->of_data->count_source) { + case COUNT_SOURCE_LOCO: + count_clk =3D priv->oscclk; + break; + case COUNT_SOURCE_PCLK: + count_clk =3D priv->pclk; + break; + default: + return dev_err_probe(dev, -EINVAL, "Invalid count source\n"); + } priv->wdev.max_hw_heartbeat_ms =3D (MILLI * MAX_TIMEOUT_CYCLES * priv->of= _data->cks_div) / - clk_get_rate(priv->oscclk); + clk_get_rate(count_clk); dev_dbg(dev, "max hw timeout of %dms\n", priv->wdev.max_hw_heartbeat_ms); =20 ret =3D devm_pm_runtime_enable(dev); @@ -266,6 +283,7 @@ static const struct rzv2h_of_data rzv2h_wdt_of_data =3D= { .cks_min =3D WDTCR_CKS_CLK_1, .cks_max =3D WDTCR_CKS_CLK_256, .cks_div =3D 256, + .count_source =3D COUNT_SOURCE_LOCO, }; =20 static const struct of_device_id rzv2h_wdt_ids[] =3D { --=20 2.49.0 From nobody Tue Oct 7 18:24:29 2025 Received: from mail-wr1-f46.google.com (mail-wr1-f46.google.com [209.85.221.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 AFEE9219A9E; Mon, 7 Jul 2025 20:01:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918486; cv=none; b=E0daLg5pfKJxDrO4Nqo4WC4B+7GUBK04yiwIQ7h65+BnKg4zH++g+vZmSOiIHAAJxX3wJW1BQYgpL7unv6RzIoIfo7rJsOybQqKg/+eSEhIS8LaRoVYNcQiCMqWBFxVj2GaRxh6x9SmrT0gkQKV9qtdlP3BiTRExWowXIw3AlrU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918486; c=relaxed/simple; bh=a9gV4/x5WR7owAGGWjd2L3oOQiFwyR+RxwADdjljzdA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=lThY8X32u5EOz4yMqBn72Z8CGfShJwOY+ZzxGibVpYXhitxjcAIpRbwEoPu8ItxhMMlqvBfb02CSOIM+exuBjPvDob1qLSbMwQffWTLXKC8w8IMpaytXXoutzoriRvViSoUFopvbAh4m/SX/0uHY+TWzsGOHcdwFEYVe2FyPduo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=H+kzxn50; arc=none smtp.client-ip=209.85.221.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="H+kzxn50" Received: by mail-wr1-f46.google.com with SMTP id ffacd0b85a97d-3a5257748e1so2958053f8f.2; Mon, 07 Jul 2025 13:01:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751918483; x=1752523283; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=msAgLL0y2lo6QCVAd1jQcAowaRieaZMHAfnPdkFo6ro=; b=H+kzxn50O1QGK7Ia6zSBcuCo0QyAzP3lExLCDYsTussQPgQr0sn/L810dJTum1VTXW c1EuodkOz7UGXf7ebNsVHcPtiE35dnMxwZNvQwbrlHq6Az8kSbpEF/nz7sLtoEjn5zQ2 dizJ6AFsElytO7SQyOfbs1tu9PQIhQyqnC1YrLriTE6MjfzGiqloUdyCchON4wz1SUpH K3IMxz+fQDzGqHvWXemQjIkkjfY/qCJ9VfxTWtJZbOm6YJCEJMjFMGKzsLcIXPidUtfP hkGykxjG1DsmOPDKJn5NzoV+i3uFP+QhByorSUMwTwthHZhPI85Il/Zm2POXYuns4doy P1Fw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751918483; x=1752523283; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=msAgLL0y2lo6QCVAd1jQcAowaRieaZMHAfnPdkFo6ro=; b=EAUhhjJ8TF93PUx3PEKAxHYbPoN1PCnTcR9qcNJru/Hd0F//WO9c6/6vUpfROqC2Vt S08xBhRvVMTW/JgUR4Itz2T9mXiQEllu8Ba9jnybpqbtR86A5PMf2ffYsKF4d8xCfRfN O2RIfV+TZaZqspihGw80PJtpMXCi1pU+jtPNIMYMLrAtCsiPeULPZl4Xls1+6qI5AfrE x7/qKM3XyRXkU8E4lGffv828fWjtBEWkb83SUpD3GMDzxbmfSMcESYqEyHO/gM9dVsiL ZFkrIjVNgMKJE479dv7g3lFb0shS6dQUpV7FVJL7+qkbkZCFuNkcXb3GHs7B+AtZqn7D oDZg== X-Forwarded-Encrypted: i=1; AJvYcCUSIcnl0Czgu5311l/vPBzxXEC7C1WlxSnH5CeGs+STS5WWgfXckYrKubHIXMjj202SOGG5yyjWHEsyf4g=@vger.kernel.org, AJvYcCVeO9qT04Rbb2YEUzTgk4vqoBXssRgUKqsFHAiNM4iWers3UM+EupnxHvsnGWEUjPUadk7h4TiZfRqhgJpbrYPJuGk=@vger.kernel.org, AJvYcCWYA+ZQP5bTeV0uk+TcLJeGkPbVawNfXG/zM7zct4Wcqgsmw0O7wvkF4NJPu5BGtGLCXNDJRrgE+K0bjz26ANo=@vger.kernel.org X-Gm-Message-State: AOJu0YwaI2lJ+UdganCaQXCtM8ZhTLM8KXYZ/Ka3KJBIjXdnQZ3M0Kz8 k6rCVAjM/P1zjkqariG2vFZxQRKOKD17h/FZVT5wn4SrvkJxbnx9eSpn X-Gm-Gg: ASbGncvlIpIvwoEFxpbSa9fC1zSbqUivv0N9Rr+PbV1MjszRXUDLrCdp1tW6+eLlWQM rrmrFIhgwg3C4By0frAsrMYcF9acu4VJSGOn2R1gH3SGJZIev4ylBnG9Ut+RubRBGtQY9XzK+NO rvV9/OU15fADT47y+pWcVHmqGqB4ahO2StWwRVBHBAvYVMY4qo+miMd0/PXqtWrpiiLiSld/Zu+ IDmXvRZm9goWNe5H8L10T6liYxWZgdg7J3k60pwl4qck0EfkDbRxyaLKxsroVBVOvSzCWmiUnfX B06rGbx8kbqIbUybEAcsI88/0eWHgektBBFE3xwciL3ShTR/EZPHKy+Mx+19Pi8UE++x1jQqDtJ fEXYLXISA3r/XN3Fwaqo= X-Google-Smtp-Source: AGHT+IELYB5O/cKYUGRln/ShcDYmm0RWIjhL2uNzE0qqkD5+GYtqnTZTI0Fz1UPcATF1Rlf9Pfy/rA== X-Received: by 2002:a5d:5d0e:0:b0:3a4:f35b:d016 with SMTP id ffacd0b85a97d-3b497011a15mr11623488f8f.11.1751918482935; Mon, 07 Jul 2025 13:01:22 -0700 (PDT) Received: from iku.example.org ([2a06:5906:61b:2d00:d418:e5eb:1bc:30dd]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b471b97376sm11268995f8f.61.2025.07.07.13.01.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Jul 2025 13:01:22 -0700 (PDT) From: Prabhakar X-Google-Original-From: Prabhakar To: Wim Van Sebroeck , Guenter Roeck , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Philipp Zabel , Wolfram Sang , linux-watchdog@vger.kernel.org Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, Prabhakar , Biju Das , Fabrizio Castro , Lad Prabhakar Subject: [PATCH 6/9] watchdog: rzv2h_wdt: Make reset controller optional Date: Mon, 7 Jul 2025 21:01:08 +0100 Message-ID: <20250707200111.329663-7-prabhakar.mahadev-lad.rj@bp.renesas.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> References: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Lad Prabhakar Use devm_reset_control_get_optional_exclusive() instead of devm_reset_control_get_exclusive() to allow the driver to operate on platforms where a reset controller is not present. This change is in preparation for supporting the RZ/T2H SoC, which does not have reset. Signed-off-by: Lad Prabhakar Reviewed-by: Fabrizio Castro --- drivers/watchdog/rzv2h_wdt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/watchdog/rzv2h_wdt.c b/drivers/watchdog/rzv2h_wdt.c index cb584ac5860f..f0e2bf786acc 100644 --- a/drivers/watchdog/rzv2h_wdt.c +++ b/drivers/watchdog/rzv2h_wdt.c @@ -240,7 +240,7 @@ static int rzv2h_wdt_probe(struct platform_device *pdev) if (IS_ERR(priv->oscclk)) return dev_err_probe(dev, PTR_ERR(priv->oscclk), "no oscclk"); =20 - priv->rstc =3D devm_reset_control_get_exclusive(dev, NULL); + priv->rstc =3D devm_reset_control_get_optional_exclusive(dev, NULL); if (IS_ERR(priv->rstc)) return dev_err_probe(dev, PTR_ERR(priv->rstc), "failed to get cpg reset"); --=20 2.49.0 From nobody Tue Oct 7 18:24:29 2025 Received: from mail-wr1-f44.google.com (mail-wr1-f44.google.com [209.85.221.44]) (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 2E044262FCC; Mon, 7 Jul 2025 20:01:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918487; cv=none; b=iK4Rce+5LI+2q7prZY6Ug5QxhExfsoQeZPB2/j2N4dnHobjP6TtulhRnSLZciasoQIfnsLVmN6WYjEToiEQF1WNV5nJwkVZDILEQjxnZDe5VjtMo+521bXpUK69RnRV7Gg3ZxauR6NqQB2WaZdcTYROcZ0uOqia+g26IVF7IGlU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918487; c=relaxed/simple; bh=qPF8NkTpUfftF7708X9YTMkZKg++XbeTAf2HLX5+1CY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=oub0P79k9MJO9XqN0tDk3w8BiXSHXwd+L744OKfTvkH+bXMxUQpQug8IHCQflE8mhfvzyZjOl9bC4rt+1+smIhZSzXCUMX6ZUCSIYqgsw5byjYYjEahD++ROyiloAjhOEv0OfA0m02YIKr+9UW2xOgvnPFZPyBPx23arFa8HOvw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=bb0lJNnL; arc=none smtp.client-ip=209.85.221.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="bb0lJNnL" Received: by mail-wr1-f44.google.com with SMTP id ffacd0b85a97d-3a588da60dfso2401419f8f.1; Mon, 07 Jul 2025 13:01:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751918484; x=1752523284; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=7URniZWoEjaf+i2BnbaXXfBg+hacJuWnRqQYJeUW7ng=; b=bb0lJNnLAL2WwOP2s0KYSsWLIDrlIDcTmJDa/6a3GE7fCRuzCLIGRm84CHmistUc97 npa2h7OpJrRlG7079EcsxYyGaPTm5lQLNv8yEhbLWjBz44NHYzEFPXmpSafZOuMaqxAx 17He0AgZxds1bBIgIVCiD+Xyfo9JtHD06xA96fzsfy/XuJrhyRYf2BNQdsQ/xklu7W6W DsjPsRL2lk6tbcB+KRffE/ASB1t6z72MCT6WwpEbNqdh429LFGYgg1ovTfcv/Ef7XtzX g7cwrQ8nGA3k8MNpy7+xW04sCzQVvoK/3SmW0cfjyfgnV0I78FvIkv/kOU6kfmJ9IbAu 6P0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751918484; x=1752523284; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=7URniZWoEjaf+i2BnbaXXfBg+hacJuWnRqQYJeUW7ng=; b=iA6ktSl7aXzbdCys6qtmP4e3Mx5wKYYWJCYalUJcPfqSRrtVSDNCbF5KT8x1Iassx4 Bm6ghtquiEU/JBWnu3yws/D+Bc26n212Xshcz5TenqLW+8PeGObc33u3ubzFYflUYDW8 2GMns1kv9nq3q9YuMebymXfhf6WNdalIQAkcgTVQLdsxauOQXPuGeEjroaJxPLpL7oad lRAWFBzKunoBS5zmVcTYyUMz/VxVeT37uC5rEcXQPRWZcRuaQqr0SEmFrvWYnI43B15A /5VN9SvDdYQXucS5eyReD6XgGE09rHpLq7PlhoU59wiJ+oPID9WRkIKzILzQSd7JmU1m 700Q== X-Forwarded-Encrypted: i=1; AJvYcCV+BzqO27RUXgeTHmFVeGizQwTyHDLnaFgp9pQ4Zw5hCxvDAKUku2h5jD/JFle40zR7i56p40Gb7M0Onwg=@vger.kernel.org, AJvYcCWeIyYDPkWjLo1aoIvhYGoRNHmbqxHrSmEeOzG60LMWF/aI/zbszXXCg7xB+oI44M6dz3sKRfljopmJ87HUZTPvWfs=@vger.kernel.org, AJvYcCXJwqhzV2BoM8E/bceWEZCFfhL6d8S3bPd4+vmf/GWT9KkxkY1wl5invN3w/9Oa+g0KR3/NHZnjkNNwnkDxsJM=@vger.kernel.org X-Gm-Message-State: AOJu0Yyu4tTLYsuD9IbpJZz3lGENUTB2eueSc2VycUvyoX70wc9y9kmv JkeG4EaNWJxO3U7chhoTQyZByWU2NEhmI0a06JiKWVIlegxxPUWAR3e3 X-Gm-Gg: ASbGncstxmYQ7G3Q39zKhrXtIRthRXCr48elZV3uG1Px1Nw8nqza9NJYuEL9Jv1MIn3 7IvhZqf8VtKXMoKjbDGCSZLmz9/b173C4GgwoeLB7xwWVjkucGaDfyuFClM4h361xsSIHIh5PHX aiaWl5D5GlFTpXB5gcrL0te630DuIE6Cia+/RAvHOOvjLCExsuwd+LaObMW+lmFuB+0lMno2hrz m+xAPn4cbR6zhUAT7EJUD0xXwhkUhgQCvlJtDilGwew3DPFuSKNkUxe8LmDWU0vcotCEQ+PFyLJ A2mrdeSqLltd1eP+PbaND9AYM23AaFukX8rN23F/0gJiuIOggWe9NiF99tyMRvNu/96/qwtCSG0 pctvDJBsoX6w+iLTbyUQ= X-Google-Smtp-Source: AGHT+IHa1b3cujQAtRtLcYgxYEbxpp2/kxF3qBDklt7lTsFCz5uioodOQyVSNohIJ+voKNe5wjEVDA== X-Received: by 2002:a05:6000:4112:b0:3b5:dc2e:3cd6 with SMTP id ffacd0b85a97d-3b5dc2e3cfamr634259f8f.13.1751918484075; Mon, 07 Jul 2025 13:01:24 -0700 (PDT) Received: from iku.example.org ([2a06:5906:61b:2d00:d418:e5eb:1bc:30dd]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b471b97376sm11268995f8f.61.2025.07.07.13.01.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Jul 2025 13:01:23 -0700 (PDT) From: Prabhakar X-Google-Original-From: Prabhakar To: Wim Van Sebroeck , Guenter Roeck , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Philipp Zabel , Wolfram Sang , linux-watchdog@vger.kernel.org Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, Prabhakar , Biju Das , Fabrizio Castro , Lad Prabhakar Subject: [PATCH 7/9] watchdog: rzv2h: Set min_timeout based on max_hw_heartbeat_ms Date: Mon, 7 Jul 2025 21:01:09 +0100 Message-ID: <20250707200111.329663-8-prabhakar.mahadev-lad.rj@bp.renesas.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> References: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Lad Prabhakar Update the watchdog minimum timeout value to be derived from `max_hw_heartbeat_ms` using `DIV_ROUND_UP()` to ensure a valid and consistent minimum timeout in seconds. This avoids hardcoding a value of `1` second and allows the driver to adapt correctly to different hardware configurations that may set `max_hw_heartbeat_ms` differently (e.g., based on the SoC clock source and divider). Signed-off-by: Lad Prabhakar Reviewed-by: Fabrizio Castro --- drivers/watchdog/rzv2h_wdt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/watchdog/rzv2h_wdt.c b/drivers/watchdog/rzv2h_wdt.c index f0e2bf786acc..9c11ce323c16 100644 --- a/drivers/watchdog/rzv2h_wdt.c +++ b/drivers/watchdog/rzv2h_wdt.c @@ -263,7 +263,7 @@ static int rzv2h_wdt_probe(struct platform_device *pdev) if (ret) return ret; =20 - priv->wdev.min_timeout =3D 1; + priv->wdev.min_timeout =3D DIV_ROUND_UP(priv->wdev.max_hw_heartbeat_ms, M= SEC_PER_SEC); priv->wdev.timeout =3D WDT_DEFAULT_TIMEOUT; priv->wdev.info =3D &rzv2h_wdt_ident; priv->wdev.ops =3D &rzv2h_wdt_ops; --=20 2.49.0 From nobody Tue Oct 7 18:24:29 2025 Received: from mail-wr1-f45.google.com (mail-wr1-f45.google.com [209.85.221.45]) (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 84489267B12; Mon, 7 Jul 2025 20:01:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918492; cv=none; b=CNund8Qr2aTVXDUXKf9BGq7YMcR2mlahvHm45LSBamR609q7EBoxWnIFc2XXv48xMo8Pej5MzNKIFerj+KqlOnRzKxVaqoCnp7qUlUQZZgrqhcjqa/h23bjfpJqdAH20Md77ydMVG9bGCvIINsLxHlkWsZlLNHLyuTbB2Oi0hXA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918492; c=relaxed/simple; bh=2YcfqpTGwDXsbTYTPCk1WekTgmfG+uYhV4Dye6GG1Mc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Jc3/5v7u+117LChmfriIOGPLMOyakL5OUnPhecsQ+6UJ4CWor9MR0c9wBMWEW6ixqf3KIV98jDlXZbQQ5+jO5XO94vC5aO7TBEuVV5K8lIJwmgULP7NhnTRdUs7WbmD1Cfki6BHLk9aL+YRBoeeUBtT7J4wz9DBlnkNq0shRqu8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Z5N3R45E; arc=none smtp.client-ip=209.85.221.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Z5N3R45E" Received: by mail-wr1-f45.google.com with SMTP id ffacd0b85a97d-3a582e09144so2268088f8f.1; Mon, 07 Jul 2025 13:01:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751918486; x=1752523286; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=P3ts6Nhl1YsBg1Vnz6RDZm/f0rdbRhKhf7+4pXCOkqU=; b=Z5N3R45Enzqrj28b7grTwt57nk1pTPFzDGxEx8bFayq6szCVXvnRCdpyOiyGV63nu9 /8MSyEd/IDKVTTyjS9xT7tm9MNkyzZynptUaJV9Q79XBWPTC592RaHorLEiTiK/+ivEG XOYGlBP5D5t3WGfsowRrTMyuLPCK+oDHztg+2vQsW6fSbEUkOf8eWKazFwYiVuKDoiv4 OFun4HWEw92yKN/62t6e9UPynRpIrh0akrX2/NL+V6tUlRWSe8FDpOEaYVrw7zOmYY+G 6RARLmbH3yIq1Uut628sQOgf1OBCJlZ1IZZNqJ22tDK8U1Lg25Z18K2dFfaMH5HErCFK tVbA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751918486; x=1752523286; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=P3ts6Nhl1YsBg1Vnz6RDZm/f0rdbRhKhf7+4pXCOkqU=; b=aV8c/wIOzbTNmSFtFh7lcK7zNni76z2ltrt2G6xuWsd2TBvd3gBgyKSqNr6h6Pa2bQ qQxY6eI5Nb98aB0q60H3tEoXtcUxCxK9CLhQVWpkJSFqlfZu3AS2S2PJugmbi7pqB1mq EuTVWfo7E6owck3S9qCs3NDTbrXJ3nkmzbyvuMtHW8vCEmUJUtSrJDB3yoWCXiBsCWc6 bdk4ahN5Lfvxi6q6SRLK9WaOOMSkUtMd/lSoTXJ/DkpAduBB69Jezsey3glz+35XgQhP g0oACKz78eoMW0dTVyhPWniuRMvpejSWVlFw1ExQ9vbjdlIVuT646SehY4YbJMVRlpe6 sNlQ== X-Forwarded-Encrypted: i=1; AJvYcCVByseP4rx4hjh4CW6Pplymipghw569UlKkUf0mszXzVecI2yr36zbQYwQLJIRjV9HHWc5Gd118qDP0YSoC0dbNiLQ=@vger.kernel.org, AJvYcCWLwEwpzVfS8FT1JLSulEKDGmF16PzeKpaNPclOen/qwP70PJtml9w2SMPMtCBA6TwBLRYbpgkBmJEHppkUuCw=@vger.kernel.org, AJvYcCXZvy7RS794hbYx2taIW+ZD9kel5GBYSFkEPkC6paWeIVuBXyfOn5LLRAgoU5fZsqdNWwHDetndgbHVxNE=@vger.kernel.org X-Gm-Message-State: AOJu0YxP6OcitqwDFq/xkYFQ+1bhhsLnbSpCy0qYUrEX19H+E0iLYjt7 F4ii43rAcplOJ0095G3tqtUazc4MG0pQbWhpWVZugyCDtaHZZXVW9nj7 X-Gm-Gg: ASbGncvEGDOfPL9Kh8iQOJgrbBLTDZztbkdNhq+Rve1PtKJ7NoeYKCbmYm+H7v7i/i4 PEr8rOxjxg6RsBVzhnZHUBzBnSmNJLK4njPVv4Mg2wqlYSr3S+AdPy/mVnsolZJpG9y+e0xBerS bN/fFu0Ozt96vJj3EHDcDZXH6SPqyNcRjyfmZMlHw6YVNL0Jd814CVY5BAin1HrNyAgJFwjsAM7 I8uN8L9nQPuUPiJFQFfX/DKwBHU2foouzsjVuZ7KstrXxJJPAC4SYGD7Qi2aSrpAnwftr5TdCWO NfYdgSWSlChgxtS4lKx3b8QEDrkE1F6e5dJW4G6em9cVLA1o4Tm9+LT5IaBfdNWmFiguLsaAh4H r1tNWIrIwP1qTQXEusIk= X-Google-Smtp-Source: AGHT+IHjgW4juiGW3JQ9huFeR9Q8fG7Je4sUlfT1WiHeh7iWcOKrVEvR8gwX2S2BpUt9YBP4520fVA== X-Received: by 2002:a05:6000:1787:b0:3a4:f72a:b19d with SMTP id ffacd0b85a97d-3b49701198dmr8884835f8f.8.1751918485385; Mon, 07 Jul 2025 13:01:25 -0700 (PDT) Received: from iku.example.org ([2a06:5906:61b:2d00:d418:e5eb:1bc:30dd]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b471b97376sm11268995f8f.61.2025.07.07.13.01.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Jul 2025 13:01:24 -0700 (PDT) From: Prabhakar X-Google-Original-From: Prabhakar To: Wim Van Sebroeck , Guenter Roeck , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Philipp Zabel , Wolfram Sang , linux-watchdog@vger.kernel.org Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, Prabhakar , Biju Das , Fabrizio Castro , Lad Prabhakar Subject: [PATCH 8/9] watchdog: rzv2h: Add support for RZ/T2H Date: Mon, 7 Jul 2025 21:01:10 +0100 Message-ID: <20250707200111.329663-9-prabhakar.mahadev-lad.rj@bp.renesas.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> References: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Lad Prabhakar Add support for the RZ/T2H watchdog timer. The RZ/T2H requires control of the watchdog counter using the WDT Debug Control Register (WDTDCR), which allows explicitly stopping and starting the counter. This behavior differs from RZ/V2H, which doesn't use WDTDCR, so the driver is extended to handle this requirement. To support this, a new `wdtdcr` flag is introduced in the `rzv2h_of_data` structure. When set, the driver maps the WDTDCR register and uses it to control the watchdog counter in the start, stop, and restart callbacks. Additionally, the clock divisor and count source for RZ/T2H are defined to match its hardware configuration. Signed-off-by: Lad Prabhakar --- drivers/watchdog/rzv2h_wdt.c | 77 +++++++++++++++++++++++++++++++++++- 1 file changed, 75 insertions(+), 2 deletions(-) diff --git a/drivers/watchdog/rzv2h_wdt.c b/drivers/watchdog/rzv2h_wdt.c index 9c11ce323c16..1b32bab87d67 100644 --- a/drivers/watchdog/rzv2h_wdt.c +++ b/drivers/watchdog/rzv2h_wdt.c @@ -21,11 +21,16 @@ #define WDTSR 0x04 /* WDT Status Register RW, 16 */ #define WDTRCR 0x06 /* WDT Reset Control Register RW, 8 */ =20 +/* This register is only available on RZ/T2H and RZ/N2H SoCs */ +#define WDTDCR 0x00 /* WDT Debug Control Register RW, 32 */ + #define WDTCR_TOPS_1024 0x00 #define WDTCR_TOPS_16384 0x03 =20 #define WDTCR_CKS_CLK_1 0x00 +#define WDTCR_CKS_CLK_4 0x10 #define WDTCR_CKS_CLK_256 0x50 +#define WDTCR_CKS_CLK_8192 0x80 =20 #define WDTCR_RPES_0 0x300 #define WDTCR_RPES_75 0x000 @@ -35,6 +40,8 @@ =20 #define WDTRCR_RSTIRQS BIT(7) =20 +#define WDTDCR_WDTSTOPCTRL BIT(0) + #define MAX_TIMEOUT_CYCLES 16384 =20 #define WDT_DEFAULT_TIMEOUT 60U @@ -54,10 +61,12 @@ struct rzv2h_of_data { u8 cks_max; u16 cks_div; enum rzv2h_wdt_count_source count_source; + bool wdtdcr; }; =20 struct rzv2h_wdt_priv { void __iomem *base; + void __iomem *wdtdcr; struct clk *pclk; struct clk *oscclk; struct reset_control *rstc; @@ -79,6 +88,20 @@ static int rzv2h_wdt_ping(struct watchdog_device *wdev) return 0; } =20 +static void rzt2h_wdt_wdtdcr_count_stop(struct rzv2h_wdt_priv *priv) +{ + u32 reg =3D readl(priv->wdtdcr + WDTDCR); + + writel(reg | WDTDCR_WDTSTOPCTRL, priv->wdtdcr + WDTDCR); +} + +static void rzt2h_wdt_wdtdcr_count_start(struct rzv2h_wdt_priv *priv) +{ + u32 reg =3D readl(priv->wdtdcr + WDTDCR); + + writel(reg & ~WDTDCR_WDTSTOPCTRL, priv->wdtdcr + WDTDCR); +} + static void rzv2h_wdt_setup(struct watchdog_device *wdev, u16 wdtcr) { struct rzv2h_wdt_priv *priv =3D watchdog_get_drvdata(wdev); @@ -113,7 +136,9 @@ static int rzv2h_wdt_start(struct watchdog_device *wdev) =20 /* * WDTCR - * - CKS[7:4] - Clock Division Ratio Select - 0101b: oscclk/256 + * - CKS[7:4] - Clock Division Ratio Select + * - 0101b: oscclk/256 for RZ/V2H(P) + * - 1000b: pclkl/8192 for RZ/T2H * - RPSS[13:12] - Window Start Position Select - 11b: 100% * - RPES[9:8] - Window End Position Select - 11b: 0% * - TOPS[1:0] - Timeout Period Select - 11b: 16384 cycles (3FFFh) @@ -121,6 +146,9 @@ static int rzv2h_wdt_start(struct watchdog_device *wdev) rzv2h_wdt_setup(wdev, priv->of_data->cks_max | WDTCR_RPSS_100 | WDTCR_RPES_0 | WDTCR_TOPS_16384); =20 + if (priv->of_data->wdtdcr) + rzt2h_wdt_wdtdcr_count_start(priv); + /* * Down counting starts after writing the sequence 00h -> FFh to the * WDTRR register. Hence, call the ping operation after loading the count= er. @@ -139,6 +167,9 @@ static int rzv2h_wdt_stop(struct watchdog_device *wdev) if (ret) return ret; =20 + if (priv->of_data->wdtdcr) + rzt2h_wdt_wdtdcr_count_stop(priv); + ret =3D pm_runtime_put(wdev->parent); if (ret < 0) return ret; @@ -191,7 +222,9 @@ static int rzv2h_wdt_restart(struct watchdog_device *wd= ev, =20 /* * WDTCR - * - CKS[7:4] - Clock Division Ratio Select - 0000b: oscclk/1 + * - CKS[7:4] - Clock Division Ratio Select + * - 0000b: oscclk/1 for RZ/V2H(P) + * - 0100b: pclkl/4 for RZ/T2H * - RPSS[13:12] - Window Start Position Select - 00b: 25% * - RPES[9:8] - Window End Position Select - 00b: 75% * - TOPS[1:0] - Timeout Period Select - 00b: 1024 cycles (03FFh) @@ -199,6 +232,9 @@ static int rzv2h_wdt_restart(struct watchdog_device *wd= ev, rzv2h_wdt_setup(wdev, priv->of_data->cks_min | WDTCR_RPSS_25 | WDTCR_RPES_75 | WDTCR_TOPS_1024); =20 + if (priv->of_data->wdtdcr) + rzt2h_wdt_wdtdcr_count_start(priv); + rzv2h_wdt_ping(wdev); =20 /* wait for underflow to trigger... */ @@ -215,6 +251,28 @@ static const struct watchdog_ops rzv2h_wdt_ops =3D { .restart =3D rzv2h_wdt_restart, }; =20 +static int rzt2h_wdt_wdtdcr_init(struct platform_device *pdev, + struct rzv2h_wdt_priv *priv) +{ + int ret; + + priv->wdtdcr =3D devm_platform_ioremap_resource(pdev, 1); + if (IS_ERR(priv->wdtdcr)) + return PTR_ERR(priv->wdtdcr); + + ret =3D pm_runtime_resume_and_get(&pdev->dev); + if (ret) + return ret; + + rzt2h_wdt_wdtdcr_count_stop(priv); + + ret =3D pm_runtime_put(&pdev->dev); + if (ret < 0) + return ret; + + return 0; +} + static int rzv2h_wdt_probe(struct platform_device *pdev) { struct device *dev =3D &pdev->dev; @@ -263,6 +321,12 @@ static int rzv2h_wdt_probe(struct platform_device *pde= v) if (ret) return ret; =20 + if (priv->of_data->wdtdcr) { + ret =3D rzt2h_wdt_wdtdcr_init(pdev, priv); + if (ret) + return dev_err_probe(dev, ret, "WDTDCR init failed\n"); + } + priv->wdev.min_timeout =3D DIV_ROUND_UP(priv->wdev.max_hw_heartbeat_ms, M= SEC_PER_SEC); priv->wdev.timeout =3D WDT_DEFAULT_TIMEOUT; priv->wdev.info =3D &rzv2h_wdt_ident; @@ -279,6 +343,14 @@ static int rzv2h_wdt_probe(struct platform_device *pde= v) return devm_watchdog_register_device(dev, &priv->wdev); } =20 +static const struct rzv2h_of_data rzt2h_wdt_of_data =3D { + .cks_min =3D WDTCR_CKS_CLK_4, + .cks_max =3D WDTCR_CKS_CLK_8192, + .cks_div =3D 8192, + .count_source =3D COUNT_SOURCE_PCLK, + .wdtdcr =3D true, +}; + static const struct rzv2h_of_data rzv2h_wdt_of_data =3D { .cks_min =3D WDTCR_CKS_CLK_1, .cks_max =3D WDTCR_CKS_CLK_256, @@ -288,6 +360,7 @@ static const struct rzv2h_of_data rzv2h_wdt_of_data =3D= { =20 static const struct of_device_id rzv2h_wdt_ids[] =3D { { .compatible =3D "renesas,r9a09g057-wdt", .data =3D &rzv2h_wdt_of_data }, + { .compatible =3D "renesas,r9a09g077-wdt", .data =3D &rzt2h_wdt_of_data }, { /* sentinel */ } }; MODULE_DEVICE_TABLE(of, rzv2h_wdt_ids); --=20 2.49.0 From nobody Tue Oct 7 18:24:29 2025 Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.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 99807268FF1; Mon, 7 Jul 2025 20:01:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918490; cv=none; b=H+n8WV+D+utcd1JI2pE14MjbhGhhJV2s3zG6luut9+0gSF6hiD6HzOTkjGROOI8GrO/4MtFq7BCizUH3DEV1gAOIkt6jbSiqDHOKjHtpwTzaEAgDfD+VJOgdkSg7oLzWjwjCuSjKz0HS0OPKgga6DYQxBi50rQEwtaLa4b4FtOo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751918490; c=relaxed/simple; bh=qCgV8OST611D59NkSzc/EwdIYtLmNBOrjzx63kXgCD4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=bwQ/IhW4cn/abrIRuToyF5vjo6czzOFy1IZerFNRPNyIzZdZJKnkMjVJb0jnOVVHM50kOLZnvFN95JReg7ZHJ10X+mne3zopR2mWpihza6c+Te4562K4O23JtX2K38cqFq7Lx2sZLrqzZhqMmDZp0nsSa30/8HWlci2FJsV0jc4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=H4rbsVh7; arc=none smtp.client-ip=209.85.128.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="H4rbsVh7" Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-451dbe494d6so40170955e9.1; Mon, 07 Jul 2025 13:01:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1751918487; x=1752523287; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ZZrpm9nJM06WerhRVJGiNfhVOSjxE8zl1qw3t/9H9SI=; b=H4rbsVh7OPqOv8bwjUX51Ug2Hb2w+00ayDgpLTk8Yw3muP25/jbGrV65+EInG545vu Ucph4hHU+W+CgDUaIW7Kg6o25fFsaGDXKNNYc7xdMbPXg7fIyHZItWcJ8eztmMjoWJl8 a61zKCb/3j2UTbcCMSxH+NqG4hVxR5I9PL/GHISWJCIA01Wgk0LOuYl7EebrwrtanzDJ 7HFDDJQ5+Z8PoGVxFTZhkG1nLyCwVNNLiR06FkUnkOldvqRTpYjzXmlPvXWnePzg0AOL HQQ9uHx5kXV4uItDor9sY/lxTCiEDvOe8oWcYLTu7iVnInUYdWpMCnlKaLBhE3gYh7hQ eyWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751918487; x=1752523287; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ZZrpm9nJM06WerhRVJGiNfhVOSjxE8zl1qw3t/9H9SI=; b=IJ7UyCyiOlcIxtlzpEf2Ait+/PboyyxLa7ZxSpP7IDMxrX6nVylGrvfDgwUOo6hzvI wsyutNvPdYpUUha2pLP9Yx2+8P0GXC+XAXpJsRUoc9v11fFk223NJOREDrdQ4IlEdu96 SkKBS2nJEsPTLcK3vSR35FbIqf6WOfMKdfqPo61b/P/nIJRcy991i9JR3B5Cio6uHzOr AnbxaQMhngpSbHkPJ2TC3Rl3dTaoSS57BPo0FkcQE0IvvGWmRqUrFP2AHl8FIlrd/Po1 5az1d1mwvShzR+gWe43RcBa//jB3pFytd/8FoRxUUnsFnY+JTyfBXaBS+QWgUVOuhW8l wiHw== X-Forwarded-Encrypted: i=1; AJvYcCUuaktf6t4NVSoZU3zqmR3siPduC6M8Kkf+Z1Dc6LiwRlR4e5sR94t7QtMYPZT5uKASEGmlxW4y9aaPBM8=@vger.kernel.org, AJvYcCWKYVQCV+QgEOQf7NQum+ylxWC4ySgAQTRcF4YsvsYktTPZihg2P+ZlQYVb2Y01VWJ0hxY5QQxAPPuSAe8imQnkzvM=@vger.kernel.org, AJvYcCXDJQYrWB8OhdOSgUwNBNzAP26qkQD/snFL2ofiNTvm+ctXOKvKresxpCtGVyua68cTRjWr6JnoiWnFs01ugaE=@vger.kernel.org X-Gm-Message-State: AOJu0Yx15QS7XnckJ13n6xqJJ3Dp0qcvdPsuAkaWLhNdo8J7kIcuSIAP loq1Ny53mcdMFxfZphVZHb+TorStWkuMYg6wQoNWaN7tUfIM1xT6yC3dLEvb7w== X-Gm-Gg: ASbGncsmfjvkFJzeaIakyxWeSkdBYPdULKxTAj3awOVQpwcZG2cd0gcbmyUUrwF7GWW d8ltML5F0xWMixwtq53oVJBa2ko6DpdxRiEwMplFavBn5m7wWEvS66JSZ6WKNYxp8kHajf7i9HC AkjOl9cYxfAgwu7i0H2O5PJYKKNpW1ISVvhb4OgqOGQYPdMgu9w4yPtY1xhHx/wvAeAqQe/K7p0 OH45ngj3Rim+0THBY+OhHArIb790l/BmwkP1HgVdBWhQzYfmd+COggyMrTo5zQWM+layASzfj72 XNeQ8jKvQkF4kglkAUymDqwcnQtMfyc5UmPVJmnsR5PLJvev+J8bSOXc2m2sdMFUbYJ2QpH+hP8 MDlTyIoMBs5SOofNs6p4= X-Google-Smtp-Source: AGHT+IHY/v+RTL08PLy6womTLLxmQhluTTjkkedNBxyHc/zF4l2YyC6M/aeDVLyO9W9pfxaF8QBdeA== X-Received: by 2002:a05:600c:a104:b0:453:7713:539f with SMTP id 5b1f17b1804b1-454b4eb8afdmr90464455e9.26.1751918486617; Mon, 07 Jul 2025 13:01:26 -0700 (PDT) Received: from iku.example.org ([2a06:5906:61b:2d00:d418:e5eb:1bc:30dd]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b471b97376sm11268995f8f.61.2025.07.07.13.01.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Jul 2025 13:01:25 -0700 (PDT) From: Prabhakar X-Google-Original-From: Prabhakar To: Wim Van Sebroeck , Guenter Roeck , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Geert Uytterhoeven , Philipp Zabel , Wolfram Sang , linux-watchdog@vger.kernel.org Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-renesas-soc@vger.kernel.org, Prabhakar , Biju Das , Fabrizio Castro , Lad Prabhakar Subject: [PATCH 9/9] watchdog: rzv2h_wdt: Improve error strings and add newlines Date: Mon, 7 Jul 2025 21:01:11 +0100 Message-ID: <20250707200111.329663-10-prabhakar.mahadev-lad.rj@bp.renesas.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> References: <20250707200111.329663-1-prabhakar.mahadev-lad.rj@bp.renesas.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Lad Prabhakar Update rzv2h_wdt_probe() to provide clearer error strings when retrieving the pclk, oscclk, and reset controller, and append missing newline characters to dev_err_probe() and dev_warn() calls for proper log formatting. Signed-off-by: Lad Prabhakar --- drivers/watchdog/rzv2h_wdt.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/watchdog/rzv2h_wdt.c b/drivers/watchdog/rzv2h_wdt.c index 1b32bab87d67..db76a7c0e1d6 100644 --- a/drivers/watchdog/rzv2h_wdt.c +++ b/drivers/watchdog/rzv2h_wdt.c @@ -292,16 +292,16 @@ static int rzv2h_wdt_probe(struct platform_device *pd= ev) =20 priv->pclk =3D devm_clk_get_prepared(dev, "pclk"); if (IS_ERR(priv->pclk)) - return dev_err_probe(dev, PTR_ERR(priv->pclk), "no pclk"); + return dev_err_probe(dev, PTR_ERR(priv->pclk), "Failed to get pclk\n"); =20 priv->oscclk =3D devm_clk_get_optional_prepared(dev, "oscclk"); if (IS_ERR(priv->oscclk)) - return dev_err_probe(dev, PTR_ERR(priv->oscclk), "no oscclk"); + return dev_err_probe(dev, PTR_ERR(priv->oscclk), "Failed to get oscclk\n= "); =20 priv->rstc =3D devm_reset_control_get_optional_exclusive(dev, NULL); if (IS_ERR(priv->rstc)) return dev_err_probe(dev, PTR_ERR(priv->rstc), - "failed to get cpg reset"); + "Failed to get cpg reset\n"); =20 switch (priv->of_data->count_source) { case COUNT_SOURCE_LOCO: @@ -338,7 +338,7 @@ static int rzv2h_wdt_probe(struct platform_device *pdev) =20 ret =3D watchdog_init_timeout(&priv->wdev, 0, dev); if (ret) - dev_warn(dev, "Specified timeout invalid, using default"); + dev_warn(dev, "Specified timeout invalid, using default\n"); =20 return devm_watchdog_register_device(dev, &priv->wdev); } --=20 2.49.0