[patch 00/28] PNP: convert fixed tables to lists, v4

Bjorn Helgaas
2008-06-27T22:59:12Z

This patch series contains all my PNP patches that are not yet in Linus'
tree, including both the "convert resource table to dynamic list" series
and the "convert resource options to unified dynamic list" series.

This fixes all checkpatch warnings except a "do not add new typedefs"
warning. I kept the pnp_irq_mask_t typedef because I don't see a
better way to declare bitmaps in various places and pass around pointers
to them.

Len, I told you I was going to send incremental patches, but this is
a replacement instead.

Changes since v3:

- Move IRQ test from pnpacpi_parse_irq_option() to
pnpacpi_parse_ext_irq_option() (fixes "comparison is always true"
warning noticed by David Howells)
- Use pci_get_legacy_ide_irq(), not ATA_PRIMARY_IRQ()/ATA_SECONDARY_IRQ()
(thanks to Bartlomiej Zolnierkiewicz)
- Use snprintf() to make printks atomic
- Fix checkpatch warnings (line length, "//" comments)

Here are the significant changes since the last posting:

- When replacing pnp_resource_table, the PNPACPI resource encoders
have to explicitly handle disabled resources; previously any
unused slots in the table were implicitly disabled. This should
fix Jiri Slaby's oops on suspend/resume (though he hasn't tested
this version).

This change is in the patch titled "PNP: replace pnp_resource_table
with dynamically allocated resources".

- Added a new patch to keep disabled IRQ and DMA resources when parsing
current config. This fixes a bug in the current (2.6.25) PNPACPI
code: consider a device with (mem, irq0, irq1, io), where irq0 is
disabled. If we drop irq0 when parsing the _CRS, we will mistakenly
put irq1 in the irq0 slot when we encode resources for an _SRS call.

- Added a new patch to avoid interrupts used by an IDE controller in
compatibility mode. https://bugzilla.novell.com/show_bug.cgi?id=375836

- Added a new PNPACPI patch to support HP vendor-specific descriptors.
This has long been supported by arch/ia64/kernel/acpi-ext.c, which
provides an hp_acpi_csr_space() interface, but I think it's better
and more generic to support it in PNPACPI.

Changes since v2 of "convert resource options to unified dynamic list":

- fixed bisection problem in quirk_ad1815_mpu_resources()
- fixed checkpatch warning in pnp_show_options()
(pnp-convert-resource-options-to-single-linked-list-checkpatch-fixes.patch)
- replaced pnp_independent_option() with literal 0
- fixed coding style in pnp/manager.c
- added EXPORT_SYMBOL(pnp_possible_config)
(pnp-add-pnp_possible_config-can-a-device-could-be-configured-this-way-fix.patch)

Bjorn
--