aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/resources/rscalc.c
diff options
context:
space:
mode:
authorBob Moore <robert.moore@intel.com>2008-04-10 19:06:44 +0400
committerLen Brown <len.brown@intel.com>2008-04-22 19:09:25 -0400
commit66d3ca9ea28e1b3d591083772fd797b9b46410b8 (patch)
tree71d34c39cd081e4fe46e024023d3146c8fc9fff3 /drivers/acpi/resources/rscalc.c
parentACPICA: Updates for Debug object output (diff)
downloadlinux-dev-66d3ca9ea28e1b3d591083772fd797b9b46410b8.tar.xz
linux-dev-66d3ca9ea28e1b3d591083772fd797b9b46410b8.zip
ACPICA: Fixes for size of StartDependent resource descriptor
Fixed a couple of size calculation issues with the variable-length Start Dependent resource descriptor. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/resources/rscalc.c')
-rw-r--r--drivers/acpi/resources/rscalc.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/acpi/resources/rscalc.c b/drivers/acpi/resources/rscalc.c
index db0a835e3317..d801823de016 100644
--- a/drivers/acpi/resources/rscalc.c
+++ b/drivers/acpi/resources/rscalc.c
@@ -213,11 +213,22 @@ acpi_rs_get_aml_length(struct acpi_resource * resource, acpi_size * size_needed)
switch (resource->type) {
case ACPI_RESOURCE_TYPE_IRQ:
+ /* Length can be 3 or 2 */
+
if (resource->data.irq.descriptor_length == 2) {
total_size--;
}
break;
+ case ACPI_RESOURCE_TYPE_START_DEPENDENT:
+
+ /* Length can be 1 or 0 */
+
+ if (resource->data.irq.descriptor_length == 0) {
+ total_size--;
+ }
+ break;
+
case ACPI_RESOURCE_TYPE_VENDOR:
/*
* Vendor Defined Resource: