From: Geert Uytterhoeven <geert@linux-m68k.org> To: Damien Le Moal <Damien.LeMoal@wdc.com> Cc: "linux-riscv@lists.infradead.org" <linux-riscv@lists.infradead.org>, "devicetree@vger.kernel.org" <devicetree@vger.kernel.org>, "linux-gpio@vger.kernel.org" <linux-gpio@vger.kernel.org>, "palmer@dabbelt.com" <palmer@dabbelt.com>, "sboyd@kernel.org" <sboyd@kernel.org>, "linus.walleij@linaro.org" <linus.walleij@linaro.org>, "p.zabel@pengutronix.de" <p.zabel@pengutronix.de>, "robh+dt@kernel.org" <robh+dt@kernel.org>, "linux-clk@vger.kernel.org" <linux-clk@vger.kernel.org>, "seanga2@gmail.com" <seanga2@gmail.com> Subject: Re: [PATCH v4 11/21] riscv: Add Canaan Kendryte K210 clock driver Date: Mon, 7 Dec 2020 09:43:49 +0100 [thread overview] Message-ID: <CAMuHMdX+grQf=naU76Edvhbjap3BEayjDs_Rhkoy4FFfOZcTZw@mail.gmail.com> (raw) In-Reply-To: <b5eb9c289fe58119185550bff7228501d95b730e.camel@wdc.com> Hi Damien, On Mon, Dec 7, 2020 at 4:52 AM Damien Le Moal <Damien.LeMoal@wdc.com> wrote: > I prepared a v5 series addressing your comments (and other comments). > I will post that later today after some more tests. Thanks, already looking at k210-sysctl-v18... > On Fri, 2020-12-04 at 22:19 -0800, Stephen Boyd wrote: > > > --- /dev/null > > > +++ b/drivers/clk/clk-k210.c > > > + in0_clk = of_clk_get(np, 0); > > > + if (IS_ERR(in0_clk)) { > > > + pr_warn("%pOFP: in0 oscillator not found\n", np); > > > + hws[K210_CLK_IN0] = > > > + clk_hw_register_fixed_rate(NULL, "in0", NULL, > > > + 0, K210_IN0_RATE); > > > + } else { > > > + hws[K210_CLK_IN0] = __clk_get_hw(in0_clk); > > > + } > > > + if (IS_ERR(hws[K210_CLK_IN0])) { > > > + pr_err("%pOFP: failed to get base oscillator\n", np); > > > + goto err; > > > + } > > > + > > > + in0 = clk_hw_get_name(hws[K210_CLK_IN0]); > > > + aclk_parents[0] = in0; > > > + pll_parents[0] = in0; > > > + mux_parents[0] = in0; > > > > Can we use the new way of specifying clk parents so that we don't have > > to use __clk_get_hw(), of_clk_get(), and clk_hw_get_name()? Hopefully > > the core can handl that all instead of this driver. > > I removed all this by adding: > > clock-output-names = "in0"; > > to the DT fixed-rate oscillator clock node (and documented that too). Doing so, > clk_hw_get_name(), __clk_get_hw() and of_clk_get() are not needed anymore and > the parents clock names arrays do not need run-time update. "clock-output-names" is deprecated for clocks with a single output: the clock name will be taken from the node name. However, relying on a clock name like this is fragile. Instead, your driver should use the phandle from the clocks property, using of_clk_get_by_name() or of_clk_get(). Stephen: I'm a bit puzzled, as you suggest _not_ using of_clk_get()? 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
WARNING: multiple messages have this Message-ID (diff)
From: Geert Uytterhoeven <geert@linux-m68k.org> To: Damien Le Moal <Damien.LeMoal@wdc.com> Cc: "devicetree@vger.kernel.org" <devicetree@vger.kernel.org>, "sboyd@kernel.org" <sboyd@kernel.org>, "linus.walleij@linaro.org" <linus.walleij@linaro.org>, "seanga2@gmail.com" <seanga2@gmail.com>, "linux-gpio@vger.kernel.org" <linux-gpio@vger.kernel.org>, "robh+dt@kernel.org" <robh+dt@kernel.org>, "palmer@dabbelt.com" <palmer@dabbelt.com>, "p.zabel@pengutronix.de" <p.zabel@pengutronix.de>, "linux-riscv@lists.infradead.org" <linux-riscv@lists.infradead.org>, "linux-clk@vger.kernel.org" <linux-clk@vger.kernel.org> Subject: Re: [PATCH v4 11/21] riscv: Add Canaan Kendryte K210 clock driver Date: Mon, 7 Dec 2020 09:43:49 +0100 [thread overview] Message-ID: <CAMuHMdX+grQf=naU76Edvhbjap3BEayjDs_Rhkoy4FFfOZcTZw@mail.gmail.com> (raw) In-Reply-To: <b5eb9c289fe58119185550bff7228501d95b730e.camel@wdc.com> Hi Damien, On Mon, Dec 7, 2020 at 4:52 AM Damien Le Moal <Damien.LeMoal@wdc.com> wrote: > I prepared a v5 series addressing your comments (and other comments). > I will post that later today after some more tests. Thanks, already looking at k210-sysctl-v18... > On Fri, 2020-12-04 at 22:19 -0800, Stephen Boyd wrote: > > > --- /dev/null > > > +++ b/drivers/clk/clk-k210.c > > > + in0_clk = of_clk_get(np, 0); > > > + if (IS_ERR(in0_clk)) { > > > + pr_warn("%pOFP: in0 oscillator not found\n", np); > > > + hws[K210_CLK_IN0] = > > > + clk_hw_register_fixed_rate(NULL, "in0", NULL, > > > + 0, K210_IN0_RATE); > > > + } else { > > > + hws[K210_CLK_IN0] = __clk_get_hw(in0_clk); > > > + } > > > + if (IS_ERR(hws[K210_CLK_IN0])) { > > > + pr_err("%pOFP: failed to get base oscillator\n", np); > > > + goto err; > > > + } > > > + > > > + in0 = clk_hw_get_name(hws[K210_CLK_IN0]); > > > + aclk_parents[0] = in0; > > > + pll_parents[0] = in0; > > > + mux_parents[0] = in0; > > > > Can we use the new way of specifying clk parents so that we don't have > > to use __clk_get_hw(), of_clk_get(), and clk_hw_get_name()? Hopefully > > the core can handl that all instead of this driver. > > I removed all this by adding: > > clock-output-names = "in0"; > > to the DT fixed-rate oscillator clock node (and documented that too). Doing so, > clk_hw_get_name(), __clk_get_hw() and of_clk_get() are not needed anymore and > the parents clock names arrays do not need run-time update. "clock-output-names" is deprecated for clocks with a single output: the clock name will be taken from the node name. However, relying on a clock name like this is fragile. Instead, your driver should use the phandle from the clocks property, using of_clk_get_by_name() or of_clk_get(). Stephen: I'm a bit puzzled, as you suggest _not_ using of_clk_get()? 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 _______________________________________________ linux-riscv mailing list linux-riscv@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-riscv
next prev parent reply other threads:[~2020-12-07 8:44 UTC|newest] Thread overview: 78+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-12-02 3:24 [PATCH v4 00/21] RISC-V Kendryte K210 support improvements Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 01/21] riscv: Fix kernel time_init() Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-05 5:41 ` Stephen Boyd 2020-12-05 5:41 ` Stephen Boyd 2020-12-02 3:24 ` [PATCH v4 02/21] riscv: Fix sifive serial driver Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 03/21] riscv: Enable interrupts during syscalls with M-Mode Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 04/21] riscv: Fix builtin DTB handling Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-04 15:11 ` Geert Uytterhoeven 2020-12-04 15:11 ` Geert Uytterhoeven 2020-12-02 3:24 ` [PATCH v4 05/21] riscv: Use vendor name for K210 SoC support Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 06/21] dt-bindings: Add Canaan vendor prefix Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 07/21] dt-binding: clock: Document canaan,k210-clk bindings Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 07/21] dt-binding: clock: Document canaan, k210-clk bindings Damien Le Moal 2020-12-05 5:46 ` [PATCH v4 07/21] dt-binding: clock: Document canaan,k210-clk bindings Stephen Boyd 2020-12-05 5:46 ` [PATCH v4 07/21] dt-binding: clock: Document canaan, k210-clk bindings Stephen Boyd 2020-12-02 3:24 ` [PATCH v4 08/21] dt-bindings: reset: Document canaan,k210-rst bindings Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 08/21] dt-bindings: reset: Document canaan, k210-rst bindings Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 09/21] dt-bindings: pinctrl: Document canaan,k210-fpioa bindings Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 09/21] dt-bindings: pinctrl: Document canaan, k210-fpioa bindings Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 10/21] dt-binding: mfd: Document canaan,k210-sysctl bindings Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 10/21] dt-binding: mfd: Document canaan, k210-sysctl bindings Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 11/21] riscv: Add Canaan Kendryte K210 clock driver Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-05 6:19 ` Stephen Boyd 2020-12-05 6:19 ` Stephen Boyd 2020-12-05 7:43 ` Damien Le Moal 2020-12-05 7:43 ` Damien Le Moal 2020-12-05 13:43 ` Sean Anderson 2020-12-05 13:43 ` Sean Anderson 2020-12-05 14:13 ` Damien Le Moal 2020-12-05 14:13 ` Damien Le Moal [not found] ` <160736612827.1580929.7802371235304556600@swboyd.mtv.corp.google.com> 2020-12-08 7:48 ` Damien Le Moal 2020-12-08 7:48 ` Damien Le Moal 2020-12-07 3:50 ` Damien Le Moal 2020-12-07 3:50 ` Damien Le Moal 2020-12-07 8:43 ` Geert Uytterhoeven [this message] 2020-12-07 8:43 ` Geert Uytterhoeven 2020-12-07 9:55 ` Damien Le Moal 2020-12-07 9:55 ` Damien Le Moal 2020-12-07 10:06 ` Geert Uytterhoeven 2020-12-07 10:06 ` Geert Uytterhoeven 2020-12-07 10:14 ` Damien Le Moal 2020-12-07 10:14 ` Damien Le Moal 2020-12-07 22:58 ` Sean Anderson 2020-12-07 22:58 ` Sean Anderson 2020-12-07 11:34 ` Damien Le Moal 2020-12-07 11:34 ` Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 12/21] riscv: Add Canaan Kendryte K210 FPIOA driver Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 13/21] riscv: Add Canaan Kendryte K210 reset controller Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-04 10:49 ` Philipp Zabel 2020-12-04 10:49 ` Philipp Zabel 2020-12-04 11:16 ` Damien Le Moal 2020-12-04 11:16 ` Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 14/21] riscv: Update Canaan Kendryte K210 device tree Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 15/21] riscv: Add SiPeed MAIX BiT board " Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 16/21] riscv: Add SiPeed MAIX DOCK " Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 17/21] riscv: Add SiPeed MAIX GO " Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 18/21] riscv: Add SiPeed MAIXDUINO " Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 19/21] riscv: Add Kendryte KD233 " Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-02 3:24 ` [PATCH v4 20/21] riscv: Update Canaan Kendryte K210 defconfig Damien Le Moal 2020-12-02 3:24 ` Damien Le Moal 2020-12-02 3:25 ` [PATCH v4 21/21] riscv: Add Canaan Kendryte K210 SD card defconfig Damien Le Moal 2020-12-02 3:25 ` Damien Le Moal
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to='CAMuHMdX+grQf=naU76Edvhbjap3BEayjDs_Rhkoy4FFfOZcTZw@mail.gmail.com' \ --to=geert@linux-m68k.org \ --cc=Damien.LeMoal@wdc.com \ --cc=devicetree@vger.kernel.org \ --cc=linus.walleij@linaro.org \ --cc=linux-clk@vger.kernel.org \ --cc=linux-gpio@vger.kernel.org \ --cc=linux-riscv@lists.infradead.org \ --cc=p.zabel@pengutronix.de \ --cc=palmer@dabbelt.com \ --cc=robh+dt@kernel.org \ --cc=sboyd@kernel.org \ --cc=seanga2@gmail.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.