Messages in this thread | | | From | Måns Rullgård <> | Subject | Re: [PATCH v2 1/2] devicetree: add binding for generic mmio clocksource | Date | Wed, 07 Oct 2015 17:47:12 +0100 |
| |
Mark Rutland <mark.rutland@arm.com> writes:
> On Wed, Oct 07, 2015 at 04:37:13PM +0100, Mans Rullgard wrote: >> This adds a DT binding for a generic mmio clocksource as implemented >> by clocksource_mmio_init(). >> >> Signed-off-by: Mans Rullgard <mans@mansr.com> >> --- >> Changed in v2: >> - added sched_clock support >> --- >> .../devicetree/bindings/timer/clocksource-mmio.txt | 28 ++++++++++++++++++++++ >> 1 file changed, 28 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/timer/clocksource-mmio.txt >> >> diff --git a/Documentation/devicetree/bindings/timer/clocksource-mmio.txt b/Documentation/devicetree/bindings/timer/clocksource-mmio.txt >> new file mode 100644 >> index 0000000..cfb3601 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/timer/clocksource-mmio.txt >> @@ -0,0 +1,28 @@ >> +Generic MMIO clocksource >> + >> +Required properties: >> + >> +- compatible: should be "clocksource-mmio" >> +- reg: the physical address of the counter register >> +- reg-io-width: size of counter register in bytes, should be 2 or 4 > > Can this not be inferred from the reg?
You're right, it can.
> What about 8 byte counters?
The existing code only supports 2 or 4, but that of course doesn't matter here.
>> +- clocks: phandle to the source clock > > Is the frequency expected to be exactly the source clock frequency? I > imagine it's possible for there to be a divisor.
There could of course be, though there isn't in the hardware I'm dealing with. Is specifying it here preferable using a fixed-factor-clock?
> We can add properties for that later, but we should be explcit as to > what we currently expect the relationship between the clock and the > clocksource to be. > >> +- clocksource-bits: number of valid bits >> +- clocksource-rating: rating of the clocksource > > NAK. This has no meaning w.r.t. the hardware. This should not be in the > DT. If there are criteria that bias this (e.g. frequency, latency), they > should either be described in the DT or determined dynamically.
I had a bad feeling about this. How would you suggest determining a suitable value from actual hardware parameters?
>> +- linux,sched-clock: boolean, register clocksource as sched_clock > > Likewise, this property doesn't belong in the DT for the same reasons as > clocksource-rating.
What would be a proper way to select a sched_clock source? I realise it's a Linux-specific thing and DT is supposed to be generic, but the information must be provided somehow.
-- Måns Rullgård mans@mansr.com
| |