From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 16BA7C432C0 for ; Mon, 18 Nov 2019 10:24:59 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id EB2D120857 for ; Mon, 18 Nov 2019 10:24:58 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726464AbfKRKY6 (ORCPT ); Mon, 18 Nov 2019 05:24:58 -0500 Received: from mail-ot1-f68.google.com ([209.85.210.68]:35129 "EHLO mail-ot1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726460AbfKRKY6 (ORCPT ); Mon, 18 Nov 2019 05:24:58 -0500 Received: by mail-ot1-f68.google.com with SMTP id c14so7050309oth.2; Mon, 18 Nov 2019 02:24:56 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=lSUdSVYuJKim7BJOKxqh9PqTmgCM0HaD4hNfq1HAsZs=; b=McpdHEeqU0RhN5qBIuTVoRjsuXu3WVcs0ugO+4RcJkzDja2GTKwASaR/mhto5HKX6f Q0hIo/k5SDEphBDoCFxoLUvpRgQ7gEZRAXRJbb4UHhFynx2P+5aI/mFiitTubSzLW7yh t8SEZAfmNpbe9c7RdvPepxSBn0H3H8Ctmd/Uo8UJurlV6Ok9lZ2CW7YnKYKzV+0N8DTZ gH2oVmoblEBeZyNnyeyo/zwuDEB/9QeKADrAmt0kQrxI15kTECcR/+bSzHIceGKkbdWT wilJ8lnDjeRm2SOCZZRkojiSvKi4Ue2PkwlyogvEH61Sjbd0iQ9c8IYK//XkCfIuNWDE p6FA== X-Gm-Message-State: APjAAAWaziPtm4IEOBPwwrQ3NEV5SyQSpN+IcnXD/UNEF2BJbfzQ0j7e 2JDgZbAz4LRj7uOlNUCRA14Te6Gj6jZMFR3ihSQ= X-Google-Smtp-Source: APXvYqwdOBGSvcAu8S7jdrRPoQ2pHKQyqhtdcV2LzhOwSEg2TYOMxFV0aQ1nBj3xq7ArWYd4Imm4uowxgNQBwfFR0xU= X-Received: by 2002:a9d:5511:: with SMTP id l17mr898686oth.145.1574072695978; Mon, 18 Nov 2019 02:24:55 -0800 (PST) MIME-Version: 1.0 References: <1572591791-11280-1-git-send-email-yoshihiro.shimoda.uh@renesas.com> <1572591791-11280-4-git-send-email-yoshihiro.shimoda.uh@renesas.com> In-Reply-To: <1572591791-11280-4-git-send-email-yoshihiro.shimoda.uh@renesas.com> From: Geert Uytterhoeven Date: Mon, 18 Nov 2019 11:24:45 +0100 Message-ID: Subject: Re: [PATCH v3 3/4] clk: renesas: rcar-usb2-clock-sel: Add multiple clocks management To: Yoshihiro Shimoda Cc: Michael Turquette , Stephen Boyd , Rob Herring , Mark Rutland , Geert Uytterhoeven , linux-clk , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" , Linux-Renesas Content-Type: text/plain; charset="UTF-8" Sender: linux-clk-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-clk@vger.kernel.org Hi Shimoda-san, On Fri, Nov 1, 2019 at 8:03 AM Yoshihiro Shimoda wrote: > This hardware needs to enable clocks of both host and peripheral. > So, this patch adds multiple clocks management. > > Signed-off-by: Yoshihiro Shimoda Thanks for your patch! > --- a/drivers/clk/renesas/rcar-usb2-clock-sel.c > +++ b/drivers/clk/renesas/rcar-usb2-clock-sel.c > @@ -128,6 +146,14 @@ static int rcar_usb2_clock_sel_probe(struct platform_device *pdev) > if (IS_ERR(priv->base)) > return PTR_ERR(priv->base); > > + priv->clks[CLK_INDEX_EHCI_OHCI].clk = devm_clk_get(dev, "ehci_ohci"); > + if (IS_ERR(priv->clks[CLK_INDEX_EHCI_OHCI].clk)) > + return PTR_ERR(priv->clks[CLK_INDEX_EHCI_OHCI].clk); > + > + priv->clks[CLK_INDEX_HS_USB].clk = devm_clk_get(dev, "hs-usb-if"); > + if (IS_ERR(priv->clks[CLK_INDEX_HS_USB].clk)) > + return PTR_ERR(priv->clks[CLK_INDEX_HS_USB].clk); > + Is these any specific reason you're not just filling in the .id fields first, and calling devm_clk_bulk_get()? static const struct clk_bulk_data rcar_usb2_clocks[] = { { .id = "ehci_ohci", }, { .id = "hs-usb-if", }, }; memcpy(priv->clks, rcar_usb2_clocks, sizeof(priv->clks)); ... = devm_clk_bulk_get(dev, ARRAY_SIZE(priv->clks), priv->clks); ... That way you can drop the enums, and use ARRAY_SIZE(rcar_usb2_clocks) instead of CLK_NUM. > pm_runtime_enable(dev); > pm_runtime_get_sync(dev); > Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds