aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorLen Brown <len.brown@intel.com>2009-04-05 01:52:07 -0400
committerLen Brown <len.brown@intel.com>2009-04-05 01:52:07 -0400
commit8a3f257c704e02aee9869decd069a806b45be3f1 (patch)
treeadb9d3766c57119381304c3b94334997cc7a74a7 /drivers
parent33526a53600ac887d100e3c9b4be3637ac8ae3a5 (diff)
parent15065531c1c5902775ae3ade24eb37d0e688353b (diff)
Merge branch 'misc' into release
Diffstat (limited to 'drivers')
-rw-r--r--drivers/acpi/dock.c3
-rw-r--r--drivers/acpi/pci_irq.c16
-rw-r--r--drivers/acpi/processor_throttling.c6
-rw-r--r--drivers/acpi/sleep.c9
-rw-r--r--drivers/platform/x86/panasonic-laptop.c9
-rw-r--r--drivers/platform/x86/tc1100-wmi.c7
6 files changed, 29 insertions, 21 deletions
diff --git a/drivers/acpi/dock.c b/drivers/acpi/dock.c
index 35094f230b1..8f62fa01a9c 100644
--- a/drivers/acpi/dock.c
+++ b/drivers/acpi/dock.c
@@ -1146,9 +1146,10 @@ static int __init dock_init(void)
1146static void __exit dock_exit(void) 1146static void __exit dock_exit(void)
1147{ 1147{
1148 struct dock_station *dock_station; 1148 struct dock_station *dock_station;
1149 struct dock_station *tmp;
1149 1150
1150 unregister_acpi_bus_notifier(&dock_acpi_notifier); 1151 unregister_acpi_bus_notifier(&dock_acpi_notifier);
1151 list_for_each_entry(dock_station, &dock_stations, sibiling) 1152 list_for_each_entry_safe(dock_station, tmp, &dock_stations, sibiling)
1152 dock_remove(dock_station); 1153 dock_remove(dock_station);
1153} 1154}
1154 1155
diff --git a/drivers/acpi/pci_irq.c b/drivers/acpi/pci_irq.c
index be6b9093f8d..51b9f8280f8 100644
--- a/drivers/acpi/pci_irq.c
+++ b/drivers/acpi/pci_irq.c
@@ -86,7 +86,7 @@ static struct acpi_prt_entry *acpi_pci_irq_find_prt_entry(struct pci_dev *dev,
86} 86}
87 87
88/* http://bugzilla.kernel.org/show_bug.cgi?id=4773 */ 88/* http://bugzilla.kernel.org/show_bug.cgi?id=4773 */
89static struct dmi_system_id medion_md9580[] = { 89static const struct dmi_system_id medion_md9580[] = {
90 { 90 {
91 .ident = "Medion MD9580-F laptop", 91 .ident = "Medion MD9580-F laptop",
92 .matches = { 92 .matches = {
@@ -98,7 +98,7 @@ static struct dmi_system_id medion_md9580[] = {
98}; 98};
99 99
100/* http://bugzilla.kernel.org/show_bug.cgi?id=5044 */ 100/* http://bugzilla.kernel.org/show_bug.cgi?id=5044 */
101static struct dmi_system_id dell_optiplex[] = { 101static const struct dmi_system_id dell_optiplex[] = {
102 { 102 {
103 .ident = "Dell Optiplex GX1", 103 .ident = "Dell Optiplex GX1",
104 .matches = { 104 .matches = {
@@ -110,7 +110,7 @@ static struct dmi_system_id dell_optiplex[] = {
110}; 110};
111 111
112/* http://bugzilla.kernel.org/show_bug.cgi?id=10138 */ 112/* http://bugzilla.kernel.org/show_bug.cgi?id=10138 */
113static struct dmi_system_id hp_t5710[] = { 113static const struct dmi_system_id hp_t5710[] = {
114 { 114 {
115 .ident = "HP t5710", 115 .ident = "HP t5710",
116 .matches = { 116 .matches = {
@@ -123,13 +123,13 @@ static struct dmi_system_id hp_t5710[] = {
123}; 123};
124 124
125struct prt_quirk { 125struct prt_quirk {
126 struct dmi_system_id *system; 126 const struct dmi_system_id *system;
127 unsigned int segment; 127 unsigned int segment;
128 unsigned int bus; 128 unsigned int bus;
129 unsigned int device; 129 unsigned int device;
130 unsigned char pin; 130 unsigned char pin;
131 char *source; /* according to BIOS */ 131 const char *source; /* according to BIOS */
132 char *actual_source; 132 const char *actual_source;
133}; 133};
134 134
135#define PCI_INTX_PIN(c) (c - 'A' + 1) 135#define PCI_INTX_PIN(c) (c - 'A' + 1)
@@ -139,7 +139,7 @@ struct prt_quirk {
139 * interrupt at the listed segment/bus/device/pin is connected to the first 139 * interrupt at the listed segment/bus/device/pin is connected to the first
140 * link device, but it is actually connected to the second. 140 * link device, but it is actually connected to the second.
141 */ 141 */
142static struct prt_quirk prt_quirks[] = { 142static const struct prt_quirk prt_quirks[] = {
143 { medion_md9580, 0, 0, 9, PCI_INTX_PIN('A'), 143 { medion_md9580, 0, 0, 9, PCI_INTX_PIN('A'),
144 "\\_SB_.PCI0.ISA_.LNKA", 144 "\\_SB_.PCI0.ISA_.LNKA",
145 "\\_SB_.PCI0.ISA_.LNKB"}, 145 "\\_SB_.PCI0.ISA_.LNKB"},
@@ -155,7 +155,7 @@ static void do_prt_fixups(struct acpi_prt_entry *entry,
155 struct acpi_pci_routing_table *prt) 155 struct acpi_pci_routing_table *prt)
156{ 156{
157 int i; 157 int i;
158 struct prt_quirk *quirk; 158 const struct prt_quirk *quirk;
159 159
160 for (i = 0; i < ARRAY_SIZE(prt_quirks); i++) { 160 for (i = 0; i < ARRAY_SIZE(prt_quirks); i++) {
161 quirk = &prt_quirks[i]; 161 quirk = &prt_quirks[i];
diff --git a/drivers/acpi/processor_throttling.c b/drivers/acpi/processor_throttling.c
index 73aed5f5b97..d0d1f4d5043 100644
--- a/drivers/acpi/processor_throttling.c
+++ b/drivers/acpi/processor_throttling.c
@@ -783,11 +783,9 @@ static int acpi_get_throttling_state(struct acpi_processor *pr,
783 (struct acpi_processor_tx_tss *)&(pr->throttling. 783 (struct acpi_processor_tx_tss *)&(pr->throttling.
784 states_tss[i]); 784 states_tss[i]);
785 if (tx->control == value) 785 if (tx->control == value)
786 break; 786 return i;
787 } 787 }
788 if (i > pr->throttling.state_count) 788 return -1;
789 i = -1;
790 return i;
791} 789}
792 790
793static int acpi_get_throttling_value(struct acpi_processor *pr, 791static int acpi_get_throttling_value(struct acpi_processor *pr,
diff --git a/drivers/acpi/sleep.c b/drivers/acpi/sleep.c
index 91a284b54db..779e4e500df 100644
--- a/drivers/acpi/sleep.c
+++ b/drivers/acpi/sleep.c
@@ -396,6 +396,15 @@ static struct dmi_system_id __initdata acpisleep_dmi_table[] = {
396 DMI_MATCH(DMI_PRODUCT_NAME, "Satellite L300"), 396 DMI_MATCH(DMI_PRODUCT_NAME, "Satellite L300"),
397 }, 397 },
398 }, 398 },
399 {
400 .callback = init_old_suspend_ordering,
401 .ident = "Panasonic CF51-2L",
402 .matches = {
403 DMI_MATCH(DMI_BOARD_VENDOR,
404 "Matsushita Electric Industrial Co.,Ltd."),
405 DMI_MATCH(DMI_BOARD_NAME, "CF51-2L"),
406 },
407 },
399 {}, 408 {},
400}; 409};
401#endif /* CONFIG_SUSPEND */ 410#endif /* CONFIG_SUSPEND */
diff --git a/drivers/platform/x86/panasonic-laptop.c b/drivers/platform/x86/panasonic-laptop.c
index c47a44dcb70..a5ce4bc202e 100644
--- a/drivers/platform/x86/panasonic-laptop.c
+++ b/drivers/platform/x86/panasonic-laptop.c
@@ -184,6 +184,7 @@ static const struct acpi_device_id pcc_device_ids[] = {
184 { "MAT0019", 0}, 184 { "MAT0019", 0},
185 { "", 0}, 185 { "", 0},
186}; 186};
187MODULE_DEVICE_TABLE(acpi, pcc_device_ids);
187 188
188static struct acpi_driver acpi_pcc_driver = { 189static struct acpi_driver acpi_pcc_driver = {
189 .name = ACPI_PCC_DRIVER_NAME, 190 .name = ACPI_PCC_DRIVER_NAME,
@@ -366,7 +367,7 @@ static ssize_t show_numbatt(struct device *dev, struct device_attribute *attr,
366 if (!acpi_pcc_retrieve_biosdata(pcc, pcc->sinf)) 367 if (!acpi_pcc_retrieve_biosdata(pcc, pcc->sinf))
367 return -EIO; 368 return -EIO;
368 369
369 return sprintf(buf, "%u\n", pcc->sinf[SINF_NUM_BATTERIES]); 370 return snprintf(buf, PAGE_SIZE, "%u\n", pcc->sinf[SINF_NUM_BATTERIES]);
370} 371}
371 372
372static ssize_t show_lcdtype(struct device *dev, struct device_attribute *attr, 373static ssize_t show_lcdtype(struct device *dev, struct device_attribute *attr,
@@ -378,7 +379,7 @@ static ssize_t show_lcdtype(struct device *dev, struct device_attribute *attr,
378 if (!acpi_pcc_retrieve_biosdata(pcc, pcc->sinf)) 379 if (!acpi_pcc_retrieve_biosdata(pcc, pcc->sinf))
379 return -EIO; 380 return -EIO;
380 381
381 return sprintf(buf, "%u\n", pcc->sinf[SINF_LCD_TYPE]); 382 return snprintf(buf, PAGE_SIZE, "%u\n", pcc->sinf[SINF_LCD_TYPE]);
382} 383}
383 384
384static ssize_t show_mute(struct device *dev, struct device_attribute *attr, 385static ssize_t show_mute(struct device *dev, struct device_attribute *attr,
@@ -390,7 +391,7 @@ static ssize_t show_mute(struct device *dev, struct device_attribute *attr,
390 if (!acpi_pcc_retrieve_biosdata(pcc, pcc->sinf)) 391 if (!acpi_pcc_retrieve_biosdata(pcc, pcc->sinf))
391 return -EIO; 392 return -EIO;
392 393
393 return sprintf(buf, "%u\n", pcc->sinf[SINF_MUTE]); 394 return snprintf(buf, PAGE_SIZE, "%u\n", pcc->sinf[SINF_MUTE]);
394} 395}
395 396
396static ssize_t show_sticky(struct device *dev, struct device_attribute *attr, 397static ssize_t show_sticky(struct device *dev, struct device_attribute *attr,
@@ -402,7 +403,7 @@ static ssize_t show_sticky(struct device *dev, struct device_attribute *attr,
402 if (!acpi_pcc_retrieve_biosdata(pcc, pcc->sinf)) 403 if (!acpi_pcc_retrieve_biosdata(pcc, pcc->sinf))
403 return -EIO; 404 return -EIO;
404 405
405 return sprintf(buf, "%u\n", pcc->sinf[SINF_STICKY_KEY]); 406 return snprintf(buf, PAGE_SIZE, "%u\n", pcc->sinf[SINF_STICKY_KEY]);
406} 407}
407 408
408static ssize_t set_sticky(struct device *dev, struct device_attribute *attr, 409static ssize_t set_sticky(struct device *dev, struct device_attribute *attr,
diff --git a/drivers/platform/x86/tc1100-wmi.c b/drivers/platform/x86/tc1100-wmi.c
index b4a4aa9ee48..44166003d4e 100644
--- a/drivers/platform/x86/tc1100-wmi.c
+++ b/drivers/platform/x86/tc1100-wmi.c
@@ -94,9 +94,8 @@ static int get_state(u32 *out, u8 instance)
94 return -ENODEV; 94 return -ENODEV;
95 95
96 obj = (union acpi_object *) result.pointer; 96 obj = (union acpi_object *) result.pointer;
97 if (obj && obj->type == ACPI_TYPE_BUFFER && 97 if (obj && obj->type == ACPI_TYPE_INTEGER) {
98 obj->buffer.length == sizeof(u32)) { 98 tmp = obj->integer.value;
99 tmp = *((u32 *) obj->buffer.pointer);
100 } else { 99 } else {
101 tmp = 0; 100 tmp = 0;
102 } 101 }
@@ -109,7 +108,7 @@ static int get_state(u32 *out, u8 instance)
109 *out = (tmp == 3) ? 1 : 0; 108 *out = (tmp == 3) ? 1 : 0;
110 return 0; 109 return 0;
111 case TC1100_INSTANCE_JOGDIAL: 110 case TC1100_INSTANCE_JOGDIAL:
112 *out = (tmp == 1) ? 1 : 0; 111 *out = (tmp == 1) ? 0 : 1;
113 return 0; 112 return 0;
114 default: 113 default:
115 return -ENODEV; 114 return -ENODEV;