Message ID | 20210415232750.604112-1-ben.widawsky@intel.com |
---|---|
State | New, archived |
Headers | show |
Series | None | expand |
On Thu, 2021-04-15 at 16:27 -0700, Ben Widawsky wrote: > Vendor capabilities occupy 0x8000 to 0xFFFF according to CXL 2.0 spec > 8.2.8.2.1 CXL Device Capabilities. While they are not defined by the > spec, they are allowed and not "unknown". Call this detail out in the > logs to let users easily distinguish the difference. > > v2: Should be greater than or equal to (Ben) If there's a v3, drop this to below the '---'. Otherwise note for Dan to drop when applying I guess :) > > Fixes: 8adaf747c9f0b ("cxl/mem: Find device capabilities") > Signed-off-by: Ben Widawsky <ben.widawsky@intel.com> > --- > drivers/cxl/mem.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/cxl/mem.c b/drivers/cxl/mem.c > index c05617b0ba4b..28c7c29567b3 100644 > --- a/drivers/cxl/mem.c > +++ b/drivers/cxl/mem.c > @@ -939,7 +939,10 @@ static int cxl_mem_setup_regs(struct cxl_mem *cxlm) > cxlm->memdev_regs = register_block; > break; > default: > - dev_dbg(dev, "Unknown cap ID: %x (0x%x)\n", cap_id, offset); > + if (cap_id >= 0x8000) > + dev_dbg(dev, "Vendor cap ID: %x (0x%x)\n", cap_id, offset); > + else > + dev_dbg(dev, "Unknown cap ID: %x (0x%x)\n", cap_id, offset); > break; > } > }
On 21-04-15 16:37:01, Verma, Vishal L wrote: > On Thu, 2021-04-15 at 16:27 -0700, Ben Widawsky wrote: > > Vendor capabilities occupy 0x8000 to 0xFFFF according to CXL 2.0 spec > > 8.2.8.2.1 CXL Device Capabilities. While they are not defined by the > > spec, they are allowed and not "unknown". Call this detail out in the > > logs to let users easily distinguish the difference. > > > > v2: Should be greater than or equal to (Ben) > > If there's a v3, drop this to below the '---'. Otherwise note for Dan to > drop when applying I guess :) > Thanks... This one is an old habit. I'll point out too I messed up the subject here. > > > > Fixes: 8adaf747c9f0b ("cxl/mem: Find device capabilities") > > Signed-off-by: Ben Widawsky <ben.widawsky@intel.com> > > --- > > drivers/cxl/mem.c | 5 ++++- > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/cxl/mem.c b/drivers/cxl/mem.c > > index c05617b0ba4b..28c7c29567b3 100644 > > --- a/drivers/cxl/mem.c > > +++ b/drivers/cxl/mem.c > > @@ -939,7 +939,10 @@ static int cxl_mem_setup_regs(struct cxl_mem *cxlm) > > cxlm->memdev_regs = register_block; > > break; > > default: > > -dev_dbg(dev, "Unknown cap ID: %x (0x%x)\n", cap_id, offset); > > +if (cap_id >= 0x8000) > > +dev_dbg(dev, "Vendor cap ID: %x (0x%x)\n", cap_id, offset); > > +else > > +dev_dbg(dev, "Unknown cap ID: %x (0x%x)\n", cap_id, offset); > > break; > > } > > } >
On Thu, Apr 15, 2021 at 4:27 PM Ben Widawsky <ben.widawsky@intel.com> wrote: > > Vendor capabilities occupy 0x8000 to 0xFFFF according to CXL 2.0 spec > 8.2.8.2.1 CXL Device Capabilities. While they are not defined by the > spec, they are allowed and not "unknown". Call this detail out in the > logs to let users easily distinguish the difference. > > v2: Should be greater than or equal to (Ben) > > Fixes: 8adaf747c9f0b ("cxl/mem: Find device capabilities") > Signed-off-by: Ben Widawsky <ben.widawsky@intel.com> > --- > drivers/cxl/mem.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/cxl/mem.c b/drivers/cxl/mem.c > index c05617b0ba4b..28c7c29567b3 100644 > --- a/drivers/cxl/mem.c > +++ b/drivers/cxl/mem.c > @@ -939,7 +939,10 @@ static int cxl_mem_setup_regs(struct cxl_mem *cxlm) > cxlm->memdev_regs = register_block; > break; > default: > - dev_dbg(dev, "Unknown cap ID: %x (0x%x)\n", cap_id, offset); > + if (cap_id >= 0x8000) > + dev_dbg(dev, "Vendor cap ID: %x (0x%x)\n", cap_id, offset); > + else > + dev_dbg(dev, "Unknown cap ID: %x (0x%x)\n", cap_id, offset); This wants the same %#x fixup that Vishal noted on patch2 [1], and I think it would be useful to clarify that the second number is indeed an offset: "Unknown cap_id: %#x offset: %#x\n" [1]: http://lore.kernel.org/r/40063fe52fcaa066a42d352b13128b6762277542.camel@intel.com
diff --git a/drivers/cxl/mem.c b/drivers/cxl/mem.c index c05617b0ba4b..28c7c29567b3 100644 --- a/drivers/cxl/mem.c +++ b/drivers/cxl/mem.c @@ -939,7 +939,10 @@ static int cxl_mem_setup_regs(struct cxl_mem *cxlm) cxlm->memdev_regs = register_block; break; default: - dev_dbg(dev, "Unknown cap ID: %x (0x%x)\n", cap_id, offset); + if (cap_id >= 0x8000) + dev_dbg(dev, "Vendor cap ID: %x (0x%x)\n", cap_id, offset); + else + dev_dbg(dev, "Unknown cap ID: %x (0x%x)\n", cap_id, offset); break; } }
Vendor capabilities occupy 0x8000 to 0xFFFF according to CXL 2.0 spec 8.2.8.2.1 CXL Device Capabilities. While they are not defined by the spec, they are allowed and not "unknown". Call this detail out in the logs to let users easily distinguish the difference. v2: Should be greater than or equal to (Ben) Fixes: 8adaf747c9f0b ("cxl/mem: Find device capabilities") Signed-off-by: Ben Widawsky <ben.widawsky@intel.com> --- drivers/cxl/mem.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)