diff --git a/arch/arm/mach-picoxcell/time.c b/drivers/clocksource/dw_apb_timer_of.csimilarity index 60%rename from arch/arm/mach-picoxcell/time.crename to drivers/clocksource/dw_apb_timer_of.cindex 2ecba67..83bd997 100644--- a/arch/arm/mach-picoxcell/time.c+++ b/drivers/clocksource/dw_apb_timer_of.c
Hi,
On Tue, Jul 10, 2012 at 04:39:40PM -0500, dinguyen at altera.com wrote:
quoted hunk
From: Dinh Nguyen <redacted>
Make a common device tree glue for clocksource/dw_apb_timer.
Move mach-picoxcell/time.c to be a generic device tree application
of the dw_apb_timer.
Signed-off-by: Pavel Machek <redacted>
Signed-off-by: Dinh Nguyen <redacted>
---
Documentation/devicetree/bindings/rtc/dw-apb.txt | 24 ++++++++++
arch/arm/Kconfig | 1 +
drivers/clocksource/Kconfig | 3 ++
drivers/clocksource/Makefile | 1 +
.../clocksource/dw_apb_timer_of.c | 49 +++++++++++---------
5 files changed, 57 insertions(+), 21 deletions(-)
create mode 100644 Documentation/devicetree/bindings/rtc/dw-apb.txt
rename arch/arm/mach-picoxcell/time.c => drivers/clocksource/dw_apb_timer_of.c (60%)
diff --git a/arch/arm/mach-picoxcell/time.c
b/drivers/clocksource/dw_apb_timer_of.c
similarity index 60%
rename from arch/arm/mach-picoxcell/time.c
rename to drivers/clocksource/dw_apb_timer_of.c
index 2ecba67..83bd997 100644
The same here. Also, I'm not sure that the split of these patches is
correct - there isn't any bisectability here as you remove the timer in
this patch but picoxcell won't build. I think squashing these 2 patches
is fine.
I can't test on hardware right now, but with those changes:
Acked-by: Jamie Iles <redacted>
Jamie
@@ -0,0 +1,24 @@+* Designware APB timer++Required properties:+- compatible: "snps,dw-apb-timer-sp" or "snps,dw-apb-timer-osc"+- reg: physical base address of the controller and length of memory mapped+ region.+- interrupts: IRQ line for the timer.+- clock-freq: The frequency in HZ of the timer.
diff --git a/arch/arm/mach-picoxcell/time.c b/drivers/clocksource/dw_apb_timer_of.csimilarity index 60%rename from arch/arm/mach-picoxcell/time.crename to drivers/clocksource/dw_apb_timer_of.cindex 2ecba67..83bd997 100644--- a/arch/arm/mach-picoxcell/time.c+++ b/drivers/clocksource/dw_apb_timer_of.c
On Wed, 2012-07-11 at 00:15 +0100, Jamie Iles wrote:
Hi,
On Tue, Jul 10, 2012 at 04:39:40PM -0500, dinguyen at altera.com wrote:
quoted
From: Dinh Nguyen <redacted>
Make a common device tree glue for clocksource/dw_apb_timer.
Move mach-picoxcell/time.c to be a generic device tree application
of the dw_apb_timer.
Signed-off-by: Pavel Machek <redacted>
Signed-off-by: Dinh Nguyen <redacted>
---
Documentation/devicetree/bindings/rtc/dw-apb.txt | 24 ++++++++++
arch/arm/Kconfig | 1 +
drivers/clocksource/Kconfig | 3 ++
drivers/clocksource/Makefile | 1 +
.../clocksource/dw_apb_timer_of.c | 49 +++++++++++---------
5 files changed, 57 insertions(+), 21 deletions(-)
create mode 100644 Documentation/devicetree/bindings/rtc/dw-apb.txt
rename arch/arm/mach-picoxcell/time.c => drivers/clocksource/dw_apb_timer_of.c (60%)
diff --git a/arch/arm/mach-picoxcell/time.c
b/drivers/clocksource/dw_apb_timer_of.c
similarity index 60%
rename from arch/arm/mach-picoxcell/time.c
rename to drivers/clocksource/dw_apb_timer_of.c
index 2ecba67..83bd997 100644
The same here. Also, I'm not sure that the split of these patches is
correct - there isn't any bisectability here as you remove the timer in
this patch but picoxcell won't build. I think squashing these 2 patches
is fine.
Will do...thanks for the review.
Dinh
I can't test on hardware right now, but with those changes:
Acked-by: Jamie Iles <redacted>
Jamie
@@ -0,0 +1,24 @@+* Designware APB timer++Required properties:+- compatible: "snps,dw-apb-timer-sp" or "snps,dw-apb-timer-osc"+- reg: physical base address of the controller and length of memory mapped+ region.+- interrupts: IRQ line for the timer.+- clock-freq: The frequency in HZ of the timer.
diff --git a/arch/arm/mach-picoxcell/time.c b/drivers/clocksource/dw_apb_timer_of.csimilarity index 60%rename from arch/arm/mach-picoxcell/time.crename to drivers/clocksource/dw_apb_timer_of.cindex 2ecba67..83bd997 100644--- a/arch/arm/mach-picoxcell/time.c+++ b/drivers/clocksource/dw_apb_timer_of.c
@@ -67,55 +74,55 @@ static void picoxcell_add_clocksource(struct device_node *source_timer)staticvoid__iomem*sched_io_base;-staticu32picoxcell_read_sched_clock(void)+staticu32read_sched_clock(void){return__raw_readl(sched_io_base);}-staticconststructof_device_idpicoxcell_rtc_ids[]__initconst={-{.compatible="picochip,pc3x2-rtc"},+staticconststructof_device_idsptimer_ids[]__initconst={+{.compatible="snps,dw-apb-timer-sp"},{/* Sentinel */},};-staticvoidpicoxcell_init_sched_clock(void)+staticvoidinit_sched_clock(void){structdevice_node*sched_timer;u32rate;-sched_timer=of_find_matching_node(NULL,picoxcell_rtc_ids);+sched_timer=of_find_matching_node(NULL,sptimer_ids);if(!sched_timer)panic("No RTC for sched clock to use");timer_get_base_and_rate(sched_timer,&sched_io_base,&rate);of_node_put(sched_timer);-setup_sched_clock(picoxcell_read_sched_clock,32,rate);+setup_sched_clock(read_sched_clock,32,rate);}-staticconststructof_device_idpicoxcell_timer_ids[]__initconst={-{.compatible="picochip,pc3x2-timer"},+staticconststructof_device_idosctimer_ids[]__initconst={+{.compatible="snps,dw-apb-timer-osc"},{},};-staticvoid__initpicoxcell_timer_init(void)+staticvoid__inittimer_init(void){structdevice_node*event_timer,*source_timer;-event_timer=of_find_matching_node(NULL,picoxcell_timer_ids);+event_timer=of_find_matching_node(NULL,osctimer_ids);if(!event_timer)panic("No timer for clockevent");-picoxcell_add_clockevent(event_timer);+add_clockevent(event_timer);-source_timer=of_find_matching_node(event_timer,picoxcell_timer_ids);+source_timer=of_find_matching_node(event_timer,osctimer_ids);if(!source_timer)panic("No timer for clocksource");-picoxcell_add_clocksource(source_timer);+add_clocksource(source_timer);of_node_put(source_timer);-picoxcell_init_sched_clock();+init_sched_clock();}-structsys_timerpicoxcell_timer={-.init=picoxcell_timer_init,+structsys_timerdw_apb_timer={+.init=timer_init,};
Confidentiality Notice.
This message may contain information that is confidential or otherwise protected from disclosure. If you are not the intended recipient, you are hereby notified that any use, disclosure, dissemination, distribution, or copying of this message, or any attachments, is strictly prohibited. If you have received this message in error, please advise the sender by reply e-mail, and delete the message and any attachments. Thank you.
Please keep picochip,pc3x2-rtc in the compatible list otherwise we won't
boot any more.
Should I add another .compatible entry here, or make the change in
picoxcell-pc3x2 and picoxcell-pc3x3 dtsi files?
I think that adding another compatible entry is the right thing to do
here - it avoids churn of the dtsi files and means that the compiled
device-tree blobs on deployed devices won't need updating.
Jamie
Please keep picochip,pc3x2-rtc in the compatible list otherwise we won't
boot any more.
Should I add another .compatible entry here, or make the change in
picoxcell-pc3x2 and picoxcell-pc3x3 dtsi files?
I think that adding another compatible entry is the right thing to do
here - it avoids churn of the dtsi files and means that the compiled
device-tree blobs on deployed devices won't need updating.
Please keep picochip,pc3x2-rtc in the compatible list otherwise we won't
boot any more.
Should I add another .compatible entry here, or make the change in
picoxcell-pc3x2 and picoxcell-pc3x3 dtsi files?
I think that adding another compatible entry is the right thing to do
here - it avoids churn of the dtsi files and means that the compiled
device-tree blobs on deployed devices won't need updating.
Rob requested making "-freq" -> "-frequency" change, which will make
it incompatible.
I think everyone uses -frequency. Just realized that I need up send out
a v4.
Because this is wrong:
if (of_property_read_u32(np, "clock-freq", rate))
Dinh
Shall we:
a) drop all the compatibility
b) make it parse both "-freq" and "-freqency" and both sets of ids
?
Thanks,
Pavel
Confidentiality Notice.
This message may contain information that is confidential or otherwise protected from disclosure. If you are not the intended recipient, you are hereby notified that any use, disclosure, dissemination, distribution, or copying of this message, or any attachments, is strictly prohibited. If you have received this message in error, please advise the sender by reply e-mail, and delete the message and any attachments. Thank you.