[ACPI] ACPICA 20050902
Fixed a problem with the internal Owner ID allocation and deallocation mechanisms for control method execution and recursive method invocation. This should eliminate the OWNER_ID_LIMIT exceptions and "Invalid OwnerId" messages seen on some systems. Recursive method invocation depth is currently limited to 255. (Alexey Starikovskiy) http://bugzilla.kernel.org/show_bug.cgi?id=4892 Completely eliminated all vestiges of support for the "module-level executable code" until this support is fully implemented and debugged. This should eliminate the NO_RETURN_VALUE exceptions seen during table load on some systems that invoke this support. http://bugzilla.kernel.org/show_bug.cgi?id=5162 Fixed a problem within the resource manager code where the transaction flags for a 64-bit address descriptor were handled incorrectly in the type-specific flag byte. Consolidated duplicate code within the address descriptor resource manager code, reducing overall subsystem code size. Signed-off-by: Robert Moore <Robert.Moore@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
@ -1074,14 +1074,21 @@ struct acpi_resource_source {
|
||||
char *string_ptr;
|
||||
};
|
||||
|
||||
/* Fields common to all address descriptors, 16/32/64 bit */
|
||||
|
||||
#define ACPI_RESOURCE_ADDRESS_COMMON \
|
||||
u32 resource_type; \
|
||||
u32 producer_consumer; \
|
||||
u32 decode; \
|
||||
u32 min_address_fixed; \
|
||||
u32 max_address_fixed; \
|
||||
union acpi_resource_attribute attribute;
|
||||
|
||||
struct acpi_resource_address {
|
||||
ACPI_RESOURCE_ADDRESS_COMMON};
|
||||
|
||||
struct acpi_resource_address16 {
|
||||
u32 resource_type;
|
||||
u32 producer_consumer;
|
||||
u32 decode;
|
||||
u32 min_address_fixed;
|
||||
u32 max_address_fixed;
|
||||
union acpi_resource_attribute attribute;
|
||||
u32 granularity;
|
||||
ACPI_RESOURCE_ADDRESS_COMMON u32 granularity;
|
||||
u32 min_address_range;
|
||||
u32 max_address_range;
|
||||
u32 address_translation_offset;
|
||||
@ -1090,13 +1097,7 @@ struct acpi_resource_address16 {
|
||||
};
|
||||
|
||||
struct acpi_resource_address32 {
|
||||
u32 resource_type;
|
||||
u32 producer_consumer;
|
||||
u32 decode;
|
||||
u32 min_address_fixed;
|
||||
u32 max_address_fixed;
|
||||
union acpi_resource_attribute attribute;
|
||||
u32 granularity;
|
||||
ACPI_RESOURCE_ADDRESS_COMMON u32 granularity;
|
||||
u32 min_address_range;
|
||||
u32 max_address_range;
|
||||
u32 address_translation_offset;
|
||||
@ -1105,13 +1106,7 @@ struct acpi_resource_address32 {
|
||||
};
|
||||
|
||||
struct acpi_resource_address64 {
|
||||
u32 resource_type;
|
||||
u32 producer_consumer;
|
||||
u32 decode;
|
||||
u32 min_address_fixed;
|
||||
u32 max_address_fixed;
|
||||
union acpi_resource_attribute attribute;
|
||||
u64 granularity;
|
||||
ACPI_RESOURCE_ADDRESS_COMMON u64 granularity;
|
||||
u64 min_address_range;
|
||||
u64 max_address_range;
|
||||
u64 address_translation_offset;
|
||||
@ -1161,6 +1156,7 @@ union acpi_resource_data {
|
||||
struct acpi_resource_mem24 memory24;
|
||||
struct acpi_resource_mem32 memory32;
|
||||
struct acpi_resource_fixed_mem32 fixed_memory32;
|
||||
struct acpi_resource_address address; /* Common 16/32/64 address fields */
|
||||
struct acpi_resource_address16 address16;
|
||||
struct acpi_resource_address32 address32;
|
||||
struct acpi_resource_address64 address64;
|
||||
|
Reference in New Issue
Block a user