Pull misc-for-upstream into release branch
This commit is contained in:
commit
63e34ca93a
@ -126,7 +126,8 @@ and is between 256 and 4096 characters. It is defined in the file
|
|||||||
See header of drivers/scsi/53c7xx.c.
|
See header of drivers/scsi/53c7xx.c.
|
||||||
See also Documentation/scsi/ncr53c7xx.txt.
|
See also Documentation/scsi/ncr53c7xx.txt.
|
||||||
|
|
||||||
acpi= [HW,ACPI] Advanced Configuration and Power Interface
|
acpi= [HW,ACPI,X86-64,i386]
|
||||||
|
Advanced Configuration and Power Interface
|
||||||
Format: { force | off | ht | strict | noirq }
|
Format: { force | off | ht | strict | noirq }
|
||||||
force -- enable ACPI if default was off
|
force -- enable ACPI if default was off
|
||||||
off -- disable ACPI if default was on
|
off -- disable ACPI if default was on
|
||||||
|
@ -7,6 +7,7 @@ menu "ACPI (Advanced Configuration and Power Interface) Support"
|
|||||||
depends on !X86_VISWS
|
depends on !X86_VISWS
|
||||||
depends on !IA64_HP_SIM
|
depends on !IA64_HP_SIM
|
||||||
depends on IA64 || X86
|
depends on IA64 || X86
|
||||||
|
depends on PM
|
||||||
|
|
||||||
config ACPI
|
config ACPI
|
||||||
bool "ACPI Support"
|
bool "ACPI Support"
|
||||||
|
@ -79,11 +79,17 @@ static int __init blacklist_by_year(void)
|
|||||||
{
|
{
|
||||||
int year = dmi_get_year(DMI_BIOS_DATE);
|
int year = dmi_get_year(DMI_BIOS_DATE);
|
||||||
/* Doesn't exist? Likely an old system */
|
/* Doesn't exist? Likely an old system */
|
||||||
if (year == -1)
|
if (year == -1) {
|
||||||
|
printk(KERN_ERR PREFIX "no DMI BIOS year, "
|
||||||
|
"acpi=force is required to enable ACPI\n" );
|
||||||
return 1;
|
return 1;
|
||||||
|
}
|
||||||
/* 0? Likely a buggy new BIOS */
|
/* 0? Likely a buggy new BIOS */
|
||||||
if (year == 0)
|
if (year == 0) {
|
||||||
|
printk(KERN_ERR PREFIX "DMI BIOS year==0, "
|
||||||
|
"assuming ACPI-capable machine\n" );
|
||||||
return 0;
|
return 0;
|
||||||
|
}
|
||||||
if (year < CONFIG_ACPI_BLACKLIST_YEAR) {
|
if (year < CONFIG_ACPI_BLACKLIST_YEAR) {
|
||||||
printk(KERN_ERR PREFIX "BIOS age (%d) fails cutoff (%d), "
|
printk(KERN_ERR PREFIX "BIOS age (%d) fails cutoff (%d), "
|
||||||
"acpi=force is required to enable ACPI\n",
|
"acpi=force is required to enable ACPI\n",
|
||||||
|
@ -688,13 +688,6 @@ static int acpi_power_resume(struct acpi_device *device)
|
|||||||
return result;
|
return result;
|
||||||
|
|
||||||
mutex_lock(&resource->resource_lock);
|
mutex_lock(&resource->resource_lock);
|
||||||
if ((resource->state == ACPI_POWER_RESOURCE_STATE_ON) &&
|
|
||||||
list_empty(&resource->reference)) {
|
|
||||||
mutex_unlock(&resource->resource_lock);
|
|
||||||
result = acpi_power_off_device(device->handle, NULL);
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((resource->state == ACPI_POWER_RESOURCE_STATE_OFF) &&
|
if ((resource->state == ACPI_POWER_RESOURCE_STATE_OFF) &&
|
||||||
!list_empty(&resource->reference)) {
|
!list_empty(&resource->reference)) {
|
||||||
ref = container_of(resource->reference.next, struct acpi_power_reference, node);
|
ref = container_of(resource->reference.next, struct acpi_power_reference, node);
|
||||||
|
@ -102,9 +102,9 @@ struct acpi_video_bus_cap {
|
|||||||
|
|
||||||
struct acpi_video_device_attrib {
|
struct acpi_video_device_attrib {
|
||||||
u32 display_index:4; /* A zero-based instance of the Display */
|
u32 display_index:4; /* A zero-based instance of the Display */
|
||||||
u32 display_port_attachment:4; /*This field differenates displays type */
|
u32 display_port_attachment:4; /*This field differentiates the display type */
|
||||||
u32 display_type:4; /*Describe the specific type in use */
|
u32 display_type:4; /*Describe the specific type in use */
|
||||||
u32 vendor_specific:4; /*Chipset Vendor Specifi */
|
u32 vendor_specific:4; /*Chipset Vendor Specific */
|
||||||
u32 bios_can_detect:1; /*BIOS can detect the device */
|
u32 bios_can_detect:1; /*BIOS can detect the device */
|
||||||
u32 depend_on_vga:1; /*Non-VGA output device whose power is related to
|
u32 depend_on_vga:1; /*Non-VGA output device whose power is related to
|
||||||
the VGA device. */
|
the VGA device. */
|
||||||
@ -484,16 +484,16 @@ acpi_video_bus_POST_options(struct acpi_video_bus *video,
|
|||||||
* 0. The system BIOS should NOT automatically switch(toggle)
|
* 0. The system BIOS should NOT automatically switch(toggle)
|
||||||
* the active display output.
|
* the active display output.
|
||||||
* 1. The system BIOS should automatically switch (toggle) the
|
* 1. The system BIOS should automatically switch (toggle) the
|
||||||
* active display output. No swich event.
|
* active display output. No switch event.
|
||||||
* 2. The _DGS value should be locked.
|
* 2. The _DGS value should be locked.
|
||||||
* 3. The system BIOS should not automatically switch (toggle) the
|
* 3. The system BIOS should not automatically switch (toggle) the
|
||||||
* active display output, but instead generate the display switch
|
* active display output, but instead generate the display switch
|
||||||
* event notify code.
|
* event notify code.
|
||||||
* lcd_flag :
|
* lcd_flag :
|
||||||
* 0. The system BIOS should automatically control the brightness level
|
* 0. The system BIOS should automatically control the brightness level
|
||||||
* of the LCD, when the power changes from AC to DC
|
* of the LCD when the power changes from AC to DC
|
||||||
* 1. The system BIOS should NOT automatically control the brightness
|
* 1. The system BIOS should NOT automatically control the brightness
|
||||||
* level of the LCD, when the power changes from AC to DC.
|
* level of the LCD when the power changes from AC to DC.
|
||||||
* Return Value:
|
* Return Value:
|
||||||
* -1 wrong arg.
|
* -1 wrong arg.
|
||||||
*/
|
*/
|
||||||
@ -525,7 +525,7 @@ acpi_video_bus_DOS(struct acpi_video_bus *video, int bios_flag, int lcd_flag)
|
|||||||
* Return Value:
|
* Return Value:
|
||||||
* None
|
* None
|
||||||
*
|
*
|
||||||
* Find out all required AML method defined under the output
|
* Find out all required AML methods defined under the output
|
||||||
* device.
|
* device.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -636,7 +636,7 @@ static void acpi_video_device_find_cap(struct acpi_video_device *device)
|
|||||||
* Return Value:
|
* Return Value:
|
||||||
* None
|
* None
|
||||||
*
|
*
|
||||||
* Find out all required AML method defined under the video bus device.
|
* Find out all required AML methods defined under the video bus device.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static void acpi_video_bus_find_cap(struct acpi_video_bus *video)
|
static void acpi_video_bus_find_cap(struct acpi_video_bus *video)
|
||||||
@ -681,19 +681,19 @@ static int acpi_video_bus_check(struct acpi_video_bus *video)
|
|||||||
* to check well known required nodes.
|
* to check well known required nodes.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Does this device able to support video switching ? */
|
/* Does this device support video switching? */
|
||||||
if (video->cap._DOS) {
|
if (video->cap._DOS) {
|
||||||
video->flags.multihead = 1;
|
video->flags.multihead = 1;
|
||||||
status = 0;
|
status = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Does this device able to retrieve a retrieve a video ROM ? */
|
/* Does this device support retrieving a video ROM? */
|
||||||
if (video->cap._ROM) {
|
if (video->cap._ROM) {
|
||||||
video->flags.rom = 1;
|
video->flags.rom = 1;
|
||||||
status = 0;
|
status = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Does this device able to configure which video device to POST ? */
|
/* Does this device support configuring which video device to POST? */
|
||||||
if (video->cap._GPD && video->cap._SPD && video->cap._VPO) {
|
if (video->cap._GPD && video->cap._SPD && video->cap._VPO) {
|
||||||
video->flags.post = 1;
|
video->flags.post = 1;
|
||||||
status = 0;
|
status = 0;
|
||||||
@ -860,7 +860,7 @@ acpi_video_device_write_brightness(struct file *file,
|
|||||||
if (level > 100)
|
if (level > 100)
|
||||||
return -EFAULT;
|
return -EFAULT;
|
||||||
|
|
||||||
/* validate though the list of available levels */
|
/* validate through the list of available levels */
|
||||||
for (i = 0; i < dev->brightness->count; i++)
|
for (i = 0; i < dev->brightness->count; i++)
|
||||||
if (level == dev->brightness->levels[i]) {
|
if (level == dev->brightness->levels[i]) {
|
||||||
if (ACPI_SUCCESS
|
if (ACPI_SUCCESS
|
||||||
@ -1065,10 +1065,10 @@ static int acpi_video_bus_POST_info_seq_show(struct seq_file *seq, void *offset)
|
|||||||
printk(KERN_WARNING PREFIX
|
printk(KERN_WARNING PREFIX
|
||||||
"The motherboard VGA device is not listed as a possible POST device.\n");
|
"The motherboard VGA device is not listed as a possible POST device.\n");
|
||||||
printk(KERN_WARNING PREFIX
|
printk(KERN_WARNING PREFIX
|
||||||
"This indicate a BIOS bug. Please contact the manufacturer.\n");
|
"This indicates a BIOS bug. Please contact the manufacturer.\n");
|
||||||
}
|
}
|
||||||
printk("%lx\n", options);
|
printk("%lx\n", options);
|
||||||
seq_printf(seq, "can POST: <intgrated video>");
|
seq_printf(seq, "can POST: <integrated video>");
|
||||||
if (options & 2)
|
if (options & 2)
|
||||||
seq_printf(seq, " <PCI video>");
|
seq_printf(seq, " <PCI video>");
|
||||||
if (options & 4)
|
if (options & 4)
|
||||||
@ -1102,7 +1102,7 @@ static int acpi_video_bus_POST_seq_show(struct seq_file *seq, void *offset)
|
|||||||
seq_printf(seq, "<not supported>\n");
|
seq_printf(seq, "<not supported>\n");
|
||||||
goto end;
|
goto end;
|
||||||
}
|
}
|
||||||
seq_printf(seq, "device posted is <%s>\n", device_decode[id & 3]);
|
seq_printf(seq, "device POSTed is <%s>\n", device_decode[id & 3]);
|
||||||
|
|
||||||
end:
|
end:
|
||||||
return 0;
|
return 0;
|
||||||
@ -1156,7 +1156,7 @@ acpi_video_bus_write_POST(struct file *file,
|
|||||||
if (opt > 3)
|
if (opt > 3)
|
||||||
return -EFAULT;
|
return -EFAULT;
|
||||||
|
|
||||||
/* just in case an OEM 'forget' the motherboard... */
|
/* just in case an OEM 'forgot' the motherboard... */
|
||||||
options |= 1;
|
options |= 1;
|
||||||
|
|
||||||
if (options & (1ul << opt)) {
|
if (options & (1ul << opt)) {
|
||||||
@ -1527,13 +1527,13 @@ static int acpi_video_device_enumerate(struct acpi_video_bus *video)
|
|||||||
/*
|
/*
|
||||||
* Arg:
|
* Arg:
|
||||||
* video : video bus device
|
* video : video bus device
|
||||||
* event : Nontify Event
|
* event : notify event
|
||||||
*
|
*
|
||||||
* Return:
|
* Return:
|
||||||
* < 0 : error
|
* < 0 : error
|
||||||
*
|
*
|
||||||
* 1. Find out the current active output device.
|
* 1. Find out the current active output device.
|
||||||
* 2. Identify the next output device to switch
|
* 2. Identify the next output device to switch to.
|
||||||
* 3. call _DSS to do actual switch.
|
* 3. call _DSS to do actual switch.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -1723,12 +1723,12 @@ static void acpi_video_bus_notify(acpi_handle handle, u32 event, void *data)
|
|||||||
device = video->device;
|
device = video->device;
|
||||||
|
|
||||||
switch (event) {
|
switch (event) {
|
||||||
case ACPI_VIDEO_NOTIFY_SWITCH: /* User request that a switch occur,
|
case ACPI_VIDEO_NOTIFY_SWITCH: /* User requested a switch,
|
||||||
* most likely via hotkey. */
|
* most likely via hotkey. */
|
||||||
acpi_bus_generate_event(device, event, 0);
|
acpi_bus_generate_event(device, event, 0);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case ACPI_VIDEO_NOTIFY_PROBE: /* User plug or remove a video
|
case ACPI_VIDEO_NOTIFY_PROBE: /* User plugged in or removed a video
|
||||||
* connector. */
|
* connector. */
|
||||||
acpi_video_device_enumerate(video);
|
acpi_video_device_enumerate(video);
|
||||||
acpi_video_device_rebind(video);
|
acpi_video_device_rebind(video);
|
||||||
|
@ -211,7 +211,7 @@ static struct workqueue_struct *led_workqueue;
|
|||||||
enum led_brightness value); \
|
enum led_brightness value); \
|
||||||
static void object##_led_update(struct work_struct *ignored); \
|
static void object##_led_update(struct work_struct *ignored); \
|
||||||
static int object##_led_wk; \
|
static int object##_led_wk; \
|
||||||
DECLARE_WORK(object##_led_work, object##_led_update); \
|
static DECLARE_WORK(object##_led_work, object##_led_update); \
|
||||||
static struct led_classdev object##_led = { \
|
static struct led_classdev object##_led = { \
|
||||||
.name = "asus:" ledname, \
|
.name = "asus:" ledname, \
|
||||||
.brightness_set = object##_led_set, \
|
.brightness_set = object##_led_set, \
|
||||||
|
@ -453,7 +453,7 @@ static int sony_acpi_resume(struct acpi_device *device)
|
|||||||
static int sony_acpi_add(struct acpi_device *device)
|
static int sony_acpi_add(struct acpi_device *device)
|
||||||
{
|
{
|
||||||
acpi_status status;
|
acpi_status status;
|
||||||
int result;
|
int result = 0;
|
||||||
acpi_handle handle;
|
acpi_handle handle;
|
||||||
|
|
||||||
sony_acpi_acpi_device = device;
|
sony_acpi_acpi_device = device;
|
||||||
|
Loading…
Reference in New Issue
Block a user