> The reason of stall is that ARM Global timer loses its contexts during > System suspend: > GT_CONTROL.TIMER_ENABLE = 0 (unbanked) > GT_COUNTERx = 0 > > Hence, update ARM Global timer driver to reflect above behaviour > - re-enable ARM Global timer on resume (GT_CONTROL.TIMER_ENA...
create mode 100644 drivers/clocksource/arm_global_timer.c diff --git a/Documentation/devicetree/bindings/arm/global_timer.txt b/Documentation/devicetree/bindings/arm/global_timer.txt new file mode 100644 index 0000000..b64abac --- /dev/null +++ b/Documentation/devicetree/bindings/arm/global_time...
+ select ARM_GLOBAL_TIMER if !CPU_FREQ 2) updated ARM GT driver and don't register clocksource device if CPUFreq is enabled Both options will not work: 1) ARM_GLOBAL_TIMER will be selected if any other SoC in multiplatform build will select ARM_GLOBAL_TIMER 2) clocksource device will ne...
>> +static int __cpuinit gt_clockevents_init(struct clock_event_device *clk) >> +{ >> + struct clock_event_device **this_cpu_clk; >> + int cpu = smp_processor_id(); >> + >> + clk->name = "ARM global timer clock event"; >> + clk->features = CLOCK_EVT_FEAT_PERIODIC |...
timer2 arm_global_timer 32k_counter / # echo 32k_counter > /sys/devices/system/clocksource/clocksource0/current_cloc ksource [ 102.194313] Unhandled fault: imprecise external abort (0x1406) at 0x0020ab5c [ 102.197862] pgd = ee22c000
+ select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK if ARM_GLOBAL_TIMER +1 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info athttp://vger.kernel.org/majordomo-info.html...
> Doing this is not adding any value to the driver, because > 1. Currently the driver only support DT boot paths, in my previous RFC > patches, Arnd suggested to get rid of the header as all platforms are DT > now. In that case why do you have the separate global_timer_init() ...
>> 1. Currently the driver only support DT boot paths, in my previous RFC >> patches, Arnd suggested to get rid of the header as all platforms are DT >> now. > > In that case why do you have the separate global_timer_init() ...
> + clk->name = "ARM global timer clock event"; > + clk->features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT; > + clk->set_mode = gt_clockevent_set_mode; > + clk->set_next_event = gt_clockevent_set_next_event; ...
Doing this is not adding any value to the driver, because 1. Currently the driver only support DT boot paths, in my previous RFC patches, Arnd suggested to get rid of the header as all platforms are DT now. 2. Passing device_node around is not adding any value w.r.t reducing ...