diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-06 16:18:29 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-06 16:18:29 -0400 |
commit | b62ad9ab181a67207a4c8c373461b587c4861a68 (patch) | |
tree | ace1572964d81f5f9bbc10b7960c1f742832d744 /drivers | |
parent | af390084359a5de20046c901529b2b6a50b941cb (diff) | |
parent | b29230769e3482bbd62a07d6d9485371ee66a18f (diff) |
Merge branch 'timers-timekeeping-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'timers-timekeeping-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
um: Fix read_persistent_clock fallout
kgdb: Do not access xtime directly
powerpc: Clean up obsolete code relating to decrementer and timebase
powerpc: Rework VDSO gettimeofday to prevent time going backwards
clocksource: Add __clocksource_updatefreq_hz/khz methods
x86: Convert common clocksources to use clocksource_register_hz/khz
timekeeping: Make xtime and wall_to_monotonic static
hrtimer: Cleanup direct access to wall_to_monotonic
um: Convert to use read_persistent_clock
timkeeping: Fix update_vsyscall to provide wall_to_monotonic offset
powerpc: Cleanup xtime usage
powerpc: Simplify update_vsyscall
time: Kill off CONFIG_GENERIC_TIME
time: Implement timespec_add
x86: Fix vtime/file timestamp inconsistencies
Trivial conflicts in Documentation/feature-removal-schedule.txt
Much less trivial conflicts in arch/powerpc/kernel/time.c resolved as
per Thomas' earlier merge commit 47916be4e28c ("Merge branch
'powerpc.cherry-picks' into timers/clocksource")
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/Makefile | 4 | ||||
-rw-r--r-- | drivers/acpi/acpi_pad.c | 2 | ||||
-rw-r--r-- | drivers/acpi/processor_idle.c | 2 | ||||
-rw-r--r-- | drivers/clocksource/acpi_pm.c | 9 | ||||
-rw-r--r-- | drivers/misc/Kconfig | 4 |
5 files changed, 9 insertions, 12 deletions
diff --git a/drivers/Makefile b/drivers/Makefile index 91874e048552..ae473445ad6d 100644 --- a/drivers/Makefile +++ b/drivers/Makefile | |||
@@ -101,7 +101,9 @@ obj-y += firmware/ | |||
101 | obj-$(CONFIG_CRYPTO) += crypto/ | 101 | obj-$(CONFIG_CRYPTO) += crypto/ |
102 | obj-$(CONFIG_SUPERH) += sh/ | 102 | obj-$(CONFIG_SUPERH) += sh/ |
103 | obj-$(CONFIG_ARCH_SHMOBILE) += sh/ | 103 | obj-$(CONFIG_ARCH_SHMOBILE) += sh/ |
104 | obj-$(CONFIG_GENERIC_TIME) += clocksource/ | 104 | ifndef CONFIG_ARCH_USES_GETTIMEOFFSET |
105 | obj-y += clocksource/ | ||
106 | endif | ||
105 | obj-$(CONFIG_DMA_ENGINE) += dma/ | 107 | obj-$(CONFIG_DMA_ENGINE) += dma/ |
106 | obj-$(CONFIG_DCA) += dca/ | 108 | obj-$(CONFIG_DCA) += dca/ |
107 | obj-$(CONFIG_HID) += hid/ | 109 | obj-$(CONFIG_HID) += hid/ |
diff --git a/drivers/acpi/acpi_pad.c b/drivers/acpi/acpi_pad.c index 446aced33aff..b76848c80be3 100644 --- a/drivers/acpi/acpi_pad.c +++ b/drivers/acpi/acpi_pad.c | |||
@@ -77,7 +77,7 @@ static void power_saving_mwait_init(void) | |||
77 | power_saving_mwait_eax = (highest_cstate << MWAIT_SUBSTATE_SIZE) | | 77 | power_saving_mwait_eax = (highest_cstate << MWAIT_SUBSTATE_SIZE) | |
78 | (highest_subcstate - 1); | 78 | (highest_subcstate - 1); |
79 | 79 | ||
80 | #if defined(CONFIG_GENERIC_TIME) && defined(CONFIG_X86) | 80 | #if defined(CONFIG_X86) |
81 | switch (boot_cpu_data.x86_vendor) { | 81 | switch (boot_cpu_data.x86_vendor) { |
82 | case X86_VENDOR_AMD: | 82 | case X86_VENDOR_AMD: |
83 | case X86_VENDOR_INTEL: | 83 | case X86_VENDOR_INTEL: |
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c index eead3f581fb5..b4c2f3bdadeb 100644 --- a/drivers/acpi/processor_idle.c +++ b/drivers/acpi/processor_idle.c | |||
@@ -264,7 +264,7 @@ int acpi_processor_resume(struct acpi_device * device) | |||
264 | return 0; | 264 | return 0; |
265 | } | 265 | } |
266 | 266 | ||
267 | #if defined (CONFIG_GENERIC_TIME) && defined (CONFIG_X86) | 267 | #if defined(CONFIG_X86) |
268 | static void tsc_check_state(int state) | 268 | static void tsc_check_state(int state) |
269 | { | 269 | { |
270 | switch (boot_cpu_data.x86_vendor) { | 270 | switch (boot_cpu_data.x86_vendor) { |
diff --git a/drivers/clocksource/acpi_pm.c b/drivers/clocksource/acpi_pm.c index 72a633a6ec98..cfb0f5278415 100644 --- a/drivers/clocksource/acpi_pm.c +++ b/drivers/clocksource/acpi_pm.c | |||
@@ -68,10 +68,7 @@ static struct clocksource clocksource_acpi_pm = { | |||
68 | .rating = 200, | 68 | .rating = 200, |
69 | .read = acpi_pm_read, | 69 | .read = acpi_pm_read, |
70 | .mask = (cycle_t)ACPI_PM_MASK, | 70 | .mask = (cycle_t)ACPI_PM_MASK, |
71 | .mult = 0, /*to be calculated*/ | ||
72 | .shift = 22, | ||
73 | .flags = CLOCK_SOURCE_IS_CONTINUOUS, | 71 | .flags = CLOCK_SOURCE_IS_CONTINUOUS, |
74 | |||
75 | }; | 72 | }; |
76 | 73 | ||
77 | 74 | ||
@@ -190,9 +187,6 @@ static int __init init_acpi_pm_clocksource(void) | |||
190 | if (!pmtmr_ioport) | 187 | if (!pmtmr_ioport) |
191 | return -ENODEV; | 188 | return -ENODEV; |
192 | 189 | ||
193 | clocksource_acpi_pm.mult = clocksource_hz2mult(PMTMR_TICKS_PER_SEC, | ||
194 | clocksource_acpi_pm.shift); | ||
195 | |||
196 | /* "verify" this timing source: */ | 190 | /* "verify" this timing source: */ |
197 | for (j = 0; j < ACPI_PM_MONOTONICITY_CHECKS; j++) { | 191 | for (j = 0; j < ACPI_PM_MONOTONICITY_CHECKS; j++) { |
198 | udelay(100 * j); | 192 | udelay(100 * j); |
@@ -220,7 +214,8 @@ static int __init init_acpi_pm_clocksource(void) | |||
220 | if (verify_pmtmr_rate() != 0) | 214 | if (verify_pmtmr_rate() != 0) |
221 | return -ENODEV; | 215 | return -ENODEV; |
222 | 216 | ||
223 | return clocksource_register(&clocksource_acpi_pm); | 217 | return clocksource_register_hz(&clocksource_acpi_pm, |
218 | PMTMR_TICKS_PER_SEC); | ||
224 | } | 219 | } |
225 | 220 | ||
226 | /* We use fs_initcall because we want the PCI fixups to have run | 221 | /* We use fs_initcall because we want the PCI fixups to have run |
diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig index 9b089dfb173e..488f25472291 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig | |||
@@ -72,7 +72,7 @@ config ATMEL_TCLIB | |||
72 | 72 | ||
73 | config ATMEL_TCB_CLKSRC | 73 | config ATMEL_TCB_CLKSRC |
74 | bool "TC Block Clocksource" | 74 | bool "TC Block Clocksource" |
75 | depends on ATMEL_TCLIB && GENERIC_TIME | 75 | depends on ATMEL_TCLIB |
76 | default y | 76 | default y |
77 | help | 77 | help |
78 | Select this to get a high precision clocksource based on a | 78 | Select this to get a high precision clocksource based on a |
@@ -240,7 +240,7 @@ config CS5535_MFGPT_DEFAULT_IRQ | |||
240 | 240 | ||
241 | config CS5535_CLOCK_EVENT_SRC | 241 | config CS5535_CLOCK_EVENT_SRC |
242 | tristate "CS5535/CS5536 high-res timer (MFGPT) events" | 242 | tristate "CS5535/CS5536 high-res timer (MFGPT) events" |
243 | depends on GENERIC_TIME && GENERIC_CLOCKEVENTS && CS5535_MFGPT | 243 | depends on GENERIC_CLOCKEVENTS && CS5535_MFGPT |
244 | help | 244 | help |
245 | This driver provides a clock event source based on the MFGPT | 245 | This driver provides a clock event source based on the MFGPT |
246 | timer(s) in the CS5535 and CS5536 companion chips. | 246 | timer(s) in the CS5535 and CS5536 companion chips. |