- 12 3月, 2014 1 次提交
-
-
由 Soren Brinkmann 提交于
The timer core takes care of serialization and IRQs. Hence the driver is no longer required to disable interrupts when calling clockevents_update_freq(). Signed-off-by: NSoren Brinkmann <soren.brinkmann@xilinx.com> Signed-off-by: NDaniel Lezcano <daniel.lezcano@linaro.org> Acked-by: NMichal Simek <michal.simek@xilinx.com>
-
- 30 12月, 2013 1 次提交
-
-
由 Soren Brinkmann 提交于
When the kernel is compiled with: CONFIG_HIGH_RES_TIMERS=no CONFIG_HZ_PERIODIC=yes CONFIG_DEBUG_ATOMIC_SLEEP=yes The following WARN appears: WARNING: CPU: 1 PID: 0 at linux/kernel/mutex.c:856 mutex_trylock+0x70/0x1fc() DEBUG_LOCKS_WARN_ON(in_interrupt()) Modules linked in: CPU: 1 PID: 0 Comm: swapper/1 Not tainted 3.12.0-xilinx-dirty #93 [<c0014a78>] (unwind_backtrace+0x0/0x11c) from [<c0011b6c>] (show_stack+0x10/0x14) [<c0011b6c>] (show_stack+0x10/0x14) from [<c039120c>] (dump_stack+0x7c/0xc0) [<c039120c>] (dump_stack+0x7c/0xc0) from [<c001fda4>] (warn_slowpath_common+0x60/0x84) [<c001fda4>] (warn_slowpath_common+0x60/0x84) from [<c001fe48>] (warn_slowpath_fmt+0x2c/0x3c) [<c001fe48>] (warn_slowpath_fmt+0x2c/0x3c) from [<c0392658>] (mutex_trylock+0x70/0x1fc) [<c0392658>] (mutex_trylock+0x70/0x1fc) from [<c02dfc08>] (clk_prepare_lock+0xc/0xe4) [<c02dfc08>] (clk_prepare_lock+0xc/0xe4) from [<c02e099c>] (clk_get_rate+0xc/0x44) [<c02e099c>] (clk_get_rate+0xc/0x44) from [<c02d0394>] (ttc_set_mode+0x34/0x78) [<c02d0394>] (ttc_set_mode+0x34/0x78) from [<c005f794>] (clockevents_set_mode+0x28/0x5c) [<c005f794>] (clockevents_set_mode+0x28/0x5c) from [<c00607fc>] (tick_broadcast_on_off+0x190/0x1c0) [<c00607fc>] (tick_broadcast_on_off+0x190/0x1c0) from [<c005f168>] (clockevents_notify+0x58/0x1ac) [<c005f168>] (clockevents_notify+0x58/0x1ac) from [<c02b99dc>] (cpuidle_setup_broadcast_timer+0x20/0x24) [<c02b99dc>] (cpuidle_setup_broadcast_timer+0x20/0x24) from [<c006cd04>] (generic_smp_call_function_single_interrupt+0) [<c006cd04>] (generic_smp_call_function_single_interrupt+0xe0/0x130) from [<c00138c8>] (handle_IPI+0x88/0x118) [<c00138c8>] (handle_IPI+0x88/0x118) from [<c0008504>] (gic_handle_irq+0x58/0x60) [<c0008504>] (gic_handle_irq+0x58/0x60) from [<c0012644>] (__irq_svc+0x44/0x78) Exception stack(0xef099fa0 to 0xef099fe8) 9fa0: 00000001 ef092100 00000000 ef092100 ef098000 00000015 c0399f2c c0579d74 9fc0: 0000406a 413fc090 00000000 00000000 00000000 ef099fe8 c00666ec c000f46c 9fe0: 20000113 ffffffff [<c0012644>] (__irq_svc+0x44/0x78) from [<c000f46c>] (arch_cpu_idle+0x34/0x3c) [<c000f46c>] (arch_cpu_idle+0x34/0x3c) from [<c0053980>] (cpu_startup_entry+0xa8/0x10c) [<c0053980>] (cpu_startup_entry+0xa8/0x10c) from [<000085a4>] (0x85a4) We are in an interrupt context (IPI) and we are calling clk_get_rate in the set_mode function which in turn ends up by getting a mutex... Even if that does not hang, it is a potential kernel deadlock. It is not allowed to call clk_get_rate() from interrupt context. To avoid such calls the timer input frequency is stored in the driver's data struct which makes it accessible to the driver in any context. [dlezcano] completed the changelog with the WARN trace and added a more detailed description. Tested on zync zc702. Acked-by: NDaniel Lezcano <daniel.lezcano@linaro.org> Tested-by: NDaniel Lezcano <daniel.lezcano@linaro.org> Signed-off-by: NSoren Brinkmann <soren.brinkmann@xilinx.com> Signed-off-by: NDaniel Lezcano <daniel.lezcano@linaro.org>
-
- 11 12月, 2013 2 次提交
-
-
由 Michael Opdenacker 提交于
This patch removes the use of the IRQF_DISABLED flag It's a NOOP since 2.6.35 and it will be removed one day. [dlezcano] : slightly changed the changelog Signed-off-by: NMichael Opdenacker <michael.opdenacker@free-electrons.com> Signed-off-by: NDaniel Lezcano <daniel.lezcano@linaro.org>
-
由 Stephen Boyd 提交于
The 32 bit sched_clock interface now supports 64 bits. Upgrade to the 64 bit function to allow us to remove the 32 bit registration interface. Cc: Soren Brinkmann <soren.brinkmann@xilinx.com> Cc: Michal Simek <monstr@monstr.eu> Tested-by: NSoren Brinkmann <soren.brinkmann@xilinx.com> Signed-off-by: NStephen Boyd <sboyd@codeaurora.org> Signed-off-by: NDaniel Lezcano <daniel.lezcano@linaro.org>
-
- 18 7月, 2013 2 次提交
-
-
由 Soren Brinkmann 提交于
Reuse the TTC clocksource timer as sched clock provider. Signed-off-by: NSoren Brinkmann <soren.brinkmann@xilinx.com> Signed-off-by: NDaniel Lezcano <daniel.lezcano@linaro.org> Acked-by: NMichal Simek <monstr@monstr.eu>
-
由 Soren Brinkmann 提交于
The clk-provider.h header is not required by this driver. Signed-off-by: NSoren Brinkmann <soren.brinkmann@xilinx.com> Signed-off-by: NDaniel Lezcano <daniel.lezcano@linaro.org>
-
- 27 5月, 2013 1 次提交
-
-
由 Soren Brinkmann 提交于
Migrate the Zynq platform and its drivers to use the new clock controller driver. Signed-off-by: NSoren Brinkmann <soren.brinkmann@xilinx.com> Cc: John Stultz <john.stultz@linaro.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Jiri Slaby <jslaby@suse.cz> Cc: linux-serial@vger.kernel.org Signed-off-by: NMichal Simek <michal.simek@xilinx.com> Acked-by: NMike Turquette <mturquette@linaro.org>
-
- 04 4月, 2013 4 次提交
-
-
由 Michal Simek 提交于
Move zynq timer out of mach folder to generic location and enable it. Signed-off-by: NMichal Simek <michal.simek@xilinx.com>
-
由 Michal Simek 提交于
Remove all xilinx specific names from the driver because this is generic driver for cadence ttc. xttc->ttc ttcps->ttc ... No functional changes in this driver. Signed-off-by: NMichal Simek <michal.simek@xilinx.com>
-
由 Michal Simek 提交于
Use clocksource timer initialization. Signed-off-by: NMichal Simek <michal.simek@xilinx.com>
-
由 Michal Simek 提交于
Use cdns,ttc because this driver is Cadence Rev06 Triple Timer Counter and everybody can use it without xilinx specific function name or probing. Also use standard dt description for timer and also prepare for moving to clocksource initialization. Signed-off-by: NMichal Simek <michal.simek@xilinx.com>
-
- 28 1月, 2013 7 次提交
-
-
由 Soren Brinkmann 提交于
The timers are common to both A9 cores, so let's set the clock event struct's cpumask accordingly, to all possible CPUs. Signed-off-by: NSoren Brinkmann <soren.brinkmann@xilinx.com> Tested-by: NJosh Cartwright <josh.cartwright@ni.com>
-
由 Soren Brinkmann 提交于
Fixing multi line comment style at two locations. Signed-off-by: NSoren Brinkmann <soren.brinkmann@xilinx.com> Tested-by: NJosh Cartwright <josh.cartwright@ni.com>
-
由 Soren Brinkmann 提交于
Some #includes are implicitly included through others, some are just not needed. Signed-off-by: NSoren Brinkmann <soren.brinkmann@xilinx.com> Tested-by: NJosh Cartwright <josh.cartwright@ni.com>
-
由 Soren Brinkmann 提交于
Aligning the columns in a block of #defines, so that the values are starting in the same colum on every line. Signed-off-by: NSoren Brinkmann <soren.brinkmann@xilinx.com> Tested-by: NJosh Cartwright <josh.cartwright@ni.com>
-
由 Soren Brinkmann 提交于
Signed-off-by: NSoren Brinkmann <soren.brinkmann@xilinx.com> Acked-by: NMichal Simek <michal.simek@xilinx.com> Acked-by: NJohn Linn <john.linn@xilinx.com> Tested-by: NJosh Cartwright <josh.cartwright@ni.com>
-
由 Soren Brinkmann 提交于
Acknowedging an interrupt requires to read the interrupt register only. The write was only required to work around a bug in the QEMU implementation of the TTC, which is fixed. Signed-off-by: NSoren Brinkmann <soren.brinkmann@xilinx.com> Acked-by: NPeter Crosthwaite <peter.crosthwaite@xilinx.com> Tested-by: NJosh Cartwright <josh.cartwright@ni.com>
-
由 Soren Brinkmann 提交于
The acronym PSS is deprecated by Xilinx. The correct term, which is also used in Xilinx documentation is PS (processing system). This is just a search and replace: - s/PSS/PS/g - s/pss/ps/g Signed-off-by: NSoren Brinkmann <soren.brinkmann@xilinx.com> Tested-by: NJosh Cartwright <josh.cartwright@ni.com>
-
- 21 11月, 2012 1 次提交
-
-
由 Josh Cartwright 提交于
Now that the TTC driver has proper support for DT bindings, it is not necessary for the registers to be mapped early. They will be mapped during clock initialization using of_iomap(). Remove the early mapping. In addition, remove the extraneous zynq_soc.h include from the timer driver. Signed-off-by: NJosh Cartwright <josh.cartwright@ni.com> Tested-by: NMichal Simek <michal.simek@xilinx.com>
-
- 14 11月, 2012 1 次提交
-
-
由 Josh Cartwright 提交于
Add support for retrieving TTC configuration from device tree. This includes the ability to pull information about the driving clocks from the of_clk bindings. Signed-off-by: NJosh Cartwright <josh.cartwright@ni.com> Acked-by: NMichal Simek <michal.simek@xilinx.com>
-
- 05 11月, 2012 1 次提交
-
-
由 Josh Cartwright 提交于
Move the sys_timer definition out of ttc driver and make it part of the common zynq code. This is preparation for renaming and COMMON_CLK support. Signed-off-by: NJosh Cartwright <josh.cartwright@ni.com> Tested-by: NMichal Simek <michal.simek@xilinx.com>
-
- 21 6月, 2011 1 次提交
-
-
由 John Linn 提交于
The 1st board support is minimal to get a system up and running on the Xilinx platform. This platform reuses the clock implementation from plat-versatile, and it depends entirely on CONFIG_OF support. There is only one board support file which obtains all device information from a device tree dtb file which is passed to the kernel at boot time. Signed-off-by: NJohn Linn <john.linn@xilinx.com>
-