From mboxrd@z Thu Jan 1 00:00:00 1970 From: daniel.lezcano@linaro.org (Daniel Lezcano) Date: Fri, 23 May 2014 12:22:04 +0200 Subject: [GIT PULL] clockevents: new material for 3.16 Message-ID: <537F214C.8000700@linaro.org> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi Thomas, Ingo, this time we have a big number of changes in the clockevents. There is a branch shared between Simon and I with two merges. The first merge was to pull the cmt,mtu changes from Laurent into the clockevents/cmt-mtu2-tmu-cleanups branch. Then this one has been merged in the clockevents/3.16. A bit later, a new fix on top of these changes has been provided and applied to clockevents/cmt-mtu2-tmu-cleanups with a second merge to clockevents/3.16. clockevents/cmt-mtu2-tmu-cleanups will stay there until the 3.16 is released. This pull request contains the following changes: * Laurent Pinchart did a lot of modifications to prepare the DT support. These modifications include a lot of cleanup (structure renaming, preparation to support multiple channel, kzalloc usage, ...) and then finishes to drop the old code to the new one. * Jingoo Han removed the dev_err when an allocation fails because this error is already given by the mm subsystems. * http://patchwork.ozlabs.org/patch/324158/ * [conflict resolved] kmalloc => kzalloc changes with cmt,tmu, mtu cleanups from Laurent Pinchard * Matthew Leach added the ARM global timer with vexpress, enabled the ARM global timer with the A5 and added the definition in the DT. He also fixed a invalid check when looking for an usable ARM global timer for A9 * Maxime Ripard added the support for AllWinner A31 for sun4i and made the timer reset optional through the DT * Stephen Boyd used the msm timer for the udelay * Uwe Kleine-K?nig fixed the non-standard 'compatible' binding for efm32 * Xiubo Li clarified the types for the clocksource_mmio_read* and added a new Flextimer Module (FTM) with its bindings * Yang Wei added the 'notrace' attribute to 'read_sched_clock' for the dw_apb_timer The following changes since commit 2779ac167b1a1bf8153dca9f3a141c6148c6b89f: timer_stats/doc: Fix /proc/timer_stats documentation (2014-05-04 20:46:32 +0200) are available in the git repository at: git://git.linaro.org/people/daniel.lezcano/linux.git clockevents/3.16 for you to fetch changes up to 2529c3a330797000d699d70c9a65b8525c6652de: clocksource: Add Freescale FlexTimer Module (FTM) timer support (2014-05-23 10:12:04 +0200) ---------------------------------------------------------------- Daniel Lezcano (3): Merge branch 'clockevents/cmt-mtu2-tmu-cleanups' into clockevents/3.16 Merge remote-tracking branch 'tip/timers/core/timers/core' into clockevents/3.16 Merge branch 'clockevents/cmt-mtu2-tmu-cleanups' into clockevents/3.16 Jingoo Han (4): clocksource: em_sti: Remove unnecessary OOM messages clocksource: sh_cmt: Remove unnecessary OOM messages clocksource: sh_mtu2: Remove unnecessary OOM messages clocksource: sh_tmu: Remove unnecessary OOM messages Laurent Pinchart (53): clocksource: sh_cmt: Use request_irq() instead of setup_irq() clocksource: sh_cmt: Split channel fields from sh_cmt_priv clocksource: sh_cmt: Rename struct sh_cmt_priv to sh_cmt_device clocksource: sh_cmt: Split channel setup to separate function clocksource: sh_cmt: Constify name argument to sh_cmt_register() clocksource: sh_cmt: Rename mapbase/mapbase_str to mapbase_ch/mapbase clocksource: sh_cmt: Add memory base to sh_cmt_channel structure clocksource: sh_cmt: Add index to struct sh_cmt_channel clocksource: sh_cmt: Replace kmalloc + memset with kzalloc clocksource: sh_cmt: Allocate channels dynamically clocksource: sh_cmt: Split static information from sh_cmt_device clocksource: sh_cmt: Replace hardcoded register values with macros clocksource: sh_cmt: Set cpumask to cpu_possible_mask clocksource: sh_cmt: Hardcode CMT clock event rating to 125 clocksource: sh_cmt: Hardcode CMT clock source rating to 125 clocksource: sh_cmt: Add support for multiple channels per device clocksource: sh_cmt: Rename clock to "fck" in the non-legacy case clocksource: sh_cmt: Remove FSF mail address from GPL notice clocksource: sh_cmt: Sort headers alphabetically clocksource: sh_cmt: Request IRQ for clock event device only clocksource: sh_tmu: Use request_irq() instead of setup_irq() clocksource: sh_tmu: Split channel fields from sh_tmu_priv clocksource: sh_tmu: Rename struct sh_tmu_priv to sh_tmu_device clocksource: sh_tmu: Split channel setup to separate function clocksource: sh_tmu: Constify name argument to sh_tmu_register() clocksource: sh_tmu: Add memory base to sh_tmu_channel structure clocksource: sh_tmu: Add index to struct sh_tmu_channel clocksource: sh_tmu: Replace kmalloc + memset with kzalloc clocksource: sh_tmu: Allocate channels dynamically clocksource: sh_tmu: Replace hardcoded register values with macros clocksource: sh_tmu: Hardcode TMU clock event and source ratings to 200 clocksource: sh_tmu: Add support for multiple channels per device clocksource: sh_tmu: Rename clock to "fck" in the non-legacy case clocksource: sh_tmu: Remove FSF mail address from GPL notice clocksource: sh_tmu: Sort headers alphabetically clocksource: sh_mtu2: Use request_irq() instead of setup_irq() clocksource: sh_mtu2: Turn sh_mtu2_priv fields into local variables clocksource: sh_mtu2: Split channel fields from sh_mtu2_priv clocksource: sh_mtu2: Rename struct sh_mtu2_priv to sh_mtu2_device clocksource: sh_mtu2: Split channel setup to separate function clocksource: sh_mtu2: Constify name argument to sh_mtu2_register() clocksource: sh_mtu2: Add memory base to sh_mtu2_channel structure clocksource: sh_mtu2: Add index to struct sh_mtu2_channel clocksource: sh_mtu2: Replace kmalloc + memset with kzalloc clocksource: sh_mtu2: Allocate channels dynamically clocksource: sh_mtu2: Replace hardcoded register values with macros clocksource: sh_mtu2: Set cpumask to cpu_possible_mask clocksource: sh_mtu2: Hardcode MTU2 clock event rating to 200 clocksource: sh_mtu2: Add support for multiple channels per device clocksource: sh_mtu2: Rename clock to "fck" in the non-legacy case clocksource: sh_mtu2: Remove FSF mail address from GPL notice clocksource: sh_mtu2: Sort headers alphabetically clocksource: sh_tmu: Fix channel IRQ retrieval in legacy case Matthew Leach (4): clocksource: arm_global_timer: Only check for unusable timer on A9 documentaion: DT: allow a A5 compatible string in global timer dts: ca5: add the global timer for the A5 KConfig: Vexpress: build the ARM_GLOBAL_TIMER with vexpress platform Maxime Ripard (2): clocksource: sun5i: Add support for reset controller ARM: sun6i: a31: Add support for the High Speed Timers Stephen Boyd (1): clocksource: qcom: Implement read_current_timer for udelay Uwe Kleine-K?nig (1): clocksource: efm32: use $vendor,$device scheme for compatible string Xiubo Li (5): clocksource: Fix type confusion for clocksource_mmio_readX_Y clocksource: Fix clocksource_mmio_readX_down clocksource: ftm: Add FlexTimer Module (FTM) Timer devicetree Documentation ARM: dts: vf610: Add Freescale FlexTimer Module timer node. clocksource: Add Freescale FlexTimer Module (FTM) timer support Yang Wei (1): clocksource: dw_apb_timer_of: Do not trace read_sched_clock .../devicetree/bindings/arm/global_timer.txt | 7 +- .../bindings/timer/allwinner,sun5i-a13-hstimer.txt | 4 + ...efm32,timer.txt => energymicro,efm32-timer.txt} | 4 +- .../devicetree/bindings/timer/fsl,ftm-timer.txt | 31 + arch/arm/boot/dts/sun6i-a31.dtsi | 11 + arch/arm/boot/dts/vexpress-v2p-ca5s.dts | 10 +- arch/arm/boot/dts/vf610.dtsi | 13 + arch/arm/mach-vexpress/Kconfig | 1 + drivers/clocksource/Kconfig | 5 + drivers/clocksource/Makefile | 1 + drivers/clocksource/arm_global_timer.c | 5 +- drivers/clocksource/dw_apb_timer_of.c | 2 +- drivers/clocksource/em_sti.c | 4 +- drivers/clocksource/fsl_ftm_timer.c | 367 ++++++++ drivers/clocksource/mmio.c | 8 +- drivers/clocksource/qcom-timer.c | 13 + drivers/clocksource/sh_cmt.c | 958 +++++++++++++------- drivers/clocksource/sh_mtu2.c | 490 +++++++--- drivers/clocksource/sh_tmu.c | 543 ++++++----- drivers/clocksource/time-efm32.c | 3 +- drivers/clocksource/timer-sun5i.c | 6 + include/linux/sh_timer.h | 1 + 22 files changed, 1785 insertions(+), 702 deletions(-) rename Documentation/devicetree/bindings/timer/{efm32,timer.txt => energymicro,efm32-timer.txt} (87%) create mode 100644 Documentation/devicetree/bindings/timer/fsl,ftm-timer.txt create mode 100644 drivers/clocksource/fsl_ftm_timer.c -- Linaro.org ? Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog