The version register is the only one in the legacy I/O space to be
accessed, so it is not necessary to define the legacy base & version
register offset. A direct definition of the legacy version register
address would be fine.

Signed-off-by: Xu Yilun <yilun...@intel.com>
Reviewed-by: Tom Rix <t...@redhat.com>
---
v3: no change, rebased to 5.12-rc1
v4: improve the comments for valid version check.
---
 drivers/mfd/intel-m10-bmc.c       | 17 +++++++----------
 include/linux/mfd/intel-m10-bmc.h |  2 +-
 2 files changed, 8 insertions(+), 11 deletions(-)

diff --git a/drivers/mfd/intel-m10-bmc.c b/drivers/mfd/intel-m10-bmc.c
index 06c9775..90d0448 100644
--- a/drivers/mfd/intel-m10-bmc.c
+++ b/drivers/mfd/intel-m10-bmc.c
@@ -116,17 +116,14 @@ static int check_m10bmc_version(struct intel_m10bmc 
*ddata)
        int ret;
 
        /*
-        * This check is to filter out the very old legacy BMC versions,
-        * M10BMC_LEGACY_SYS_BASE is the offset to this old block of mmio
-        * registers. In the old BMC chips, the BMC version info is stored
-        * in this old version register (M10BMC_LEGACY_SYS_BASE +
-        * M10BMC_BUILD_VER), so its read out value would have not been
-        * LEGACY_INVALID (0xffffffff). But in new BMC chips that the
-        * driver supports, the value of this register should be
-        * LEGACY_INVALID.
+        * This check is to filter out the very old legacy BMC versions. In the
+        * old BMC chips, the BMC version info is stored in the old version
+        * register (M10BMC_LEGACY_BUILD_VER), so its read out value would have
+        * not been M10BMC_VER_LEGACY_INVALID (0xffffffff). But in new BMC
+        * chips that the driver supports, the value of this register should be
+        * M10BMC_VER_LEGACY_INVALID.
         */
-       ret = m10bmc_raw_read(ddata,
-                             M10BMC_LEGACY_SYS_BASE + M10BMC_BUILD_VER, &v);
+       ret = m10bmc_raw_read(ddata, M10BMC_LEGACY_BUILD_VER, &v);
        if (ret)
                return -ENODEV;
 
diff --git a/include/linux/mfd/intel-m10-bmc.h 
b/include/linux/mfd/intel-m10-bmc.h
index 9b54ca1..4f1071f 100644
--- a/include/linux/mfd/intel-m10-bmc.h
+++ b/include/linux/mfd/intel-m10-bmc.h
@@ -9,7 +9,7 @@
 
 #include <linux/regmap.h>
 
-#define M10BMC_LEGACY_SYS_BASE         0x300400
+#define M10BMC_LEGACY_BUILD_VER                0x300468
 #define M10BMC_SYS_BASE                        0x300800
 #define M10BMC_MEM_END                 0x1fffffff
 
-- 
2.7.4

Reply via email to