Pull misc-for-upstream into release branch
This commit is contained in:
commit
fb16596997
|
@ -181,19 +181,41 @@ and is between 256 and 4096 characters. It is defined in the file
|
|||
that require a timer override, but don't have
|
||||
HPET
|
||||
|
||||
acpi_dbg_layer= [HW,ACPI]
|
||||
acpi.debug_layer= [HW,ACPI]
|
||||
Format: <int>
|
||||
Each bit of the <int> indicates an ACPI debug layer,
|
||||
1: enable, 0: disable. It is useful for boot time
|
||||
debugging. After system has booted up, it can be set
|
||||
via /proc/acpi/debug_layer.
|
||||
via /sys/module/acpi/parameters/debug_layer.
|
||||
CONFIG_ACPI_DEBUG must be enabled for this to produce any output.
|
||||
Available bits (add the numbers together) to enable debug output
|
||||
for specific parts of the ACPI subsystem:
|
||||
0x01 utilities 0x02 hardware 0x04 events 0x08 tables
|
||||
0x10 namespace 0x20 parser 0x40 dispatcher
|
||||
0x80 executer 0x100 resources 0x200 acpica debugger
|
||||
0x400 os services 0x800 acpica disassembler.
|
||||
The number can be in decimal or prefixed with 0x in hex.
|
||||
Warning: Many of these options can produce a lot of
|
||||
output and make your system unusable. Be very careful.
|
||||
|
||||
acpi_dbg_level= [HW,ACPI]
|
||||
acpi.debug_level= [HW,ACPI]
|
||||
Format: <int>
|
||||
Each bit of the <int> indicates an ACPI debug level,
|
||||
1: enable, 0: disable. It is useful for boot time
|
||||
debugging. After system has booted up, it can be set
|
||||
via /proc/acpi/debug_level.
|
||||
via /sys/module/acpi/parameters/debug_level.
|
||||
CONFIG_ACPI_DEBUG must be enabled for this to produce any output.
|
||||
Available bits (add the numbers together) to enable different
|
||||
debug output levels of the ACPI subsystem:
|
||||
0x01 error 0x02 warn 0x04 init 0x08 debug object
|
||||
0x10 info 0x20 init names 0x40 parse 0x80 load
|
||||
0x100 dispatch 0x200 execute 0x400 names 0x800 operation region
|
||||
0x1000 bfield 0x2000 tables 0x4000 values 0x8000 objects
|
||||
0x10000 resources 0x20000 user requests 0x40000 package.
|
||||
The number can be in decimal or prefixed with 0x in hex.
|
||||
Warning: Many of these options can produce a lot of
|
||||
output and make your system unusable. Be very careful.
|
||||
|
||||
|
||||
acpi_fake_ecdt [HW,ACPI] Workaround failure due to BIOS lacking ECDT
|
||||
|
||||
|
|
|
@ -23,10 +23,13 @@ static int __init nvidia_hpet_check(struct acpi_table_header *header)
|
|||
static int __init check_bridge(int vendor, int device)
|
||||
{
|
||||
#ifdef CONFIG_ACPI
|
||||
static int warned;
|
||||
/* According to Nvidia all timer overrides are bogus unless HPET
|
||||
is enabled. */
|
||||
if (!acpi_use_timer_override && vendor == PCI_VENDOR_ID_NVIDIA) {
|
||||
if (acpi_table_parse(ACPI_SIG_HPET, nvidia_hpet_check)) {
|
||||
if (!warned && acpi_table_parse(ACPI_SIG_HPET,
|
||||
nvidia_hpet_check)) {
|
||||
warned = 1;
|
||||
acpi_skip_timer_override = 1;
|
||||
printk(KERN_INFO "Nvidia board "
|
||||
"detected. Ignoring ACPI "
|
||||
|
|
|
@ -85,8 +85,8 @@ config ACPI_PROCFS
|
|||
depends on ACPI
|
||||
default y
|
||||
---help---
|
||||
Procfs interface for ACPI is made optional for back-compatible.
|
||||
As the same functions are duplicated in sysfs interface
|
||||
The Procfs interface for ACPI is made optional for backward compatibility.
|
||||
As the same functions are duplicated in the sysfs interface
|
||||
and this proc interface will be removed some time later,
|
||||
it's marked as deprecated.
|
||||
( /proc/acpi/debug_layer && debug_level are deprecated by
|
||||
|
|
|
@ -44,11 +44,6 @@ MODULE_AUTHOR("Naveen B S <naveen.b.s@intel.com>");
|
|||
MODULE_DESCRIPTION("Hotplug Mem Driver");
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
/* ACPI _STA method values */
|
||||
#define ACPI_MEMORY_STA_PRESENT (0x00000001UL)
|
||||
#define ACPI_MEMORY_STA_ENABLED (0x00000002UL)
|
||||
#define ACPI_MEMORY_STA_FUNCTIONAL (0x00000008UL)
|
||||
|
||||
/* Memory Device States */
|
||||
#define MEMORY_INVALID_STATE 0
|
||||
#define MEMORY_POWER_ON_STATE 1
|
||||
|
@ -204,9 +199,9 @@ static int acpi_memory_check_device(struct acpi_memory_device *mem_device)
|
|||
* Check for device status. Device should be
|
||||
* present/enabled/functioning.
|
||||
*/
|
||||
if (!((current_status & ACPI_MEMORY_STA_PRESENT)
|
||||
&& (current_status & ACPI_MEMORY_STA_ENABLED)
|
||||
&& (current_status & ACPI_MEMORY_STA_FUNCTIONAL)))
|
||||
if (!((current_status & ACPI_STA_DEVICE_PRESENT)
|
||||
&& (current_status & ACPI_STA_DEVICE_ENABLED)
|
||||
&& (current_status & ACPI_STA_DEVICE_FUNCTIONING)))
|
||||
return -ENODEV;
|
||||
|
||||
return 0;
|
||||
|
@ -286,7 +281,7 @@ static int acpi_memory_powerdown_device(struct acpi_memory_device *mem_device)
|
|||
return -ENODEV;
|
||||
|
||||
/* Check for device status. Device should be disabled */
|
||||
if (current_status & ACPI_MEMORY_STA_ENABLED)
|
||||
if (current_status & ACPI_STA_DEVICE_ENABLED)
|
||||
return -EINVAL;
|
||||
|
||||
return 0;
|
||||
|
|
|
@ -103,7 +103,9 @@ int acpi_bus_get_status(struct acpi_device *device)
|
|||
else if (device->parent)
|
||||
device->status = device->parent->status;
|
||||
else
|
||||
STRUCT_TO_INT(device->status) = 0x0F;
|
||||
STRUCT_TO_INT(device->status) =
|
||||
ACPI_STA_DEVICE_PRESENT | ACPI_STA_DEVICE_ENABLED |
|
||||
ACPI_STA_DEVICE_UI | ACPI_STA_DEVICE_FUNCTIONING;
|
||||
|
||||
if (device->status.functional && !device->status.present) {
|
||||
printk(KERN_WARNING PREFIX "Device [%s] status [%08x]: "
|
||||
|
|
|
@ -49,8 +49,6 @@ MODULE_AUTHOR("Anil S Keshavamurthy");
|
|||
MODULE_DESCRIPTION("ACPI container driver");
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
#define ACPI_STA_PRESENT (0x00000001)
|
||||
|
||||
static int acpi_container_add(struct acpi_device *device);
|
||||
static int acpi_container_remove(struct acpi_device *device, int type);
|
||||
|
||||
|
@ -75,13 +73,13 @@ static int is_device_present(acpi_handle handle)
|
|||
|
||||
status = acpi_get_handle(handle, "_STA", &temp);
|
||||
if (ACPI_FAILURE(status))
|
||||
return 1; /* _STA not found, assmue device present */
|
||||
return 1; /* _STA not found, assume device present */
|
||||
|
||||
status = acpi_evaluate_integer(handle, "_STA", NULL, &sta);
|
||||
if (ACPI_FAILURE(status))
|
||||
return 0; /* Firmware error */
|
||||
|
||||
return ((sta & ACPI_STA_PRESENT) == ACPI_STA_PRESENT);
|
||||
return ((sta & ACPI_STA_DEVICE_PRESENT) == ACPI_STA_DEVICE_PRESENT);
|
||||
}
|
||||
|
||||
/*******************************************************************/
|
||||
|
|
|
@ -70,8 +70,6 @@
|
|||
#define ACPI_PROCESSOR_LIMIT_USER 0
|
||||
#define ACPI_PROCESSOR_LIMIT_THERMAL 1
|
||||
|
||||
#define ACPI_STA_PRESENT 0x00000001
|
||||
|
||||
#define _COMPONENT ACPI_PROCESSOR_COMPONENT
|
||||
ACPI_MODULE_NAME("processor_core");
|
||||
|
||||
|
@ -779,7 +777,7 @@ static int is_processor_present(acpi_handle handle)
|
|||
|
||||
|
||||
status = acpi_evaluate_integer(handle, "_STA", NULL, &sta);
|
||||
if (ACPI_FAILURE(status) || !(sta & ACPI_STA_PRESENT)) {
|
||||
if (ACPI_FAILURE(status) || !(sta & ACPI_STA_DEVICE_PRESENT)) {
|
||||
ACPI_EXCEPTION((AE_INFO, status, "Processor Device is not present"));
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -51,14 +51,6 @@
|
|||
#include <asm/apic.h>
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Include the apic definitions for x86 to have the APIC timer related defines
|
||||
* available also for UP (on SMP it gets magically included via linux/smp.h).
|
||||
*/
|
||||
#ifdef CONFIG_X86
|
||||
#include <asm/apic.h>
|
||||
#endif
|
||||
|
||||
#include <asm/io.h>
|
||||
#include <asm/uaccess.h>
|
||||
|
||||
|
|
|
@ -1068,7 +1068,9 @@ acpi_add_single_object(struct acpi_device **child,
|
|||
}
|
||||
break;
|
||||
default:
|
||||
STRUCT_TO_INT(device->status) = 0x0F;
|
||||
STRUCT_TO_INT(device->status) =
|
||||
ACPI_STA_DEVICE_PRESENT | ACPI_STA_DEVICE_ENABLED |
|
||||
ACPI_STA_DEVICE_UI | ACPI_STA_DEVICE_FUNCTIONING;
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
@ -350,21 +350,31 @@ acpi_system_wakeup_device_seq_show(struct seq_file *seq, void *offset)
|
|||
{
|
||||
struct list_head *node, *next;
|
||||
|
||||
seq_printf(seq, "Device Sleep state Status\n");
|
||||
seq_printf(seq, "Device\tS-state\t Status Sysfs node\n");
|
||||
|
||||
spin_lock(&acpi_device_lock);
|
||||
list_for_each_safe(node, next, &acpi_wakeup_device_list) {
|
||||
struct acpi_device *dev =
|
||||
container_of(node, struct acpi_device, wakeup_list);
|
||||
struct device *ldev;
|
||||
|
||||
if (!dev->wakeup.flags.valid)
|
||||
continue;
|
||||
spin_unlock(&acpi_device_lock);
|
||||
seq_printf(seq, "%4s %4d %s%8s\n",
|
||||
|
||||
ldev = acpi_get_physical_device(dev->handle);
|
||||
seq_printf(seq, "%s\t S%d\t%c%-8s ",
|
||||
dev->pnp.bus_id,
|
||||
(u32) dev->wakeup.sleep_state,
|
||||
dev->wakeup.flags.run_wake ? "*" : "",
|
||||
dev->wakeup.flags.run_wake ? '*' : ' ',
|
||||
dev->wakeup.state.enabled ? "enabled" : "disabled");
|
||||
if (ldev)
|
||||
seq_printf(seq, "%s:%s",
|
||||
ldev->bus ? ldev->bus->name : "no-bus",
|
||||
ldev->bus_id);
|
||||
seq_printf(seq, "\n");
|
||||
put_device(ldev);
|
||||
|
||||
spin_lock(&acpi_device_lock);
|
||||
}
|
||||
spin_unlock(&acpi_device_lock);
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
/*
|
||||
* The I/O port the PMTMR resides at.
|
||||
* The location is detected during setup_arch(),
|
||||
* in arch/i386/acpi/boot.c
|
||||
* in arch/i386/kernel/acpi/boot.c
|
||||
*/
|
||||
u32 pmtmr_ioport __read_mostly;
|
||||
|
||||
|
|
|
@ -317,6 +317,10 @@ static int __init acpi_pci_init(void)
|
|||
{
|
||||
int ret;
|
||||
|
||||
if (acpi_gbl_FADT.boot_flags & BAF_MSI_NOT_SUPPORTED) {
|
||||
printk(KERN_INFO"ACPI FADT declares the system doesn't support MSI, so disable it\n");
|
||||
pci_no_msi();
|
||||
}
|
||||
ret = register_acpi_bus_type(&acpi_pci_bus);
|
||||
if (ret)
|
||||
return 0;
|
||||
|
|
|
@ -276,6 +276,7 @@ enum acpi_prefered_pm_profiles {
|
|||
|
||||
#define BAF_LEGACY_DEVICES 0x0001
|
||||
#define BAF_8042_KEYBOARD_CONTROLLER 0x0002
|
||||
#define BAF_MSI_NOT_SUPPORTED 0x0008
|
||||
|
||||
#define FADT2_REVISION_ID 3
|
||||
#define FADT2_MINUS_REVISION_ID 2
|
||||
|
|
Loading…
Reference in New Issue