From patchwork Sun Dec 12 18:10:57 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sam Protsenko X-Patchwork-Id: 12695803 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 13EC5C433EF for ; Sun, 12 Dec 2021 18:12:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=yG2ese7GpDPcXtbh7MWMxL1YIgGK9EZ3//jB9+rsKAE=; b=aeqM/gpXi14MB3 FJAWmsEamwXiRBCF6unxssoyGsYXeUcWSzfCl3CWsou/GGDKEI9+XFlpJOu8P6XMBlFSea1BdTYxz 0gi2dJ4z/c7XnCRvecrDAteDiYO5s0/mrvq+7aCmk+HzloAC/UHoRv90c8iw+xt7irsxEcH05YNtb shX8AZLW7rY7obNzxVeqHOchspvDot247thsM5wL6PgvB80bIX6sahrkvztCVv3UirqbCVNjNW8Ra Wtpp70JkgKrBQkb0br0UL1K6BRqOPtlDbdeToAFnwqQ2phaj2KU4WJITzom7VoKWA01LpDzeJLxao /sW7jo/JIJWjUiuemgUg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mwTJT-006ugo-T2; Sun, 12 Dec 2021 18:11:08 +0000 Received: from mail-lf1-x133.google.com ([2a00:1450:4864:20::133]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mwTJO-006ufq-6S for linux-arm-kernel@lists.infradead.org; Sun, 12 Dec 2021 18:11:06 +0000 Received: by mail-lf1-x133.google.com with SMTP id z7so26969646lfi.11 for ; Sun, 12 Dec 2021 10:11:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=5EFH32R/A8nKeoiQKEQd1o39+iKWJFk8VbMvazM8aas=; b=PwLLqn2jtPgs4ZWqSP2LYkAwhq3gUsDH6gd+Dgi2Pn9pNHSysoSQQurPYzyyIJhQ7A 7wF4a8tUFyFqT+LSHa3INHCpE/hgVLjg+axv0yAp0l/TLzZAK1QSwcdmkfkcwp7wBlwI 89Uxa8zDSvcN0+QO9HKHHDJKU6Nf4kb4vUjjMHUCqaKBMz1yy/taQCgJwBIED8/MFFLU YRIuyHwA2ox8R2yH5VaYUAjI9waNtNTNkasB8DnUF8wi5HhMXVnkJMb2O5h0Jgadx187 lu3FK1b0ZxGhxJ8X6LACU82NnpXjZ+LSUTN12PNIAgBG3Fz0NRJAkBKydqCAk//wgFcr +tGw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=5EFH32R/A8nKeoiQKEQd1o39+iKWJFk8VbMvazM8aas=; b=qshdsWoZTapaTSt5p9c/Slwacq02bStNHCA98DgblAVOBJnMUaPjvR9geUozo6nyrh wDVmP6c8twl7d26NVX1i4Ib3dEccV4ndvBVOzLE51R+9iBFYCtoEuF2TSVifnqz/t30I dhEDjthEnyo+McDW1YHbH1ykImhjEtkSkqTUlPsYhDrsSZdfk3S0g9qs6PcRwt1oR9lS sQtks2jw6RnfCBfUjYzelUh+ppu45miZ5kk2yuqjcuI7A2/lvUiboOi4DNDB3vReFcw4 UIIiMUVRqgeKzpwB4aTSogYSv4M+zKkPxOTGLw1KAt7CfTtm3JPHYF1VN/b57sOv2xib udrg== X-Gm-Message-State: AOAM530XUrUvuRXcVghN42ZTeG/Gf6KaVCgmA3MwsHmKoWG/nbqJWeGf pwXYBJZctwOughIczspduqpiEA== X-Google-Smtp-Source: ABdhPJx2q3hRmHoqk/Aq5FNWiKiOKG/xa/RK/FiJVpoc4XG9at3CTlaVHM8/sXx2HKXarvzHSne2iw== X-Received: by 2002:a19:604b:: with SMTP id p11mr23368383lfk.392.1639332659381; Sun, 12 Dec 2021 10:10:59 -0800 (PST) Received: from localhost ([31.134.121.151]) by smtp.gmail.com with ESMTPSA id e11sm1109229lfq.65.2021.12.12.10.10.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 12 Dec 2021 10:10:58 -0800 (PST) From: Sam Protsenko To: Wolfram Sang , Krzysztof Kozlowski Cc: Chanho Park , Jaewon Kim , linux-i2c@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] i2c: exynos5: Fix getting the optional clock Date: Sun, 12 Dec 2021 20:10:57 +0200 Message-Id: <20211212181057.20210-1-semen.protsenko@linaro.org> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20211212_101102_299191_340E8A89 X-CRM114-Status: GOOD ( 13.33 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org "hsi2c_pclk" clock is optional and may not be present for some SoCs supported by this driver. Nevertheless, in case the clock is provided but some error happens during its getting, that error should be handled properly. Use devm_clk_get_optional() API for that. Also report possible errors using dev_err_probe() to handle properly -EPROBE_DEFER error (if clock provider is not ready by the time I2C probe function is executed). Fixes: c93ac09df2a8 ("i2c: exynos5: Add bus clock support") Signed-off-by: Sam Protsenko Reviewed-by: Krzysztof Kozlowski Reviewed-by: Chanho Park --- drivers/i2c/busses/i2c-exynos5.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/i2c/busses/i2c-exynos5.c b/drivers/i2c/busses/i2c-exynos5.c index 693903e80892..b812d1090c0f 100644 --- a/drivers/i2c/busses/i2c-exynos5.c +++ b/drivers/i2c/busses/i2c-exynos5.c @@ -814,9 +814,11 @@ static int exynos5_i2c_probe(struct platform_device *pdev) return -ENOENT; } - i2c->pclk = devm_clk_get(&pdev->dev, "hsi2c_pclk"); - if (IS_ERR(i2c->pclk)) - i2c->pclk = NULL; /* pclk is optional */ + i2c->pclk = devm_clk_get_optional(&pdev->dev, "hsi2c_pclk"); + if (IS_ERR(i2c->pclk)) { + return dev_err_probe(&pdev->dev, PTR_ERR(i2c->pclk), + "cannot get pclk"); + } ret = clk_prepare_enable(i2c->pclk); if (ret)