diff options
author | Richard Purdie <richard@openedhand.com> | 2008-06-01 22:58:34 +0000 |
---|---|---|
committer | Richard Purdie <richard@openedhand.com> | 2008-06-01 22:58:34 +0000 |
commit | 47a464d97b88104c616d6ffb4a74245e43060f86 (patch) | |
tree | d28257ddc4e63b19b7c301ed66885d4fba9284ee /meta/packages/linux/linux-rp-2.6.24/pxa27x-resume.patch | |
parent | ecec2e582c809368f6e53ebf9c725195a7b80784 (diff) | |
download | openembedded-core-47a464d97b88104c616d6ffb4a74245e43060f86.tar.gz openembedded-core-47a464d97b88104c616d6ffb4a74245e43060f86.tar.bz2 openembedded-core-47a464d97b88104c616d6ffb4a74245e43060f86.tar.xz openembedded-core-47a464d97b88104c616d6ffb4a74245e43060f86.zip |
linux-rp-2.6.24: Add patches from OE.dev
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4570 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta/packages/linux/linux-rp-2.6.24/pxa27x-resume.patch')
-rw-r--r-- | meta/packages/linux/linux-rp-2.6.24/pxa27x-resume.patch | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/meta/packages/linux/linux-rp-2.6.24/pxa27x-resume.patch b/meta/packages/linux/linux-rp-2.6.24/pxa27x-resume.patch new file mode 100644 index 000000000..6447a0b10 --- /dev/null +++ b/meta/packages/linux/linux-rp-2.6.24/pxa27x-resume.patch @@ -0,0 +1,41 @@ +List: linux-arm-kernel +Subject: [PATCH] Fix PXA27x resume +From: Russell King - ARM Linux <linux@arm.linux.org.uk> +Date: 2008-01-21 13:53:31 +Message-ID: 20080121135331.GC30149@flint.arm.linux.org.uk +[Download message RAW] + +When PXA27x wakes up, tick_resume_oneshot() tries to set a timer +interrupt to occur immediately. Since PXA27x requires at least +MIN_OSCR_DELTA, this causes us to flag an error. + +tick_program_event() then increments the next event time by +min_delta_ns. However, by the time we get back to programming +the next event, the OSCR has incremented such that we fail again. +We repeatedly retry, but the OSCR is too fast for us - we never +catch up, so we never break out of the loop - resulting in us +never apparantly resuming. + +Fix this by doubling min_delta_ns. + +Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> + +diff --git a/arch/arm/mach-pxa/time.c b/arch/arm/mach-pxa/time.c +index ac0bbad..7b7c017 100644 +--- a/arch/arm/mach-pxa/time.c ++++ b/arch/arm/mach-pxa/time.c +@@ -169,7 +169,7 @@ static void __init pxa_timer_init(void) + ckevt_pxa_osmr0.max_delta_ns = + clockevent_delta2ns(0x7fffffff, &ckevt_pxa_osmr0); + ckevt_pxa_osmr0.min_delta_ns = +- clockevent_delta2ns(MIN_OSCR_DELTA, &ckevt_pxa_osmr0) + 1; ++ clockevent_delta2ns(MIN_OSCR_DELTA * 2, &ckevt_pxa_osmr0) + 1; + + cksrc_pxa_oscr0.mult = + clocksource_hz2mult(clock_tick_rate, cksrc_pxa_oscr0.shift); + +------------------------------------------------------------------- +List admin: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm-kernel +FAQ: http://www.arm.linux.org.uk/mailinglists/faq.php +Etiquette: http://www.arm.linux.org.uk/mailinglists/etiquette.php + |