From mboxrd@z Thu Jan 1 00:00:00 1970 From: dinguyen@altera.com (Dinh Nguyen) Date: Wed, 11 Jul 2012 14:35:58 -0500 Subject: [PATCH v3] clocksource: dw_apb_timer: Add common DTS glue for dw_apb_timer In-Reply-To: <4FFDB9EA.3000902@gmail.com> References: <1342023144-13945-1-git-send-email-dinguyen@altera.com> <20120711162058.GA28067@elf.ucw.cz> <4FFDB9EA.3000902@gmail.com> Message-ID: <1342035358.17025.3.camel@dinguyen-VirtualBox> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Wed, 2012-07-11 at 12:37 -0500, Rob Herring wrote: > On 07/11/2012 11:20 AM, Pavel Machek wrote: > > Hi! > > > >> 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. > >> > >> Configure mach-picoxcell to use the dw_apb_timer_of device tree > >> implementation in drivers/clocksource. > >> > >> Signed-off-by: Pavel Machek > >> Signed-off-by: Dinh Nguyen > >> Acked-by: Jamie Iles > > > > Ok, this is getting complex. > > > >> --- /dev/null > >> +++ b/Documentation/devicetree/bindings/rtc/dw-apb.txt > >> @@ -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-frequency: The frequency in HZ of the timer. > > > > I know device-tree maintainers requested -freq -> -frequency, > >> --- a/arch/arm/mach-picoxcell/time.c > >> +++ b/drivers/clocksource/dw_apb_timer_of.c > > > > But then this will need updating to accept "-frequency", > > > >> -static const struct of_device_id picoxcell_timer_ids[] __initconst = { > >> +static const struct of_device_id osctimer_ids[] __initconst = { > >> { .compatible = "picochip,pc3x2-timer" }, > >> + { .compatible = "snps,dw-apb-timer-osc" }, > >> {}, > >> }; > > > > and dts will need to be updated, anyway, so we could update > > "picochip,pc3x2-timer" -> "snps,dw-apb-timer-osc" as well, right? > > > > Alternatively, we could just keep using "-freq".... > > > > Or am I overlooking something? > > If picoxcell is already using "-freq", then yes, you'll have to keep it > for compatibility. You have to assume that a dtb cannot be changed. So just to be sure, since we don't want to create churn in the dts files. Only picoxcell is using clock-freq, so to keep compatibility, something like this should be done: - if (of_property_read_u32(np, "clock-freq", rate)) + if (of_property_read_u32(np, "clock-freq", rate) && + of_property_read_u32(np, "clock-frequency", rate)) panic("No clock-frequency property for %s", np->name); Going forward, platforms that use the dq_apb_timer should use clock-frequency? Thanks, Dinh > > Rob >