Re: [Devel] [PATCH 1/2] ACPICA: Introduce acpi_os_phys_table_override function

From: Thomas Renninger
Date: Wed Aug 31 2011 - 05:28:57 EST


On Wednesday, August 31, 2011 04:43:42 AM Lin Ming wrote:
> On Wed, 2011-08-24 at 17:48 +0800, Thomas Renninger wrote:
...
> You add a new interface.
Yes, is this a bigger problem?

> Can we just extend the existing interface: acpi_os_table_override?
Not sure how to do that without OS/ACPICA API changes.
The virtual address handling is nasty. You have to differ
early mappings (early_ioremap) and later mappings (io/memremap).
Re-mapping later is not possible because the physical address is
lost with the current overriding interface.
The physical address usage is transparent and from what I can
see the only way to provide proper table overriding.

If it's ok to add more paramters to acpi_os_table_override and
either pass the virtual (as before) or the physical address,
this would work:
acpi_os_table_override(struct acpi_table_header *existing_table,
struct acpi_table_header **new_table,
acpi_physical_address *address, u32 *table_length);

This would be an interface change which looked even worse to me, than
adding a new function.

Thomas
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/