From: Len Brown <len.brown@intel.com>
To: linux-acpi@vger.kernel.org
Cc: Henrique de Moraes Holschuh <hmh@hmh.eng.br>,
Len Brown <len.brown@intel.com>
Subject: [PATCH 057/105] ACPI: thinkpad-acpi: use bitfields for module flags
Date: Sun, 29 Apr 2007 00:50:57 -0400 [thread overview]
Message-ID: <11778223581484-git-send-email-len.brown@intel.com> (raw)
Message-ID: <d8fd94d9f08237ffda7e44e6825b057bf20a90e3.1177822058.git.len.brown@intel.com> (raw)
In-Reply-To: <11778223571390-git-send-email-len.brown@intel.com>
In-Reply-To: <ac122bb64b0d51f0512185d3522a75f3f3a80bc9.1177822058.git.len.brown@intel.com>
From: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Use a bitfield to hold boolean module-wide flags, to conserve some memory.
It is easy and it is clean, so we do it just for the heck of it even if it
saves very little space.
Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Signed-off-by: Len Brown <len.brown@intel.com>
---
drivers/misc/thinkpad_acpi.c | 147 +++++++++++++++++++-----------------------
drivers/misc/thinkpad_acpi.h | 28 +++++----
2 files changed, 83 insertions(+), 92 deletions(-)
diff --git a/drivers/misc/thinkpad_acpi.c b/drivers/misc/thinkpad_acpi.c
index a5efd06..e2a1b63 100644
--- a/drivers/misc/thinkpad_acpi.c
+++ b/drivers/misc/thinkpad_acpi.c
@@ -501,8 +501,6 @@ static struct ibm_struct thinkpad_acpi_driver_data = {
* Hotkey subdriver
*/
-static int hotkey_supported;
-static int hotkey_mask_supported;
static int hotkey_orig_status;
static int hotkey_orig_mask;
@@ -513,30 +511,30 @@ static int __init hotkey_init(struct ibm_init_struct *iibm)
IBM_HANDLE_INIT(hkey);
/* hotkey not supported on 570 */
- hotkey_supported = hkey_handle != NULL;
+ tp_features.hotkey = hkey_handle != NULL;
vdbg_printk(TPACPI_DBG_INIT, "hotkeys are %s\n",
- str_supported(hotkey_supported));
+ str_supported(tp_features.hotkey));
- if (hotkey_supported) {
+ if (tp_features.hotkey) {
/* mask not supported on 570, 600e/x, 770e, 770x, A21e, A2xm/p,
A30, R30, R31, T20-22, X20-21, X22-24 */
- hotkey_mask_supported =
- acpi_evalf(hkey_handle, NULL, "DHKN", "qv");
+ tp_features.hotkey_mask =
+ acpi_evalf(hkey_handle, NULL, "DHKN", "qv");
vdbg_printk(TPACPI_DBG_INIT, "hotkey masks are %s\n",
- str_supported(hotkey_mask_supported));
+ str_supported(tp_features.hotkey_mask));
if (!hotkey_get(&hotkey_orig_status, &hotkey_orig_mask))
return -ENODEV;
}
- return (hotkey_supported)? 0 : 1;
+ return (tp_features.hotkey)? 0 : 1;
}
static void hotkey_exit(void)
{
- if (hotkey_supported) {
+ if (tp_features.hotkey) {
dbg_printk(TPACPI_DBG_EXIT, "restoring original hotkey mask\n");
hotkey_set(hotkey_orig_status, hotkey_orig_mask);
}
@@ -559,7 +557,7 @@ static int hotkey_get(int *status, int *mask)
if (!acpi_evalf(hkey_handle, status, "DHKC", "d"))
return 0;
- if (hotkey_mask_supported)
+ if (tp_features.hotkey_mask)
if (!acpi_evalf(hkey_handle, mask, "DHKN", "d"))
return 0;
@@ -573,7 +571,7 @@ static int hotkey_set(int status, int mask)
if (!acpi_evalf(hkey_handle, NULL, "MHKC", "vd", status))
return 0;
- if (hotkey_mask_supported)
+ if (tp_features.hotkey_mask)
for (i = 0; i < 32; i++) {
int bit = ((1 << i) & mask) != 0;
if (!acpi_evalf(hkey_handle,
@@ -589,7 +587,7 @@ static int hotkey_read(char *p)
int status, mask;
int len = 0;
- if (!hotkey_supported) {
+ if (!tp_features.hotkey) {
len += sprintf(p + len, "status:\t\tnot supported\n");
return len;
}
@@ -598,7 +596,7 @@ static int hotkey_read(char *p)
return -EIO;
len += sprintf(p + len, "status:\t\t%s\n", enabled(status, 0));
- if (hotkey_mask_supported) {
+ if (tp_features.hotkey_mask) {
len += sprintf(p + len, "mask:\t\t0x%04x\n", mask);
len += sprintf(p + len,
"commands:\tenable, disable, reset, <mask>\n");
@@ -616,7 +614,7 @@ static int hotkey_write(char *buf)
char *cmd;
int do_cmd = 0;
- if (!hotkey_supported)
+ if (!tp_features.hotkey)
return -ENODEV;
if (!hotkey_get(&status, &mask))
@@ -660,8 +658,6 @@ static struct ibm_struct hotkey_driver_data = {
* Bluetooth subdriver
*/
-static int bluetooth_supported;
-
static int __init bluetooth_init(struct ibm_init_struct *iibm)
{
vdbg_printk(TPACPI_DBG_INIT, "initializing bluetooth subdriver\n");
@@ -670,20 +666,20 @@ static int __init bluetooth_init(struct ibm_init_struct *iibm)
/* bluetooth not supported on 570, 600e/x, 770e, 770x, A21e, A2xm/p,
G4x, R30, R31, R40e, R50e, T20-22, X20-21 */
- bluetooth_supported = hkey_handle &&
+ tp_features.bluetooth = hkey_handle &&
acpi_evalf(hkey_handle, NULL, "GBDC", "qv");
vdbg_printk(TPACPI_DBG_INIT, "bluetooth is %s\n",
- str_supported(bluetooth_supported));
+ str_supported(tp_features.bluetooth));
- return (bluetooth_supported)? 0 : 1;
+ return (tp_features.bluetooth)? 0 : 1;
}
static int bluetooth_status(void)
{
int status;
- if (!bluetooth_supported ||
+ if (!tp_features.bluetooth ||
!acpi_evalf(hkey_handle, &status, "GBDC", "d"))
status = 0;
@@ -695,7 +691,7 @@ static int bluetooth_read(char *p)
int len = 0;
int status = bluetooth_status();
- if (!bluetooth_supported)
+ if (!tp_features.bluetooth)
len += sprintf(p + len, "status:\t\tnot supported\n");
else if (!(status & 1))
len += sprintf(p + len, "status:\t\tnot installed\n");
@@ -713,7 +709,7 @@ static int bluetooth_write(char *buf)
char *cmd;
int do_cmd = 0;
- if (!bluetooth_supported)
+ if (!tp_features.bluetooth)
return -ENODEV;
while ((cmd = next_cmd(&buf))) {
@@ -742,28 +738,27 @@ static struct ibm_struct bluetooth_driver_data = {
* Wan subdriver
*/
-static int wan_supported;
-
static int __init wan_init(struct ibm_init_struct *iibm)
{
vdbg_printk(TPACPI_DBG_INIT, "initializing wan subdriver\n");
IBM_HANDLE_INIT(hkey);
- wan_supported = hkey_handle &&
- acpi_evalf(hkey_handle, NULL, "GWAN", "qv");
+ tp_features.wan = hkey_handle &&
+ acpi_evalf(hkey_handle, NULL, "GWAN", "qv");
vdbg_printk(TPACPI_DBG_INIT, "wan is %s\n",
- str_supported(wan_supported));
+ str_supported(tp_features.wan));
- return (wan_supported)? 0 : 1;
+ return (tp_features.wan)? 0 : 1;
}
static int wan_status(void)
{
int status;
- if (!wan_supported || !acpi_evalf(hkey_handle, &status, "GWAN", "d"))
+ if (!tp_features.wan ||
+ !acpi_evalf(hkey_handle, &status, "GWAN", "d"))
status = 0;
return status;
@@ -774,7 +769,7 @@ static int wan_read(char *p)
int len = 0;
int status = wan_status();
- if (!wan_supported)
+ if (!tp_features.wan)
len += sprintf(p + len, "status:\t\tnot supported\n");
else if (!(status & 1))
len += sprintf(p + len, "status:\t\tnot installed\n");
@@ -792,7 +787,7 @@ static int wan_write(char *buf)
char *cmd;
int do_cmd = 0;
- if (!wan_supported)
+ if (!tp_features.wan)
return -ENODEV;
while ((cmd = next_cmd(&buf))) {
@@ -1051,9 +1046,6 @@ static struct ibm_struct video_driver_data = {
* Light (thinklight) subdriver
*/
-static int light_supported;
-static int light_status_supported;
-
IBM_HANDLE(lght, root, "\\LGHT"); /* A21e, A2xm/p, T20-22, X20-21 */
IBM_HANDLE(ledb, ec, "LEDB"); /* G4x */
@@ -1066,18 +1058,18 @@ static int __init light_init(struct ibm_init_struct *iibm)
IBM_HANDLE_INIT(cmos);
/* light not supported on 570, 600e/x, 770e, 770x, G4x, R30, R31 */
- light_supported = (cmos_handle || lght_handle) && !ledb_handle;
+ tp_features.light = (cmos_handle || lght_handle) && !ledb_handle;
- if (light_supported)
+ if (tp_features.light)
/* light status not supported on
570, 600e/x, 770e, 770x, G4x, R30, R31, R32, X20 */
- light_status_supported = acpi_evalf(ec_handle, NULL,
- "KBLT", "qv");
+ tp_features.light_status =
+ acpi_evalf(ec_handle, NULL, "KBLT", "qv");
vdbg_printk(TPACPI_DBG_INIT, "light is %s\n",
- str_supported(light_supported));
+ str_supported(tp_features.light));
- return (light_supported)? 0 : 1;
+ return (tp_features.light)? 0 : 1;
}
static int light_read(char *p)
@@ -1085,9 +1077,9 @@ static int light_read(char *p)
int len = 0;
int status = 0;
- if (!light_supported) {
+ if (!tp_features.light) {
len += sprintf(p + len, "status:\t\tnot supported\n");
- } else if (!light_status_supported) {
+ } else if (!tp_features.light_status) {
len += sprintf(p + len, "status:\t\tunknown\n");
len += sprintf(p + len, "commands:\ton, off\n");
} else {
@@ -1106,7 +1098,7 @@ static int light_write(char *buf)
char *cmd;
int success;
- if (!light_supported)
+ if (!tp_features.light)
return -ENODEV;
while ((cmd = next_cmd(&buf))) {
@@ -1251,11 +1243,6 @@ static struct ibm_struct dock_driver_data[2] = {
*/
#ifdef CONFIG_THINKPAD_ACPI_BAY
-static int bay_status_supported;
-static int bay_status2_supported;
-static int bay_eject_supported;
-static int bay_eject2_supported;
-
IBM_HANDLE(bay, root, "\\_SB.PCI.IDE.SECN.MAST", /* 570 */
"\\_SB.PCI0.IDE0.IDES.IDSM", /* 600e/x, 770e, 770x */
"\\_SB.PCI0.SATA.SCND.MSTR", /* T60, X60, Z60 */
@@ -1282,25 +1269,25 @@ static int __init bay_init(struct ibm_init_struct *iibm)
if (bay2_handle)
IBM_HANDLE_INIT(bay2_ej);
- bay_status_supported = bay_handle &&
- acpi_evalf(bay_handle, NULL, "_STA", "qv");
- bay_status2_supported = bay2_handle &&
- acpi_evalf(bay2_handle, NULL, "_STA", "qv");
+ tp_features.bay_status = bay_handle &&
+ acpi_evalf(bay_handle, NULL, "_STA", "qv");
+ tp_features.bay_status2 = bay2_handle &&
+ acpi_evalf(bay2_handle, NULL, "_STA", "qv");
- bay_eject_supported = bay_handle && bay_ej_handle &&
- (strlencmp(bay_ej_path, "_EJ0") == 0 || experimental);
- bay_eject2_supported = bay2_handle && bay2_ej_handle &&
- (strlencmp(bay2_ej_path, "_EJ0") == 0 || experimental);
+ tp_features.bay_eject = bay_handle && bay_ej_handle &&
+ (strlencmp(bay_ej_path, "_EJ0") == 0 || experimental);
+ tp_features.bay_eject2 = bay2_handle && bay2_ej_handle &&
+ (strlencmp(bay2_ej_path, "_EJ0") == 0 || experimental);
vdbg_printk(TPACPI_DBG_INIT,
"bay 1: status %s, eject %s; bay 2: status %s, eject %s\n",
- str_supported(bay_status_supported),
- str_supported(bay_eject_supported),
- str_supported(bay_status2_supported),
- str_supported(bay_eject2_supported));
+ str_supported(tp_features.bay_status),
+ str_supported(tp_features.bay_eject),
+ str_supported(tp_features.bay_status2),
+ str_supported(tp_features.bay_eject2));
- return (bay_status_supported || bay_eject_supported ||
- bay_status2_supported || bay_eject2_supported)? 0 : 1;
+ return (tp_features.bay_status || tp_features.bay_eject ||
+ tp_features.bay_status2 || tp_features.bay_eject2)? 0 : 1;
}
static void bay_notify(struct ibm_struct *ibm, u32 event)
@@ -1317,15 +1304,16 @@ static int bay_read(char *p)
int occupied2 = bay_occupied(bay2);
int eject, eject2;
- len += sprintf(p + len, "status:\t\t%s\n", bay_status_supported ?
- (occupied ? "occupied" : "unoccupied") :
- "not supported");
- if (bay_status2_supported)
+ len += sprintf(p + len, "status:\t\t%s\n",
+ tp_features.bay_status ?
+ (occupied ? "occupied" : "unoccupied") :
+ "not supported");
+ if (tp_features.bay_status2)
len += sprintf(p + len, "status2:\t%s\n", occupied2 ?
"occupied" : "unoccupied");
- eject = bay_eject_supported && occupied;
- eject2 = bay_eject2_supported && occupied2;
+ eject = tp_features.bay_eject && occupied;
+ eject2 = tp_features.bay_eject2 && occupied2;
if (eject && eject2)
len += sprintf(p + len, "commands:\teject, eject2\n");
@@ -1341,14 +1329,14 @@ static int bay_write(char *buf)
{
char *cmd;
- if (!bay_eject_supported && !bay_eject2_supported)
+ if (!tp_features.bay_eject && !tp_features.bay_eject2)
return -ENODEV;
while ((cmd = next_cmd(&buf))) {
- if (bay_eject_supported && strlencmp(cmd, "eject") == 0) {
+ if (tp_features.bay_eject && strlencmp(cmd, "eject") == 0) {
if (!acpi_evalf(bay_ej_handle, NULL, NULL, "vd", 1))
return -EIO;
- } else if (bay_eject2_supported &&
+ } else if (tp_features.bay_eject2 &&
strlencmp(cmd, "eject2") == 0) {
if (!acpi_evalf(bay2_ej_handle, NULL, NULL, "vd", 1))
return -EIO;
@@ -2188,7 +2176,6 @@ static enum fan_status_access_mode fan_status_access_mode;
static enum fan_control_access_mode fan_control_access_mode;
static enum fan_control_commands fan_control_commands;
-static int fan_control_status_known;
static u8 fan_control_initial_status;
static void fan_watchdog_fire(struct work_struct *ignored);
@@ -2210,8 +2197,8 @@ static int __init fan_init(struct ibm_init_struct *iibm)
fan_status_access_mode = TPACPI_FAN_NONE;
fan_control_access_mode = TPACPI_FAN_WR_NONE;
fan_control_commands = 0;
- fan_control_status_known = 1;
fan_watchdog_maxinterval = 0;
+ tp_features.fan_ctrl_status_undef = 0;
IBM_HANDLE_INIT(fans);
IBM_HANDLE_INIT(gfan);
@@ -2248,7 +2235,7 @@ static int __init fan_init(struct ibm_init_struct *iibm)
"fan_init: initial fan status is "
"unknown, assuming it is in auto "
"mode\n");
- fan_control_status_known = 0;
+ tp_features.fan_ctrl_status_undef = 1;
}
} else {
printk(IBM_ERR
@@ -2411,7 +2398,7 @@ static int fan_set_level(int level)
if (!acpi_ec_write(fan_status_offset, level))
return -EIO;
else
- fan_control_status_known = 1;
+ tp_features.fan_ctrl_status_undef = 0;
break;
default:
@@ -2438,7 +2425,7 @@ static int fan_set_enable(void)
if (!acpi_ec_write(fan_status_offset, s))
return -EIO;
else
- fan_control_status_known = 1;
+ tp_features.fan_ctrl_status_undef = 0;
break;
case TPACPI_FAN_WR_ACPI_SFAN:
@@ -2469,7 +2456,7 @@ static int fan_set_disable(void)
if (!acpi_ec_write(fan_status_offset, 0x00))
return -EIO;
else
- fan_control_status_known = 1;
+ tp_features.fan_ctrl_status_undef = 0;
break;
case TPACPI_FAN_WR_ACPI_SFAN:
@@ -2524,9 +2511,9 @@ static int fan_read(char *p)
if ((rc = fan_get_status(&status)) < 0)
return rc;
- if (unlikely(!fan_control_status_known)) {
+ if (unlikely(tp_features.fan_ctrl_status_undef)) {
if (status != fan_control_initial_status)
- fan_control_status_known = 1;
+ tp_features.fan_ctrl_status_undef = 0;
else
/* Return most likely status. In fact, it
* might be the only possible status */
diff --git a/drivers/misc/thinkpad_acpi.h b/drivers/misc/thinkpad_acpi.h
index 8b72061..4d3ab40 100644
--- a/drivers/misc/thinkpad_acpi.h
+++ b/drivers/misc/thinkpad_acpi.h
@@ -173,6 +173,22 @@ struct ibm_init_struct {
struct ibm_struct *data;
};
+static struct {
+#ifdef CONFIG_THINKPAD_ACPI_BAY
+ u16 bay_status:1;
+ u16 bay_eject:1;
+ u16 bay_status2:1;
+ u16 bay_eject2:1;
+#endif
+ u16 bluetooth:1;
+ u16 hotkey:1;
+ u16 hotkey_mask:1;
+ u16 light:1;
+ u16 light_status:1;
+ u16 wan:1;
+ u16 fan_ctrl_status_undef:1;
+} tp_features;
+
static struct list_head tpacpi_all_drivers;
static struct ibm_init_struct ibms_init[];
@@ -193,9 +209,6 @@ static int thinkpad_acpi_driver_read(char *p);
*/
#ifdef CONFIG_THINKPAD_ACPI_BAY
-static int bay_status_supported, bay_eject_supported;
-static int bay_status2_supported, bay_eject2_supported;
-
static acpi_handle bay_handle, bay_ej_handle;
static acpi_handle bay2_handle, bay2_ej_handle;
@@ -220,8 +233,6 @@ static int beep_write(char *buf);
* Bluetooth subdriver
*/
-static int bluetooth_supported;
-
static int bluetooth_init(struct ibm_init_struct *iibm);
static int bluetooth_status(void);
static int bluetooth_read(char *p);
@@ -311,7 +322,6 @@ enum fan_control_commands {
static enum fan_status_access_mode fan_status_access_mode;
static enum fan_control_access_mode fan_control_access_mode;
static enum fan_control_commands fan_control_commands;
-static int fan_control_status_known;
static u8 fan_control_initial_status;
static int fan_watchdog_maxinterval;
@@ -340,8 +350,6 @@ static int fan_write_cmd_watchdog(const char *cmd, int *rc);
* Hotkey subdriver
*/
-static int hotkey_supported;
-static int hotkey_mask_supported;
static int hotkey_orig_status;
static int hotkey_orig_mask;
@@ -382,8 +390,6 @@ static int led_write(char *buf);
* Light (thinklight) subdriver
*/
-static int light_supported;
-static int light_status_supported;
static acpi_handle lght_handle, ledb_handle;
static int light_init(struct ibm_init_struct *iibm);
@@ -453,8 +459,6 @@ static int volume_write(char *buf);
* Wan subdriver
*/
-static int wan_supported;
-
static int wan_init(struct ibm_init_struct *iibm);
static int wan_status(void);
static int wan_read(char *p);
--
1.5.2.rc0.34.gda94
next prev parent reply other threads:[~2007-04-29 4:52 UTC|newest]
Thread overview: 89+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-04-29 4:50 ACPI patches for 2.6.22 merge window Len Brown
[not found] ` <11778223068-git-send-email-len.brown@intel.com>
[not found] ` <ac122bb64b0d51f0512185d3522a75f3f3a80bc9.1177822058.git.len.brown@intel.com>
[not found] ` <a5f8dee2d367e69fd57f5ea107072bb72eb15327.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 002/105] ACPI: EC: Don't use Global Lock if not asked to do so Len Brown
[not found] ` <33d20b6100d05a0b14883e7dc8ab41e4531fcf59.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 003/105] ACPI: EC: Make EC to initialize first in ACPI Len Brown
[not found] ` <33c7a0738c5f753a7d94fd3b2ec7d84e79a141a8.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 004/105] ACPI: EC: "Fake ECDT" workaround is not needed any longer Len Brown
[not found] ` <c45aac43fec2d6ca8d0be8408f94e8176c8110ef.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 005/105] ACPI: EC: enable burst functionality in EC Len Brown
[not found] ` <3d02b90be2c7bc7ffbc5e502a135c13838d23ef4.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 006/105] ACPI: EC: Remove casts to/from void* from ec.c Len Brown
[not found] ` <e8284321048aac7be307b3ec5e0631f5c514935a.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 007/105] ACPI: EC: Put install handlers into separate function Len Brown
[not found] ` <c0900c3512dc8fd0b37f8fbcebc7853ed9efff10.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 008/105] ACPI: EC: Clean ECDT and namespace parsing Len Brown
[not found] ` <d66d969df88c742494736ed06eeaf3229d3a7259.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 009/105] ACPI: EC: Rename ec_ecdt to more informative boot_ec Len Brown
[not found] ` <d033879c9838b960014e861d0eb3bdf11d3b9d9d.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 010/105] ACPI: EC: first_ec is better to be acpi_ec than acpi_device Len Brown
[not found] ` <01f2246269639f6aa93086719a8dbec26cb68e98.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 011/105] ACPI: EC: Cleanup of EC initialization Len Brown
[not found] ` <9fd9f8e8bdcfc9aa309dae5bccc55d02804337d0.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 012/105] ACPI: EC: Block queries until EC is fully initialized Len Brown
[not found] ` <9a8168500674b1062afe438d34d0c8216d38dc31.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 013/105] asus-laptop: use acpi_evaluate_integer instead of read_acpi_int Len Brown
[not found] ` <935ffeeca84fe5d48d0cc9f35c58db42b384229f.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 014/105] asus-laptop: clean write_status Len Brown
[not found] ` <fdd8d08084663242b42e27f7d71739f3f9009286.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 015/105] asus-laptop: add GLED Len Brown
[not found] ` <185e5af98b1e09b1e0f859332243223776b2ad57.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 016/105] asus-laptop: add wapf param Len Brown
[not found] ` <8ec555c2c4c6c33759a1dbb13fa8f3b14fc77e10.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 017/105] asus-laptop: version bump Len Brown
[not found] ` <6d15702cc07503b74494dc4f1ddb15f354987b14.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 018/105] ACPI: sbs: use EC rather than I2C Len Brown
[not found] ` <b4150fc4ae20621edf2f8e1ea5ce13eb2c803e7a.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 019/105] ACPI: sbs: remove I2C Kconfig dependency Len Brown
[not found] ` <84cb55987236ffea062a35fbe1441768b6bb2722.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 020/105] ACPI: sbs: remove I2C Makefile hooks Len Brown
[not found] ` <6845118b3b7a9cc2ba14dc665370217bc3ba8057.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 021/105] ACPI: sbs: Debug messages correction/improvement Len Brown
[not found] ` <722062334b972c31a3b83dbf7e9b5a58bb2707dd.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 022/105] ACPI: sbs: Common interface with CM battery Len Brown
[not found] ` <439a888885c584f7ac8536a43be80475f9eaed71.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 023/105] ACPI: sbs: remove i2c_ec.[ch] Len Brown
[not found] ` <837ca6ddb440c186eaa8e01b69486581d3457f2c.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 024/105] ACPI: ibm-acpi: kill trailing whitespace Len Brown
[not found] ` <e062e0343871a41e8ec408f1c1e8ac3b0310da9d.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 025/105] ACPI: ibm-acpi: rename some identifiers Len Brown
[not found] ` <1406cdd1760743106278c1f02a0f445159c8f400.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 026/105] ACPI: ibm-acpi: add header file Len Brown
[not found] ` <56b6aeb05890f219895197f5166637b3d7a6f679.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 027/105] ACPI: ibm-acpi: organize code Len Brown
[not found] ` <a62bc916cf48caaf9efa2fed20440fd617647c6c.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 028/105] ACPI: ibm-acpi: update copyright notice Len Brown
[not found] ` <38f996ed21089fa4ae40526a5f428e3c792ea561.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 029/105] ACPI: ibm-acpi: update documentation Len Brown
[not found] ` <62a6d7fd9bc1d85f9aae734c46234e88fa839db0.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 031/105] ACPI: dock: use NULL for pointer Len Brown
[not found] ` <85998248b2e8c6ae7d3ad1fa7b059aed22205ec4.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 033/105] ACPI: thinkpad-acpi: cleanup Kconfig for thinkpad-acpi Len Brown
[not found] ` <d903ac5455102b13d0e28d6a39f640175fb4cd4d.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 034/105] ACPI: thinkpad-acpi: add compatibility MODULE_ALIAS entry Len Brown
[not found] ` <643f12dbb660e139fbaea268f3e3ce4d7d594b8f.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 035/105] ACPI: thinkpad-acpi: cleanup after rename Len Brown
[not found] ` <756970ad4bb93027a60da2de9b43d094b7f387a2.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 036/105] ACPI: thinkpad-acpi: update MAINTAINERS Len Brown
[not found] ` <11778223411658-git-send-email-len.brown@intel.com>
[not found] ` <11778223412672-git-send-email-len.brown@intel.com>
[not found] ` <11778223423-git-send-email-len.brown@intel.com>
[not found] ` <1177822343712-git-send-email-len.brown@intel.com>
[not found] ` <11778223442065-git-send-email-len.brown@intel.com>
[not found] ` <11778223452843-git-send-email-len.brown@intel.com>
[not found] ` <11778223461282-git-send-email-len.brown@intel.com>
[not found] ` <11778223472316-git-send-email-len.brown@intel.com>
[not found] ` <6700121b535fa16fe1c8aaac03559b2f12909726.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 046/105] ACPI: thinkpad-acpi: rename register_ibmacpi_subdriver Len Brown
[not found] ` <142cfc90f026b0b8fd1a14ba11ae29eb7b1b6ca1.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 047/105] ACPI: thinkpad-acpi: rename one stray use of ibm-acpi in a comment Len Brown
[not found] ` <1def7115f0277ce9d2a54efd0ae187aa88d5c7fa.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 048/105] ACPI: thinkpad-acpi: rename module glue Len Brown
[not found] ` <efa27145df34eacf2569bd45f68dbe00003d3616.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 049/105] ACPI: thinkpad-acpi: rename thinkpad constants Len Brown
[not found] ` <f51d1a39840ae5e8678d702ab57377c611fc3826.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 050/105] ACPI: thinkpad-acpi: update fan firmware documentation Len Brown
[not found] ` <132ce09123755ec5e3d3a8ae22f4f753c3baac97.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 051/105] ACPI: thinkpad-acpi: add debug mode Len Brown
[not found] ` <5fba344cfdbaa79e6320da26c3db34dfb219a845.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 052/105] ACPI: thinkpad-acpi: clean up probing and move init to subdrivers Len Brown
[not found] ` <fe08bc4b4fd1371fad111675a564e4d2ebbf39ea.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 053/105] ACPI: thinkpad-acpi: add subdriver debug statements Len Brown
[not found] ` <a5763f2223ce3fdbc75923f8c948fc7b59ed2f96.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 054/105] ACPI: thinkpad-acpi: uncouple subdriver init from ibms struct Len Brown
[not found] ` <0dcef77c5b889338811d35e786b42046259fe433.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 055/105] ACPI: thinkpad-acpi: improve thinkpad detection Len Brown
[not found] ` <926411779287ad4f7013c9d80aa44fd131b70cd9.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 056/105] ACPI: thinkpad-acpi: use bitfields to hold subdriver flags Len Brown
[not found] ` <d8fd94d9f08237ffda7e44e6825b057bf20a90e3.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` Len Brown [this message]
[not found] ` <8d376cd6543d57ef10799be02ba5f19aa6678032.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 058/105] ACPI: thinkpad-acpi: prepare for device model conversion Len Brown
[not found] ` <d01320e606d334a0cd35d781a58f9f3c254829ab.1177822058.git.len.brown@intel.com>
2007-04-29 4:50 ` [PATCH 059/105] ACPI: thinkpad-acpi: mark acpi helper functions __must_check Len Brown
[not found] ` <b86c4722de62f336b82dff3c47ef59ba2a587ec1.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 060/105] ACPI: thinkpad-acpi: clean up hotkey subdriver Len Brown
[not found] ` <d6fdd1e91a8a4cd852dc1d945165e3a69ac9e257.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 061/105] ACPI: thinkpad-acpi: cleanup bluetooth and wan for sysfs conversion Len Brown
[not found] ` <83f34724643a3b0ec9322490b9ad9f1b60170a6c.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 062/105] ACPI: thinkpad-acpi: cleanup video subdriver Len Brown
[not found] ` <c9bea99c1a712548db3437cbca52b0da8f30069c.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 063/105] ACPI: thinkpad-acpi: clean up CMOS commands subdriver Len Brown
[not found] ` <04cc862c1893a055ab1117fa6f3aa0886c0ba032.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 064/105] ACPI: thinkpad-acpi: cleanup thermal subdriver for sysfs conversion Len Brown
[not found] ` <99fba3f8177956170f3d86f83c2cf2f70747105f.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 065/105] ACPI: thinkpad-acpi: improve fan watchdog messages Len Brown
[not found] ` <f8993aff8b4de0317c6e081802ca5c86c449fef2.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 066/105] ACPI: Disable MSI on request of FADT Len Brown
[not found] ` <f989106cac719f8fe91da7734e73b3ca09146ecc.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 067/105] ACPI: Improve acpi debug documentation Len Brown
[not found] ` <54ae15014c306b3d7ad32c996fea9a5ac8560b60.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 068/105] ACPI: thinkpad-acpi: register with the device model Len Brown
[not found] ` <176750d68801bfa4a88d1cf54174aa0347d7e5d8.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 069/105] ACPI: thinkpad-acpi: driver sysfs conversion Len Brown
[not found] ` <7252374a39d794879f5e47bcfa0a16e7599b27b5.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 070/105] ACPI: thinkpad-acpi: add infrastructure for the sysfs device attributes Len Brown
[not found] ` <40ca9fdf8aa7d929e2b8939be1e6380d107381e1.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 071/105] ACPI: thinkpad-acpi: protect fan and hotkey data structures Len Brown
[not found] ` <2c37aa4e22dd55070c608290c5031f2ee93e69ce.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 072/105] ACPI: thinkpad-acpi: add sysfs support to the thermal subdriver Len Brown
[not found] ` <fe98a52ce7540fb3a19d57488a08864110cf4d5c.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 073/105] ACPI: thinkpad-acpi: add sysfs support to fan subdriver Len Brown
[not found] ` <eaa7571b2d1a08873e4bdd8e6db3431df61cd9ad.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 074/105] ACPI: thinkpad-acpi: add a safety net for TPEC fan control mode Len Brown
[not found] ` <b616004c70dd7f60a1477c3e9d6fddd00ee1fa37.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 075/105] ACPI: thinkpad-acpi: add sysfs support to the cmos command subdriver Len Brown
[not found] ` <7d5a015eece8be9186d3613d595643a520555e33.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 076/105] ACPI: thinkpad-acpi: update brightness sysfs interface support Len Brown
[not found] ` <d8938801d10945ac2fbe0f41ded43f6276660a17.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 077/105] ACPI: remove duplicate include Len Brown
[not found] ` <a0bd4ac498acfe60f7533d15ba60d5efdd4e9ca5.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 078/105] ACPI: Remove duplicate definitions for _STA bits Len Brown
[not found] ` <0c0e8921018dbb4fe189a1034f80ac32553bc7bc.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 079/105] ACPI: use _STA bit names rather than 0x0F Len Brown
[not found] ` <8ce8e2f99a973c39c4aeddbe0966038196a8e71a.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 080/105] ACPI: correct pathname in comment Len Brown
[not found] ` <cf6c6045a06aed2ccd8ebd0a3128ce0f2f8a11aa.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 081/105] ACPI: word-smith kconfig help Len Brown
[not found] ` <8aa55591bfea25c441117e82711cbfd7c274250a.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 082/105] ACPI: make /proc/acpi/wakeup more useful Len Brown
[not found] ` <b2983f10f87423fab92326bbe1e92e2256573d4f.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 083/105] ACPI: prevent ACPI quirk warning mass spamming in logs Len Brown
2007-04-29 9:58 ` Andi Kleen
[not found] ` <afd3810d9b6b0d446a34e1d4e94f0cc020b00a14.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 084/105] ACPI: Remove a warning about unused variable in !CONFIG_ACPI compilation Len Brown
2007-04-29 9:59 ` Andi Kleen
[not found] ` <79fff270026dc46634563a29b99e4034028ee919.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 085/105] ACPICA: clear fields reserved before FADT r3 Len Brown
[not found] ` <ecf2a80a97b3d38ae008fa8a3cb98cd540ac1eae.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 086/105] ACPI: thinkpad-acpi: add a fan-control feature master toggle Len Brown
[not found] ` <4985cd0a63b0713b6469ef01aae6a0e63ea72f83.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 087/105] ACPI: thinkpad-acpi: do not arm fan watchdog if it would not work Len Brown
[not found] ` <ca4ac2f48a4502bbbfcb47b86312273c28194f53.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 088/105] ACPI: thinkpad-acpi: fix a fan watchdog invocation Len Brown
[not found] ` <c573ddb998456a89a5ccb83a922d2c8ba18484a6.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 089/105] ACPI: thinkpad-acpi: map ENXIO to EINVAL for fan sysfs Len Brown
[not found] ` <b39fe582eb9252dca9a62f7135bcad2e486083e5.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 090/105] ACPI: thinkpad-acpi: improve fan control documentation Len Brown
[not found] ` <5ae930e685018e2dc6d4139362213e4b283e5700.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 091/105] ACPI: thinkpad-acpi: improve debugging for acpi helpers Len Brown
[not found] ` <d94a7f16cad7700f8d2b142cc13cfba5387af3db.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 092/105] ACPI: thinkpad-acpi: improve dock subdriver initialization Len Brown
[not found] ` <a0416420e2c6244792d6f308183ad57c40532078.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 093/105] ACPI: thinkpad-acpi: add sysfs support to hotkey subdriver Len Brown
[not found] ` <d3a6ade4f84416d774c3e5db5faae1840d55bd97.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 094/105] ACPI: thinkpad-acpi: add sysfs support to wan and bluetooth subdrivers Len Brown
[not found] ` <836a53f42f3b5d5cb3a0751587ea33801e4b120d.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 095/105] thinkpad-acpi: make drivers/misc/thinkpad_acpi:fan_mutex static Len Brown
[not found] ` <11778223931192-git-send-email-len.brown@intel.com>
[not found] ` <11778223942367-git-send-email-len.brown@intel.com>
[not found] ` <11778223942377-git-send-email-len.brown@intel.com>
[not found] ` <1177822395384-git-send-email-len.brown@intel.com>
[not found] ` <11778223963095-git-send-email-len.brown@intel.com>
[not found] ` <11778223972558-git-send-email-len.brown@intel.com>
[not found] ` <11778223981263-git-send-email-len.brown@intel.com>
[not found] ` <117782239917-git-send-email-len.brown@intel.com>
[not found] ` <c6c60106b9584f17c55e4c5e0ce9b905a1a6cdb6.1177822058.git.len.brown@intel.com>
2007-04-29 4:51 ` [PATCH 105/105] sonypi: use mutex instead of semaphore Len Brown
2007-05-01 2:19 ` ACPI patches for 2.6.22 merge window Mattia Dongili
2007-05-10 6:44 ` Len Brown
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=11778223581484-git-send-email-len.brown@intel.com \
--to=len.brown@intel.com \
--cc=hmh@hmh.eng.br \
--cc=linux-acpi@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox