diff for duplicates of <1490714781.20764.3.camel@baylibre.com> diff --git a/a/1.txt b/N1/1.txt index 5491eec..87bf8f2 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -10,26 +10,26 @@ On Tue, 2017-03-28 at 16:58 +0200, Hendrik v. Raven wrote: > > > > Signed-off-by: Jerome Brunet <jbrunet@baylibre.com> > > --- -> > ?drivers/clk/meson/Makefile????????????|???2 +- -> > ?drivers/clk/meson/clk-audio-divider.c | 149 +> > drivers/clk/meson/Makefile | 2 +- +> > drivers/clk/meson/clk-audio-divider.c | 149 > > ++++++++++++++++++++++++++++++++++ -> > ?drivers/clk/meson/clkc.h??????????????|??10 +++ -> > ?3 files changed, 160 insertions(+), 1 deletion(-) -> > ?create mode 100644 drivers/clk/meson/clk-audio-divider.c +> > drivers/clk/meson/clkc.h | 10 +++ +> > 3 files changed, 160 insertions(+), 1 deletion(-) +> > create mode 100644 drivers/clk/meson/clk-audio-divider.c > > > > diff --git a/drivers/clk/meson/Makefile b/drivers/clk/meson/Makefile > > index 349583405b7c..83b6d9d65aa1 100644 > > --- a/drivers/clk/meson/Makefile > > +++ b/drivers/clk/meson/Makefile > > @@ -2,6 +2,6 @@ -> > ?# Makefile for Meson specific clk -> > ?# -> > ? +> > # Makefile for Meson specific clk +> > # +> > > > -obj-$(CONFIG_COMMON_CLK_AMLOGIC) += clk-pll.o clk-cpu.o clk-mpll.o > > +obj-$(CONFIG_COMMON_CLK_AMLOGIC) += clk-pll.o clk-cpu.o clk-mpll.o clk- > > audio-divider.o -> > ?obj-$(CONFIG_COMMON_CLK_MESON8B) += meson8b.o -> > ?obj-$(CONFIG_COMMON_CLK_GXBB) ?+= gxbb.o gxbb-aoclk.o +> > obj-$(CONFIG_COMMON_CLK_MESON8B) += meson8b.o +> > obj-$(CONFIG_COMMON_CLK_GXBB) += gxbb.o gxbb-aoclk.o > > diff --git a/drivers/clk/meson/clk-audio-divider.c b/drivers/clk/meson/clk- > > audio-divider.c > > new file mode 100644 @@ -47,13 +47,13 @@ On Tue, 2017-03-28 at 16:58 +0200, Hendrik v. Raven wrote: > > + * > > + * This program is distributed in the hope it will be useful, but WITHOUT > > + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -> > + * FITNESS FOR A PARTICULAR PURPOSE.??See the GNU General Public License +> > + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License > > for > > + * more details. > > + * > > + * You should have received a copy of the GNU General Public License along > > with -> > + * this program.??If not, see <http://www.gnu.org/licenses/>. +> > + * this program. If not, see <http://www.gnu.org/licenses/>. > > + */ > > + > > +/* @@ -81,7 +81,7 @@ Indeed, thanks for spotting this > > + struct meson_clk_audio_divider, hw) > > + > > +static int _div_round(unsigned long parent_rate, unsigned long rate, -> > + ??????unsigned long flags) +> > + unsigned long flags) > > +{ > > + if (flags & CLK_DIVIDER_ROUND_CLOSEST) > > + return DIV_ROUND_CLOSEST_ULL((u64)parent_rate, rate); @@ -111,7 +111,7 @@ Indeed, thanks for spotting this > > + > > + return divider; > -> This can be replaced by? +> This can be replaced by > return clamp(divider, 1, max_divider); Will be replaced in v2. Thx @@ -119,7 +119,7 @@ Will be replaced in v2. Thx > > +} > > + > > +static unsigned long audio_divider_recalc_rate(struct clk_hw *hw, -> > + ???????unsigned long parent_rate) +> > + unsigned long parent_rate) > > +{ > > + struct meson_clk_audio_divider *adiv = > > + to_meson_clk_audio_divider(hw); @@ -134,8 +134,8 @@ Will be replaced in v2. Thx > > +} > > + > > +static long audio_divider_round_rate(struct clk_hw *hw, -> > + ?????unsigned long rate, -> > + ?????unsigned long *parent_rate) +> > + unsigned long rate, +> > + unsigned long *parent_rate) > > +{ > > + struct meson_clk_audio_divider *adiv = > > + to_meson_clk_audio_divider(hw); @@ -157,14 +157,14 @@ Will be replaced in v2. Thx > > + > > + /* Get actual rate of the parent */ > > + *parent_rate = clk_hw_round_rate(clk_hw_get_parent(hw), -> > + ?divider * rate); +> > + divider * rate); > > + > > + return DIV_ROUND_UP_ULL((u64)*parent_rate, divider); > > +} > > + > > +static int audio_divider_set_rate(struct clk_hw *hw, -> > + ??unsigned long rate, -> > + ??unsigned long parent_rate) +> > + unsigned long rate, +> > + unsigned long parent_rate) > > +{ > > + struct meson_clk_audio_divider *adiv = > > + to_meson_clk_audio_divider(hw); @@ -207,9 +207,9 @@ Will be replaced in v2. Thx > > --- a/drivers/clk/meson/clkc.h > > +++ b/drivers/clk/meson/clkc.h > > @@ -121,6 +121,14 @@ struct meson_clk_mpll { -> > ? spinlock_t *lock; -> > ?}; -> > ? +> > spinlock_t *lock; +> > }; +> > > > +struct meson_clk_audio_divider { > > + struct clk_hw hw; > > + void __iomem *base; @@ -218,24 +218,24 @@ Will be replaced in v2. Thx > > + spinlock_t *lock; > > +}; > > + -> > ?#define MESON_GATE(_name, _reg, _bit) +> > #define MESON_GATE(_name, _reg, _bit) > > \ -> > ?struct clk_gate _name = {? \ -> > ? .reg = (void __iomem *) _reg,? +> > struct clk_gate _name = { \ +> > .reg = (void __iomem *) _reg, > > \ > > @@ -141,5 +149,7 @@ extern const struct clk_ops meson_clk_pll_ops; -> > ?extern const struct clk_ops meson_clk_cpu_ops; -> > ?extern const struct clk_ops meson_clk_mpll_ro_ops; -> > ?extern const struct clk_ops meson_clk_mpll_ops; +> > extern const struct clk_ops meson_clk_cpu_ops; +> > extern const struct clk_ops meson_clk_mpll_ro_ops; +> > extern const struct clk_ops meson_clk_mpll_ops; > > +extern const struct clk_ops meson_clk_audio_divider_ro_ops; > > +extern const struct clk_ops meson_clk_audio_divider_ops; -> > ? -> > ?#endif /* __CLKC_H */ -> > --? +> > +> > #endif /* __CLKC_H */ +> > -- > > 2.9.3 > > > > > > _______________________________________________ > > linux-amlogic mailing list -> > linux-amlogic at lists.infradead.org +> > linux-amlogic@lists.infradead.org > > http://lists.infradead.org/mailman/listinfo/linux-amlogic diff --git a/a/content_digest b/N1/content_digest index fbb0ade..33a6b4a 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -1,10 +1,17 @@ "ref\020170328144605.25278-1-jbrunet@baylibre.com\0" "ref\020170328144605.25278-4-jbrunet@baylibre.com\0" "ref\020170328145855.GA1150@psyche\0" - "From\0jbrunet@baylibre.com (Jerome Brunet)\0" - "Subject\0[PATCH v1 3/8] clk: meson: add audio clock divider support\0" + "From\0Jerome Brunet <jbrunet@baylibre.com>\0" + "Subject\0Re: [PATCH v1 3/8] clk: meson: add audio clock divider support\0" "Date\0Tue, 28 Mar 2017 17:26:21 +0200\0" - "To\0linus-amlogic@lists.infradead.org\0" + "To\0Hendrik v. Raven <hendrik@consetetur.de>\0" + "Cc\0Michael Turquette <mturquette@baylibre.com>" + Stephen Boyd <sboyd@codeaurora.org> + Kevin Hilman <khilman@baylibre.com> + Carlo Caione <carlo@caione.org> + linux-amlogic@lists.infradead.org + linux-clk@vger.kernel.org + " linux-kernel@vger.kernel.org\0" "\00:1\0" "b\0" "On Tue, 2017-03-28 at 16:58 +0200, Hendrik v. Raven wrote:\n" @@ -19,26 +26,26 @@ "> > \n" "> > Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>\n" "> > ---\n" - "> > ?drivers/clk/meson/Makefile????????????|???2 +-\n" - "> > ?drivers/clk/meson/clk-audio-divider.c | 149\n" + "> > \302\240drivers/clk/meson/Makefile\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240|\302\240\302\240\302\2402 +-\n" + "> > \302\240drivers/clk/meson/clk-audio-divider.c | 149\n" "> > ++++++++++++++++++++++++++++++++++\n" - "> > ?drivers/clk/meson/clkc.h??????????????|??10 +++\n" - "> > ?3 files changed, 160 insertions(+), 1 deletion(-)\n" - "> > ?create mode 100644 drivers/clk/meson/clk-audio-divider.c\n" + "> > \302\240drivers/clk/meson/clkc.h\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240|\302\240\302\24010 +++\n" + "> > \302\2403 files changed, 160 insertions(+), 1 deletion(-)\n" + "> > \302\240create mode 100644 drivers/clk/meson/clk-audio-divider.c\n" "> > \n" "> > diff --git a/drivers/clk/meson/Makefile b/drivers/clk/meson/Makefile\n" "> > index 349583405b7c..83b6d9d65aa1 100644\n" "> > --- a/drivers/clk/meson/Makefile\n" "> > +++ b/drivers/clk/meson/Makefile\n" "> > @@ -2,6 +2,6 @@\n" - "> > ?# Makefile for Meson specific clk\n" - "> > ?#\n" - "> > ?\n" + "> > \302\240# Makefile for Meson specific clk\n" + "> > \302\240#\n" + "> > \302\240\n" "> > -obj-$(CONFIG_COMMON_CLK_AMLOGIC) += clk-pll.o clk-cpu.o clk-mpll.o\n" "> > +obj-$(CONFIG_COMMON_CLK_AMLOGIC) += clk-pll.o clk-cpu.o clk-mpll.o clk-\n" "> > audio-divider.o\n" - "> > ?obj-$(CONFIG_COMMON_CLK_MESON8B) += meson8b.o\n" - "> > ?obj-$(CONFIG_COMMON_CLK_GXBB)\t?+= gxbb.o gxbb-aoclk.o\n" + "> > \302\240obj-$(CONFIG_COMMON_CLK_MESON8B) += meson8b.o\n" + "> > \302\240obj-$(CONFIG_COMMON_CLK_GXBB)\t\302\240+= gxbb.o gxbb-aoclk.o\n" "> > diff --git a/drivers/clk/meson/clk-audio-divider.c b/drivers/clk/meson/clk-\n" "> > audio-divider.c\n" "> > new file mode 100644\n" @@ -56,13 +63,13 @@ "> > + *\n" "> > + * This program is distributed in the hope it will be useful, but WITHOUT\n" "> > + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\n" - "> > + * FITNESS FOR A PARTICULAR PURPOSE.??See the GNU General Public License\n" + "> > + * FITNESS FOR A PARTICULAR PURPOSE.\302\240\302\240See the GNU General Public License\n" "> > for\n" "> > + * more details.\n" "> > + *\n" "> > + * You should have received a copy of the GNU General Public License along\n" "> > with\n" - "> > + * this program.??If not, see <http://www.gnu.org/licenses/>.\n" + "> > + * this program.\302\240\302\240If not, see <http://www.gnu.org/licenses/>.\n" "> > + */\n" "> > +\n" "> > +/*\n" @@ -90,7 +97,7 @@ "> > +\t\t\t\tstruct meson_clk_audio_divider, hw)\n" "> > +\n" "> > +static int _div_round(unsigned long parent_rate, unsigned long rate,\n" - "> > +\t\t??????unsigned long flags)\n" + "> > +\t\t\302\240\302\240\302\240\302\240\302\240\302\240unsigned long flags)\n" "> > +{\n" "> > +\tif (flags & CLK_DIVIDER_ROUND_CLOSEST)\n" "> > +\t\treturn DIV_ROUND_CLOSEST_ULL((u64)parent_rate, rate);\n" @@ -120,7 +127,7 @@ "> > +\n" "> > +\treturn divider;\n" "> \n" - "> This can be replaced by?\n" + "> This can be replaced by\302\240\n" "> return clamp(divider, 1, max_divider);\n" "Will be replaced in v2. Thx\n" "\n" @@ -128,7 +135,7 @@ "> > +}\n" "> > +\n" "> > +static unsigned long audio_divider_recalc_rate(struct clk_hw *hw,\n" - "> > +\t\t\t\t\t???????unsigned long parent_rate)\n" + "> > +\t\t\t\t\t\302\240\302\240\302\240\302\240\302\240\302\240\302\240unsigned long parent_rate)\n" "> > +{\n" "> > +\tstruct meson_clk_audio_divider *adiv =\n" "> > +\t\tto_meson_clk_audio_divider(hw);\n" @@ -143,8 +150,8 @@ "> > +}\n" "> > +\n" "> > +static long audio_divider_round_rate(struct clk_hw *hw,\n" - "> > +\t\t\t\t?????unsigned long rate,\n" - "> > +\t\t\t\t?????unsigned long *parent_rate)\n" + "> > +\t\t\t\t\302\240\302\240\302\240\302\240\302\240unsigned long rate,\n" + "> > +\t\t\t\t\302\240\302\240\302\240\302\240\302\240unsigned long *parent_rate)\n" "> > +{\n" "> > +\tstruct meson_clk_audio_divider *adiv =\n" "> > +\t\tto_meson_clk_audio_divider(hw);\n" @@ -166,14 +173,14 @@ "> > +\n" "> > +\t/* Get actual rate of the parent */\n" "> > +\t*parent_rate = clk_hw_round_rate(clk_hw_get_parent(hw),\n" - "> > +\t\t\t\t\t?divider * rate);\n" + "> > +\t\t\t\t\t\302\240divider * rate);\n" "> > +\n" "> > +\treturn DIV_ROUND_UP_ULL((u64)*parent_rate, divider);\n" "> > +}\n" "> > +\n" "> > +static int audio_divider_set_rate(struct clk_hw *hw,\n" - "> > +\t\t\t\t??unsigned long rate,\n" - "> > +\t\t\t\t??unsigned long parent_rate)\n" + "> > +\t\t\t\t\302\240\302\240unsigned long rate,\n" + "> > +\t\t\t\t\302\240\302\240unsigned long parent_rate)\n" "> > +{\n" "> > +\tstruct meson_clk_audio_divider *adiv =\n" "> > +\t\tto_meson_clk_audio_divider(hw);\n" @@ -216,9 +223,9 @@ "> > --- a/drivers/clk/meson/clkc.h\n" "> > +++ b/drivers/clk/meson/clkc.h\n" "> > @@ -121,6 +121,14 @@ struct meson_clk_mpll {\n" - "> > ?\tspinlock_t *lock;\n" - "> > ?};\n" - "> > ?\n" + "> > \302\240\tspinlock_t *lock;\n" + "> > \302\240};\n" + "> > \302\240\n" "> > +struct meson_clk_audio_divider {\n" "> > +\tstruct clk_hw hw;\n" "> > +\tvoid __iomem *base;\n" @@ -227,26 +234,26 @@ "> > +\tspinlock_t *lock;\n" "> > +};\n" "> > +\n" - "> > ?#define MESON_GATE(_name, _reg, _bit)\t\t\t\t\t\n" + "> > \302\240#define MESON_GATE(_name, _reg, _bit)\t\t\t\t\t\n" "> > \\\n" - "> > ?struct clk_gate _name = {?\t\t\t\t\t\t\\\n" - "> > ?\t.reg = (void __iomem *) _reg,?\t\t\t\t\t\n" + "> > \302\240struct clk_gate _name = {\302\240\t\t\t\t\t\t\\\n" + "> > \302\240\t.reg = (void __iomem *) _reg,\302\240\t\t\t\t\t\n" "> > \\\n" "> > @@ -141,5 +149,7 @@ extern const struct clk_ops meson_clk_pll_ops;\n" - "> > ?extern const struct clk_ops meson_clk_cpu_ops;\n" - "> > ?extern const struct clk_ops meson_clk_mpll_ro_ops;\n" - "> > ?extern const struct clk_ops meson_clk_mpll_ops;\n" + "> > \302\240extern const struct clk_ops meson_clk_cpu_ops;\n" + "> > \302\240extern const struct clk_ops meson_clk_mpll_ro_ops;\n" + "> > \302\240extern const struct clk_ops meson_clk_mpll_ops;\n" "> > +extern const struct clk_ops meson_clk_audio_divider_ro_ops;\n" "> > +extern const struct clk_ops meson_clk_audio_divider_ops;\n" - "> > ?\n" - "> > ?#endif /* __CLKC_H */\n" - "> > --?\n" + "> > \302\240\n" + "> > \302\240#endif /* __CLKC_H */\n" + "> > --\302\240\n" "> > 2.9.3\n" "> > \n" "> > \n" "> > _______________________________________________\n" "> > linux-amlogic mailing list\n" - "> > linux-amlogic at lists.infradead.org\n" + "> > linux-amlogic@lists.infradead.org\n" > > http://lists.infradead.org/mailman/listinfo/linux-amlogic -04d6c3680bd2cb94e3d5e524ff7370a47179f9e8130a3fccf73fb72f1bc45046 +267c9f3f20f4f119609214fbfaf15b031d985e905444a5b9ee653101bde8851e
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.