Linn,

Can you explain in a bit more detail what brings this up?

I'm aware of the limitation of the generic address structure, but we are forced 
by the (current) ACPI specification to use it if it is present for a given 
register.

Thanks,
Bob


> -----Original Message-----
> From: Linn Crosetto [mailto:l...@hp.com]
> Sent: Friday, March 15, 2013 12:56 PM
> To: r...@sisk.pl; Moore, Robert; ming.m....@intel.com; Zheng, Lv; linux-
> a...@vger.kernel.org
> Cc: linux-kernel@vger.kernel.org; Linn Crosetto
> Subject: [PATCH] acpi: remove length check for large registers
> 
> The legacy bit width field in the Generic Address Structure is 1 byte,
> limiting the reportable register width to 255 bits. Larger registers will
> cause a length mismatch warning to be printed in acpi_tb_validate_fadt().
> 
> To avoid the warning, disable the length mismatch check for registers
> larger than 255 bits.
> 
> Signed-off-by: Linn Crosetto <l...@hp.com>
> ---
>  drivers/acpi/acpica/tbfadt.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/acpi/acpica/tbfadt.c b/drivers/acpi/acpica/tbfadt.c
> index 74181bf..e87abcd 100644
> --- a/drivers/acpi/acpica/tbfadt.c
> +++ b/drivers/acpi/acpica/tbfadt.c
> @@ -561,6 +561,7 @@ static void acpi_tb_validate_fadt(void)
>                * legacy length field and the corresponding 64-bit X length
> field.
>                */
>               if (address64->address &&
> +                 ACPI_MUL_8(length) <= ACPI_UINT8_MAX &&
>                   (address64->bit_width != ACPI_MUL_8(length))) {
>                       ACPI_BIOS_WARNING((AE_INFO,
>                                          "32/64X length mismatch in FADT/%s:
> %u/%u",
> --
> 1.7.11.3

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

Reply via email to