mbox series

[v2,0/9] clk: clocking-wizard: add user clock monitor support

Message ID 20240803105702.9621-1-hpausten@protonmail.com (mailing list archive)
Headers show
Series clk: clocking-wizard: add user clock monitor support | expand

Message

Harry Austen Aug. 3, 2024, 10:57 a.m. UTC
Improve utilised clk/notifier APIs, making use of device managed versions
of functions, make dynamic reconfiguration support optional (because it is
in hardware) and add support for the clock monitor functionailty added in
version 6.0 of the Xilinx clocking wizard IP core, through use of the
auxiliary bus and UIO frameworks.

The combined addition of all of these patches allows, for example, to use
the clocking wizard solely for its user clock monitoring logic, keeping
dynamic reconfiguration support disabled.

This is currently untested on hardware, so any help testing this would be
much appreciated!

v1 -> v2:
- Split and improve clk_hw+devres transition patch (2+3)
- Fix/improve DT binding patches (5+8)
- Utilise auxiliary bus in monitor support patch (6)
- Add dedicated UIO driver for monitor support (7)

Harry Austen (9):
  clk: clocking-wizard: simplify probe/remove with devres helpers
  clk: clocking-wizard: use newer clk_hw API
  clk: clocking-wizard: use devres versions of clk_hw API
  clk: clocking-wizard: move clock registration to separate function
  dt-bindings: clock: xilinx: add description of user monitor interrupt
  clk: clocking-wizard: add user clock monitor support
  uio: add Xilinx user clock monitor support
  dt-bindings: clock: xilinx: describe whether dynamic reconfig is
    enabled
  clk: clocking-wizard: move dynamic reconfig setup behind flag

 .../bindings/clock/xlnx,clocking-wizard.yaml  |  32 +-
 drivers/clk/xilinx/Kconfig                    |   1 +
 drivers/clk/xilinx/clk-xlnx-clock-wizard.c    | 335 +++++++++---------
 drivers/uio/Kconfig                           |   8 +
 drivers/uio/Makefile                          |   1 +
 drivers/uio/uio_xlnx_clk_mon.c                |  71 ++++
 6 files changed, 285 insertions(+), 163 deletions(-)
 create mode 100644 drivers/uio/uio_xlnx_clk_mon.c

Comments

Krzysztof Kozlowski Aug. 4, 2024, 9:01 a.m. UTC | #1
On 03/08/2024 12:57, Harry Austen wrote:
> Improve utilised clk/notifier APIs, making use of device managed versions
> of functions, make dynamic reconfiguration support optional (because it is
> in hardware) and add support for the clock monitor functionailty added in
> version 6.0 of the Xilinx clocking wizard IP core, through use of the
> auxiliary bus and UIO frameworks.
> 
> The combined addition of all of these patches allows, for example, to use
> the clocking wizard solely for its user clock monitoring logic, keeping
> dynamic reconfiguration support disabled.
> 
> This is currently untested on hardware, so any help testing this would be
> much appreciated!
> 
> v1 -> v2:
> - Split and improve clk_hw+devres transition patch (2+3)
> - Fix/improve DT binding patches (5+8)

Be specific, what did you change? Anything can be a fix or improvement.

Best regards,
Krzysztof
Harry Austen Aug. 4, 2024, 12:28 p.m. UTC | #2
On Sun Aug 4, 2024 at 10:01 AM BST, Krzysztof Kozlowski wrote:
> On 03/08/2024 12:57, Harry Austen wrote:
> > Improve utilised clk/notifier APIs, making use of device managed versions
> > of functions, make dynamic reconfiguration support optional (because it is
> > in hardware) and add support for the clock monitor functionailty added in
> > version 6.0 of the Xilinx clocking wizard IP core, through use of the
> > auxiliary bus and UIO frameworks.
> >
> > The combined addition of all of these patches allows, for example, to use
> > the clocking wizard solely for its user clock monitoring logic, keeping
> > dynamic reconfiguration support disabled.
> >
> > This is currently untested on hardware, so any help testing this would be
> > much appreciated!
> >
> > v1 -> v2:
> > - Split and improve clk_hw+devres transition patch (2+3)
> > - Fix/improve DT binding patches (5+8)
>
> Be specific, what did you change? Anything can be a fix or improvement.

This was intended as more of a summary, referencing the patches which have
their own more detailed changelogs. But I will be more descriptive in the
cover letter too in future.

>
> Best regards,
> Krzysztof
Krzysztof Kozlowski Aug. 4, 2024, 1:58 p.m. UTC | #3
On 04/08/2024 14:28, Harry Austen wrote:
> On Sun Aug 4, 2024 at 10:01 AM BST, Krzysztof Kozlowski wrote:
>> On 03/08/2024 12:57, Harry Austen wrote:
>>> Improve utilised clk/notifier APIs, making use of device managed versions
>>> of functions, make dynamic reconfiguration support optional (because it is
>>> in hardware) and add support for the clock monitor functionailty added in
>>> version 6.0 of the Xilinx clocking wizard IP core, through use of the
>>> auxiliary bus and UIO frameworks.
>>>
>>> The combined addition of all of these patches allows, for example, to use
>>> the clocking wizard solely for its user clock monitoring logic, keeping
>>> dynamic reconfiguration support disabled.
>>>
>>> This is currently untested on hardware, so any help testing this would be
>>> much appreciated!
>>>
>>> v1 -> v2:
>>> - Split and improve clk_hw+devres transition patch (2+3)
>>> - Fix/improve DT binding patches (5+8)
>>
>> Be specific, what did you change? Anything can be a fix or improvement.
> 
> This was intended as more of a summary, referencing the patches which have
> their own more detailed changelogs. But I will be more descriptive in the
> cover letter too in future.

No, if more descriptive changelog is in each patch, then it is fine.

Best regards,
Krzysztof