diff options
author | Thomas Renninger <trenn@suse.de> | 2008-02-06 04:40:03 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2008-02-06 13:41:19 -0500 |
commit | 2bb9a6b32f98873adf89a0de04c898681a2c5b8e (patch) | |
tree | 1205b9a0873e55db0f8fdff59943f2f9f3782647 /drivers/pnp | |
parent | cc8259a6666de456460bacdd5637f5e2d71790ea (diff) |
pnp: declare PNP option parsing functions as __init
There are three kind of parse functions provided by PNP acpi/bios:
- get current resources
- set resources
- get possible resources
The first two may be needed later at runtime.
The possible resource settings should never change dynamically.
And even if this would make any sense (I doubt it), the current implementation
only parses possible resource settings at early init time:
-> declare all the option parsing __init
[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Thomas Renninger <trenn@suse.de>
Acked-By: Rene Herman <rene.herman@gmail.com>
Cc: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/pnp')
-rw-r--r-- | drivers/pnp/pnpacpi/rsparser.c | 44 | ||||
-rw-r--r-- | drivers/pnp/pnpbios/core.c | 2 | ||||
-rw-r--r-- | drivers/pnp/pnpbios/rsparser.c | 33 |
3 files changed, 40 insertions, 39 deletions
diff --git a/drivers/pnp/pnpacpi/rsparser.c b/drivers/pnp/pnpacpi/rsparser.c index 6b9840cce0f4..6aa231ef642d 100644 --- a/drivers/pnp/pnpacpi/rsparser.c +++ b/drivers/pnp/pnpacpi/rsparser.c | |||
@@ -391,8 +391,8 @@ acpi_status pnpacpi_parse_allocated_resource(acpi_handle handle, | |||
391 | pnpacpi_allocated_resource, res); | 391 | pnpacpi_allocated_resource, res); |
392 | } | 392 | } |
393 | 393 | ||
394 | static void pnpacpi_parse_dma_option(struct pnp_option *option, | 394 | static __init void pnpacpi_parse_dma_option(struct pnp_option *option, |
395 | struct acpi_resource_dma *p) | 395 | struct acpi_resource_dma *p) |
396 | { | 396 | { |
397 | int i; | 397 | int i; |
398 | struct pnp_dma *dma; | 398 | struct pnp_dma *dma; |
@@ -411,8 +411,8 @@ static void pnpacpi_parse_dma_option(struct pnp_option *option, | |||
411 | pnp_register_dma_resource(option, dma); | 411 | pnp_register_dma_resource(option, dma); |
412 | } | 412 | } |
413 | 413 | ||
414 | static void pnpacpi_parse_irq_option(struct pnp_option *option, | 414 | static __init void pnpacpi_parse_irq_option(struct pnp_option *option, |
415 | struct acpi_resource_irq *p) | 415 | struct acpi_resource_irq *p) |
416 | { | 416 | { |
417 | int i; | 417 | int i; |
418 | struct pnp_irq *irq; | 418 | struct pnp_irq *irq; |
@@ -431,8 +431,8 @@ static void pnpacpi_parse_irq_option(struct pnp_option *option, | |||
431 | pnp_register_irq_resource(option, irq); | 431 | pnp_register_irq_resource(option, irq); |
432 | } | 432 | } |
433 | 433 | ||
434 | static void pnpacpi_parse_ext_irq_option(struct pnp_option *option, | 434 | static __init void pnpacpi_parse_ext_irq_option(struct pnp_option *option, |
435 | struct acpi_resource_extended_irq *p) | 435 | struct acpi_resource_extended_irq *p) |
436 | { | 436 | { |
437 | int i; | 437 | int i; |
438 | struct pnp_irq *irq; | 438 | struct pnp_irq *irq; |
@@ -451,8 +451,8 @@ static void pnpacpi_parse_ext_irq_option(struct pnp_option *option, | |||
451 | pnp_register_irq_resource(option, irq); | 451 | pnp_register_irq_resource(option, irq); |
452 | } | 452 | } |
453 | 453 | ||
454 | static void pnpacpi_parse_port_option(struct pnp_option *option, | 454 | static __init void pnpacpi_parse_port_option(struct pnp_option *option, |
455 | struct acpi_resource_io *io) | 455 | struct acpi_resource_io *io) |
456 | { | 456 | { |
457 | struct pnp_port *port; | 457 | struct pnp_port *port; |
458 | 458 | ||
@@ -470,8 +470,8 @@ static void pnpacpi_parse_port_option(struct pnp_option *option, | |||
470 | pnp_register_port_resource(option, port); | 470 | pnp_register_port_resource(option, port); |
471 | } | 471 | } |
472 | 472 | ||
473 | static void pnpacpi_parse_fixed_port_option(struct pnp_option *option, | 473 | static __init void pnpacpi_parse_fixed_port_option(struct pnp_option *option, |
474 | struct acpi_resource_fixed_io *io) | 474 | struct acpi_resource_fixed_io *io) |
475 | { | 475 | { |
476 | struct pnp_port *port; | 476 | struct pnp_port *port; |
477 | 477 | ||
@@ -487,8 +487,8 @@ static void pnpacpi_parse_fixed_port_option(struct pnp_option *option, | |||
487 | pnp_register_port_resource(option, port); | 487 | pnp_register_port_resource(option, port); |
488 | } | 488 | } |
489 | 489 | ||
490 | static void pnpacpi_parse_mem24_option(struct pnp_option *option, | 490 | static __init void pnpacpi_parse_mem24_option(struct pnp_option *option, |
491 | struct acpi_resource_memory24 *p) | 491 | struct acpi_resource_memory24 *p) |
492 | { | 492 | { |
493 | struct pnp_mem *mem; | 493 | struct pnp_mem *mem; |
494 | 494 | ||
@@ -508,8 +508,8 @@ static void pnpacpi_parse_mem24_option(struct pnp_option *option, | |||
508 | pnp_register_mem_resource(option, mem); | 508 | pnp_register_mem_resource(option, mem); |
509 | } | 509 | } |
510 | 510 | ||
511 | static void pnpacpi_parse_mem32_option(struct pnp_option *option, | 511 | static __init void pnpacpi_parse_mem32_option(struct pnp_option *option, |
512 | struct acpi_resource_memory32 *p) | 512 | struct acpi_resource_memory32 *p) |
513 | { | 513 | { |
514 | struct pnp_mem *mem; | 514 | struct pnp_mem *mem; |
515 | 515 | ||
@@ -529,8 +529,8 @@ static void pnpacpi_parse_mem32_option(struct pnp_option *option, | |||
529 | pnp_register_mem_resource(option, mem); | 529 | pnp_register_mem_resource(option, mem); |
530 | } | 530 | } |
531 | 531 | ||
532 | static void pnpacpi_parse_fixed_mem32_option(struct pnp_option *option, | 532 | static __init void pnpacpi_parse_fixed_mem32_option(struct pnp_option *option, |
533 | struct acpi_resource_fixed_memory32 *p) | 533 | struct acpi_resource_fixed_memory32 *p) |
534 | { | 534 | { |
535 | struct pnp_mem *mem; | 535 | struct pnp_mem *mem; |
536 | 536 | ||
@@ -549,8 +549,8 @@ static void pnpacpi_parse_fixed_mem32_option(struct pnp_option *option, | |||
549 | pnp_register_mem_resource(option, mem); | 549 | pnp_register_mem_resource(option, mem); |
550 | } | 550 | } |
551 | 551 | ||
552 | static void pnpacpi_parse_address_option(struct pnp_option *option, | 552 | static __init void pnpacpi_parse_address_option(struct pnp_option *option, |
553 | struct acpi_resource *r) | 553 | struct acpi_resource *r) |
554 | { | 554 | { |
555 | struct acpi_resource_address64 addr, *p = &addr; | 555 | struct acpi_resource_address64 addr, *p = &addr; |
556 | acpi_status status; | 556 | acpi_status status; |
@@ -596,8 +596,8 @@ struct acpipnp_parse_option_s { | |||
596 | struct pnp_dev *dev; | 596 | struct pnp_dev *dev; |
597 | }; | 597 | }; |
598 | 598 | ||
599 | static acpi_status pnpacpi_option_resource(struct acpi_resource *res, | 599 | static __init acpi_status pnpacpi_option_resource(struct acpi_resource *res, |
600 | void *data) | 600 | void *data) |
601 | { | 601 | { |
602 | int priority = 0; | 602 | int priority = 0; |
603 | struct acpipnp_parse_option_s *parse_data = data; | 603 | struct acpipnp_parse_option_s *parse_data = data; |
@@ -696,8 +696,8 @@ static acpi_status pnpacpi_option_resource(struct acpi_resource *res, | |||
696 | return AE_OK; | 696 | return AE_OK; |
697 | } | 697 | } |
698 | 698 | ||
699 | acpi_status pnpacpi_parse_resource_option_data(acpi_handle handle, | 699 | acpi_status __init pnpacpi_parse_resource_option_data(acpi_handle handle, |
700 | struct pnp_dev * dev) | 700 | struct pnp_dev *dev) |
701 | { | 701 | { |
702 | acpi_status status; | 702 | acpi_status status; |
703 | struct acpipnp_parse_option_s parse_data; | 703 | struct acpipnp_parse_option_s parse_data; |
diff --git a/drivers/pnp/pnpbios/core.c b/drivers/pnp/pnpbios/core.c index e33e03f71084..f7e67197a568 100644 --- a/drivers/pnp/pnpbios/core.c +++ b/drivers/pnp/pnpbios/core.c | |||
@@ -315,7 +315,7 @@ struct pnp_protocol pnpbios_protocol = { | |||
315 | .disable = pnpbios_disable_resources, | 315 | .disable = pnpbios_disable_resources, |
316 | }; | 316 | }; |
317 | 317 | ||
318 | static int insert_device(struct pnp_bios_node *node) | 318 | static int __init insert_device(struct pnp_bios_node *node) |
319 | { | 319 | { |
320 | struct list_head *pos; | 320 | struct list_head *pos; |
321 | struct pnp_dev *dev; | 321 | struct pnp_dev *dev; |
diff --git a/drivers/pnp/pnpbios/rsparser.c b/drivers/pnp/pnpbios/rsparser.c index 3fabf11b0027..caade3531416 100644 --- a/drivers/pnp/pnpbios/rsparser.c +++ b/drivers/pnp/pnpbios/rsparser.c | |||
@@ -262,8 +262,8 @@ len_err: | |||
262 | * Resource Configuration Options | 262 | * Resource Configuration Options |
263 | */ | 263 | */ |
264 | 264 | ||
265 | static void pnpbios_parse_mem_option(unsigned char *p, int size, | 265 | static __init void pnpbios_parse_mem_option(unsigned char *p, int size, |
266 | struct pnp_option *option) | 266 | struct pnp_option *option) |
267 | { | 267 | { |
268 | struct pnp_mem *mem; | 268 | struct pnp_mem *mem; |
269 | 269 | ||
@@ -278,8 +278,8 @@ static void pnpbios_parse_mem_option(unsigned char *p, int size, | |||
278 | pnp_register_mem_resource(option, mem); | 278 | pnp_register_mem_resource(option, mem); |
279 | } | 279 | } |
280 | 280 | ||
281 | static void pnpbios_parse_mem32_option(unsigned char *p, int size, | 281 | static __init void pnpbios_parse_mem32_option(unsigned char *p, int size, |
282 | struct pnp_option *option) | 282 | struct pnp_option *option) |
283 | { | 283 | { |
284 | struct pnp_mem *mem; | 284 | struct pnp_mem *mem; |
285 | 285 | ||
@@ -294,8 +294,8 @@ static void pnpbios_parse_mem32_option(unsigned char *p, int size, | |||
294 | pnp_register_mem_resource(option, mem); | 294 | pnp_register_mem_resource(option, mem); |
295 | } | 295 | } |
296 | 296 | ||
297 | static void pnpbios_parse_fixed_mem32_option(unsigned char *p, int size, | 297 | static __init void pnpbios_parse_fixed_mem32_option(unsigned char *p, int size, |
298 | struct pnp_option *option) | 298 | struct pnp_option *option) |
299 | { | 299 | { |
300 | struct pnp_mem *mem; | 300 | struct pnp_mem *mem; |
301 | 301 | ||
@@ -309,7 +309,7 @@ static void pnpbios_parse_fixed_mem32_option(unsigned char *p, int size, | |||
309 | pnp_register_mem_resource(option, mem); | 309 | pnp_register_mem_resource(option, mem); |
310 | } | 310 | } |
311 | 311 | ||
312 | static void pnpbios_parse_irq_option(unsigned char *p, int size, | 312 | static __init void pnpbios_parse_irq_option(unsigned char *p, int size, |
313 | struct pnp_option *option) | 313 | struct pnp_option *option) |
314 | { | 314 | { |
315 | struct pnp_irq *irq; | 315 | struct pnp_irq *irq; |
@@ -327,7 +327,7 @@ static void pnpbios_parse_irq_option(unsigned char *p, int size, | |||
327 | pnp_register_irq_resource(option, irq); | 327 | pnp_register_irq_resource(option, irq); |
328 | } | 328 | } |
329 | 329 | ||
330 | static void pnpbios_parse_dma_option(unsigned char *p, int size, | 330 | static __init void pnpbios_parse_dma_option(unsigned char *p, int size, |
331 | struct pnp_option *option) | 331 | struct pnp_option *option) |
332 | { | 332 | { |
333 | struct pnp_dma *dma; | 333 | struct pnp_dma *dma; |
@@ -340,8 +340,8 @@ static void pnpbios_parse_dma_option(unsigned char *p, int size, | |||
340 | pnp_register_dma_resource(option, dma); | 340 | pnp_register_dma_resource(option, dma); |
341 | } | 341 | } |
342 | 342 | ||
343 | static void pnpbios_parse_port_option(unsigned char *p, int size, | 343 | static __init void pnpbios_parse_port_option(unsigned char *p, int size, |
344 | struct pnp_option *option) | 344 | struct pnp_option *option) |
345 | { | 345 | { |
346 | struct pnp_port *port; | 346 | struct pnp_port *port; |
347 | 347 | ||
@@ -356,8 +356,8 @@ static void pnpbios_parse_port_option(unsigned char *p, int size, | |||
356 | pnp_register_port_resource(option, port); | 356 | pnp_register_port_resource(option, port); |
357 | } | 357 | } |
358 | 358 | ||
359 | static void pnpbios_parse_fixed_port_option(unsigned char *p, int size, | 359 | static __init void pnpbios_parse_fixed_port_option(unsigned char *p, int size, |
360 | struct pnp_option *option) | 360 | struct pnp_option *option) |
361 | { | 361 | { |
362 | struct pnp_port *port; | 362 | struct pnp_port *port; |
363 | 363 | ||
@@ -371,9 +371,9 @@ static void pnpbios_parse_fixed_port_option(unsigned char *p, int size, | |||
371 | pnp_register_port_resource(option, port); | 371 | pnp_register_port_resource(option, port); |
372 | } | 372 | } |
373 | 373 | ||
374 | static unsigned char *pnpbios_parse_resource_option_data(unsigned char *p, | 374 | static __init unsigned char * |
375 | unsigned char *end, | 375 | pnpbios_parse_resource_option_data(unsigned char *p, unsigned char *end, |
376 | struct pnp_dev *dev) | 376 | struct pnp_dev *dev) |
377 | { | 377 | { |
378 | unsigned int len, tag; | 378 | unsigned int len, tag; |
379 | int priority = 0; | 379 | int priority = 0; |
@@ -781,7 +781,8 @@ len_err: | |||
781 | * Core Parsing Functions | 781 | * Core Parsing Functions |
782 | */ | 782 | */ |
783 | 783 | ||
784 | int pnpbios_parse_data_stream(struct pnp_dev *dev, struct pnp_bios_node *node) | 784 | int __init pnpbios_parse_data_stream(struct pnp_dev *dev, |
785 | struct pnp_bios_node *node) | ||
785 | { | 786 | { |
786 | unsigned char *p = (char *)node->data; | 787 | unsigned char *p = (char *)node->data; |
787 | unsigned char *end = (char *)(node->data + node->size); | 788 | unsigned char *end = (char *)(node->data + node->size); |