mirror of
https://github.com/torvalds/linux
synced 2024-11-05 18:23:50 +00:00
mfd: intel-lpss: Use writeq() helper
There are already helper functions to do 64-bit I/O on 32-bit machines, thus we don't need to reinvent the wheel. In our case we can't use readq() / writeq() even on 64-bit kernel since there is a hardware limitation (OCP bus is a 32-bit bus). Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
This commit is contained in:
parent
327cc18e76
commit
689d4453ed
1 changed files with 4 additions and 8 deletions
|
@ -26,6 +26,8 @@
|
|||
#include <linux/pm_runtime.h>
|
||||
#include <linux/seq_file.h>
|
||||
|
||||
#include <asm-generic/io-64-nonatomic-lo-hi.h>
|
||||
|
||||
#include "intel-lpss.h"
|
||||
|
||||
#define LPSS_DEV_OFFSET 0x000
|
||||
|
@ -52,8 +54,7 @@
|
|||
#define LPSS_PRIV_SSP_REG 0x20
|
||||
#define LPSS_PRIV_SSP_REG_DIS_DMA_FIN BIT(0)
|
||||
|
||||
#define LPSS_PRIV_REMAP_ADDR_LO 0x40
|
||||
#define LPSS_PRIV_REMAP_ADDR_HI 0x44
|
||||
#define LPSS_PRIV_REMAP_ADDR 0x40
|
||||
|
||||
#define LPSS_PRIV_CAPS 0xfc
|
||||
#define LPSS_PRIV_CAPS_NO_IDMA BIT(8)
|
||||
|
@ -250,12 +251,7 @@ static void intel_lpss_set_remap_addr(const struct intel_lpss *lpss)
|
|||
{
|
||||
resource_size_t addr = lpss->info->mem->start;
|
||||
|
||||
writel(addr, lpss->priv + LPSS_PRIV_REMAP_ADDR_LO);
|
||||
#if BITS_PER_LONG > 32
|
||||
writel(addr >> 32, lpss->priv + LPSS_PRIV_REMAP_ADDR_HI);
|
||||
#else
|
||||
writel(0, lpss->priv + LPSS_PRIV_REMAP_ADDR_HI);
|
||||
#endif
|
||||
lo_hi_writeq(addr, lpss->priv + LPSS_PRIV_REMAP_ADDR);
|
||||
}
|
||||
|
||||
static void intel_lpss_deassert_reset(const struct intel_lpss *lpss)
|
||||
|
|
Loading…
Reference in a new issue