[PATCH] Dyn-tick support for S3C24xx (hack).
andy at openmoko.com
Mon Jun 30 10:01:24 CEST 2008
-----BEGIN PGP SIGNED MESSAGE-----
Somebody in the thread at some point said:
First of all, nice work!
| Yesterday I played with Intel's powertop on the Neo and noticed we
| generate 300+ wake-ups per second. It told me to enable CONFIG_NO_HZ
| for better results, so I went there and it was enabled
| (CONFIG_NO_IDLE_HZ on ARM), but it turns out the option doesn't do
| anything except on the OMAPs and Intel Xscale (and x86). I then trie
| dyn-ticks on ARM is enabled by passing "dyntick=enable" in the boot
| parameters or running
| # echo 1 > /sys/devices/system/timer/timer0/dyn_tick
| (also lets you switch back to HZ mode later).
When I enable this, it destroys resume.
You may have been a bit too fast snipping this kind of thing without
testing for consequences from the dire warnings left by previous
travellers in this land:
- -/* ooh a nasty situation arises if we try to call s3c2410_timer_setup()
- - * the resume handler. It is called in atomic context but the clock APIs
- - * try to lock a mutex which may sleep. We are in a bit of an unusual
- - * situation because we don't have a tick source right now, but it
- - * okay to try to schedule a work item... hopefully
- - */
- -static void s3c2410_timer_resume_atomic(void)
- - int ret = schedule_work(&resume_work);
- - if (!ret)
- - printk(KERN_INFO"Failed to schedule_work tick ctr (%d)\n", ret);
| 91.8% ( 99.7) <interrupt> : lis302dl
neod has these open its whole life not doing anything with the the bulk
or all of the time. If neod just opened /dev/input/event2 & 3 when it
had a use for them, that would certainly be a big powersaving all by itself.
Anyway maybe take a look at the resume situation if you enable the dynticks?
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org
-----END PGP SIGNATURE-----
More information about the openmoko-kernel