On Tue, Nov 15, 2016 at 10:50:59AM +0200, Noam Camus wrote: > From: Noam Camus <noamca@xxxxxxxxxxxx> > > Till now we used clockevent from generic ARC driver. > This was enough as long as we worked with simple multicore SoC. > When we are working with multithread SoC each HW thread can be > scheduled to receive timer interrupt using timer mask register. > This patch will provide a way to control clock events per HW thread. > > The design idea is that for each core there is dedicated register > (TSI) serving all 16 HW threads. > The register is a bitmask with one bit for each HW thread. > When HW thread wants that next expiration of timer interrupt will > hit it then the proper bit should be set in this dedicated register. > When timer expires all HW threads within this core which their bit > is set at the TSI register will be interrupted. > > Driver can be used from device tree by: > compatible = "ezchip,nps400-timer0" <-- for clocksource > compatible = "ezchip,nps400-timer1" <-- for clockevent > > Note that name convention for timer0/timer1 was taken from legacy > ARC design. This design is our base before adding HW threads. > For backward compatibility we keep "ezchip,nps400-timer" for clocksource > > Signed-off-by: Noam Camus <noamca@xxxxxxxxxxxx> > --- > .../bindings/timer/ezchip,nps400-timer.txt | 15 -- > .../bindings/timer/ezchip,nps400-timer0.txt | 17 ++ > .../bindings/timer/ezchip,nps400-timer1.txt | 15 ++ Please add acks when reposting. Acked-by: Rob Herring <robh@xxxxxxxxxx> > drivers/clocksource/timer-nps.c | 170 ++++++++++++++++++++ > 4 files changed, 202 insertions(+), 15 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/timer/ezchip,nps400-timer.txt > create mode 100644 Documentation/devicetree/bindings/timer/ezchip,nps400-timer0.txt > create mode 100644 Documentation/devicetree/bindings/timer/ezchip,nps400-timer1.txt -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html