diff for duplicates of <1499807096.2287.3.camel@baylibre.com> diff --git a/a/1.txt b/N1/1.txt index 4c72e27..1237f4b 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -9,12 +9,12 @@ On Mon, 2017-06-12 at 21:44 +0200, Jerome Brunet wrote: > other consumers changing the rate or causing glitches. > > With this series there is 3 use-case: -> ?- the provider is not protected: nothing changes -> ?- the provider is protected by only 1 consumer (and only once), then only -> ???this consumer will be able to alter the rate of the clock, as it is the -> ???only one depending on it. -> ?- If the provider is protected more than once, or by the provider itself, -> ???the rate is basically locked and protected against reparenting. +> - the provider is not protected: nothing changes +> - the provider is protected by only 1 consumer (and only once), then only +> this consumer will be able to alter the rate of the clock, as it is the +> only one depending on it. +> - If the provider is protected more than once, or by the provider itself, +> the rate is basically locked and protected against reparenting. > > The last patch provide the same functionnality for providers themself, > fixing CLK_SET_RATE_GATE flag (enforce clock gating along the tree) @@ -25,32 +25,32 @@ On Mon, 2017-06-12 at 21:44 +0200, Jerome Brunet wrote: > any regression. > > Changes since RFC: -> ?- s/clk_protect/clk_rate_protect -> ?- Request rework around core_nolock function -> ?- Add clk_set_rate_protect -> ?- Reword clk_rate_protect and clk_unprotect documentation -> ?- Add few comments to explain the code -> ?- Add 2 last patches to fix users of CLK_SET_RATE_GATE +> - s/clk_protect/clk_rate_protect +> - Request rework around core_nolock function +> - Add clk_set_rate_protect +> - Reword clk_rate_protect and clk_unprotect documentation +> - Add few comments to explain the code +> - Add 2 last patches to fix users of CLK_SET_RATE_GATE > > Changes since v1: -> ?- Add patch 4: Check if the rate would actually change before continuing, a -> ???possibly in clk_set_rate. +> - Add patch 4: Check if the rate would actually change before continuing, a +> possibly in clk_set_rate. > > Changes since v2: [2] -> ?- Fix issues reported by Adriana Reus (Thanks !) -> ?- Dropped patch "clk: move CLK_SET_RATE_GATE protection from prepare -> ???to enable". This was broken as the protect count, like the prepare_count -> ???should only be accessed under the prepare_lock. -> ?- No change around bail-out code. Mike wanted to ponder a bit more on it. -> ?- Patch 1 still included, could not find the clk-next-protect Mike was -> ???referring to. +> - Fix issues reported by Adriana Reus (Thanks !) +> - Dropped patch "clk: move CLK_SET_RATE_GATE protection from prepare +> to enable". This was broken as the protect count, like the prepare_count +> should only be accessed under the prepare_lock. +> - No change around bail-out code. Mike wanted to ponder a bit more on it. +> - Patch 1 still included, could not find the clk-next-protect Mike was +> referring to. > > This was tested with the audio use case mentioned in [1] > -> [0]: https://lkml.kernel.org/r/20170321183330.26722-1-jbrunet at baylibre.com -> [1]: https://lkml.kernel.org/r/148942423440.82235.17188153691656009029 at resonan +> [0]: https://lkml.kernel.org/r/20170321183330.26722-1-jbrunet@baylibre.com +> [1]: https://lkml.kernel.org/r/148942423440.82235.17188153691656009029@resonan > ce -> [2]: https://lkml.kernel.org/r/20170521215958.19743-1-jbrunet at baylibre.com +> [2]: https://lkml.kernel.org/r/20170521215958.19743-1-jbrunet@baylibre.com > > @@ -71,20 +71,20 @@ Jerome > Jerome Brunet (10): -> ? clk: take the prepare lock out of clk_core_set_parent -> ? clk: add clk_core_set_phase_nolock function -> ? clk: rework calls to round and determine rate callbacks -> ? clk: use round rate to bail out early in set_rate -> ? clk: add support for clock protection -> ? clk: add clk_set_rate_protect -> ? clk: rollback set_rate_range changes on failure -> ? clk: cosmetic changes to clk_summary debugfs entry -> ? clk: fix incorrect usage of ENOSYS -> ? clk: fix CLK_SET_RATE_GATE with clock rate protection +> clk: take the prepare lock out of clk_core_set_parent +> clk: add clk_core_set_phase_nolock function +> clk: rework calls to round and determine rate callbacks +> clk: use round rate to bail out early in set_rate +> clk: add support for clock protection +> clk: add clk_set_rate_protect +> clk: rollback set_rate_range changes on failure +> clk: cosmetic changes to clk_summary debugfs entry +> clk: fix incorrect usage of ENOSYS +> clk: fix CLK_SET_RATE_GATE with clock rate protection > -> ?drivers/clk/clk.c????????????| 428 ++++++++++++++++++++++++++++++++++++---- +> drivers/clk/clk.c | 428 ++++++++++++++++++++++++++++++++++++---- > --- -> ?include/linux/clk-provider.h |???1 + -> ?include/linux/clk.h??????????|??43 +++++ -> ?3 files changed, 402 insertions(+), 70 deletions(-) +> include/linux/clk-provider.h | 1 + +> include/linux/clk.h | 43 +++++ +> 3 files changed, 402 insertions(+), 70 deletions(-) > diff --git a/a/content_digest b/N1/content_digest index 78f3640..7af9ad2 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -1,8 +1,16 @@ "ref\020170612194438.12298-1-jbrunet@baylibre.com\0" - "From\0jbrunet@baylibre.com (Jerome Brunet)\0" - "Subject\0[PATCH v3 00/10] clk: implement clock rate protection mechanism\0" + "From\0Jerome Brunet <jbrunet@baylibre.com>\0" + "Subject\0Re: [PATCH v3 00/10] clk: implement clock rate protection mechanism\0" "Date\0Tue, 11 Jul 2017 23:04:56 +0200\0" - "To\0linus-amlogic@lists.infradead.org\0" + "To\0Michael Turquette <mturquette@baylibre.com>" + Stephen Boyd <sboyd@codeaurora.org> + " linux-clk@vger.kernel.org\0" + "Cc\0Kevin Hilman <khilman@baylibre.com>" + linux-amlogic@lists.infradead.org + Russell King <linux@armlinux.org.uk> + Linus Walleij <linus.walleij@linaro.org> + Boris Brezillon <boris.brezillon@free-electrons.com> + " Adriana Reus <adi.reus@gmail.com>\0" "\00:1\0" "b\0" "On Mon, 2017-06-12 at 21:44 +0200, Jerome Brunet wrote:\n" @@ -16,12 +24,12 @@ "> other consumers changing the rate or causing glitches.\n" "> \n" "> With this series there is 3 use-case:\n" - "> ?- the provider is not protected: nothing changes\n" - "> ?- the provider is protected by only 1 consumer (and only once), then only\n" - "> ???this consumer will be able to alter the rate of the clock, as it is the\n" - "> ???only one depending on it.\n" - "> ?- If the provider is protected more than once, or by the provider itself,\n" - "> ???the rate is basically locked and protected against reparenting.\n" + "> \302\240- the provider is not protected: nothing changes\n" + "> \302\240- the provider is protected by only 1 consumer (and only once), then only\n" + "> \302\240\302\240\302\240this consumer will be able to alter the rate of the clock, as it is the\n" + "> \302\240\302\240\302\240only one depending on it.\n" + "> \302\240- If the provider is protected more than once, or by the provider itself,\n" + "> \302\240\302\240\302\240the rate is basically locked and protected against reparenting.\n" "> \n" "> The last patch provide the same functionnality for providers themself,\n" "> fixing CLK_SET_RATE_GATE flag (enforce clock gating along the tree)\n" @@ -32,32 +40,32 @@ "> any regression.\n" "> \n" "> Changes since RFC:\n" - "> ?- s/clk_protect/clk_rate_protect\n" - "> ?- Request rework around core_nolock function\n" - "> ?- Add clk_set_rate_protect\n" - "> ?- Reword clk_rate_protect and clk_unprotect documentation\n" - "> ?- Add few comments to explain the code\n" - "> ?- Add 2 last patches to fix users of CLK_SET_RATE_GATE\n" + "> \302\240- s/clk_protect/clk_rate_protect\n" + "> \302\240- Request rework around core_nolock function\n" + "> \302\240- Add clk_set_rate_protect\n" + "> \302\240- Reword clk_rate_protect and clk_unprotect documentation\n" + "> \302\240- Add few comments to explain the code\n" + "> \302\240- Add 2 last patches to fix users of CLK_SET_RATE_GATE\n" "> \n" "> Changes since v1:\n" - "> ?- Add patch 4: Check if the rate would actually change before continuing, a\n" - "> ???possibly in clk_set_rate.\n" + "> \302\240- Add patch 4: Check if the rate would actually change before continuing, a\n" + "> \302\240\302\240\302\240possibly in clk_set_rate.\n" "> \n" "> Changes since v2: [2]\n" - "> ?- Fix issues reported by Adriana Reus (Thanks !)\n" - "> ?- Dropped patch \"clk: move CLK_SET_RATE_GATE protection from prepare\n" - "> ???to enable\". This was broken as the protect count, like the prepare_count\n" - "> ???should only be accessed under the prepare_lock.\n" - "> ?- No change around bail-out code. Mike wanted to ponder a bit more on it.\n" - "> ?- Patch 1 still included, could not find the clk-next-protect Mike was\n" - "> ???referring to.\n" + "> \302\240- Fix issues reported by Adriana Reus (Thanks !)\n" + "> \302\240- Dropped patch \"clk: move CLK_SET_RATE_GATE protection from prepare\n" + "> \302\240\302\240\302\240to enable\". This was broken as the protect count, like the prepare_count\n" + "> \302\240\302\240\302\240should only be accessed under the prepare_lock.\n" + "> \302\240- No change around bail-out code. Mike wanted to ponder a bit more on it.\n" + "> \302\240- Patch 1 still included, could not find the clk-next-protect Mike was\n" + "> \302\240\302\240\302\240referring to.\n" "> \n" "> This was tested with the audio use case mentioned in [1]\n" "> \n" - "> [0]: https://lkml.kernel.org/r/20170321183330.26722-1-jbrunet at baylibre.com\n" - "> [1]: https://lkml.kernel.org/r/148942423440.82235.17188153691656009029 at resonan\n" + "> [0]: https://lkml.kernel.org/r/20170321183330.26722-1-jbrunet@baylibre.com\n" + "> [1]: https://lkml.kernel.org/r/148942423440.82235.17188153691656009029@resonan\n" "> ce\n" - "> [2]: https://lkml.kernel.org/r/20170521215958.19743-1-jbrunet at baylibre.com\n" + "> [2]: https://lkml.kernel.org/r/20170521215958.19743-1-jbrunet@baylibre.com\n" "> \n" "> \n" "\n" @@ -78,22 +86,22 @@ "\n" "\n" "> Jerome Brunet (10):\n" - "> ? clk: take the prepare lock out of clk_core_set_parent\n" - "> ? clk: add clk_core_set_phase_nolock function\n" - "> ? clk: rework calls to round and determine rate callbacks\n" - "> ? clk: use round rate to bail out early in set_rate\n" - "> ? clk: add support for clock protection\n" - "> ? clk: add clk_set_rate_protect\n" - "> ? clk: rollback set_rate_range changes on failure\n" - "> ? clk: cosmetic changes to clk_summary debugfs entry\n" - "> ? clk: fix incorrect usage of ENOSYS\n" - "> ? clk: fix CLK_SET_RATE_GATE with clock rate protection\n" + "> \302\240 clk: take the prepare lock out of clk_core_set_parent\n" + "> \302\240 clk: add clk_core_set_phase_nolock function\n" + "> \302\240 clk: rework calls to round and determine rate callbacks\n" + "> \302\240 clk: use round rate to bail out early in set_rate\n" + "> \302\240 clk: add support for clock protection\n" + "> \302\240 clk: add clk_set_rate_protect\n" + "> \302\240 clk: rollback set_rate_range changes on failure\n" + "> \302\240 clk: cosmetic changes to clk_summary debugfs entry\n" + "> \302\240 clk: fix incorrect usage of ENOSYS\n" + "> \302\240 clk: fix CLK_SET_RATE_GATE with clock rate protection\n" "> \n" - "> ?drivers/clk/clk.c????????????| 428 ++++++++++++++++++++++++++++++++++++----\n" + "> \302\240drivers/clk/clk.c\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240| 428 ++++++++++++++++++++++++++++++++++++----\n" "> ---\n" - "> ?include/linux/clk-provider.h |???1 +\n" - "> ?include/linux/clk.h??????????|??43 +++++\n" - "> ?3 files changed, 402 insertions(+), 70 deletions(-)\n" + "> \302\240include/linux/clk-provider.h |\302\240\302\240\302\2401 +\n" + "> \302\240include/linux/clk.h\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240|\302\240\302\24043 +++++\n" + "> \302\2403 files changed, 402 insertions(+), 70 deletions(-)\n" > -a94c39605f4d2dd0fe69576e7fcb0481f39f5731e231bd435708b1c0ed0d14b3 +4bd08f4020c9e71c3e89365c94548b9aaab1a124e3f5f415c7992b7f0fc4c85d
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.