diff options
author | Linus Torvalds <torvalds@woody.osdl.org> | 2006-12-22 21:46:56 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.osdl.org> | 2006-12-22 21:46:56 -0500 |
commit | 18ed1c051317ac3a685120cead2adb192b802347 (patch) | |
tree | c08a9147119a6cb69114166c7107f6b0bba6e2ab /arch | |
parent | dab6df63086762629936e8b89a5984bae39724f6 (diff) | |
parent | 36bcbec7ce21e2e8b3143b11a05747330abeca70 (diff) |
Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6
* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (68 commits)
ACPI: replace kmalloc+memset with kzalloc
ACPI: Add support for acpi_load_table/acpi_unload_table_id
fbdev: update after backlight argument change
ACPI: video: Add dev argument for backlight_device_register
ACPI: Implement acpi_video_get_next_level()
ACPI: Kconfig - depend on PM rather than selecting it
ACPI: fix NULL check in drivers/acpi/osl.c
ACPI: make drivers/acpi/ec.c:ec_ecdt static
ACPI: prevent processor module from loading on failures
ACPI: fix single linked list manipulation
ACPI: ibm_acpi: allow clean removal
ACPI: fix git automerge failure
ACPI: ibm_acpi: respond to workqueue update
ACPI: dock: add uevent to indicate change in device status
ACPI: ec: Lindent once again
ACPI: ec: Change #define to enums there possible.
ACPI: ec: Style changes.
ACPI: ec: Acquire Global Lock under EC mutex.
ACPI: ec: Drop udelay() from poll mode. Loop by reading status field instead.
ACPI: ec: Rename gpe_bit to gpe
...
Diffstat (limited to 'arch')
-rw-r--r-- | arch/i386/kernel/acpi/boot.c | 22 | ||||
-rw-r--r-- | arch/ia64/kernel/cpufreq/acpi-cpufreq.c | 4 |
2 files changed, 23 insertions, 3 deletions
diff --git a/arch/i386/kernel/acpi/boot.c b/arch/i386/kernel/acpi/boot.c index c8f96cff07c6..094300b3a81f 100644 --- a/arch/i386/kernel/acpi/boot.c +++ b/arch/i386/kernel/acpi/boot.c | |||
@@ -1327,3 +1327,25 @@ static int __init setup_acpi_sci(char *s) | |||
1327 | return 0; | 1327 | return 0; |
1328 | } | 1328 | } |
1329 | early_param("acpi_sci", setup_acpi_sci); | 1329 | early_param("acpi_sci", setup_acpi_sci); |
1330 | |||
1331 | int __acpi_acquire_global_lock(unsigned int *lock) | ||
1332 | { | ||
1333 | unsigned int old, new, val; | ||
1334 | do { | ||
1335 | old = *lock; | ||
1336 | new = (((old & ~0x3) + 2) + ((old >> 1) & 0x1)); | ||
1337 | val = cmpxchg(lock, old, new); | ||
1338 | } while (unlikely (val != old)); | ||
1339 | return (new < 3) ? -1 : 0; | ||
1340 | } | ||
1341 | |||
1342 | int __acpi_release_global_lock(unsigned int *lock) | ||
1343 | { | ||
1344 | unsigned int old, new, val; | ||
1345 | do { | ||
1346 | old = *lock; | ||
1347 | new = old & ~0x3; | ||
1348 | val = cmpxchg(lock, old, new); | ||
1349 | } while (unlikely (val != old)); | ||
1350 | return old & 0x1; | ||
1351 | } | ||
diff --git a/arch/ia64/kernel/cpufreq/acpi-cpufreq.c b/arch/ia64/kernel/cpufreq/acpi-cpufreq.c index 088f130197ae..15c08d52f09f 100644 --- a/arch/ia64/kernel/cpufreq/acpi-cpufreq.c +++ b/arch/ia64/kernel/cpufreq/acpi-cpufreq.c | |||
@@ -276,12 +276,10 @@ acpi_cpufreq_cpu_init ( | |||
276 | 276 | ||
277 | dprintk("acpi_cpufreq_cpu_init\n"); | 277 | dprintk("acpi_cpufreq_cpu_init\n"); |
278 | 278 | ||
279 | data = kmalloc(sizeof(struct cpufreq_acpi_io), GFP_KERNEL); | 279 | data = kzalloc(sizeof(struct cpufreq_acpi_io), GFP_KERNEL); |
280 | if (!data) | 280 | if (!data) |
281 | return (-ENOMEM); | 281 | return (-ENOMEM); |
282 | 282 | ||
283 | memset(data, 0, sizeof(struct cpufreq_acpi_io)); | ||
284 | |||
285 | acpi_io_data[cpu] = data; | 283 | acpi_io_data[cpu] = data; |
286 | 284 | ||
287 | result = acpi_processor_register_performance(&data->acpi_data, cpu); | 285 | result = acpi_processor_register_performance(&data->acpi_data, cpu); |