All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <1496049173.7514.2.camel@baylibre.com>

diff --git a/a/1.txt b/N1/1.txt
index dc9cce2..1759a59 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -2,15 +2,15 @@ On Thu, 2017-05-25 at 13:20 -0700, Michael Turquette wrote:
 > Quoting Jerome Brunet (2017-05-21 14:59:51)
 > > The current implementation of clk_core_set_rate_nolock bails out early if
 > > the requested rate is exactly the same as the one set. It should bail out
-> > if the request would not result in rate a change.??This important when rate
+> > if the request would not result in rate a change.  This important when rate
 > > is not exactly what is requested, which is fairly common with PLLs.
 > > 
 > > Ex: provider able to give any rate with steps of 100Hz
-> > ?- 1st consumer request 48000Hz and gets it.
-> > ?- 2nd consumer request 48010Hz as well. If we were to perform the usual
-> > ???mechanism, we would get 48000Hz as well. The clock would not change so
-> > ???there is no point performing any checks to make sure the clock can
-> > ???change, we know it won't.
+> >  - 1st consumer request 48000Hz and gets it.
+> >  - 2nd consumer request 48010Hz as well. If we were to perform the usual
+> >    mechanism, we would get 48000Hz as well. The clock would not change so
+> >    there is no point performing any checks to make sure the clock can
+> >    change, we know it won't.
 > > 
 > > This is important to prepare the addition of the clock protection mechanism
 > 
@@ -45,59 +45,59 @@ be a valuable addition.
 > > 
 > > Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
 > > ---
-> > ?drivers/clk/clk.c | 23 +++++++++++++++++++++--
-> > ?1 file changed, 21 insertions(+), 2 deletions(-)
+> >  drivers/clk/clk.c | 23 +++++++++++++++++++++--
+> >  1 file changed, 21 insertions(+), 2 deletions(-)
 > > 
 > > diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
 > > index 100f72472e10..1a8c0d013238 100644
 > > --- a/drivers/clk/clk.c
 > > +++ b/drivers/clk/clk.c
 > > @@ -1570,15 +1570,34 @@ static void clk_change_rate(struct clk_core *core)
-> > ????????????????clk_change_rate(core->new_child);
-> > ?}
-> > ?
+> >                 clk_change_rate(core->new_child);
+> >  }
+> >  
 > > +static unsigned long clk_core_req_round_rate_nolock(struct clk_core *core,
-> > +????????????????????????????????????????????????????unsigned long req_rate)
+> > +                                                    unsigned long req_rate)
 > > +{
-> > +???????int ret;
-> > +???????struct clk_rate_request req;
+> > +       int ret;
+> > +       struct clk_rate_request req;
 > > +
-> > +???????if (!core)
-> > +???????????????return 0;
+> > +       if (!core)
+> > +               return 0;
 > > +
-> > +???????clk_core_get_boundaries(core, &req.min_rate, &req.max_rate);
-> > +???????req.rate = req_rate;
+> > +       clk_core_get_boundaries(core, &req.min_rate, &req.max_rate);
+> > +       req.rate = req_rate;
 > > +
-> > +???????ret = clk_core_round_rate_nolock(core, &req);
+> > +       ret = clk_core_round_rate_nolock(core, &req);
 > > +
-> > +???????return ret ? 0 : req.rate;
+> > +       return ret ? 0 : req.rate;
 > > +}
 > > +
-> > ?static int clk_core_set_rate_nolock(struct clk_core *core,
-> > ????????????????????????????????????unsigned long req_rate)
-> > ?{
-> > ????????struct clk_core *top, *fail_clk;
-> > -???????unsigned long rate = req_rate;
-> > +???????unsigned long rate;
-> > ?
-> > ????????if (!core)
-> > ????????????????return 0;
-> > ?
-> > +???????rate = clk_core_req_round_rate_nolock(core, req_rate);
+> >  static int clk_core_set_rate_nolock(struct clk_core *core,
+> >                                     unsigned long req_rate)
+> >  {
+> >         struct clk_core *top, *fail_clk;
+> > -       unsigned long rate = req_rate;
+> > +       unsigned long rate;
+> >  
+> >         if (!core)
+> >                 return 0;
+> >  
+> > +       rate = clk_core_req_round_rate_nolock(core, req_rate);
 > > +
-> > ????????/* bail early if nothing to do */
-> > ????????if (rate == clk_core_get_rate_nolock(core))
-> > ????????????????return 0;
+> >         /* bail early if nothing to do */
+> >         if (rate == clk_core_get_rate_nolock(core))
+> >                 return 0;
 > > @@ -1587,7 +1606,7 @@ static int clk_core_set_rate_nolock(struct clk_core
 > > *core,
-> > ????????????????return -EBUSY;
-> > ?
-> > ????????/* calculate new rates and get the topmost changed clock */
-> > -???????top = clk_calc_new_rates(core, rate);
-> > +???????top = clk_calc_new_rates(core, req_rate);
-> > ????????if (!top)
-> > ????????????????return -EINVAL;
-> > ?
-> > --?
+> >                 return -EBUSY;
+> >  
+> >         /* calculate new rates and get the topmost changed clock */
+> > -       top = clk_calc_new_rates(core, rate);
+> > +       top = clk_calc_new_rates(core, req_rate);
+> >         if (!top)
+> >                 return -EINVAL;
+> >  
+> > -- 
 > > 2.9.4
 > >
diff --git a/a/content_digest b/N1/content_digest
index 7dbbc5b..5c6a067 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -1,25 +1,31 @@
  "ref\020170521215958.19743-1-jbrunet@baylibre.com\0"
  "ref\020170521215958.19743-5-jbrunet@baylibre.com\0"
  "ref\0149574365034.52617.9521289317050513324@resonance\0"
- "From\0jbrunet@baylibre.com (Jerome Brunet)\0"
- "Subject\0[PATCH v2 04/11] clk: use round rate to bail out early in set_rate\0"
+ "From\0Jerome Brunet <jbrunet@baylibre.com>\0"
+ "Subject\0Re: [PATCH v2 04/11] clk: use round rate to bail out early in set_rate\0"
  "Date\0Mon, 29 May 2017 11:12:53 +0200\0"
- "To\0linus-amlogic@lists.infradead.org\0"
+ "To\0Michael Turquette <mturquette@baylibre.com>"
+  Stephen Boyd <sboyd@codeaurora.org>
+ " Kevin Hilman <khilman@baylibre.com>\0"
+ "Cc\0linux-clk@vger.kernel.org"
+  linux-amlogic@lists.infradead.org
+  Linus Walleij <linus.walleij@linaro.org>
+ " Boris Brezillon <boris.brezillon@free-electrons.com>\0"
  "\00:1\0"
  "b\0"
  "On Thu, 2017-05-25 at 13:20 -0700, Michael Turquette wrote:\n"
  "> Quoting Jerome Brunet (2017-05-21 14:59:51)\n"
  "> > The current implementation of clk_core_set_rate_nolock bails out early if\n"
  "> > the requested rate is exactly the same as the one set. It should bail out\n"
- "> > if the request would not result in rate a change.??This important when rate\n"
+ "> > if the request would not result in rate a change.\302\240\302\240This important when rate\n"
  "> > is not exactly what is requested, which is fairly common with PLLs.\n"
  "> > \n"
  "> > Ex: provider able to give any rate with steps of 100Hz\n"
- "> > ?- 1st consumer request 48000Hz and gets it.\n"
- "> > ?- 2nd consumer request 48010Hz as well. If we were to perform the usual\n"
- "> > ???mechanism, we would get 48000Hz as well. The clock would not change so\n"
- "> > ???there is no point performing any checks to make sure the clock can\n"
- "> > ???change, we know it won't.\n"
+ "> > \302\240- 1st consumer request 48000Hz and gets it.\n"
+ "> > \302\240- 2nd consumer request 48010Hz as well. If we were to perform the usual\n"
+ "> > \302\240\302\240\302\240mechanism, we would get 48000Hz as well. The clock would not change so\n"
+ "> > \302\240\302\240\302\240there is no point performing any checks to make sure the clock can\n"
+ "> > \302\240\302\240\302\240change, we know it won't.\n"
  "> > \n"
  "> > This is important to prepare the addition of the clock protection mechanism\n"
  "> \n"
@@ -54,61 +60,61 @@
  "> > \n"
  "> > Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>\n"
  "> > ---\n"
- "> > ?drivers/clk/clk.c | 23 +++++++++++++++++++++--\n"
- "> > ?1 file changed, 21 insertions(+), 2 deletions(-)\n"
+ "> > \302\240drivers/clk/clk.c | 23 +++++++++++++++++++++--\n"
+ "> > \302\2401 file changed, 21 insertions(+), 2 deletions(-)\n"
  "> > \n"
  "> > diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c\n"
  "> > index 100f72472e10..1a8c0d013238 100644\n"
  "> > --- a/drivers/clk/clk.c\n"
  "> > +++ b/drivers/clk/clk.c\n"
  "> > @@ -1570,15 +1570,34 @@ static void clk_change_rate(struct clk_core *core)\n"
- "> > ????????????????clk_change_rate(core->new_child);\n"
- "> > ?}\n"
- "> > ?\n"
+ "> > \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\240clk_change_rate(core->new_child);\n"
+ "> > \302\240}\n"
+ "> > \302\240\n"
  "> > +static unsigned long clk_core_req_round_rate_nolock(struct clk_core *core,\n"
- "> > +????????????????????????????????????????????????????unsigned long req_rate)\n"
+ "> > +\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\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\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\240\302\240\302\240\302\240\302\240\302\240\302\240unsigned long req_rate)\n"
  "> > +{\n"
- "> > +???????int ret;\n"
- "> > +???????struct clk_rate_request req;\n"
+ "> > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240int ret;\n"
+ "> > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240struct clk_rate_request req;\n"
  "> > +\n"
- "> > +???????if (!core)\n"
- "> > +???????????????return 0;\n"
+ "> > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240if (!core)\n"
+ "> > +\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\240return 0;\n"
  "> > +\n"
- "> > +???????clk_core_get_boundaries(core, &req.min_rate, &req.max_rate);\n"
- "> > +???????req.rate = req_rate;\n"
+ "> > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240clk_core_get_boundaries(core, &req.min_rate, &req.max_rate);\n"
+ "> > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240req.rate = req_rate;\n"
  "> > +\n"
- "> > +???????ret = clk_core_round_rate_nolock(core, &req);\n"
+ "> > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240ret = clk_core_round_rate_nolock(core, &req);\n"
  "> > +\n"
- "> > +???????return ret ? 0 : req.rate;\n"
+ "> > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240return ret ? 0 : req.rate;\n"
  "> > +}\n"
  "> > +\n"
- "> > ?static int clk_core_set_rate_nolock(struct clk_core *core,\n"
- "> > ????????????????????????????????????unsigned long req_rate)\n"
- "> > ?{\n"
- "> > ????????struct clk_core *top, *fail_clk;\n"
- "> > -???????unsigned long rate = req_rate;\n"
- "> > +???????unsigned long rate;\n"
- "> > ?\n"
- "> > ????????if (!core)\n"
- "> > ????????????????return 0;\n"
- "> > ?\n"
- "> > +???????rate = clk_core_req_round_rate_nolock(core, req_rate);\n"
+ "> > \302\240static int clk_core_set_rate_nolock(struct clk_core *core,\n"
+ "> > \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\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\240\302\240\302\240\302\240\302\240\302\240unsigned long req_rate)\n"
+ "> > \302\240{\n"
+ "> > \302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240struct clk_core *top, *fail_clk;\n"
+ "> > -\302\240\302\240\302\240\302\240\302\240\302\240\302\240unsigned long rate = req_rate;\n"
+ "> > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240unsigned long rate;\n"
+ "> > \302\240\n"
+ "> > \302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240if (!core)\n"
+ "> > \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\240return 0;\n"
+ "> > \302\240\n"
+ "> > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240rate = clk_core_req_round_rate_nolock(core, req_rate);\n"
  "> > +\n"
- "> > ????????/* bail early if nothing to do */\n"
- "> > ????????if (rate == clk_core_get_rate_nolock(core))\n"
- "> > ????????????????return 0;\n"
+ "> > \302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240/* bail early if nothing to do */\n"
+ "> > \302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240if (rate == clk_core_get_rate_nolock(core))\n"
+ "> > \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\240return 0;\n"
  "> > @@ -1587,7 +1606,7 @@ static int clk_core_set_rate_nolock(struct clk_core\n"
  "> > *core,\n"
- "> > ????????????????return -EBUSY;\n"
- "> > ?\n"
- "> > ????????/* calculate new rates and get the topmost changed clock */\n"
- "> > -???????top = clk_calc_new_rates(core, rate);\n"
- "> > +???????top = clk_calc_new_rates(core, req_rate);\n"
- "> > ????????if (!top)\n"
- "> > ????????????????return -EINVAL;\n"
- "> > ?\n"
- "> > --?\n"
+ "> > \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\240return -EBUSY;\n"
+ "> > \302\240\n"
+ "> > \302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240/* calculate new rates and get the topmost changed clock */\n"
+ "> > -\302\240\302\240\302\240\302\240\302\240\302\240\302\240top = clk_calc_new_rates(core, rate);\n"
+ "> > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240top = clk_calc_new_rates(core, req_rate);\n"
+ "> > \302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240if (!top)\n"
+ "> > \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\240return -EINVAL;\n"
+ "> > \302\240\n"
+ "> > --\302\240\n"
  "> > 2.9.4\n"
  > >
 
-566e83b91259323cf442feabecc7b524351f62fbca2ae2ea972c51e55594c4de
+fe9bdb1afe91d27a08ff783af17c840a6ab0fc0debbbac412d669b0a40721904

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.