Message ID | 20190318121100.28132-1-brgl@bgdev.pl (mailing list archive) |
---|---|
Headers | show |
Series | ARM: davinci: modernize the timer support | expand |
Hi Daniel, Thomas, On 18/03/19 5:40 PM, Bartosz Golaszewski wrote: > From: Bartosz Golaszewski <bgolaszewski@baylibre.com> > > This series removes the legacy timer code from mach-davinci in favor of > a new clocksource driver it introduces. > > Patch 1 adds a new clocksource driver for davinci. > > Patch 2 enables the new driver for device-tree based systems. > > Patch 3 adds a WARN_ON() to the machine code of all davinci boards > which is triggered if clk_get() for the timer clock fails. This is needed > as the new driver expects the clock to be functional and doesn't check it. > > Patches 4-5 and 7-10 switch the board files to using the new > clocksource driver while patch 6 moves some necessary defines to > a different place since we'll be removing the file that contains them. > > Patch 11 removes legacy timer code. The series looks good to me. With your ack on 1/11, I would like to merge the series through ARM SoC tree. Thanks, Sekhar
Hi Sekhar, On 27/03/2019 16:36, Sekhar Nori wrote: > Hi Daniel, Thomas, > > On 18/03/19 5:40 PM, Bartosz Golaszewski wrote: >> From: Bartosz Golaszewski <bgolaszewski@baylibre.com> >> >> This series removes the legacy timer code from mach-davinci in favor of >> a new clocksource driver it introduces. >> >> Patch 1 adds a new clocksource driver for davinci. >> >> Patch 2 enables the new driver for device-tree based systems. >> >> Patch 3 adds a WARN_ON() to the machine code of all davinci boards >> which is triggered if clk_get() for the timer clock fails. This is needed >> as the new driver expects the clock to be functional and doesn't check it. >> >> Patches 4-5 and 7-10 switch the board files to using the new >> clocksource driver while patch 6 moves some necessary defines to >> a different place since we'll be removing the file that contains them. >> >> Patch 11 removes legacy timer code. > > The series looks good to me. With your ack on 1/11, I would like to > merge the series through ARM SoC tree. ok, will do the review asap. -- Daniel
From: Bartosz Golaszewski <bgolaszewski@baylibre.com> This series removes the legacy timer code from mach-davinci in favor of a new clocksource driver it introduces. Patch 1 adds a new clocksource driver for davinci. Patch 2 enables the new driver for device-tree based systems. Patch 3 adds a WARN_ON() to the machine code of all davinci boards which is triggered if clk_get() for the timer clock fails. This is needed as the new driver expects the clock to be functional and doesn't check it. Patches 4-5 and 7-10 switch the board files to using the new clocksource driver while patch 6 moves some necessary defines to a different place since we'll be removing the file that contains them. Patch 11 removes legacy timer code. v1 -> v2: - changed the license to GPL-only - dropped regmap usage due to the additional code paths making the code too slow - minor code rearrangement - fixed the da830 timer configuration - correctly assign the timer halves to clocksource and clockevent - sqashed the commits adding WARN() when clk_get() fails - used WARN_ON() and added a return when clk_get() fails to avoid entering the timer driver without a valid clock - request the register range before iomapping it - simplified the configuration structure (dropped the additional cmp struct) v2 -> v3: - use readl/writel_relaxed() instead of __raw variants in the clocksource driver - request the memory region before remapping it - add explanatory comments - fixed licensing - used pr_fmt macro - correctly assign the clocksource name - use DEFINE_RES_x macros when defining resources to avoid off-by-one bugs in resource's size - tweak the commit messages - don't delete the comments describing the timer usage - other minor improvements - rebased on top of Sekhar's soc branch - dropped patch fixing the clocksource interrupts in device tree (already upstream) v3 -> v4: - fixed formatting of error messages - fixed comments all around the place - rebased on top of v5.1-rc1 Bartosz Golaszewski (11): clocksource: davinci-timer: new driver ARM: davinci: enable the clocksource driver for DT mode ARM: davinci: WARN_ON() if clk_get() fails ARM: davinci: da850: switch to using the clocksource driver ARM: davinci: da830: switch to using the clocksource driver ARM: davinci: move timer definitions to davinci.h ARM: davinci: dm355: switch to using the clocksource driver ARM: davinci: dm365: switch to using the clocksource driver ARM: davinci: dm644x: switch to using the clocksource driver ARM: davinci: dm646x: switch to using the clocksource driver ARM: davinci: remove legacy timer support arch/arm/Kconfig | 1 + arch/arm/mach-davinci/Makefile | 3 +- arch/arm/mach-davinci/da830.c | 45 +- arch/arm/mach-davinci/da850.c | 50 +-- arch/arm/mach-davinci/davinci.h | 3 + arch/arm/mach-davinci/devices-da8xx.c | 1 - arch/arm/mach-davinci/devices.c | 19 - arch/arm/mach-davinci/dm355.c | 28 +- arch/arm/mach-davinci/dm365.c | 26 +- arch/arm/mach-davinci/dm644x.c | 28 +- arch/arm/mach-davinci/dm646x.c | 28 +- arch/arm/mach-davinci/include/mach/common.h | 17 - arch/arm/mach-davinci/include/mach/time.h | 35 -- arch/arm/mach-davinci/time.c | 414 ------------------ drivers/clocksource/Kconfig | 5 + drivers/clocksource/Makefile | 1 + drivers/clocksource/timer-davinci.c | 438 ++++++++++++++++++++ include/clocksource/timer-davinci.h | 44 ++ 18 files changed, 598 insertions(+), 588 deletions(-) delete mode 100644 arch/arm/mach-davinci/include/mach/time.h delete mode 100644 arch/arm/mach-davinci/time.c create mode 100644 drivers/clocksource/timer-davinci.c create mode 100644 include/clocksource/timer-davinci.h