From: Alexander Kochetkov <al.kochet@gmail.com>
To: Daniel Lezcano <daniel.lezcano@linaro.org>,
Heiko Stuebner <heiko@sntech.de>,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org
Cc: Thomas Gleixner <tglx@linutronix.de>,
Mark Rutland <mark.rutland@arm.com>,
Rob Herring <robh+dt@kernel.org>,
Russell King <linux@armlinux.org.uk>,
Caesar Wang <wxt@rock-chips.com>,
Huang Tao <huangtao@rock-chips.com>,
Alexander Kochetkov <al.kochet@gmail.com>
Subject: [PATCH v5 0/8] Implement clocksource for rockchip SoC using rockchip timer
Date: Tue, 24 Jan 2017 15:16:35 +0300 [thread overview]
Message-ID: <1485260203-14216-1-git-send-email-al.kochet@gmail.com> (raw)
Hello,
This patch series contain:
- devicetree bindings clarification for rockchip timers
- dts files fixes for rk3228-evb, rk3229-evb and rk3188
- implementation of clocksource and sched clock for rockchip SoC
The clock supplying the arm-global-timer on the rk3188 is coming from the
the cpu clock itself and thus changes its rate everytime cpufreq adjusts
the cpu frequency making this timer unsuitable as a stable clocksource.
The rk3188, rk3288 and following socs share a separate timer block already
handled by the rockchip-timer driver. Therefore adapt this driver to also
be able to act as clocksource on rk3188.
In order to test clocksource you can run following commands and check
how much time it take in real. On rk3188 it take about ~45 seconds.
cpufreq-set -f 1.6GHZ
date; sleep 60; date
rk3288 (and probably anything newer) is irrelevant to this patch,
as it has the arch timer interface. This patch may be usefull
for Cortex-A9/A5 based parts.
Regards,
Alexander.
Changes in v5:
- Add 'Acked-by: Rob Herring <robh@kernel.org>' to 1/8
http://lists.infradead.org/pipermail/linux-rockchip/2016-December/013308.html
- Add 'Reviwed-by: Heiko Stübner <heiko@sntech.de>' to series
- change timer compatible property in the rk322x.dtsi 2/8
http://lists.infradead.org/pipermail/linux-rockchip/2017-January/013784.html
- updated comment message for 4/8
http://lists.infradead.org/pipermail/linux-rockchip/2017-January/013786.html
- updated comment message for 5/8
http://lists.infradead.org/pipermail/linux-rockchip/2017-January/013787.html
- fixed build error for 8/8
http://lists.infradead.org/pipermail/linux-rockchip/2017-January/013789.html
Changes in v4:
merged 7 and 8 from series 3
merged 10, 11, 12, 13 from series 3
fixed commit message
Changes in v3:
added patches:
ARM: dts: rockchip: disable arm-global-timer for rk3188
clocksource/drivers/rockchip_timer: Prevent ftrace recursion
devicetree v1 patches:
https://patchwork.ozlabs.org/patch/699019/
https://patchwork.ozlabs.org/patch/699020/
kernel v1 patches:
https://patchwork.kernel.org/patch/9443975/
https://patchwork.kernel.org/patch/9443971/
https://patchwork.kernel.org/patch/9443959/
https://patchwork.kernel.org/patch/9443963/
https://patchwork.kernel.org/patch/9443979/
https://patchwork.kernel.org/patch/9443989/
https://patchwork.kernel.org/patch/9443987/
https://patchwork.kernel.org/patch/9443977/
https://patchwork.kernel.org/patch/9443991/
Alexander Kochetkov (8):
dt-bindings: clarify compatible property for rockchip timers
ARM: dts: rockchip: update compatible property for rk322x timer
ARM: dts: rockchip: add timer entries to rk3188 SoC
ARM: dts: rockchip: disable arm-global-timer for rk3188
clocksource/drivers/rockchip_timer: split bc_timer into rk_timer and
rk_clock_event_device
clocksource/drivers/rockchip_timer: low level routines take rk_timer
as parameter
clocksource/drivers/rockchip_timer: move TIMER_INT_UNMASK out of
rk_timer_enable()
clocksource/drivers/rockchip_timer: implement clocksource timer
.../bindings/timer/rockchip,rk-timer.txt | 12 +-
arch/arm/boot/dts/rk3188.dtsi | 17 ++
arch/arm/boot/dts/rk322x.dtsi | 2 +-
drivers/clocksource/rockchip_timer.c | 207 +++++++++++++++-----
4 files changed, 183 insertions(+), 55 deletions(-)
--
1.7.9.5
WARNING: multiple messages have this Message-ID (diff)
From: Alexander Kochetkov <al.kochet-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Daniel Lezcano
<daniel.lezcano-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
Heiko Stuebner <heiko-4mtYJXux2i+zQB+pC5nmwQ@public.gmane.org>,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
linux-rockchip-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Cc: Thomas Gleixner <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>,
Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Russell King <linux-I+IVW8TIWO2tmTQ+vhA3Yw@public.gmane.org>,
Caesar Wang <wxt-TNX95d0MmH7DzftRWevZcw@public.gmane.org>,
Huang Tao <huangtao-TNX95d0MmH7DzftRWevZcw@public.gmane.org>,
Alexander Kochetkov
<al.kochet-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Subject: [PATCH v5 0/8] Implement clocksource for rockchip SoC using rockchip timer
Date: Tue, 24 Jan 2017 15:16:35 +0300 [thread overview]
Message-ID: <1485260203-14216-1-git-send-email-al.kochet@gmail.com> (raw)
Hello,
This patch series contain:
- devicetree bindings clarification for rockchip timers
- dts files fixes for rk3228-evb, rk3229-evb and rk3188
- implementation of clocksource and sched clock for rockchip SoC
The clock supplying the arm-global-timer on the rk3188 is coming from the
the cpu clock itself and thus changes its rate everytime cpufreq adjusts
the cpu frequency making this timer unsuitable as a stable clocksource.
The rk3188, rk3288 and following socs share a separate timer block already
handled by the rockchip-timer driver. Therefore adapt this driver to also
be able to act as clocksource on rk3188.
In order to test clocksource you can run following commands and check
how much time it take in real. On rk3188 it take about ~45 seconds.
cpufreq-set -f 1.6GHZ
date; sleep 60; date
rk3288 (and probably anything newer) is irrelevant to this patch,
as it has the arch timer interface. This patch may be usefull
for Cortex-A9/A5 based parts.
Regards,
Alexander.
Changes in v5:
- Add 'Acked-by: Rob Herring <robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>' to 1/8
http://lists.infradead.org/pipermail/linux-rockchip/2016-December/013308.html
- Add 'Reviwed-by: Heiko Stübner <heiko-4mtYJXux2i+zQB+pC5nmwQ@public.gmane.org>' to series
- change timer compatible property in the rk322x.dtsi 2/8
http://lists.infradead.org/pipermail/linux-rockchip/2017-January/013784.html
- updated comment message for 4/8
http://lists.infradead.org/pipermail/linux-rockchip/2017-January/013786.html
- updated comment message for 5/8
http://lists.infradead.org/pipermail/linux-rockchip/2017-January/013787.html
- fixed build error for 8/8
http://lists.infradead.org/pipermail/linux-rockchip/2017-January/013789.html
Changes in v4:
merged 7 and 8 from series 3
merged 10, 11, 12, 13 from series 3
fixed commit message
Changes in v3:
added patches:
ARM: dts: rockchip: disable arm-global-timer for rk3188
clocksource/drivers/rockchip_timer: Prevent ftrace recursion
devicetree v1 patches:
https://patchwork.ozlabs.org/patch/699019/
https://patchwork.ozlabs.org/patch/699020/
kernel v1 patches:
https://patchwork.kernel.org/patch/9443975/
https://patchwork.kernel.org/patch/9443971/
https://patchwork.kernel.org/patch/9443959/
https://patchwork.kernel.org/patch/9443963/
https://patchwork.kernel.org/patch/9443979/
https://patchwork.kernel.org/patch/9443989/
https://patchwork.kernel.org/patch/9443987/
https://patchwork.kernel.org/patch/9443977/
https://patchwork.kernel.org/patch/9443991/
Alexander Kochetkov (8):
dt-bindings: clarify compatible property for rockchip timers
ARM: dts: rockchip: update compatible property for rk322x timer
ARM: dts: rockchip: add timer entries to rk3188 SoC
ARM: dts: rockchip: disable arm-global-timer for rk3188
clocksource/drivers/rockchip_timer: split bc_timer into rk_timer and
rk_clock_event_device
clocksource/drivers/rockchip_timer: low level routines take rk_timer
as parameter
clocksource/drivers/rockchip_timer: move TIMER_INT_UNMASK out of
rk_timer_enable()
clocksource/drivers/rockchip_timer: implement clocksource timer
.../bindings/timer/rockchip,rk-timer.txt | 12 +-
arch/arm/boot/dts/rk3188.dtsi | 17 ++
arch/arm/boot/dts/rk322x.dtsi | 2 +-
drivers/clocksource/rockchip_timer.c | 207 +++++++++++++++-----
4 files changed, 183 insertions(+), 55 deletions(-)
--
1.7.9.5
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: al.kochet@gmail.com (Alexander Kochetkov)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v5 0/8] Implement clocksource for rockchip SoC using rockchip timer
Date: Tue, 24 Jan 2017 15:16:35 +0300 [thread overview]
Message-ID: <1485260203-14216-1-git-send-email-al.kochet@gmail.com> (raw)
Hello,
This patch series contain:
- devicetree bindings clarification for rockchip timers
- dts files fixes for rk3228-evb, rk3229-evb and rk3188
- implementation of clocksource and sched clock for rockchip SoC
The clock supplying the arm-global-timer on the rk3188 is coming from the
the cpu clock itself and thus changes its rate everytime cpufreq adjusts
the cpu frequency making this timer unsuitable as a stable clocksource.
The rk3188, rk3288 and following socs share a separate timer block already
handled by the rockchip-timer driver. Therefore adapt this driver to also
be able to act as clocksource on rk3188.
In order to test clocksource you can run following commands and check
how much time it take in real. On rk3188 it take about ~45 seconds.
cpufreq-set -f 1.6GHZ
date; sleep 60; date
rk3288 (and probably anything newer) is irrelevant to this patch,
as it has the arch timer interface. This patch may be usefull
for Cortex-A9/A5 based parts.
Regards,
Alexander.
Changes in v5:
- Add 'Acked-by: Rob Herring <robh@kernel.org>' to 1/8
http://lists.infradead.org/pipermail/linux-rockchip/2016-December/013308.html
- Add 'Reviwed-by: Heiko St?bner <heiko@sntech.de>' to series
- change timer compatible property in the rk322x.dtsi 2/8
http://lists.infradead.org/pipermail/linux-rockchip/2017-January/013784.html
- updated comment message for 4/8
http://lists.infradead.org/pipermail/linux-rockchip/2017-January/013786.html
- updated comment message for 5/8
http://lists.infradead.org/pipermail/linux-rockchip/2017-January/013787.html
- fixed build error for 8/8
http://lists.infradead.org/pipermail/linux-rockchip/2017-January/013789.html
Changes in v4:
merged 7 and 8 from series 3
merged 10, 11, 12, 13 from series 3
fixed commit message
Changes in v3:
added patches:
ARM: dts: rockchip: disable arm-global-timer for rk3188
clocksource/drivers/rockchip_timer: Prevent ftrace recursion
devicetree v1 patches:
https://patchwork.ozlabs.org/patch/699019/
https://patchwork.ozlabs.org/patch/699020/
kernel v1 patches:
https://patchwork.kernel.org/patch/9443975/
https://patchwork.kernel.org/patch/9443971/
https://patchwork.kernel.org/patch/9443959/
https://patchwork.kernel.org/patch/9443963/
https://patchwork.kernel.org/patch/9443979/
https://patchwork.kernel.org/patch/9443989/
https://patchwork.kernel.org/patch/9443987/
https://patchwork.kernel.org/patch/9443977/
https://patchwork.kernel.org/patch/9443991/
Alexander Kochetkov (8):
dt-bindings: clarify compatible property for rockchip timers
ARM: dts: rockchip: update compatible property for rk322x timer
ARM: dts: rockchip: add timer entries to rk3188 SoC
ARM: dts: rockchip: disable arm-global-timer for rk3188
clocksource/drivers/rockchip_timer: split bc_timer into rk_timer and
rk_clock_event_device
clocksource/drivers/rockchip_timer: low level routines take rk_timer
as parameter
clocksource/drivers/rockchip_timer: move TIMER_INT_UNMASK out of
rk_timer_enable()
clocksource/drivers/rockchip_timer: implement clocksource timer
.../bindings/timer/rockchip,rk-timer.txt | 12 +-
arch/arm/boot/dts/rk3188.dtsi | 17 ++
arch/arm/boot/dts/rk322x.dtsi | 2 +-
drivers/clocksource/rockchip_timer.c | 207 +++++++++++++++-----
4 files changed, 183 insertions(+), 55 deletions(-)
--
1.7.9.5
next reply other threads:[~2017-01-24 12:16 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-24 12:16 Alexander Kochetkov [this message]
2017-01-24 12:16 ` [PATCH v5 0/8] Implement clocksource for rockchip SoC using rockchip timer Alexander Kochetkov
2017-01-24 12:16 ` Alexander Kochetkov
2017-01-24 12:16 ` [PATCH v5 1/8] dt-bindings: clarify compatible property for rockchip timers Alexander Kochetkov
2017-01-24 12:16 ` Alexander Kochetkov
2017-01-24 12:16 ` Alexander Kochetkov
2017-01-24 12:16 ` [PATCH v5 2/8] ARM: dts: rockchip: update compatible property for rk322x timer Alexander Kochetkov
2017-01-24 12:16 ` Alexander Kochetkov
2017-01-24 12:16 ` [PATCH v5 3/8] ARM: dts: rockchip: add timer entries to rk3188 SoC Alexander Kochetkov
2017-01-24 12:16 ` Alexander Kochetkov
2017-01-30 11:04 ` Daniel Lezcano
2017-01-30 11:04 ` Daniel Lezcano
2017-01-30 11:04 ` Daniel Lezcano
2017-01-30 11:20 ` Alexander Kochetkov
2017-01-30 11:20 ` Alexander Kochetkov
2017-01-30 12:04 ` Daniel Lezcano
2017-01-30 12:04 ` Daniel Lezcano
2017-01-30 13:13 ` Alexander Kochetkov
2017-01-30 13:13 ` Alexander Kochetkov
2017-01-30 13:13 ` Alexander Kochetkov
2017-01-30 13:35 ` Daniel Lezcano
2017-01-30 13:35 ` Daniel Lezcano
2017-01-30 13:35 ` Daniel Lezcano
2017-01-24 12:16 ` [PATCH v5 4/8] ARM: dts: rockchip: disable arm-global-timer for rk3188 Alexander Kochetkov
2017-01-24 12:16 ` Alexander Kochetkov
2017-01-30 10:21 ` Daniel Lezcano
2017-01-30 10:21 ` Daniel Lezcano
2017-01-24 12:16 ` [PATCH v5 5/8] clocksource/drivers/rockchip_timer: split bc_timer into rk_timer and rk_clock_event_device Alexander Kochetkov
2017-01-24 12:16 ` Alexander Kochetkov
2017-01-24 12:16 ` Alexander Kochetkov
2017-01-24 15:02 ` Heiko Stübner
2017-01-24 15:02 ` Heiko Stübner
2017-01-24 15:02 ` Heiko Stübner
2017-01-24 15:16 ` Alexander Kochetkov
2017-01-24 15:16 ` Alexander Kochetkov
2017-01-24 15:16 ` Alexander Kochetkov
2017-01-29 20:30 ` Heiko Stuebner
2017-01-29 20:30 ` Heiko Stuebner
2017-01-29 20:30 ` Heiko Stuebner
2017-01-30 13:12 ` Daniel Lezcano
2017-01-30 13:12 ` Daniel Lezcano
2017-01-30 13:12 ` Daniel Lezcano
2017-01-30 13:55 ` Alexander Kochetkov
2017-01-30 13:55 ` Alexander Kochetkov
2017-01-30 13:55 ` Alexander Kochetkov
2017-01-30 14:20 ` Daniel Lezcano
2017-01-30 14:20 ` Daniel Lezcano
2017-01-30 14:20 ` Daniel Lezcano
2017-01-24 12:16 ` [PATCH v5 6/8] clocksource/drivers/rockchip_timer: low level routines take rk_timer as parameter Alexander Kochetkov
2017-01-24 12:16 ` Alexander Kochetkov
2017-01-24 12:16 ` [PATCH v5 7/8] clocksource/drivers/rockchip_timer: move TIMER_INT_UNMASK out of rk_timer_enable() Alexander Kochetkov
2017-01-24 12:16 ` Alexander Kochetkov
2017-01-24 12:16 ` [PATCH v5 8/8] clocksource/drivers/rockchip_timer: implement clocksource timer Alexander Kochetkov
2017-01-24 12:16 ` Alexander Kochetkov
2017-01-24 12:16 ` Alexander Kochetkov
2017-01-30 13:54 ` Daniel Lezcano
2017-01-30 13:54 ` Daniel Lezcano
2017-01-30 13:54 ` Daniel Lezcano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1485260203-14216-1-git-send-email-al.kochet@gmail.com \
--to=al.kochet@gmail.com \
--cc=daniel.lezcano@linaro.org \
--cc=devicetree@vger.kernel.org \
--cc=heiko@sntech.de \
--cc=huangtao@rock-chips.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=linux@armlinux.org.uk \
--cc=mark.rutland@arm.com \
--cc=robh+dt@kernel.org \
--cc=tglx@linutronix.de \
--cc=wxt@rock-chips.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.