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
nexedi
linux
Commits
7e318424
Commit
7e318424
authored
Oct 26, 2010
by
Len Brown
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'misc' into release
parents
1bd64d42
b1d248d9
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
20 additions
and
240 deletions
+20
-240
MAINTAINERS
MAINTAINERS
+0
-15
drivers/acpi/Kconfig
drivers/acpi/Kconfig
+1
-1
drivers/acpi/bus.c
drivers/acpi/bus.c
+6
-1
drivers/acpi/dock.c
drivers/acpi/dock.c
+3
-3
drivers/acpi/osl.c
drivers/acpi/osl.c
+0
-25
drivers/acpi/processor_driver.c
drivers/acpi/processor_driver.c
+0
-2
drivers/acpi/processor_thermal.c
drivers/acpi/processor_thermal.c
+0
-178
drivers/acpi/sleep.c
drivers/acpi/sleep.c
+10
-2
drivers/acpi/sleep.h
drivers/acpi/sleep.h
+0
-1
include/acpi/acpi_drivers.h
include/acpi/acpi_drivers.h
+0
-2
include/acpi/acpiosxf.h
include/acpi/acpiosxf.h
+0
-2
include/linux/acpi.h
include/linux/acpi.h
+0
-8
No files found.
MAINTAINERS
View file @
7e318424
...
...
@@ -241,21 +241,6 @@ F: drivers/pnp/pnpacpi/
F: include/linux/acpi.h
F: include/acpi/
ACPI BATTERY DRIVERS
M: Alexey Starikovskiy <astarikovskiy@suse.de>
L: linux-acpi@vger.kernel.org
W: http://www.lesswatts.org/projects/acpi/
S: Supported
F: drivers/acpi/battery.c
F: drivers/acpi/*sbs*
ACPI EC DRIVER
M: Alexey Starikovskiy <astarikovskiy@suse.de>
L: linux-acpi@vger.kernel.org
W: http://www.lesswatts.org/projects/acpi/
S: Supported
F: drivers/acpi/ec.c
ACPI FAN DRIVER
M: Zhang Rui <rui.zhang@intel.com>
L: linux-acpi@vger.kernel.org
...
...
drivers/acpi/Kconfig
View file @
7e318424
...
...
@@ -9,7 +9,6 @@ menuconfig ACPI
depends on PCI
depends on PM
select PNP
select CPU_IDLE
default y
help
Advanced Configuration and Power Interface (ACPI) support for
...
...
@@ -200,6 +199,7 @@ config ACPI_DOCK
config ACPI_PROCESSOR
tristate "Processor"
select THERMAL
select CPU_IDLE
default y
help
This driver installs ACPI as the idle handler for Linux and uses
...
...
drivers/acpi/bus.c
View file @
7e318424
...
...
@@ -935,6 +935,12 @@ static int __init acpi_bus_init(void)
goto
error1
;
}
/*
* _PDC control method may load dynamic SSDT tables,
* and we need to install the table handler before that.
*/
acpi_sysfs_init
();
acpi_early_processor_set_pdc
();
/*
...
...
@@ -1026,7 +1032,6 @@ static int __init acpi_init(void)
acpi_scan_init
();
acpi_ec_init
();
acpi_power_init
();
acpi_sysfs_init
();
acpi_debugfs_init
();
acpi_sleep_proc_init
();
acpi_wakeup_device_init
();
...
...
drivers/acpi/dock.c
View file @
7e318424
...
...
@@ -930,7 +930,7 @@ static struct attribute_group dock_attribute_group = {
* allocated and initialize a new dock station device. Find all devices
* that are on the dock station, and register for dock event notifications.
*/
static
int
dock_add
(
acpi_handle
handle
)
static
int
__init
dock_add
(
acpi_handle
handle
)
{
int
ret
,
id
;
struct
dock_station
ds
,
*
dock_station
;
...
...
@@ -1024,7 +1024,7 @@ static int dock_remove(struct dock_station *ds)
*
* This is called by acpi_walk_namespace to look for dock stations.
*/
static
acpi_status
static
__init
acpi_status
find_dock
(
acpi_handle
handle
,
u32
lvl
,
void
*
context
,
void
**
rv
)
{
if
(
is_dock
(
handle
))
...
...
@@ -1033,7 +1033,7 @@ find_dock(acpi_handle handle, u32 lvl, void *context, void **rv)
return
AE_OK
;
}
static
acpi_status
static
__init
acpi_status
find_bay
(
acpi_handle
handle
,
u32
lvl
,
void
*
context
,
void
**
rv
)
{
/* If bay is a dock, it's already handled */
...
...
drivers/acpi/osl.c
View file @
7e318424
...
...
@@ -874,16 +874,6 @@ void acpi_os_wait_events_complete(void *context)
EXPORT_SYMBOL
(
acpi_os_wait_events_complete
);
/*
* Allocate the memory for a spinlock and initialize it.
*/
acpi_status
acpi_os_create_lock
(
acpi_spinlock
*
handle
)
{
spin_lock_init
(
*
handle
);
return
AE_OK
;
}
/*
* Deallocate the memory for a spinlock.
*/
...
...
@@ -1265,21 +1255,6 @@ int acpi_check_region(resource_size_t start, resource_size_t n,
}
EXPORT_SYMBOL
(
acpi_check_region
);
int
acpi_check_mem_region
(
resource_size_t
start
,
resource_size_t
n
,
const
char
*
name
)
{
struct
resource
res
=
{
.
start
=
start
,
.
end
=
start
+
n
-
1
,
.
name
=
name
,
.
flags
=
IORESOURCE_MEM
,
};
return
acpi_check_resource_conflict
(
&
res
);
}
EXPORT_SYMBOL
(
acpi_check_mem_region
);
/*
* Let drivers know whether the resource checks are effective
*/
...
...
drivers/acpi/processor_driver.c
View file @
7e318424
...
...
@@ -917,6 +917,4 @@ static void __exit acpi_processor_exit(void)
module_init
(
acpi_processor_init
);
module_exit
(
acpi_processor_exit
);
EXPORT_SYMBOL
(
acpi_processor_set_thermal_limit
);
MODULE_ALIAS
(
"processor"
);
drivers/acpi/processor_thermal.c
View file @
7e318424
...
...
@@ -44,47 +44,6 @@
#define _COMPONENT ACPI_PROCESSOR_COMPONENT
ACPI_MODULE_NAME
(
"processor_thermal"
);
/* --------------------------------------------------------------------------
Limit Interface
-------------------------------------------------------------------------- */
static
int
acpi_processor_apply_limit
(
struct
acpi_processor
*
pr
)
{
int
result
=
0
;
u16
px
=
0
;
u16
tx
=
0
;
if
(
!
pr
)
return
-
EINVAL
;
if
(
!
pr
->
flags
.
limit
)
return
-
ENODEV
;
if
(
pr
->
flags
.
throttling
)
{
if
(
pr
->
limit
.
user
.
tx
>
tx
)
tx
=
pr
->
limit
.
user
.
tx
;
if
(
pr
->
limit
.
thermal
.
tx
>
tx
)
tx
=
pr
->
limit
.
thermal
.
tx
;
result
=
acpi_processor_set_throttling
(
pr
,
tx
,
false
);
if
(
result
)
goto
end
;
}
pr
->
limit
.
state
.
px
=
px
;
pr
->
limit
.
state
.
tx
=
tx
;
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"Processor [%d] limit set to (P%d:T%d)
\n
"
,
pr
->
id
,
pr
->
limit
.
state
.
px
,
pr
->
limit
.
state
.
tx
));
end:
if
(
result
)
printk
(
KERN_ERR
PREFIX
"Unable to set limit
\n
"
);
return
result
;
}
#ifdef CONFIG_CPU_FREQ
/* If a passive cooling situation is detected, primarily CPUfreq is used, as it
...
...
@@ -107,36 +66,6 @@ static int cpu_has_cpufreq(unsigned int cpu)
return
1
;
}
static
int
acpi_thermal_cpufreq_increase
(
unsigned
int
cpu
)
{
if
(
!
cpu_has_cpufreq
(
cpu
))
return
-
ENODEV
;
if
(
per_cpu
(
cpufreq_thermal_reduction_pctg
,
cpu
)
<
CPUFREQ_THERMAL_MAX_STEP
)
{
per_cpu
(
cpufreq_thermal_reduction_pctg
,
cpu
)
++
;
cpufreq_update_policy
(
cpu
);
return
0
;
}
return
-
ERANGE
;
}
static
int
acpi_thermal_cpufreq_decrease
(
unsigned
int
cpu
)
{
if
(
!
cpu_has_cpufreq
(
cpu
))
return
-
ENODEV
;
if
(
per_cpu
(
cpufreq_thermal_reduction_pctg
,
cpu
)
>
(
CPUFREQ_THERMAL_MIN_STEP
+
1
))
per_cpu
(
cpufreq_thermal_reduction_pctg
,
cpu
)
--
;
else
per_cpu
(
cpufreq_thermal_reduction_pctg
,
cpu
)
=
0
;
cpufreq_update_policy
(
cpu
);
/* We reached max freq again and can leave passive mode */
return
!
per_cpu
(
cpufreq_thermal_reduction_pctg
,
cpu
);
}
static
int
acpi_thermal_cpufreq_notifier
(
struct
notifier_block
*
nb
,
unsigned
long
event
,
void
*
data
)
{
...
...
@@ -238,113 +167,6 @@ static int acpi_thermal_cpufreq_decrease(unsigned int cpu)
#endif
int
acpi_processor_set_thermal_limit
(
acpi_handle
handle
,
int
type
)
{
int
result
=
0
;
struct
acpi_processor
*
pr
=
NULL
;
struct
acpi_device
*
device
=
NULL
;
int
tx
=
0
,
max_tx_px
=
0
;
if
((
type
<
ACPI_PROCESSOR_LIMIT_NONE
)
||
(
type
>
ACPI_PROCESSOR_LIMIT_DECREMENT
))
return
-
EINVAL
;
result
=
acpi_bus_get_device
(
handle
,
&
device
);
if
(
result
)
return
result
;
pr
=
acpi_driver_data
(
device
);
if
(
!
pr
)
return
-
ENODEV
;
/* Thermal limits are always relative to the current Px/Tx state. */
if
(
pr
->
flags
.
throttling
)
pr
->
limit
.
thermal
.
tx
=
pr
->
throttling
.
state
;
/*
* Our default policy is to only use throttling at the lowest
* performance state.
*/
tx
=
pr
->
limit
.
thermal
.
tx
;
switch
(
type
)
{
case
ACPI_PROCESSOR_LIMIT_NONE
:
do
{
result
=
acpi_thermal_cpufreq_decrease
(
pr
->
id
);
}
while
(
!
result
);
tx
=
0
;
break
;
case
ACPI_PROCESSOR_LIMIT_INCREMENT
:
/* if going up: P-states first, T-states later */
result
=
acpi_thermal_cpufreq_increase
(
pr
->
id
);
if
(
!
result
)
goto
end
;
else
if
(
result
==
-
ERANGE
)
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"At maximum performance state
\n
"
));
if
(
pr
->
flags
.
throttling
)
{
if
(
tx
==
(
pr
->
throttling
.
state_count
-
1
))
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"At maximum throttling state
\n
"
));
else
tx
++
;
}
break
;
case
ACPI_PROCESSOR_LIMIT_DECREMENT
:
/* if going down: T-states first, P-states later */
if
(
pr
->
flags
.
throttling
)
{
if
(
tx
==
0
)
{
max_tx_px
=
1
;
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"At minimum throttling state
\n
"
));
}
else
{
tx
--
;
goto
end
;
}
}
result
=
acpi_thermal_cpufreq_decrease
(
pr
->
id
);
if
(
result
)
{
/*
* We only could get -ERANGE, 1 or 0.
* In the first two cases we reached max freq again.
*/
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"At minimum performance state
\n
"
));
max_tx_px
=
1
;
}
else
max_tx_px
=
0
;
break
;
}
end:
if
(
pr
->
flags
.
throttling
)
{
pr
->
limit
.
thermal
.
px
=
0
;
pr
->
limit
.
thermal
.
tx
=
tx
;
result
=
acpi_processor_apply_limit
(
pr
);
if
(
result
)
printk
(
KERN_ERR
PREFIX
"Unable to set thermal limit
\n
"
);
ACPI_DEBUG_PRINT
((
ACPI_DB_INFO
,
"Thermal limit now (P%d:T%d)
\n
"
,
pr
->
limit
.
thermal
.
px
,
pr
->
limit
.
thermal
.
tx
));
}
else
result
=
0
;
if
(
max_tx_px
)
return
1
;
else
return
result
;
}
int
acpi_processor_get_limit_info
(
struct
acpi_processor
*
pr
)
{
...
...
drivers/acpi/sleep.c
View file @
7e318424
...
...
@@ -25,7 +25,7 @@
#include "internal.h"
#include "sleep.h"
u8
sleep_states
[
ACPI_S_STATE_COUNT
];
static
u8
sleep_states
[
ACPI_S_STATE_COUNT
];
static
u32
acpi_target_sleep_state
=
ACPI_STATE_S0
;
...
...
@@ -419,6 +419,14 @@ static struct dmi_system_id __initdata acpisleep_dmi_table[] = {
DMI_MATCH
(
DMI_PRODUCT_NAME
,
"Everex StepNote Series"
),
},
},
{
.
callback
=
init_nvs_nosave
,
.
ident
=
"Sony Vaio VPCEB1Z1E"
,
.
matches
=
{
DMI_MATCH
(
DMI_SYS_VENDOR
,
"Sony Corporation"
),
DMI_MATCH
(
DMI_PRODUCT_NAME
,
"VPCEB1Z1E"
),
},
},
{},
};
#endif
/* CONFIG_SUSPEND */
...
...
@@ -706,7 +714,7 @@ static void acpi_power_off(void)
* paths through the BIOS, so disable _GTS and _BFS by default,
* but do speak up and offer the option to enable them.
*/
void
__init
acpi_gts_bfs_check
(
void
)
static
void
__init
acpi_gts_bfs_check
(
void
)
{
acpi_handle
dummy
;
...
...
drivers/acpi/sleep.h
View file @
7e318424
extern
u8
sleep_states
[];
extern
int
acpi_suspend
(
u32
state
);
extern
void
acpi_enable_wakeup_devices
(
u8
sleep_state
);
...
...
include/acpi/acpi_drivers.h
View file @
7e318424
...
...
@@ -115,8 +115,6 @@ void pci_acpi_crs_quirks(void);
#define ACPI_PROCESSOR_LIMIT_INCREMENT 0x01
#define ACPI_PROCESSOR_LIMIT_DECREMENT 0x02
int
acpi_processor_set_thermal_limit
(
acpi_handle
handle
,
int
type
);
/*--------------------------------------------------------------------------
Dock Station
-------------------------------------------------------------------------- */
...
...
include/acpi/acpiosxf.h
View file @
7e318424
...
...
@@ -98,8 +98,6 @@ acpi_os_table_override(struct acpi_table_header *existing_table,
/*
* Spinlock primitives
*/
acpi_status
acpi_os_create_lock
(
acpi_spinlock
*
out_handle
);
void
acpi_os_delete_lock
(
acpi_spinlock
handle
);
acpi_cpu_flags
acpi_os_acquire_lock
(
acpi_spinlock
handle
);
...
...
include/linux/acpi.h
View file @
7e318424
...
...
@@ -245,8 +245,6 @@ int acpi_check_resource_conflict(const struct resource *res);
int
acpi_check_region
(
resource_size_t
start
,
resource_size_t
n
,
const
char
*
name
);
int
acpi_check_mem_region
(
resource_size_t
start
,
resource_size_t
n
,
const
char
*
name
);
int
acpi_resources_are_enforced
(
void
);
...
...
@@ -347,12 +345,6 @@ static inline int acpi_check_region(resource_size_t start, resource_size_t n,
return
0
;
}
static
inline
int
acpi_check_mem_region
(
resource_size_t
start
,
resource_size_t
n
,
const
char
*
name
)
{
return
0
;
}
struct
acpi_table_header
;
static
inline
int
acpi_table_parse
(
char
*
id
,
int
(
*
handler
)(
struct
acpi_table_header
*
))
...
...
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