Message ID | 20200426194533.26606-1-klaus@linux.vnet.ibm.com |
---|---|
State | Accepted |
Headers | show |
Series | hdata/memory.c: Fix "Inconsistent MSAREA" warnings | expand |
On 4/27/20 1:15 AM, Klaus Heinrich Kiwi wrote: > add_memory_buffer_mmio() should be exclusive to P9P (AXONE). > Running it on non P9P systems resulted in warnings such as: > > MS AREA: Inconsistent MSAREA version 40 for P9P system > > So check for PVR and quietly return if not P9P. > > Fixes: 38b5c3179 (Add support for memory-buffer mmio) > Cc: skiboot-stable@lists.ozlabs.org > Cc: Oliver O'Halloran <oohall@gmail.com> > Signed-off-by: Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com> > --- > hdata/memory.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/hdata/memory.c b/hdata/memory.c > index 7ce927502..f2c440540 100755 > --- a/hdata/memory.c > +++ b/hdata/memory.c > @@ -514,6 +514,9 @@ static void add_memory_buffer_mmio(const struct HDIF_common_hdr *msarea) > struct dt_node *membuf; > uint64_t *reg, *flags; > > + if (PVR_TYPE(mfspr(SPR_PVR)) != PVR_TYPE_P9P) > + return; > + Is this supported *only* on P9P? I thought we are going to support this in future processors as well. Better way to skip warning in below if condition and return. -Vasant > if (be32_to_cpu(msarea->version) < 0x50) { > prlog(PR_WARNING, "MS AREA: Inconsistent MSAREA version %x for P9P system", > be32_to_cpu(msarea->version)); >
On 4/27/2020 6:12 AM, Vasant Hegde wrote: >> >> + if (PVR_TYPE(mfspr(SPR_PVR)) != PVR_TYPE_P9P) >> + return; >> + > > Is this supported *only* on P9P? I thought we are going to support this > in future processors as well. > > Better way to skip warning in below if condition and return. I was trying to be consistent with add_memory_controller() here (see my other reply to this thread), and I guess there is nothing stopping us from having a P9 (or older) system using a HDAT with a MSAREA => 0x50? -Klaus
On Mon, Apr 27, 2020 at 5:45 AM Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com> wrote: > > add_memory_buffer_mmio() should be exclusive to P9P (AXONE). > Running it on non P9P systems resulted in warnings such as: > > MS AREA: Inconsistent MSAREA version 40 for P9P system > > So check for PVR and quietly return if not P9P. > > Fixes: 38b5c3179 (Add support for memory-buffer mmio) > Cc: skiboot-stable@lists.ozlabs.org > Cc: Oliver O'Halloran <oohall@gmail.com> > Signed-off-by: Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com> > --- > hdata/memory.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/hdata/memory.c b/hdata/memory.c > index 7ce927502..f2c440540 100755 > --- a/hdata/memory.c > +++ b/hdata/memory.c > @@ -514,6 +514,9 @@ static void add_memory_buffer_mmio(const struct HDIF_common_hdr *msarea) > struct dt_node *membuf; > uint64_t *reg, *flags; > > + if (PVR_TYPE(mfspr(SPR_PVR)) != PVR_TYPE_P9P) > + return; > + > if (be32_to_cpu(msarea->version) < 0x50) { > prlog(PR_WARNING, "MS AREA: Inconsistent MSAREA version %x for P9P system", > be32_to_cpu(msarea->version)); > -- > 2.17.1 > This is going to break on p10, but whatever. Merged as 11d12c6fb60af42b89930fe776958f0eb208dd23
diff --git a/hdata/memory.c b/hdata/memory.c index 7ce927502..f2c440540 100755 --- a/hdata/memory.c +++ b/hdata/memory.c @@ -514,6 +514,9 @@ static void add_memory_buffer_mmio(const struct HDIF_common_hdr *msarea) struct dt_node *membuf; uint64_t *reg, *flags; + if (PVR_TYPE(mfspr(SPR_PVR)) != PVR_TYPE_P9P) + return; + if (be32_to_cpu(msarea->version) < 0x50) { prlog(PR_WARNING, "MS AREA: Inconsistent MSAREA version %x for P9P system", be32_to_cpu(msarea->version));
add_memory_buffer_mmio() should be exclusive to P9P (AXONE). Running it on non P9P systems resulted in warnings such as: MS AREA: Inconsistent MSAREA version 40 for P9P system So check for PVR and quietly return if not P9P. Fixes: 38b5c3179 (Add support for memory-buffer mmio) Cc: skiboot-stable@lists.ozlabs.org Cc: Oliver O'Halloran <oohall@gmail.com> Signed-off-by: Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com> --- hdata/memory.c | 3 +++ 1 file changed, 3 insertions(+)