From nobody Wed Dec 17 05:51:56 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3B802C4167B for ; Wed, 29 Nov 2023 13:05:54 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233789AbjK2NFp (ORCPT ); Wed, 29 Nov 2023 08:05:45 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47230 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233697AbjK2NFi (ORCPT ); Wed, 29 Nov 2023 08:05:38 -0500 Received: from m12.mail.163.com (m12.mail.163.com [220.181.12.216]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 83137C4 for ; Wed, 29 Nov 2023 05:05:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Date:Message-Id; bh=IkbXYYCz2LSe8ie1tt L3ic9jKm3muYQjSXnx4yksqVs=; b=aPCPIVBQuPWZTWa3mwWVMBcM6Xna/LBH6F uRyQB+emE2kLoE6l4S0/Gng2O8S9b3VmNXkjJ3Ruxg8GD+YGFrR/OmnBloIKUoJE 6I0IrT3I2vG0Hgfqy0D+CC0uI39wXNHw+uxuJq2DxTtRxY9OH2Q/ut6TKgmTmNf4 RoiK9TCL8= Received: from localhost.localdomain (unknown [39.144.190.126]) by zwqz-smtp-mta-g3-3 (Coremail) with SMTP id _____wDXX30cN2dlg9EsCw--.45271S2; Wed, 29 Nov 2023 21:05:33 +0800 (CST) From: Haoran Liu To: lgirdwood@gmail.com Cc: broonie@kernel.org, linux-kernel@vger.kernel.org, Haoran Liu Subject: [PATCH] [regulator] pwm-regulator: Add error handling Date: Wed, 29 Nov 2023 05:05:30 -0800 Message-Id: <20231129130530.33744-1-liuhaoran14@163.com> X-Mailer: git-send-email 2.17.1 X-CM-TRANSID: _____wDXX30cN2dlg9EsCw--.45271S2 X-Coremail-Antispam: 1Uf129KBjvJXoW7Kw4xGw4ftF4UZF1fJr18Zrb_yoW8AFyDpF W5JFsIkr48tFWxZr1UuryxAa4Yvry8KFZ7KFWxG3ySvr45Z3ZrXrs8CF1YyFWxKrs7Aa1Y vay0qF10kF4DuFJanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x0piTKZDUUUUU= X-Originating-IP: [39.144.190.126] X-CM-SenderInfo: xolxxtxrud0iqu6rljoofrz/1tbiZR43gl8ZaQ6+uwAAsq Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" This patch enhances the pwm_regulator_init_continuous function in drivers/regulator/pwm-regulator.c by adding error handling for of_property_read_u32_array and of_property_read_u32 calls. Previously, the function did not properly handle failures from these of_property_read functions, potentially leading to incorrect behavior if the required DT properties were not found or were malformed. Signed-off-by: Haoran Liu --- drivers/regulator/pwm-regulator.c | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/drivers/regulator/pwm-regulator.c b/drivers/regulator/pwm-regu= lator.c index 2aff6db748e2..8eb142180ddb 100644 --- a/drivers/regulator/pwm-regulator.c +++ b/drivers/regulator/pwm-regulator.c @@ -296,11 +296,23 @@ static int pwm_regulator_init_continuous(struct platf= orm_device *pdev, drvdata->desc.ops =3D &pwm_regulator_voltage_continuous_ops; drvdata->desc.continuous_voltage_range =3D true; =20 - of_property_read_u32_array(pdev->dev.of_node, - "pwm-dutycycle-range", - dutycycle_range, 2); - of_property_read_u32(pdev->dev.of_node, "pwm-dutycycle-unit", - &dutycycle_unit); + ret =3D of_property_read_u32_array(pdev->dev.of_node, + "pwm-dutycycle-range", + dutycycle_range, 2); + if (ret) { + dev_err(&pdev->dev, + "Failed to read pwm-dutycycle-range: %d\n", ret); + return ret; + } + + ret =3D of_property_read_u32(pdev->dev.of_node, + "pwm-dutycycle-unit", + &dutycycle_unit); + if (ret) { + dev_err(&pdev->dev, + "Failed to read pwm-dutycycle-unit: %d\n", ret); + return ret; + } =20 if (dutycycle_range[0] > dutycycle_unit || dutycycle_range[1] > dutycycle_unit) --=20 2.17.1