On Wed, Mar 10, 2021 at 09:16:25AM +0000, Lee Jones wrote:
> On Mon, 01 Mar 2021, Xu Yilun wrote:
> 
> > 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
> > ---
> >  drivers/mfd/intel-m10-bmc.c       | 12 +++++-------
> >  include/linux/mfd/intel-m10-bmc.h |  2 +-
> >  2 files changed, 6 insertions(+), 8 deletions(-)
> > 
> > diff --git a/drivers/mfd/intel-m10-bmc.c b/drivers/mfd/intel-m10-bmc.c
> > index 06c9775..0d2c03f 100644
> > --- a/drivers/mfd/intel-m10-bmc.c
> > +++ b/drivers/mfd/intel-m10-bmc.c
> > @@ -117,16 +117,14 @@ static int check_m10bmc_version(struct intel_m10bmc 
> > *ddata)
> >  
> >     /*
> >      * 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
> > +    * 0x300400 is the offset to this old block of mmio registers. In the
> 
> Not sure we want actual addresses in comments.
> 
> Please reword this to cover just the latest solution.

Will fix it in next version.

Thanks,
Yilun

> 
> > +    * old BMC chips, the BMC version info is stored in this old version
> > +    * register (0x300400 + 0x68), 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.
> >      */
> > -   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
> >  
> 
> -- 
> Lee Jones [李琼斯]
> Senior Technical Lead - Developer Services
> Linaro.org │ Open source software for Arm SoCs
> Follow Linaro: Facebook | Twitter | Blog

Reply via email to