From 1538deb4ee1e25ea96e47af3d664d2cf0a58b974 Mon Sep 17 00:00:00 2001 From: Bob Moore Date: Thu, 10 Apr 2008 19:06:44 +0400 Subject: [PATCH] --- yaml --- r: 95483 b: refs/heads/master c: 66d3ca9ea28e1b3d591083772fd797b9b46410b8 h: refs/heads/master i: 95481: d31e0aafe38eef4295b04f0de21d7f919a2e143e 95479: ca982a622270ba2fcaf68808bd992d10bdaac378 v: v3 --- [refs] | 2 +- trunk/drivers/acpi/resources/rscalc.c | 11 +++++++++++ trunk/drivers/acpi/resources/rsio.c | 2 +- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 6749405933d0..08fd31ad397d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d8846574ed4a81be319bf68728f9cca9af595afd +refs/heads/master: 66d3ca9ea28e1b3d591083772fd797b9b46410b8 diff --git a/trunk/drivers/acpi/resources/rscalc.c b/trunk/drivers/acpi/resources/rscalc.c index db0a835e3317..d801823de016 100644 --- a/trunk/drivers/acpi/resources/rscalc.c +++ b/trunk/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: diff --git a/trunk/drivers/acpi/resources/rsio.c b/trunk/drivers/acpi/resources/rsio.c index 50f3acdd9c8e..610d7c2101f2 100644 --- a/trunk/drivers/acpi/resources/rsio.c +++ b/trunk/drivers/acpi/resources/rsio.c @@ -268,7 +268,7 @@ struct acpi_rsconvert_info acpi_rs_set_start_dpf[10] = { /* Reset length to 1 byte (descriptor with flags byte) */ - {ACPI_RSC_LENGTH, 0, 0, sizeof(struct aml_resource_irq)}, + {ACPI_RSC_LENGTH, 0, 0, sizeof(struct aml_resource_start_dependent)}, /* * All done if flags byte is necessary -- if either priority value