Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

mfd: Fix ASIC3 SD Host Controller Configuration size

The size of the TC6380AF SD Host Controller Configuration area is 0x200 bytes (assuming registers are aligned on 32-bit boundaries), not 0x400 bytes. Source: Toshiba TC6380AF Specification sections 4.2 and 4.3.1

Signed-off-by: Paul Parsons <lost.distance@yahoo.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>

authored by

Paul Parsons and committed by
Samuel Ortiz
74e32d1b d910774f

+3 -1
+2 -1
drivers/mfd/asic3.c
··· 856 856 857 857 /* MMC */ 858 858 asic->tmio_cnf = ioremap((ASIC3_SD_CONFIG_BASE >> asic->bus_shift) + 859 - mem_sdio->start, 0x400 >> asic->bus_shift); 859 + mem_sdio->start, 860 + ASIC3_SD_CONFIG_SIZE >> asic->bus_shift); 860 861 if (!asic->tmio_cnf) { 861 862 ret = -ENOMEM; 862 863 dev_dbg(asic->dev, "Couldn't ioremap SD_CONFIG\n");
+1
include/linux/mfd/asic3.h
··· 297 297 * 298 298 *****************************************************************************/ 299 299 #define ASIC3_SD_CONFIG_BASE 0x0400 /* Assumes 32 bit addressing */ 300 + #define ASIC3_SD_CONFIG_SIZE 0x0200 /* Assumes 32 bit addressing */ 300 301 #define ASIC3_SD_CTRL_BASE 0x1000 301 302 #define ASIC3_SDIO_CTRL_BASE 0x1200 302 303