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
12308a2f
Commit
12308a2f
authored
Nov 05, 2009
by
Len Brown
Browse files
Options
Browse Files
Download
Plain Diff
Merge branches 'misc', 'eeepc-laptop' and 'bugzilla-14445' into release
parents
91d3f9ba
29226ed3
80f0c895
d410ee51
Changes
10
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
257 additions
and
235 deletions
+257
-235
Documentation/thermal/sysfs-api.txt
Documentation/thermal/sysfs-api.txt
+201
-188
drivers/acpi/acpica/acconfig.h
drivers/acpi/acpica/acconfig.h
+2
-2
drivers/acpi/acpica/exregion.c
drivers/acpi/acpica/exregion.c
+25
-10
drivers/acpi/power_meter.c
drivers/acpi/power_meter.c
+5
-1
drivers/acpi/proc.c
drivers/acpi/proc.c
+1
-1
drivers/acpi/processor_core.c
drivers/acpi/processor_core.c
+1
-1
drivers/acpi/processor_throttling.c
drivers/acpi/processor_throttling.c
+3
-3
drivers/acpi/video.c
drivers/acpi/video.c
+4
-4
drivers/platform/x86/eeepc-laptop.c
drivers/platform/x86/eeepc-laptop.c
+10
-20
drivers/thermal/thermal_sys.c
drivers/thermal/thermal_sys.c
+5
-5
No files found.
Documentation/thermal/sysfs-api.txt
View file @
12308a2f
This diff is collapsed.
Click to expand it.
drivers/acpi/acpica/acconfig.h
View file @
12308a2f
...
@@ -103,9 +103,9 @@
...
@@ -103,9 +103,9 @@
#define ACPI_MAX_REFERENCE_COUNT 0x1000
#define ACPI_MAX_REFERENCE_COUNT 0x1000
/*
Size of cached memory mapping for system memory operation region
*/
/*
Default page size for use in mapping memory for operation regions
*/
#define ACPI_
SYSMEM_REGION_WINDOW_SIZE 4096
#define ACPI_
DEFAULT_PAGE_SIZE 4096
/* Must be power of 2 */
/* owner_id tracking. 8 entries allows for 255 owner_ids */
/* owner_id tracking. 8 entries allows for 255 owner_ids */
...
...
drivers/acpi/acpica/exregion.c
View file @
12308a2f
...
@@ -77,7 +77,8 @@ acpi_ex_system_memory_space_handler(u32 function,
...
@@ -77,7 +77,8 @@ acpi_ex_system_memory_space_handler(u32 function,
void
*
logical_addr_ptr
=
NULL
;
void
*
logical_addr_ptr
=
NULL
;
struct
acpi_mem_space_context
*
mem_info
=
region_context
;
struct
acpi_mem_space_context
*
mem_info
=
region_context
;
u32
length
;
u32
length
;
acpi_size
window_size
;
acpi_size
map_length
;
acpi_size
page_boundary_map_length
;
#ifdef ACPI_MISALIGNMENT_NOT_SUPPORTED
#ifdef ACPI_MISALIGNMENT_NOT_SUPPORTED
u32
remainder
;
u32
remainder
;
#endif
#endif
...
@@ -144,25 +145,39 @@ acpi_ex_system_memory_space_handler(u32 function,
...
@@ -144,25 +145,39 @@ acpi_ex_system_memory_space_handler(u32 function,
}
}
/*
/*
* Don't attempt to map memory beyond the end of the region, and
* Attempt to map from the requested address to the end of the region.
* constrain the maximum mapping size to something reasonable.
* However, we will never map more than one page, nor will we cross
* a page boundary.
*/
*/
window_size
=
(
acpi_size
)
map_length
=
(
acpi_size
)
((
mem_info
->
address
+
mem_info
->
length
)
-
address
);
((
mem_info
->
address
+
mem_info
->
length
)
-
address
);
if
(
window_size
>
ACPI_SYSMEM_REGION_WINDOW_SIZE
)
{
/*
window_size
=
ACPI_SYSMEM_REGION_WINDOW_SIZE
;
* If mapping the entire remaining portion of the region will cross
* a page boundary, just map up to the page boundary, do not cross.
* On some systems, crossing a page boundary while mapping regions
* can cause warnings if the pages have different attributes
* due to resource management
*/
page_boundary_map_length
=
ACPI_ROUND_UP
(
address
,
ACPI_DEFAULT_PAGE_SIZE
)
-
address
;
if
(
!
page_boundary_map_length
)
{
page_boundary_map_length
=
ACPI_DEFAULT_PAGE_SIZE
;
}
if
(
map_length
>
page_boundary_map_length
)
{
map_length
=
page_boundary_map_length
;
}
}
/* Create a new mapping starting at the address given */
/* Create a new mapping starting at the address given */
mem_info
->
mapped_logical_address
=
mem_info
->
mapped_logical_address
=
acpi_os_map_memory
((
acpi_physical_address
)
address
,
map_length
);
acpi_os_map_memory
((
acpi_physical_address
)
address
,
window_size
);
if
(
!
mem_info
->
mapped_logical_address
)
{
if
(
!
mem_info
->
mapped_logical_address
)
{
ACPI_ERROR
((
AE_INFO
,
ACPI_ERROR
((
AE_INFO
,
"Could not map memory at %8.8X%8.8X, size %X"
,
"Could not map memory at %8.8X%8.8X, size %X"
,
ACPI_FORMAT_NATIVE_UINT
(
address
),
ACPI_FORMAT_NATIVE_UINT
(
address
),
(
u32
)
window_size
));
(
u32
)
map_length
));
mem_info
->
mapped_length
=
0
;
mem_info
->
mapped_length
=
0
;
return_ACPI_STATUS
(
AE_NO_MEMORY
);
return_ACPI_STATUS
(
AE_NO_MEMORY
);
}
}
...
@@ -170,7 +185,7 @@ acpi_ex_system_memory_space_handler(u32 function,
...
@@ -170,7 +185,7 @@ acpi_ex_system_memory_space_handler(u32 function,
/* Save the physical address and mapping size */
/* Save the physical address and mapping size */
mem_info
->
mapped_physical_address
=
address
;
mem_info
->
mapped_physical_address
=
address
;
mem_info
->
mapped_length
=
window_size
;
mem_info
->
mapped_length
=
map_length
;
}
}
/*
/*
...
...
drivers/acpi/power_meter.c
View file @
12308a2f
...
@@ -294,7 +294,11 @@ static int set_acpi_trip(struct acpi_power_meter_resource *resource)
...
@@ -294,7 +294,11 @@ static int set_acpi_trip(struct acpi_power_meter_resource *resource)
return
-
EINVAL
;
return
-
EINVAL
;
}
}
return
data
;
/* _PTP returns 0 on success, nonzero otherwise */
if
(
data
)
return
-
EINVAL
;
return
0
;
}
}
static
ssize_t
set_trip
(
struct
device
*
dev
,
struct
device_attribute
*
devattr
,
static
ssize_t
set_trip
(
struct
device
*
dev
,
struct
device_attribute
*
devattr
,
...
...
drivers/acpi/proc.c
View file @
12308a2f
...
@@ -393,7 +393,7 @@ acpi_system_write_wakeup_device(struct file *file,
...
@@ -393,7 +393,7 @@ acpi_system_write_wakeup_device(struct file *file,
struct
list_head
*
node
,
*
next
;
struct
list_head
*
node
,
*
next
;
char
strbuf
[
5
];
char
strbuf
[
5
];
char
str
[
5
]
=
""
;
char
str
[
5
]
=
""
;
int
len
=
count
;
unsigned
int
len
=
count
;
struct
acpi_device
*
found_dev
=
NULL
;
struct
acpi_device
*
found_dev
=
NULL
;
if
(
len
>
4
)
if
(
len
>
4
)
...
...
drivers/acpi/processor_core.c
View file @
12308a2f
...
@@ -770,7 +770,7 @@ static struct notifier_block acpi_cpu_notifier =
...
@@ -770,7 +770,7 @@ static struct notifier_block acpi_cpu_notifier =
.
notifier_call
=
acpi_cpu_soft_notify
,
.
notifier_call
=
acpi_cpu_soft_notify
,
};
};
static
int
acpi_processor_add
(
struct
acpi_device
*
device
)
static
int
__cpuinit
acpi_processor_add
(
struct
acpi_device
*
device
)
{
{
struct
acpi_processor
*
pr
=
NULL
;
struct
acpi_processor
*
pr
=
NULL
;
int
result
=
0
;
int
result
=
0
;
...
...
drivers/acpi/processor_throttling.c
View file @
12308a2f
...
@@ -1133,15 +1133,15 @@ int acpi_processor_get_throttling_info(struct acpi_processor *pr)
...
@@ -1133,15 +1133,15 @@ int acpi_processor_get_throttling_info(struct acpi_processor *pr)
int
result
=
0
;
int
result
=
0
;
struct
acpi_processor_throttling
*
pthrottling
;
struct
acpi_processor_throttling
*
pthrottling
;
if
(
!
pr
)
return
-
EINVAL
;
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"pblk_address[0x%08x] duty_offset[%d] duty_width[%d]
\n
"
,
"pblk_address[0x%08x] duty_offset[%d] duty_width[%d]
\n
"
,
pr
->
throttling
.
address
,
pr
->
throttling
.
address
,
pr
->
throttling
.
duty_offset
,
pr
->
throttling
.
duty_offset
,
pr
->
throttling
.
duty_width
));
pr
->
throttling
.
duty_width
));
if
(
!
pr
)
return
-
EINVAL
;
/*
/*
* Evaluate _PTC, _TSS and _TPC
* Evaluate _PTC, _TSS and _TPC
* They must all be present or none of them can be used.
* They must all be present or none of them can be used.
...
...
drivers/acpi/video.c
View file @
12308a2f
...
@@ -1223,7 +1223,7 @@ acpi_video_device_write_state(struct file *file,
...
@@ -1223,7 +1223,7 @@ acpi_video_device_write_state(struct file *file,
u32
state
=
0
;
u32
state
=
0
;
if
(
!
dev
||
count
+
1
>
sizeof
str
)
if
(
!
dev
||
count
>=
sizeof
(
str
)
)
return
-
EINVAL
;
return
-
EINVAL
;
if
(
copy_from_user
(
str
,
buffer
,
count
))
if
(
copy_from_user
(
str
,
buffer
,
count
))
...
@@ -1280,7 +1280,7 @@ acpi_video_device_write_brightness(struct file *file,
...
@@ -1280,7 +1280,7 @@ acpi_video_device_write_brightness(struct file *file,
int
i
;
int
i
;
if
(
!
dev
||
!
dev
->
brightness
||
count
+
1
>
sizeof
str
)
if
(
!
dev
||
!
dev
->
brightness
||
count
>=
sizeof
(
str
)
)
return
-
EINVAL
;
return
-
EINVAL
;
if
(
copy_from_user
(
str
,
buffer
,
count
))
if
(
copy_from_user
(
str
,
buffer
,
count
))
...
@@ -1562,7 +1562,7 @@ acpi_video_bus_write_POST(struct file *file,
...
@@ -1562,7 +1562,7 @@ acpi_video_bus_write_POST(struct file *file,
unsigned
long
long
opt
,
options
;
unsigned
long
long
opt
,
options
;
if
(
!
video
||
count
+
1
>
sizeof
str
)
if
(
!
video
||
count
>=
sizeof
(
str
)
)
return
-
EINVAL
;
return
-
EINVAL
;
status
=
acpi_video_bus_POST_options
(
video
,
&
options
);
status
=
acpi_video_bus_POST_options
(
video
,
&
options
);
...
@@ -1602,7 +1602,7 @@ acpi_video_bus_write_DOS(struct file *file,
...
@@ -1602,7 +1602,7 @@ acpi_video_bus_write_DOS(struct file *file,
unsigned
long
opt
;
unsigned
long
opt
;
if
(
!
video
||
count
+
1
>
sizeof
str
)
if
(
!
video
||
count
>=
sizeof
(
str
)
)
return
-
EINVAL
;
return
-
EINVAL
;
if
(
copy_from_user
(
str
,
buffer
,
count
))
if
(
copy_from_user
(
str
,
buffer
,
count
))
...
...
drivers/platform/x86/eeepc-laptop.c
View file @
12308a2f
...
@@ -150,8 +150,6 @@ struct eeepc_hotk {
...
@@ -150,8 +150,6 @@ struct eeepc_hotk {
/* The actual device the driver binds to */
/* The actual device the driver binds to */
static
struct
eeepc_hotk
*
ehotk
;
static
struct
eeepc_hotk
*
ehotk
;
static
void
eeepc_rfkill_hotplug
(
bool
real
);
/* Platform device/driver */
/* Platform device/driver */
static
int
eeepc_hotk_thaw
(
struct
device
*
device
);
static
int
eeepc_hotk_thaw
(
struct
device
*
device
);
static
int
eeepc_hotk_restore
(
struct
device
*
device
);
static
int
eeepc_hotk_restore
(
struct
device
*
device
);
...
@@ -345,16 +343,7 @@ static bool eeepc_wlan_rfkill_blocked(void)
...
@@ -345,16 +343,7 @@ static bool eeepc_wlan_rfkill_blocked(void)
static
int
eeepc_rfkill_set
(
void
*
data
,
bool
blocked
)
static
int
eeepc_rfkill_set
(
void
*
data
,
bool
blocked
)
{
{
unsigned
long
asl
=
(
unsigned
long
)
data
;
unsigned
long
asl
=
(
unsigned
long
)
data
;
int
ret
;
return
set_acpi
(
asl
,
!
blocked
);
if
(
asl
!=
CM_ASL_WLAN
)
return
set_acpi
(
asl
,
!
blocked
);
/* hack to avoid panic with rt2860sta */
if
(
blocked
)
eeepc_rfkill_hotplug
(
false
);
ret
=
set_acpi
(
asl
,
!
blocked
);
return
ret
;
}
}
static
const
struct
rfkill_ops
eeepc_rfkill_ops
=
{
static
const
struct
rfkill_ops
eeepc_rfkill_ops
=
{
...
@@ -367,7 +356,8 @@ static void __devinit eeepc_enable_camera(void)
...
@@ -367,7 +356,8 @@ static void __devinit eeepc_enable_camera(void)
* If the following call to set_acpi() fails, it's because there's no
* If the following call to set_acpi() fails, it's because there's no
* camera so we can ignore the error.
* camera so we can ignore the error.
*/
*/
set_acpi
(
CM_ASL_CAMERA
,
1
);
if
(
get_acpi
(
CM_ASL_CAMERA
)
==
0
)
set_acpi
(
CM_ASL_CAMERA
,
1
);
}
}
/*
/*
...
@@ -654,13 +644,13 @@ static int eeepc_get_adapter_status(struct hotplug_slot *hotplug_slot,
...
@@ -654,13 +644,13 @@ static int eeepc_get_adapter_status(struct hotplug_slot *hotplug_slot,
return
0
;
return
0
;
}
}
static
void
eeepc_rfkill_hotplug
(
bool
real
)
static
void
eeepc_rfkill_hotplug
(
void
)
{
{
struct
pci_dev
*
dev
;
struct
pci_dev
*
dev
;
struct
pci_bus
*
bus
;
struct
pci_bus
*
bus
;
bool
blocked
=
real
?
eeepc_wlan_rfkill_blocked
()
:
true
;
bool
blocked
=
eeepc_wlan_rfkill_blocked
()
;
if
(
real
&&
ehotk
->
wlan_rfkill
)
if
(
ehotk
->
wlan_rfkill
)
rfkill_set_sw_state
(
ehotk
->
wlan_rfkill
,
blocked
);
rfkill_set_sw_state
(
ehotk
->
wlan_rfkill
,
blocked
);
mutex_lock
(
&
ehotk
->
hotplug_lock
);
mutex_lock
(
&
ehotk
->
hotplug_lock
);
...
@@ -703,7 +693,7 @@ static void eeepc_rfkill_notify(acpi_handle handle, u32 event, void *data)
...
@@ -703,7 +693,7 @@ static void eeepc_rfkill_notify(acpi_handle handle, u32 event, void *data)
if
(
event
!=
ACPI_NOTIFY_BUS_CHECK
)
if
(
event
!=
ACPI_NOTIFY_BUS_CHECK
)
return
;
return
;
eeepc_rfkill_hotplug
(
true
);
eeepc_rfkill_hotplug
();
}
}
static
void
eeepc_hotk_notify
(
struct
acpi_device
*
device
,
u32
event
)
static
void
eeepc_hotk_notify
(
struct
acpi_device
*
device
,
u32
event
)
...
@@ -861,7 +851,7 @@ static int eeepc_hotk_restore(struct device *device)
...
@@ -861,7 +851,7 @@ static int eeepc_hotk_restore(struct device *device)
{
{
/* Refresh both wlan rfkill state and pci hotplug */
/* Refresh both wlan rfkill state and pci hotplug */
if
(
ehotk
->
wlan_rfkill
)
if
(
ehotk
->
wlan_rfkill
)
eeepc_rfkill_hotplug
(
true
);
eeepc_rfkill_hotplug
();
if
(
ehotk
->
bluetooth_rfkill
)
if
(
ehotk
->
bluetooth_rfkill
)
rfkill_set_sw_state
(
ehotk
->
bluetooth_rfkill
,
rfkill_set_sw_state
(
ehotk
->
bluetooth_rfkill
,
...
@@ -1004,7 +994,7 @@ static void eeepc_rfkill_exit(void)
...
@@ -1004,7 +994,7 @@ static void eeepc_rfkill_exit(void)
* Refresh pci hotplug in case the rfkill state was changed after
* Refresh pci hotplug in case the rfkill state was changed after
* eeepc_unregister_rfkill_notifier()
* eeepc_unregister_rfkill_notifier()
*/
*/
eeepc_rfkill_hotplug
(
true
);
eeepc_rfkill_hotplug
();
if
(
ehotk
->
hotplug_slot
)
if
(
ehotk
->
hotplug_slot
)
pci_hp_deregister
(
ehotk
->
hotplug_slot
);
pci_hp_deregister
(
ehotk
->
hotplug_slot
);
...
@@ -1120,7 +1110,7 @@ static int eeepc_rfkill_init(struct device *dev)
...
@@ -1120,7 +1110,7 @@ static int eeepc_rfkill_init(struct device *dev)
* Refresh pci hotplug in case the rfkill state was changed during
* Refresh pci hotplug in case the rfkill state was changed during
* setup.
* setup.
*/
*/
eeepc_rfkill_hotplug
(
true
);
eeepc_rfkill_hotplug
();
exit:
exit:
if
(
result
&&
result
!=
-
ENODEV
)
if
(
result
&&
result
!=
-
ENODEV
)
...
...
drivers/thermal/thermal_sys.c
View file @
12308a2f
...
@@ -180,15 +180,15 @@ trip_point_type_show(struct device *dev, struct device_attribute *attr,
...
@@ -180,15 +180,15 @@ trip_point_type_show(struct device *dev, struct device_attribute *attr,
switch
(
type
)
{
switch
(
type
)
{
case
THERMAL_TRIP_CRITICAL
:
case
THERMAL_TRIP_CRITICAL
:
return
sprintf
(
buf
,
"critical"
);
return
sprintf
(
buf
,
"critical
\n
"
);
case
THERMAL_TRIP_HOT
:
case
THERMAL_TRIP_HOT
:
return
sprintf
(
buf
,
"hot"
);
return
sprintf
(
buf
,
"hot
\n
"
);
case
THERMAL_TRIP_PASSIVE
:
case
THERMAL_TRIP_PASSIVE
:
return
sprintf
(
buf
,
"passive"
);
return
sprintf
(
buf
,
"passive
\n
"
);
case
THERMAL_TRIP_ACTIVE
:
case
THERMAL_TRIP_ACTIVE
:
return
sprintf
(
buf
,
"active"
);
return
sprintf
(
buf
,
"active
\n
"
);
default:
default:
return
sprintf
(
buf
,
"unknown"
);
return
sprintf
(
buf
,
"unknown
\n
"
);
}
}
}
}
...
...
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