Re: [PATCH v3 13/27] powerpc/powernv/pmem: Read the capability registers & wait for device ready
From: Andrew Donnellan <hidden>
Date: 2020-02-27 03:54:57
Also in:
linux-mm, lkml, nvdimm
From: Andrew Donnellan <hidden>
Date: 2020-02-27 03:54:57
Also in:
linux-mm, lkml, nvdimm
On 21/2/20 2:27 pm, Alastair D'Silva wrote:
+/**
+ * read_device_metadata() - Retrieve config information from the AFU and save it for future use
+ * @ocxlpmem: the device metadata
+ * Return: 0 on success, negative on failure
+ */
+static int read_device_metadata(struct ocxlpmem *ocxlpmem)
+{
+ u64 val;
+ int rc;
+
+ rc = ocxl_global_mmio_read64(ocxlpmem->ocxl_afu, GLOBAL_MMIO_CCAP0,
+ OCXL_LITTLE_ENDIAN, &val);
+ if (rc)
+ return rc;
+
+ ocxlpmem->scm_revision = val & 0xFFFF;
+ ocxlpmem->read_latency = (val >> 32) & 0xFF;This field is 16 bits in the spec, so the mask should be 0xFFFF I think? Maybe we should generalise the EXTRACT_BITS macro we use in ocxl :) -- Andrew Donnellan OzLabs, ADL Canberra ajd@linux.ibm.com IBM Australia Limited