|
@@ -47,6 +47,7 @@
|
|
|
|
|
|
#include <asm/io.h>
|
|
|
#include <asm/uaccess.h>
|
|
|
+#include <asm-generic/io-64-nonatomic-lo-hi.h>
|
|
|
|
|
|
#include "internal.h"
|
|
|
|
|
@@ -947,21 +948,6 @@ acpi_status acpi_os_write_port(acpi_io_address port, u32 value, u32 width)
|
|
|
|
|
|
EXPORT_SYMBOL(acpi_os_write_port);
|
|
|
|
|
|
-#ifdef readq
|
|
|
-static inline u64 read64(const volatile void __iomem *addr)
|
|
|
-{
|
|
|
- return readq(addr);
|
|
|
-}
|
|
|
-#else
|
|
|
-static inline u64 read64(const volatile void __iomem *addr)
|
|
|
-{
|
|
|
- u64 l, h;
|
|
|
- l = readl(addr);
|
|
|
- h = readl(addr+4);
|
|
|
- return l | (h << 32);
|
|
|
-}
|
|
|
-#endif
|
|
|
-
|
|
|
acpi_status
|
|
|
acpi_os_read_memory(acpi_physical_address phys_addr, u64 *value, u32 width)
|
|
|
{
|
|
@@ -994,7 +980,7 @@ acpi_os_read_memory(acpi_physical_address phys_addr, u64 *value, u32 width)
|
|
|
*(u32 *) value = readl(virt_addr);
|
|
|
break;
|
|
|
case 64:
|
|
|
- *(u64 *) value = read64(virt_addr);
|
|
|
+ *(u64 *) value = readq(virt_addr);
|
|
|
break;
|
|
|
default:
|
|
|
BUG();
|
|
@@ -1008,19 +994,6 @@ acpi_os_read_memory(acpi_physical_address phys_addr, u64 *value, u32 width)
|
|
|
return AE_OK;
|
|
|
}
|
|
|
|
|
|
-#ifdef writeq
|
|
|
-static inline void write64(u64 val, volatile void __iomem *addr)
|
|
|
-{
|
|
|
- writeq(val, addr);
|
|
|
-}
|
|
|
-#else
|
|
|
-static inline void write64(u64 val, volatile void __iomem *addr)
|
|
|
-{
|
|
|
- writel(val, addr);
|
|
|
- writel(val>>32, addr+4);
|
|
|
-}
|
|
|
-#endif
|
|
|
-
|
|
|
acpi_status
|
|
|
acpi_os_write_memory(acpi_physical_address phys_addr, u64 value, u32 width)
|
|
|
{
|
|
@@ -1049,7 +1022,7 @@ acpi_os_write_memory(acpi_physical_address phys_addr, u64 value, u32 width)
|
|
|
writel(value, virt_addr);
|
|
|
break;
|
|
|
case 64:
|
|
|
- write64(value, virt_addr);
|
|
|
+ writeq(value, virt_addr);
|
|
|
break;
|
|
|
default:
|
|
|
BUG();
|