--- drivers/acpi/atomicio.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) --- a/drivers/acpi/atomicio.c +++ b/drivers/acpi/atomicio.c @@ -306,11 +306,18 @@ static int acpi_atomic_read_mem(u64 padd case 32: *val = readl(addr); break; -#ifdef readq case 64: +#ifdef readq *val = readq(addr); - break; +#else + { + u64 h; + *val = readl(addr); + h = readl(addr+4); + *val = *val + (h << 32); + } #endif + break; default: return -EINVAL; }