diff options
Diffstat (limited to 'drivers/acpi/namespace/nsload.c')
-rw-r--r-- | drivers/acpi/namespace/nsload.c | 42 |
1 files changed, 8 insertions, 34 deletions
diff --git a/drivers/acpi/namespace/nsload.c b/drivers/acpi/namespace/nsload.c index 34e497016601..1428a84a31e6 100644 --- a/drivers/acpi/namespace/nsload.c +++ b/drivers/acpi/namespace/nsload.c | |||
@@ -198,7 +198,7 @@ acpi_ns_load_table_by_type ( | |||
198 | switch (table_type) { | 198 | switch (table_type) { |
199 | case ACPI_TABLE_DSDT: | 199 | case ACPI_TABLE_DSDT: |
200 | 200 | ||
201 | ACPI_DEBUG_PRINT ((ACPI_DB_INFO, "Loading DSDT\n")); | 201 | ACPI_DEBUG_PRINT ((ACPI_DB_INFO, "Namespace load: DSDT\n")); |
202 | 202 | ||
203 | table_desc = acpi_gbl_table_lists[ACPI_TABLE_DSDT].next; | 203 | table_desc = acpi_gbl_table_lists[ACPI_TABLE_DSDT].next; |
204 | 204 | ||
@@ -218,17 +218,18 @@ acpi_ns_load_table_by_type ( | |||
218 | 218 | ||
219 | 219 | ||
220 | case ACPI_TABLE_SSDT: | 220 | case ACPI_TABLE_SSDT: |
221 | case ACPI_TABLE_PSDT: | ||
221 | 222 | ||
222 | ACPI_DEBUG_PRINT ((ACPI_DB_INFO, "Loading %d SSDTs\n", | 223 | ACPI_DEBUG_PRINT ((ACPI_DB_INFO, "Namespace load: %d SSDT or PSDTs\n", |
223 | acpi_gbl_table_lists[ACPI_TABLE_SSDT].count)); | 224 | acpi_gbl_table_lists[table_type].count)); |
224 | 225 | ||
225 | /* | 226 | /* |
226 | * Traverse list of SSDT tables | 227 | * Traverse list of SSDT or PSDT tables |
227 | */ | 228 | */ |
228 | table_desc = acpi_gbl_table_lists[ACPI_TABLE_SSDT].next; | 229 | table_desc = acpi_gbl_table_lists[table_type].next; |
229 | for (i = 0; i < acpi_gbl_table_lists[ACPI_TABLE_SSDT].count; i++) { | 230 | for (i = 0; i < acpi_gbl_table_lists[table_type].count; i++) { |
230 | /* | 231 | /* |
231 | * Only attempt to load table if it is not | 232 | * Only attempt to load table into namespace if it is not |
232 | * already loaded! | 233 | * already loaded! |
233 | */ | 234 | */ |
234 | if (!table_desc->loaded_into_namespace) { | 235 | if (!table_desc->loaded_into_namespace) { |
@@ -245,33 +246,6 @@ acpi_ns_load_table_by_type ( | |||
245 | break; | 246 | break; |
246 | 247 | ||
247 | 248 | ||
248 | case ACPI_TABLE_PSDT: | ||
249 | |||
250 | ACPI_DEBUG_PRINT ((ACPI_DB_INFO, "Loading %d PSDTs\n", | ||
251 | acpi_gbl_table_lists[ACPI_TABLE_PSDT].count)); | ||
252 | |||
253 | /* | ||
254 | * Traverse list of PSDT tables | ||
255 | */ | ||
256 | table_desc = acpi_gbl_table_lists[ACPI_TABLE_PSDT].next; | ||
257 | |||
258 | for (i = 0; i < acpi_gbl_table_lists[ACPI_TABLE_PSDT].count; i++) { | ||
259 | /* Only attempt to load table if it is not already loaded! */ | ||
260 | |||
261 | if (!table_desc->loaded_into_namespace) { | ||
262 | status = acpi_ns_load_table (table_desc, acpi_gbl_root_node); | ||
263 | if (ACPI_FAILURE (status)) { | ||
264 | break; | ||
265 | } | ||
266 | |||
267 | table_desc->loaded_into_namespace = TRUE; | ||
268 | } | ||
269 | |||
270 | table_desc = table_desc->next; | ||
271 | } | ||
272 | break; | ||
273 | |||
274 | |||
275 | default: | 249 | default: |
276 | status = AE_SUPPORT; | 250 | status = AE_SUPPORT; |
277 | break; | 251 | break; |