Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
b2f71bad
Commit
b2f71bad
authored
Jul 01, 2006
by
Len Brown
Browse files
Options
Browse Files
Download
Plain Diff
Pull acpi_device_handle_cleanup into release branch
parents
ba290ab7
d07a8577
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
111 additions
and
148 deletions
+111
-148
drivers/acpi/ac.c
drivers/acpi/ac.c
+6
-8
drivers/acpi/acpi_memhotplug.c
drivers/acpi/acpi_memhotplug.c
+7
-7
drivers/acpi/battery.c
drivers/acpi/battery.c
+10
-13
drivers/acpi/button.c
drivers/acpi/button.c
+4
-6
drivers/acpi/fan.c
drivers/acpi/fan.c
+5
-5
drivers/acpi/pci_link.c
drivers/acpi/pci_link.c
+6
-9
drivers/acpi/pci_root.c
drivers/acpi/pci_root.c
+10
-10
drivers/acpi/power.c
drivers/acpi/power.c
+9
-13
drivers/acpi/thermal.c
drivers/acpi/thermal.c
+20
-37
drivers/acpi/video.c
drivers/acpi/video.c
+34
-40
No files found.
drivers/acpi/ac.c
View file @
b2f71bad
...
...
@@ -65,7 +65,7 @@ static struct acpi_driver acpi_ac_driver = {
};
struct
acpi_ac
{
acpi_handle
handl
e
;
struct
acpi_device
*
devic
e
;
unsigned
long
state
;
};
...
...
@@ -88,7 +88,7 @@ static int acpi_ac_get_state(struct acpi_ac *ac)
if
(
!
ac
)
return
-
EINVAL
;
status
=
acpi_evaluate_integer
(
ac
->
handle
,
"_PSR"
,
NULL
,
&
ac
->
state
);
status
=
acpi_evaluate_integer
(
ac
->
device
->
handle
,
"_PSR"
,
NULL
,
&
ac
->
state
);
if
(
ACPI_FAILURE
(
status
))
{
ACPI_EXCEPTION
((
AE_INFO
,
status
,
"Error reading AC Adapter state"
));
ac
->
state
=
ACPI_AC_STATUS_UNKNOWN
;
...
...
@@ -191,9 +191,7 @@ static void acpi_ac_notify(acpi_handle handle, u32 event, void *data)
if
(
!
ac
)
return
;
if
(
acpi_bus_get_device
(
ac
->
handle
,
&
device
))
return
;
device
=
ac
->
device
;
switch
(
event
)
{
case
ACPI_AC_NOTIFY_STATUS
:
acpi_ac_get_state
(
ac
);
...
...
@@ -223,7 +221,7 @@ static int acpi_ac_add(struct acpi_device *device)
return
-
ENOMEM
;
memset
(
ac
,
0
,
sizeof
(
struct
acpi_ac
));
ac
->
handle
=
device
->
handl
e
;
ac
->
device
=
devic
e
;
strcpy
(
acpi_device_name
(
device
),
ACPI_AC_DEVICE_NAME
);
strcpy
(
acpi_device_class
(
device
),
ACPI_AC_CLASS
);
acpi_driver_data
(
device
)
=
ac
;
...
...
@@ -236,7 +234,7 @@ static int acpi_ac_add(struct acpi_device *device)
if
(
result
)
goto
end
;
status
=
acpi_install_notify_handler
(
ac
->
handle
,
status
=
acpi_install_notify_handler
(
device
->
handle
,
ACPI_DEVICE_NOTIFY
,
acpi_ac_notify
,
ac
);
if
(
ACPI_FAILURE
(
status
))
{
...
...
@@ -268,7 +266,7 @@ static int acpi_ac_remove(struct acpi_device *device, int type)
ac
=
(
struct
acpi_ac
*
)
acpi_driver_data
(
device
);
status
=
acpi_remove_notify_handler
(
ac
->
handle
,
status
=
acpi_remove_notify_handler
(
device
->
handle
,
ACPI_DEVICE_NOTIFY
,
acpi_ac_notify
);
acpi_ac_remove_fs
(
device
);
...
...
drivers/acpi/acpi_memhotplug.c
View file @
b2f71bad
...
...
@@ -80,7 +80,7 @@ struct acpi_memory_info {
};
struct
acpi_memory_device
{
acpi_handle
handl
e
;
struct
acpi_device
*
devic
e
;
unsigned
int
state
;
/* State of the memory device */
struct
list_head
res_list
;
};
...
...
@@ -129,7 +129,7 @@ acpi_memory_get_device_resources(struct acpi_memory_device *mem_device)
struct
acpi_memory_info
*
info
,
*
n
;
status
=
acpi_walk_resources
(
mem_device
->
handle
,
METHOD_NAME__CRS
,
status
=
acpi_walk_resources
(
mem_device
->
device
->
handle
,
METHOD_NAME__CRS
,
acpi_memory_get_resource
,
mem_device
);
if
(
ACPI_FAILURE
(
status
))
{
list_for_each_entry_safe
(
info
,
n
,
&
mem_device
->
res_list
,
list
)
...
...
@@ -192,7 +192,7 @@ static int acpi_memory_check_device(struct acpi_memory_device *mem_device)
/* Get device present/absent information from the _STA */
if
(
ACPI_FAILURE
(
acpi_evaluate_integer
(
mem_device
->
handle
,
"_STA"
,
if
(
ACPI_FAILURE
(
acpi_evaluate_integer
(
mem_device
->
device
->
handle
,
"_STA"
,
NULL
,
&
current_status
)))
return
-
ENODEV
;
/*
...
...
@@ -222,7 +222,7 @@ static int acpi_memory_enable_device(struct acpi_memory_device *mem_device)
return
result
;
}
node
=
acpi_get_node
(
mem_device
->
handle
);
node
=
acpi_get_node
(
mem_device
->
device
->
handle
);
/*
* Tell the VM there is more memory here...
* Note: Assume that this function returns zero on success
...
...
@@ -269,7 +269,7 @@ static int acpi_memory_powerdown_device(struct acpi_memory_device *mem_device)
arg_list
.
pointer
=
&
arg
;
arg
.
type
=
ACPI_TYPE_INTEGER
;
arg
.
integer
.
value
=
1
;
status
=
acpi_evaluate_object
(
mem_device
->
handle
,
status
=
acpi_evaluate_object
(
mem_device
->
device
->
handle
,
"_EJ0"
,
&
arg_list
,
NULL
);
/* Return on _EJ0 failure */
if
(
ACPI_FAILURE
(
status
))
{
...
...
@@ -278,7 +278,7 @@ static int acpi_memory_powerdown_device(struct acpi_memory_device *mem_device)
}
/* Evalute _STA to check if the device is disabled */
status
=
acpi_evaluate_integer
(
mem_device
->
handle
,
"_STA"
,
status
=
acpi_evaluate_integer
(
mem_device
->
device
->
handle
,
"_STA"
,
NULL
,
&
current_status
);
if
(
ACPI_FAILURE
(
status
))
return
-
ENODEV
;
...
...
@@ -398,7 +398,7 @@ static int acpi_memory_device_add(struct acpi_device *device)
memset
(
mem_device
,
0
,
sizeof
(
struct
acpi_memory_device
));
INIT_LIST_HEAD
(
&
mem_device
->
res_list
);
mem_device
->
handle
=
device
->
handl
e
;
mem_device
->
device
=
devic
e
;
sprintf
(
acpi_device_name
(
device
),
"%s"
,
ACPI_MEMORY_DEVICE_NAME
);
sprintf
(
acpi_device_class
(
device
),
"%s"
,
ACPI_MEMORY_DEVICE_CLASS
);
acpi_driver_data
(
device
)
=
mem_device
;
...
...
drivers/acpi/battery.c
View file @
b2f71bad
...
...
@@ -108,7 +108,7 @@ struct acpi_battery_trips {
};
struct
acpi_battery
{
acpi_handle
handl
e
;
struct
acpi_device
*
devic
e
;
struct
acpi_battery_flags
flags
;
struct
acpi_battery_trips
trips
;
unsigned
long
alarm
;
...
...
@@ -138,7 +138,7 @@ acpi_battery_get_info(struct acpi_battery *battery,
/* Evalute _BIF */
status
=
acpi_evaluate_object
(
battery
->
handle
,
"_BIF"
,
NULL
,
&
buffer
);
status
=
acpi_evaluate_object
(
battery
->
device
->
handle
,
"_BIF"
,
NULL
,
&
buffer
);
if
(
ACPI_FAILURE
(
status
))
{
ACPI_EXCEPTION
((
AE_INFO
,
status
,
"Evaluating _BIF"
));
return
-
ENODEV
;
...
...
@@ -198,7 +198,7 @@ acpi_battery_get_status(struct acpi_battery *battery,
/* Evalute _BST */
status
=
acpi_evaluate_object
(
battery
->
handle
,
"_BST"
,
NULL
,
&
buffer
);
status
=
acpi_evaluate_object
(
battery
->
device
->
handle
,
"_BST"
,
NULL
,
&
buffer
);
if
(
ACPI_FAILURE
(
status
))
{
ACPI_EXCEPTION
((
AE_INFO
,
status
,
"Evaluating _BST"
));
return
-
ENODEV
;
...
...
@@ -255,7 +255,7 @@ acpi_battery_set_alarm(struct acpi_battery *battery, unsigned long alarm)
arg0
.
integer
.
value
=
alarm
;
status
=
acpi_evaluate_object
(
battery
->
handle
,
"_BTP"
,
&
arg_list
,
NULL
);
status
=
acpi_evaluate_object
(
battery
->
device
->
handle
,
"_BTP"
,
&
arg_list
,
NULL
);
if
(
ACPI_FAILURE
(
status
))
return
-
ENODEV
;
...
...
@@ -278,9 +278,7 @@ static int acpi_battery_check(struct acpi_battery *battery)
if
(
!
battery
)
return
-
EINVAL
;
result
=
acpi_bus_get_device
(
battery
->
handle
,
&
device
);
if
(
result
)
return
result
;
device
=
battery
->
device
;
result
=
acpi_bus_get_status
(
device
);
if
(
result
)
...
...
@@ -305,7 +303,7 @@ static int acpi_battery_check(struct acpi_battery *battery)
/* See if alarms are supported, and if so, set default */
status
=
acpi_get_handle
(
battery
->
handle
,
"_BTP"
,
&
handle
);
status
=
acpi_get_handle
(
battery
->
device
->
handle
,
"_BTP"
,
&
handle
);
if
(
ACPI_SUCCESS
(
status
))
{
battery
->
flags
.
alarm
=
1
;
acpi_battery_set_alarm
(
battery
,
battery
->
trips
.
warning
);
...
...
@@ -662,8 +660,7 @@ static void acpi_battery_notify(acpi_handle handle, u32 event, void *data)
if
(
!
battery
)
return
;
if
(
acpi_bus_get_device
(
handle
,
&
device
))
return
;
device
=
battery
->
device
;
switch
(
event
)
{
case
ACPI_BATTERY_NOTIFY_STATUS
:
...
...
@@ -695,7 +692,7 @@ static int acpi_battery_add(struct acpi_device *device)
return
-
ENOMEM
;
memset
(
battery
,
0
,
sizeof
(
struct
acpi_battery
));
battery
->
handle
=
device
->
handl
e
;
battery
->
device
=
devic
e
;
strcpy
(
acpi_device_name
(
device
),
ACPI_BATTERY_DEVICE_NAME
);
strcpy
(
acpi_device_class
(
device
),
ACPI_BATTERY_CLASS
);
acpi_driver_data
(
device
)
=
battery
;
...
...
@@ -708,7 +705,7 @@ static int acpi_battery_add(struct acpi_device *device)
if
(
result
)
goto
end
;
status
=
acpi_install_notify_handler
(
battery
->
handle
,
status
=
acpi_install_notify_handler
(
device
->
handle
,
ACPI_DEVICE_NOTIFY
,
acpi_battery_notify
,
battery
);
if
(
ACPI_FAILURE
(
status
))
{
...
...
@@ -740,7 +737,7 @@ static int acpi_battery_remove(struct acpi_device *device, int type)
battery
=
(
struct
acpi_battery
*
)
acpi_driver_data
(
device
);
status
=
acpi_remove_notify_handler
(
battery
->
handle
,
status
=
acpi_remove_notify_handler
(
device
->
handle
,
ACPI_DEVICE_NOTIFY
,
acpi_battery_notify
);
...
...
drivers/acpi/button.c
View file @
b2f71bad
...
...
@@ -82,7 +82,6 @@ static struct acpi_driver acpi_button_driver = {
};
struct
acpi_button
{
acpi_handle
handle
;
struct
acpi_device
*
device
;
/* Fixed button kludge */
u8
type
;
unsigned
long
pushed
;
...
...
@@ -137,7 +136,7 @@ static int acpi_button_state_seq_show(struct seq_file *seq, void *offset)
if
(
!
button
||
!
button
->
device
)
return
0
;
status
=
acpi_evaluate_integer
(
button
->
handle
,
"_LID"
,
NULL
,
&
state
);
status
=
acpi_evaluate_integer
(
button
->
device
->
handle
,
"_LID"
,
NULL
,
&
state
);
if
(
ACPI_FAILURE
(
status
))
{
seq_printf
(
seq
,
"state: unsupported
\n
"
);
}
else
{
...
...
@@ -282,7 +281,7 @@ static acpi_status acpi_button_notify_fixed(void *data)
if
(
!
button
)
return
AE_BAD_PARAMETER
;
acpi_button_notify
(
button
->
handle
,
ACPI_BUTTON_NOTIFY_STATUS
,
button
);
acpi_button_notify
(
button
->
device
->
handle
,
ACPI_BUTTON_NOTIFY_STATUS
,
button
);
return
AE_OK
;
}
...
...
@@ -303,7 +302,6 @@ static int acpi_button_add(struct acpi_device *device)
memset
(
button
,
0
,
sizeof
(
struct
acpi_button
));
button
->
device
=
device
;
button
->
handle
=
device
->
handle
;
acpi_driver_data
(
device
)
=
button
;
/*
...
...
@@ -362,7 +360,7 @@ static int acpi_button_add(struct acpi_device *device)
button
);
break
;
default:
status
=
acpi_install_notify_handler
(
button
->
handle
,
status
=
acpi_install_notify_handler
(
device
->
handle
,
ACPI_DEVICE_NOTIFY
,
acpi_button_notify
,
button
);
...
...
@@ -420,7 +418,7 @@ static int acpi_button_remove(struct acpi_device *device, int type)
acpi_button_notify_fixed
);
break
;
default:
status
=
acpi_remove_notify_handler
(
button
->
handle
,
status
=
acpi_remove_notify_handler
(
device
->
handle
,
ACPI_DEVICE_NOTIFY
,
acpi_button_notify
);
break
;
...
...
drivers/acpi/fan.c
View file @
b2f71bad
...
...
@@ -64,7 +64,7 @@ static struct acpi_driver acpi_fan_driver = {
};
struct
acpi_fan
{
acpi_handle
handl
e
;
struct
acpi_device
*
devic
e
;
};
/* --------------------------------------------------------------------------
...
...
@@ -80,7 +80,7 @@ static int acpi_fan_read_state(struct seq_file *seq, void *offset)
if
(
fan
)
{
if
(
acpi_bus_get_power
(
fan
->
handle
,
&
state
))
if
(
acpi_bus_get_power
(
fan
->
device
->
handle
,
&
state
))
seq_printf
(
seq
,
"status: ERROR
\n
"
);
else
seq_printf
(
seq
,
"status: %s
\n
"
,
...
...
@@ -112,7 +112,7 @@ acpi_fan_write_state(struct file *file, const char __user * buffer,
state_string
[
count
]
=
'\0'
;
result
=
acpi_bus_set_power
(
fan
->
handle
,
result
=
acpi_bus_set_power
(
fan
->
device
->
handle
,
simple_strtoul
(
state_string
,
NULL
,
0
));
if
(
result
)
return
result
;
...
...
@@ -191,12 +191,12 @@ static int acpi_fan_add(struct acpi_device *device)
return
-
ENOMEM
;
memset
(
fan
,
0
,
sizeof
(
struct
acpi_fan
));
fan
->
handle
=
device
->
handl
e
;
fan
->
device
=
devic
e
;
strcpy
(
acpi_device_name
(
device
),
"Fan"
);
strcpy
(
acpi_device_class
(
device
),
ACPI_FAN_CLASS
);
acpi_driver_data
(
device
)
=
fan
;
result
=
acpi_bus_get_power
(
fan
->
handle
,
&
state
);
result
=
acpi_bus_get_power
(
device
->
handle
,
&
state
);
if
(
result
)
{
printk
(
KERN_ERR
PREFIX
"Reading power state
\n
"
);
goto
end
;
...
...
drivers/acpi/pci_link.c
View file @
b2f71bad
...
...
@@ -83,7 +83,6 @@ struct acpi_pci_link_irq {
struct
acpi_pci_link
{
struct
list_head
node
;
struct
acpi_device
*
device
;
acpi_handle
handle
;
struct
acpi_pci_link_irq
irq
;
int
refcnt
;
};
...
...
@@ -175,7 +174,7 @@ static int acpi_pci_link_get_possible(struct acpi_pci_link *link)
if
(
!
link
)
return
-
EINVAL
;
status
=
acpi_walk_resources
(
link
->
handle
,
METHOD_NAME__PRS
,
status
=
acpi_walk_resources
(
link
->
device
->
handle
,
METHOD_NAME__PRS
,
acpi_pci_link_check_possible
,
link
);
if
(
ACPI_FAILURE
(
status
))
{
ACPI_EXCEPTION
((
AE_INFO
,
status
,
"Evaluating _PRS"
));
...
...
@@ -249,8 +248,7 @@ static int acpi_pci_link_get_current(struct acpi_pci_link *link)
acpi_status
status
=
AE_OK
;
int
irq
=
0
;
if
(
!
link
||
!
link
->
handle
)
if
(
!
link
)
return
-
EINVAL
;
link
->
irq
.
active
=
0
;
...
...
@@ -274,7 +272,7 @@ static int acpi_pci_link_get_current(struct acpi_pci_link *link)
* Query and parse _CRS to get the current IRQ assignment.
*/
status
=
acpi_walk_resources
(
link
->
handle
,
METHOD_NAME__CRS
,
status
=
acpi_walk_resources
(
link
->
device
->
handle
,
METHOD_NAME__CRS
,
acpi_pci_link_check_current
,
&
irq
);
if
(
ACPI_FAILURE
(
status
))
{
ACPI_EXCEPTION
((
AE_INFO
,
status
,
"Evaluating _CRS"
));
...
...
@@ -360,7 +358,7 @@ static int acpi_pci_link_set(struct acpi_pci_link *link, int irq)
resource
->
end
.
type
=
ACPI_RESOURCE_TYPE_END_TAG
;
/* Attempt to set the resource */
status
=
acpi_set_current_resources
(
link
->
handle
,
&
buffer
);
status
=
acpi_set_current_resources
(
link
->
device
->
handle
,
&
buffer
);
/* check for total failure */
if
(
ACPI_FAILURE
(
status
))
{
...
...
@@ -699,7 +697,7 @@ int acpi_pci_link_free_irq(acpi_handle handle)
acpi_device_bid
(
link
->
device
)));
if
(
link
->
refcnt
==
0
)
{
acpi_ut_evaluate_object
(
link
->
handle
,
"_DIS"
,
0
,
NULL
);
acpi_ut_evaluate_object
(
link
->
device
->
handle
,
"_DIS"
,
0
,
NULL
);
}
mutex_unlock
(
&
acpi_link_lock
);
return
(
link
->
irq
.
active
);
...
...
@@ -726,7 +724,6 @@ static int acpi_pci_link_add(struct acpi_device *device)
memset
(
link
,
0
,
sizeof
(
struct
acpi_pci_link
));
link
->
device
=
device
;
link
->
handle
=
device
->
handle
;
strcpy
(
acpi_device_name
(
device
),
ACPI_PCI_LINK_DEVICE_NAME
);
strcpy
(
acpi_device_class
(
device
),
ACPI_PCI_LINK_CLASS
);
acpi_driver_data
(
device
)
=
link
;
...
...
@@ -765,7 +762,7 @@ static int acpi_pci_link_add(struct acpi_device *device)
end:
/* disable all links -- to be activated on use */
acpi_ut_evaluate_object
(
link
->
handle
,
"_DIS"
,
0
,
NULL
);
acpi_ut_evaluate_object
(
device
->
handle
,
"_DIS"
,
0
,
NULL
);
mutex_unlock
(
&
acpi_link_lock
);
if
(
result
)
...
...
drivers/acpi/pci_root.c
View file @
b2f71bad
...
...
@@ -58,7 +58,7 @@ static struct acpi_driver acpi_pci_root_driver = {
struct
acpi_pci_root
{
struct
list_head
node
;
acpi_handle
handl
e
;
struct
acpi_device
*
devic
e
;
struct
acpi_pci_id
id
;
struct
pci_bus
*
bus
;
};
...
...
@@ -83,7 +83,7 @@ int acpi_pci_register_driver(struct acpi_pci_driver *driver)
list_for_each
(
entry
,
&
acpi_pci_roots
)
{
struct
acpi_pci_root
*
root
;
root
=
list_entry
(
entry
,
struct
acpi_pci_root
,
node
);
driver
->
add
(
root
->
handle
);
driver
->
add
(
root
->
device
->
handle
);
n
++
;
}
...
...
@@ -110,7 +110,7 @@ void acpi_pci_unregister_driver(struct acpi_pci_driver *driver)
list_for_each
(
entry
,
&
acpi_pci_roots
)
{
struct
acpi_pci_root
*
root
;
root
=
list_entry
(
entry
,
struct
acpi_pci_root
,
node
);
driver
->
remove
(
root
->
handle
);
driver
->
remove
(
root
->
device
->
handle
);
}
}
...
...
@@ -170,7 +170,7 @@ static int acpi_pci_root_add(struct acpi_device *device)
memset
(
root
,
0
,
sizeof
(
struct
acpi_pci_root
));
INIT_LIST_HEAD
(
&
root
->
node
);
root
->
handle
=
device
->
handl
e
;
root
->
device
=
devic
e
;
strcpy
(
acpi_device_name
(
device
),
ACPI_PCI_ROOT_DEVICE_NAME
);
strcpy
(
acpi_device_class
(
device
),
ACPI_PCI_ROOT_CLASS
);
acpi_driver_data
(
device
)
=
root
;
...
...
@@ -185,7 +185,7 @@ static int acpi_pci_root_add(struct acpi_device *device)
* -------
* Obtained via _SEG, if exists, otherwise assumed to be zero (0).
*/
status
=
acpi_evaluate_integer
(
root
->
handle
,
METHOD_NAME__SEG
,
NULL
,
status
=
acpi_evaluate_integer
(
device
->
handle
,
METHOD_NAME__SEG
,
NULL
,
&
value
);
switch
(
status
)
{
case
AE_OK
:
...
...
@@ -207,7 +207,7 @@ static int acpi_pci_root_add(struct acpi_device *device)
* ---
* Obtained via _BBN, if exists, otherwise assumed to be zero (0).
*/
status
=
acpi_evaluate_integer
(
root
->
handle
,
METHOD_NAME__BBN
,
NULL
,
status
=
acpi_evaluate_integer
(
device
->
handle
,
METHOD_NAME__BBN
,
NULL
,
&
value
);
switch
(
status
)
{
case
AE_OK
:
...
...
@@ -234,7 +234,7 @@ static int acpi_pci_root_add(struct acpi_device *device)
"Wrong _BBN value, reboot"
" and use option 'pci=noacpi'
\n
"
);
status
=
try_get_root_bridge_busnr
(
root
->
handle
,
&
bus
);
status
=
try_get_root_bridge_busnr
(
device
->
handle
,
&
bus
);
if
(
ACPI_FAILURE
(
status
))
break
;
if
(
bus
!=
root
->
id
.
bus
)
{
...
...
@@ -294,9 +294,9 @@ static int acpi_pci_root_add(struct acpi_device *device)
* -----------------
* Evaluate and parse _PRT, if exists.
*/
status
=
acpi_get_handle
(
root
->
handle
,
METHOD_NAME__PRT
,
&
handle
);
status
=
acpi_get_handle
(
device
->
handle
,
METHOD_NAME__PRT
,
&
handle
);
if
(
ACPI_SUCCESS
(
status
))
result
=
acpi_pci_irq_add_prt
(
root
->
handle
,
root
->
id
.
segment
,
result
=
acpi_pci_irq_add_prt
(
device
->
handle
,
root
->
id
.
segment
,
root
->
id
.
bus
);
end:
...
...
@@ -315,7 +315,7 @@ static int acpi_pci_root_start(struct acpi_device *device)
list_for_each_entry
(
root
,
&
acpi_pci_roots
,
node
)
{
if
(
root
->
handle
==
device
->
handl
e
)
{
if
(
root
->
device
==
devic
e
)
{
pci_bus_add_devices
(
root
->
bus
);
return
0
;
}
...
...
drivers/acpi/power.c
View file @
b2f71bad
...
...
@@ -70,7 +70,7 @@ static struct acpi_driver acpi_power_driver = {
};
struct
acpi_power_resource
{
acpi_handle
handl
e
;
struct
acpi_device
*
devic
e
;
acpi_bus_id
name
;
u32
system_level
;
u32
order
;
...
...
@@ -124,7 +124,7 @@ static int acpi_power_get_state(struct acpi_power_resource *resource)
if
(
!
resource
)
return
-
EINVAL
;
status
=
acpi_evaluate_integer
(
resource
->
handle
,
"_STA"
,
NULL
,
&
sta
);
status
=
acpi_evaluate_integer
(
resource
->
device
->
handle
,
"_STA"
,
NULL
,
&
sta
);
if
(
ACPI_FAILURE
(
status
))
return
-
ENODEV
;
...
...
@@ -192,7 +192,7 @@ static int acpi_power_on(acpi_handle handle)
return
0
;
}
status
=
acpi_evaluate_object
(
resource
->
handle
,
"_ON"
,
NULL
,
NULL
);
status
=
acpi_evaluate_object
(
resource
->
device
->
handle
,
"_ON"
,
NULL
,
NULL
);
if
(
ACPI_FAILURE
(
status
))
return
-
ENODEV
;
...
...
@@ -203,10 +203,8 @@ static int acpi_power_on(acpi_handle handle)
return
-
ENOEXEC
;
/* Update the power resource's _device_ power state */
result
=
acpi_bus_get_device
(
resource
->
handle
,
&
device
);
if
(
result
)
return
result
;
device
->
power
.
state
=
ACPI_STATE_D0
;
device
=
resource
->
device
;
resource
->
device
->
power
.
state
=
ACPI_STATE_D0
;
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"Resource [%s] turned on
\n
"
,
resource
->
name
));
...
...
@@ -242,7 +240,7 @@ static int acpi_power_off_device(acpi_handle handle)
return
0
;
}
status
=
acpi_evaluate_object
(
resource
->
handle
,
"_OFF"
,
NULL
,
NULL
);
status
=
acpi_evaluate_object
(
resource
->
device
->
handle
,
"_OFF"
,
NULL
,
NULL
);
if
(
ACPI_FAILURE
(
status
))
return
-
ENODEV
;
...
...
@@ -253,9 +251,7 @@ static int acpi_power_off_device(acpi_handle handle)
return
-
ENOEXEC
;
/* Update the power resource's _device_ power state */
result
=
acpi_bus_get_device
(
resource
->
handle
,
&
device
);
if
(
result
)
return
result
;
device
=
resource
->
device
;
device
->
power
.
state
=
ACPI_STATE_D3
;
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"Resource [%s] turned off
\n
"
,
...
...
@@ -544,14 +540,14 @@ static int acpi_power_add(struct acpi_device *device)
return
-
ENOMEM
;
memset
(
resource
,
0
,
sizeof
(
struct
acpi_power_resource
));
resource
->
handle
=
device
->
handl
e
;
resource
->
device
=
devic
e
;
strcpy
(
resource
->
name
,
device
->
pnp
.
bus_id
);
strcpy
(
acpi_device_name
(
device
),
ACPI_POWER_DEVICE_NAME
);
strcpy
(
acpi_device_class
(
device
),
ACPI_POWER_CLASS
);
acpi_driver_data
(
device
)
=
resource
;
/* Evalute the object to get the system level and resource order. */
status
=
acpi_evaluate_object
(
resour
ce
->
handle
,
NULL
,
NULL
,
&
buffer
);
status
=
acpi_evaluate_object
(
devi
ce
->
handle
,
NULL
,
NULL
,
&
buffer
);
if
(
ACPI_FAILURE
(
status
))
{
result
=
-
ENODEV
;
goto
end
;
...
...
drivers/acpi/thermal.c
View file @
b2f71bad
...
...
@@ -162,7 +162,7 @@ struct acpi_thermal_flags {
};
struct
acpi_thermal
{
acpi_handle
handl
e
;
struct
acpi_device
*
devic
e
;
acpi_bus_id
name
;
unsigned
long
temperature
;
unsigned
long
last_temperature
;
...
...
@@ -229,7 +229,7 @@ static int acpi_thermal_get_temperature(struct acpi_thermal *tz)
tz
->
last_temperature
=
tz
->
temperature
;
status
=
acpi_evaluate_integer
(
tz
->
handle
,
"_TMP"
,
NULL
,
&
tz
->
temperature
);
acpi_evaluate_integer
(
tz
->
device
->
handle
,
"_TMP"
,
NULL
,
&
tz
->
temperature
);
if
(
ACPI_FAILURE
(
status
))
return
-
ENODEV
;
...
...
@@ -248,7 +248,7 @@ static int acpi_thermal_get_polling_frequency(struct acpi_thermal *tz)
return
-
EINVAL
;
status
=
acpi_evaluate_integer
(
tz
->
handle
,
"_TZP"
,
NULL
,
acpi_evaluate_integer
(
tz
->
device
->
handle
,
"_TZP"
,
NULL
,
&
tz
->
polling_frequency
);
if
(
ACPI_FAILURE
(
status
))
return
-
ENODEV
;
...
...
@@ -285,7 +285,7 @@ static int acpi_thermal_set_cooling_mode(struct acpi_thermal *tz, int mode)
if
(
!
tz
)
return
-
EINVAL
;
status
=
acpi_get_handle
(
tz
->
handle
,
"_SCP"
,
&
handle
);
status
=
acpi_get_handle
(
tz
->
device
->
handle
,
"_SCP"
,
&
handle
);
if
(
ACPI_FAILURE
(
status
))
{
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"_SCP not present
\n
"
));
return
-
ENODEV
;
...
...
@@ -316,7 +316,7 @@ static int acpi_thermal_get_trip_points(struct acpi_thermal *tz)
/* Critical Shutdown (required) */
status
=
acpi_evaluate_integer
(
tz
->
handle
,
"_CRT"
,
NULL
,
status
=
acpi_evaluate_integer
(
tz
->
device
->
handle
,
"_CRT"
,
NULL
,
&
tz
->
trips
.
critical
.
temperature
);
if
(
ACPI_FAILURE
(
status
))
{
tz
->
trips
.
critical
.
flags
.
valid
=
0
;
...
...
@@ -332,7 +332,7 @@ static int acpi_thermal_get_trip_points(struct acpi_thermal *tz)
/* Critical Sleep (optional) */
status
=
acpi_evaluate_integer
(
tz
->
handle
,
"_HOT"
,
NULL
,
acpi_evaluate_integer
(
tz
->
device
->
handle
,
"_HOT"
,
NULL
,
&
tz
->
trips
.
hot
.
temperature
);
if
(
ACPI_FAILURE
(
status
))
{
tz
->
trips
.
hot
.
flags
.
valid
=
0
;
...
...
@@ -346,7 +346,7 @@ static int acpi_thermal_get_trip_points(struct acpi_thermal *tz)
/* Passive: Processors (optional) */
status
=
acpi_evaluate_integer
(
tz
->
handle
,
"_PSV"
,
NULL
,
acpi_evaluate_integer
(
tz
->
device
->
handle
,
"_PSV"
,
NULL
,
&
tz
->
trips
.
passive
.
temperature
);
if
(
ACPI_FAILURE
(
status
))
{
tz
->
trips
.
passive
.
flags
.
valid
=
0
;
...
...
@@ -355,25 +355,25 @@ static int acpi_thermal_get_trip_points(struct acpi_thermal *tz)
tz
->
trips
.
passive
.
flags
.
valid
=
1
;
status
=
acpi_evaluate_integer
(
tz
->
handle
,
"_TC1"
,
NULL
,
acpi_evaluate_integer
(
tz
->
device
->
handle
,
"_TC1"
,
NULL
,
&
tz
->
trips
.
passive
.
tc1
);
if
(
ACPI_FAILURE
(
status
))
tz
->
trips
.
passive
.
flags
.
valid
=
0
;
status
=
acpi_evaluate_integer
(
tz
->
handle
,
"_TC2"
,
NULL
,
acpi_evaluate_integer
(
tz
->
device
->
handle
,
"_TC2"
,
NULL
,
&
tz
->
trips
.
passive
.
tc2
);
if
(
ACPI_FAILURE
(
status
))
tz
->
trips
.
passive
.
flags
.
valid
=
0
;
status
=
acpi_evaluate_integer
(
tz
->
handle
,
"_TSP"
,
NULL
,
acpi_evaluate_integer
(
tz
->
device
->
handle
,
"_TSP"
,
NULL
,
&
tz
->
trips
.
passive
.
tsp
);
if
(
ACPI_FAILURE
(
status
))
tz
->
trips
.
passive
.
flags
.
valid
=
0
;
status
=
acpi_evaluate_reference
(
tz
->
handle
,
"_PSL"
,
NULL
,
acpi_evaluate_reference
(
tz
->
device
->
handle
,
"_PSL"
,
NULL
,
&
tz
->
trips
.
passive
.
devices
);
if
(
ACPI_FAILURE
(
status
))
tz
->
trips
.
passive
.
flags
.
valid
=
0
;
...
...
@@ -393,14 +393,14 @@ static int acpi_thermal_get_trip_points(struct acpi_thermal *tz)
char
name
[
5
]
=
{
'_'
,
'A'
,
'C'
,
(
'0'
+
i
),
'\0'
};
status
=
acpi_evaluate_integer
(
tz
->
handle
,
name
,
NULL
,
acpi_evaluate_integer
(
tz
->
device
->
handle
,
name
,
NULL
,
&
tz
->
trips
.
active
[
i
].
temperature
);
if
(
ACPI_FAILURE
(
status
))
break
;
name
[
2
]
=
'L'
;
status
=
acpi_evaluate_reference
(
tz
->
handle
,
name
,
NULL
,
acpi_evaluate_reference
(
tz
->
device
->
handle
,
name
,
NULL
,
&
tz
->
trips
.
active
[
i
].
devices
);
if
(
ACPI_SUCCESS
(
status
))
{
tz
->
trips
.
active
[
i
].
flags
.
valid
=
1
;
...
...
@@ -424,7 +424,7 @@ static int acpi_thermal_get_devices(struct acpi_thermal *tz)
return
-
EINVAL
;
status
=
acpi_evaluate_reference
(
tz
->
handle
,
"_TZD"
,
NULL
,
&
tz
->
devices
);
acpi_evaluate_reference
(
tz
->
device
->
handle
,
"_TZD"
,
NULL
,
&
tz
->
devices
);
if
(
ACPI_FAILURE
(
status
))
return
-
ENODEV
;
...
...
@@ -453,10 +453,6 @@ static int acpi_thermal_call_usermode(char *path)
static
int
acpi_thermal_critical
(
struct
acpi_thermal
*
tz
)
{
int
result
=
0
;
struct
acpi_device
*
device
=
NULL
;
if
(
!
tz
||
!
tz
->
trips
.
critical
.
flags
.
valid
)
return
-
EINVAL
;
...
...
@@ -466,14 +462,10 @@ static int acpi_thermal_critical(struct acpi_thermal *tz)
}
else
if
(
tz
->
trips
.
critical
.
flags
.
enabled
)
tz
->
trips
.
critical
.
flags
.
enabled
=
0
;
result
=
acpi_bus_get_device
(
tz
->
handle
,
&
device
);
if
(
result
)
return
result
;
printk
(
KERN_EMERG
"Critical temperature reached (%ld C), shutting down.
\n
"
,
KELVIN_TO_CELSIUS
(
tz
->
temperature
));
acpi_bus_generate_event
(
device
,
ACPI_THERMAL_NOTIFY_CRITICAL
,
acpi_bus_generate_event
(
tz
->
device
,
ACPI_THERMAL_NOTIFY_CRITICAL
,
tz
->
trips
.
critical
.
flags
.
enabled
);
acpi_thermal_call_usermode
(
ACPI_THERMAL_PATH_POWEROFF
);
...
...
@@ -483,10 +475,6 @@ static int acpi_thermal_critical(struct acpi_thermal *tz)
static
int
acpi_thermal_hot
(
struct
acpi_thermal
*
tz
)
{
int
result
=
0
;
struct
acpi_device
*
device
=
NULL
;
if
(
!
tz
||
!
tz
->
trips
.
hot
.
flags
.
valid
)
return
-
EINVAL
;
...
...
@@ -496,11 +484,7 @@ static int acpi_thermal_hot(struct acpi_thermal *tz)
}
else
if
(
tz
->
trips
.
hot
.
flags
.
enabled
)
tz
->
trips
.
hot
.
flags
.
enabled
=
0
;
result
=
acpi_bus_get_device
(
tz
->
handle
,
&
device
);
if
(
result
)
return
result
;
acpi_bus_generate_event
(
device
,
ACPI_THERMAL_NOTIFY_HOT
,
acpi_bus_generate_event
(
tz
->
device
,
ACPI_THERMAL_NOTIFY_HOT
,
tz
->
trips
.
hot
.
flags
.
enabled
);
/* TBD: Call user-mode "sleep(S4)" function */
...
...
@@ -1193,8 +1177,7 @@ static void acpi_thermal_notify(acpi_handle handle, u32 event, void *data)
if
(
!
tz
)
return
;
if
(
acpi_bus_get_device
(
tz
->
handle
,
&
device
))
return
;
device
=
tz
->
device
;
switch
(
event
)
{
case
ACPI_THERMAL_NOTIFY_TEMPERATURE
:
...
...
@@ -1293,7 +1276,7 @@ static int acpi_thermal_add(struct acpi_device *device)
return
-
ENOMEM
;
memset
(
tz
,
0
,
sizeof
(
struct
acpi_thermal
));
tz
->
handle
=
device
->
handl
e
;
tz
->
device
=
devic
e
;
strcpy
(
tz
->
name
,
device
->
pnp
.
bus_id
);
strcpy
(
acpi_device_name
(
device
),
ACPI_THERMAL_DEVICE_NAME
);
strcpy
(
acpi_device_class
(
device
),
ACPI_THERMAL_CLASS
);
...
...
@@ -1311,7 +1294,7 @@ static int acpi_thermal_add(struct acpi_device *device)
acpi_thermal_check
(
tz
);
status
=
acpi_install_notify_handler
(
tz
->
handle
,
status
=
acpi_install_notify_handler
(
device
->
handle
,
ACPI_DEVICE_NOTIFY
,
acpi_thermal_notify
,
tz
);
if
(
ACPI_FAILURE
(
status
))
{
...
...
@@ -1352,7 +1335,7 @@ static int acpi_thermal_remove(struct acpi_device *device, int type)
/* deferred task may reinsert timer */
del_timer_sync
(
&
(
tz
->
timer
));
status
=
acpi_remove_notify_handler
(
tz
->
handle
,
status
=
acpi_remove_notify_handler
(
device
->
handle
,
ACPI_DEVICE_NOTIFY
,
acpi_thermal_notify
);
...
...
drivers/acpi/video.c
View file @
b2f71bad
...
...
@@ -117,7 +117,7 @@ struct acpi_video_enumerated_device {
};
struct
acpi_video_bus
{
acpi_handle
handl
e
;
struct
acpi_device
*
devic
e
;
u8
dos_setting
;
struct
acpi_video_enumerated_device
*
attached_array
;
u8
attached_count
;
...
...
@@ -155,7 +155,6 @@ struct acpi_video_device_brightness {
};
struct
acpi_video_device
{
acpi_handle
handle
;
unsigned
long
device_id
;
struct
acpi_video_device_flags
flags
;
struct
acpi_video_device_cap
cap
;
...
...
@@ -272,7 +271,8 @@ static int
acpi_video_device_query
(
struct
acpi_video_device
*
device
,
unsigned
long
*
state
)
{
int
status
;
status
=
acpi_evaluate_integer
(
device
->
handle
,
"_DGS"
,
NULL
,
state
);
status
=
acpi_evaluate_integer
(
device
->
dev
->
handle
,
"_DGS"
,
NULL
,
state
);
return
status
;
}
...
...
@@ -283,8 +283,7 @@ acpi_video_device_get_state(struct acpi_video_device *device,
{
int
status
;
status
=
acpi_evaluate_integer
(
device
->
handle
,
"_DCS"
,
NULL
,
state
);
status
=
acpi_evaluate_integer
(
device
->
dev
->
handle
,
"_DCS"
,
NULL
,
state
);
return
status
;
}
...
...
@@ -299,7 +298,7 @@ acpi_video_device_set_state(struct acpi_video_device *device, int state)
arg0
.
integer
.
value
=
state
;
status
=
acpi_evaluate_integer
(
device
->
handle
,
"_DSS"
,
&
args
,
&
ret
);
status
=
acpi_evaluate_integer
(
device
->
dev
->
handle
,
"_DSS"
,
&
args
,
&
ret
);
return
status
;
}
...
...
@@ -315,7 +314,7 @@ acpi_video_device_lcd_query_levels(struct acpi_video_device *device,
*
levels
=
NULL
;
status
=
acpi_evaluate_object
(
device
->
handle
,
"_BCL"
,
NULL
,
&
buffer
);
status
=
acpi_evaluate_object
(
device
->
dev
->
handle
,
"_BCL"
,
NULL
,
&
buffer
);
if
(
!
ACPI_SUCCESS
(
status
))
return
status
;
obj
=
(
union
acpi_object
*
)
buffer
.
pointer
;
...
...
@@ -344,7 +343,7 @@ acpi_video_device_lcd_set_level(struct acpi_video_device *device, int level)
arg0
.
integer
.
value
=
level
;
status
=
acpi_evaluate_object
(
device
->
handle
,
"_BCM"
,
&
args
,
NULL
);
status
=
acpi_evaluate_object
(
device
->
dev
->
handle
,
"_BCM"
,
&
args
,
NULL
);
printk
(
KERN_DEBUG
"set_level status: %x
\n
"
,
status
);
return
status
;
...
...
@@ -356,7 +355,7 @@ acpi_video_device_lcd_get_level_current(struct acpi_video_device *device,
{
int
status
;
status
=
acpi_evaluate_integer
(
device
->
handle
,
"_BQC"
,
NULL
,
level
);
status
=
acpi_evaluate_integer
(
device
->
dev
->
handle
,
"_BQC"
,
NULL
,
level
);
return
status
;
}
...
...
@@ -383,7 +382,7 @@ acpi_video_device_EDID(struct acpi_video_device *device,
else
return
-
EINVAL
;
status
=
acpi_evaluate_object
(
device
->
handle
,
"_DDC"
,
&
args
,
&
buffer
);
status
=
acpi_evaluate_object
(
device
->
dev
->
handle
,
"_DDC"
,
&
args
,
&
buffer
);
if
(
ACPI_FAILURE
(
status
))
return
-
ENODEV
;
...
...
@@ -413,7 +412,7 @@ acpi_video_bus_set_POST(struct acpi_video_bus *video, unsigned long option)
arg0
.
integer
.
value
=
option
;
status
=
acpi_evaluate_integer
(
video
->
handle
,
"_SPD"
,
&
args
,
&
tmp
);
status
=
acpi_evaluate_integer
(
video
->
device
->
handle
,
"_SPD"
,
&
args
,
&
tmp
);
if
(
ACPI_SUCCESS
(
status
))
status
=
tmp
?
(
-
EINVAL
)
:
(
AE_OK
);
...
...
@@ -425,8 +424,7 @@ acpi_video_bus_get_POST(struct acpi_video_bus *video, unsigned long *id)
{
int
status
;
status
=
acpi_evaluate_integer
(
video
->
handle
,
"_GPD"
,
NULL
,
id
);
status
=
acpi_evaluate_integer
(
video
->
device
->
handle
,
"_GPD"
,
NULL
,
id
);
return
status
;
}
...
...
@@ -437,7 +435,7 @@ acpi_video_bus_POST_options(struct acpi_video_bus *video,
{
int
status
;
status
=
acpi_evaluate_integer
(
video
->
handle
,
"_VPO"
,
NULL
,
options
);
status
=
acpi_evaluate_integer
(
video
->
device
->
handle
,
"_VPO"
,
NULL
,
options
);
*
options
&=
3
;
return
status
;
...
...
@@ -478,7 +476,7 @@ acpi_video_bus_DOS(struct acpi_video_bus *video, int bios_flag, int lcd_flag)
}
arg0
.
integer
.
value
=
(
lcd_flag
<<
2
)
|
bios_flag
;
video
->
dos_setting
=
arg0
.
integer
.
value
;
acpi_evaluate_object
(
video
->
handle
,
"_DOS"
,
&
args
,
NULL
);
acpi_evaluate_object
(
video
->
device
->
handle
,
"_DOS"
,
&
args
,
NULL
);
Failed:
return
status
;
...
...
@@ -506,25 +504,25 @@ static void acpi_video_device_find_cap(struct acpi_video_device *device)
memset
(
&
device
->
cap
,
0
,
4
);
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
device
->
handle
,
"_ADR"
,
&
h_dummy1
)))
{
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
device
->
dev
->
handle
,
"_ADR"
,
&
h_dummy1
)))
{
device
->
cap
.
_ADR
=
1
;
}
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
device
->
handle
,
"_BCL"
,
&
h_dummy1
)))
{
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
device
->
dev
->
handle
,
"_BCL"
,
&
h_dummy1
)))
{
device
->
cap
.
_BCL
=
1
;
}
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
device
->
handle
,
"_BCM"
,
&
h_dummy1
)))
{
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
device
->
dev
->
handle
,
"_BCM"
,
&
h_dummy1
)))
{
device
->
cap
.
_BCM
=
1
;
}
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
device
->
handle
,
"_DDC"
,
&
h_dummy1
)))
{
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
device
->
dev
->
handle
,
"_DDC"
,
&
h_dummy1
)))
{
device
->
cap
.
_DDC
=
1
;
}
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
device
->
handle
,
"_DCS"
,
&
h_dummy1
)))
{
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
device
->
dev
->
handle
,
"_DCS"
,
&
h_dummy1
)))
{
device
->
cap
.
_DCS
=
1
;
}
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
device
->
handle
,
"_DGS"
,
&
h_dummy1
)))
{
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
device
->
dev
->
handle
,
"_DGS"
,
&
h_dummy1
)))
{
device
->
cap
.
_DGS
=
1
;
}
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
device
->
handle
,
"_DSS"
,
&
h_dummy1
)))
{
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
device
->
dev
->
handle
,
"_DSS"
,
&
h_dummy1
)))
{
device
->
cap
.
_DSS
=
1
;
}
...
...
@@ -588,22 +586,22 @@ static void acpi_video_bus_find_cap(struct acpi_video_bus *video)
acpi_handle
h_dummy1
;
memset
(
&
video
->
cap
,
0
,
4
);
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
video
->
handle
,
"_DOS"
,
&
h_dummy1
)))
{
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
video
->
device
->
handle
,
"_DOS"
,
&
h_dummy1
)))
{
video
->
cap
.
_DOS
=
1
;
}
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
video
->
handle
,
"_DOD"
,
&
h_dummy1
)))
{
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
video
->
device
->
handle
,
"_DOD"
,
&
h_dummy1
)))
{
video
->
cap
.
_DOD
=
1
;
}
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
video
->
handle
,
"_ROM"
,
&
h_dummy1
)))
{
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
video
->
device
->
handle
,
"_ROM"
,
&
h_dummy1
)))
{
video
->
cap
.
_ROM
=
1
;
}
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
video
->
handle
,
"_GPD"
,
&
h_dummy1
)))
{
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
video
->
device
->
handle
,
"_GPD"
,
&
h_dummy1
)))
{
video
->
cap
.
_GPD
=
1
;
}
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
video
->
handle
,
"_SPD"
,
&
h_dummy1
)))
{
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
video
->
device
->
handle
,
"_SPD"
,
&
h_dummy1
)))
{
video
->
cap
.
_SPD
=
1
;
}
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
video
->
handle
,
"_VPO"
,
&
h_dummy1
)))
{
if
(
ACPI_SUCCESS
(
acpi_get_handle
(
video
->
device
->
handle
,
"_VPO"
,
&
h_dummy1
)))
{
video
->
cap
.
_VPO
=
1
;
}
}
...
...
@@ -1271,7 +1269,6 @@ acpi_video_bus_get_one_device(struct acpi_device *device,
memset
(
data
,
0
,
sizeof
(
struct
acpi_video_device
));
data
->
handle
=
device
->
handle
;
strcpy
(
acpi_device_name
(
device
),
ACPI_VIDEO_DEVICE_NAME
);
strcpy
(
acpi_device_class
(
device
),
ACPI_VIDEO_CLASS
);
acpi_driver_data
(
device
)
=
data
;
...
...
@@ -1298,7 +1295,7 @@ acpi_video_bus_get_one_device(struct acpi_device *device,
acpi_video_device_bind
(
video
,
data
);
acpi_video_device_find_cap
(
data
);
status
=
acpi_install_notify_handler
(
d
ata
->
handle
,
status
=
acpi_install_notify_handler
(
d
evice
->
handle
,
ACPI_DEVICE_NOTIFY
,
acpi_video_device_notify
,
data
);
...
...
@@ -1400,8 +1397,7 @@ static int acpi_video_device_enumerate(struct acpi_video_bus *video)
union
acpi_object
*
dod
=
NULL
;
union
acpi_object
*
obj
;
status
=
acpi_evaluate_object
(
video
->
handle
,
"_DOD"
,
NULL
,
&
buffer
);
status
=
acpi_evaluate_object
(
video
->
device
->
handle
,
"_DOD"
,
NULL
,
&
buffer
);
if
(
!
ACPI_SUCCESS
(
status
))
{
ACPI_EXCEPTION
((
AE_INFO
,
status
,
"Evaluating _DOD"
));
return
status
;
...
...
@@ -1569,7 +1565,7 @@ static int acpi_video_bus_put_one_device(struct acpi_video_device *device)
up
(
&
video
->
sem
);
acpi_video_device_remove_fs
(
device
->
dev
);
status
=
acpi_remove_notify_handler
(
device
->
handle
,
status
=
acpi_remove_notify_handler
(
device
->
dev
->
handle
,
ACPI_DEVICE_NOTIFY
,
acpi_video_device_notify
);
...
...
@@ -1624,8 +1620,7 @@ static void acpi_video_bus_notify(acpi_handle handle, u32 event, void *data)
if
(
!
video
)
return
;
if
(
acpi_bus_get_device
(
handle
,
&
device
))
return
;
device
=
video
->
device
;
switch
(
event
)
{
case
ACPI_VIDEO_NOTIFY_SWITCH
:
/* User request that a switch occur,
...
...
@@ -1668,8 +1663,7 @@ static void acpi_video_device_notify(acpi_handle handle, u32 event, void *data)
if
(
!
video_device
)
return
;
if
(
acpi_bus_get_device
(
handle
,
&
device
))
return
;
device
=
video_device
->
dev
;
switch
(
event
)
{
case
ACPI_VIDEO_NOTIFY_SWITCH
:
/* change in status (cycle output device) */
...
...
@@ -1707,7 +1701,7 @@ static int acpi_video_bus_add(struct acpi_device *device)
return
-
ENOMEM
;
memset
(
video
,
0
,
sizeof
(
struct
acpi_video_bus
));
video
->
handle
=
device
->
handl
e
;
video
->
device
=
devic
e
;
strcpy
(
acpi_device_name
(
device
),
ACPI_VIDEO_BUS_NAME
);
strcpy
(
acpi_device_class
(
device
),
ACPI_VIDEO_CLASS
);
acpi_driver_data
(
device
)
=
video
;
...
...
@@ -1727,7 +1721,7 @@ static int acpi_video_bus_add(struct acpi_device *device)
acpi_video_bus_get_devices
(
video
,
device
);
acpi_video_bus_start_devices
(
video
);
status
=
acpi_install_notify_handler
(
video
->
handle
,
status
=
acpi_install_notify_handler
(
device
->
handle
,
ACPI_DEVICE_NOTIFY
,
acpi_video_bus_notify
,
video
);
if
(
ACPI_FAILURE
(
status
))
{
...
...
@@ -1767,7 +1761,7 @@ static int acpi_video_bus_remove(struct acpi_device *device, int type)
acpi_video_bus_stop_devices
(
video
);
status
=
acpi_remove_notify_handler
(
video
->
handle
,
status
=
acpi_remove_notify_handler
(
video
->
device
->
handle
,
ACPI_DEVICE_NOTIFY
,
acpi_video_bus_notify
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment