All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Alastair D'Silva" <alastair@au1.ibm.com>
To: alastair@d-silva.org
Cc: "Benjamin Herrenschmidt" <benh@kernel.crashing.org>,
	"Paul Mackerras" <paulus@samba.org>,
	"Michael Ellerman" <mpe@ellerman.id.au>,
	"Frederic Barrat" <fbarrat@linux.ibm.com>,
	"Andrew Donnellan" <ajd@linux.ibm.com>,
	"Arnd Bergmann" <arnd@arndb.de>,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	"Geert Uytterhoeven" <geert+renesas@glider.be>,
	"Krzysztof Kozlowski" <krzk@kernel.org>,
	"Anton Blanchard" <anton@ozlabs.org>,
	"Allison Randal" <allison@lohutok.net>,
	"Cédric Le Goater" <clg@kaod.org>,
	"David Gibson" <david@gibson.dropbear.id.au>,
	"Vasant Hegde" <hegdevasant@linux.vnet.ibm.com>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	"Anju T Sudhakar" <anju@linux.vnet.ibm.com>,
	"Hari Bathini" <hbathini@linux.ibm.com>,
	"Mahesh Salgaonkar" <mahesh@linux.vnet.ibm.com>,
	"Greg Kurz" <groug@kaod.org>,
	"Masahiro Yamada" <yamada.masahiro@socionext.com>,
	"Alexey Kardashevskiy" <aik@ozlabs.ru>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"David Hildenbrand" <david@redhat.com>,
	"Oscar Salvador" <osalvador@suse.com>,
	"Michal Hocko" <mhocko@suse.com>,
	"Pavel Tatashin" <pasha.tatashin@soleen.com>,
	"Wei Yang" <richard.weiyang@gmail.com>, "Qian Cai" <cai@lca.pw>,
	linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org,
	linux-nvdimm@lists.01.org, linux-mm@kvack.org
Subject: [PATCH 04/10] powerpc: Map & release OpenCAPI LPC memory
Date: Fri, 25 Oct 2019 15:46:59 +1100	[thread overview]
Message-ID: <20191025044721.16617-5-alastair@au1.ibm.com> (raw)
In-Reply-To: <20191025044721.16617-1-alastair@au1.ibm.com>

From: Alastair D'Silva <alastair@d-silva.org>

This patch adds platform support to map & release LPC memory.

Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
---
 arch/powerpc/include/asm/pnv-ocxl.h   |  2 ++
 arch/powerpc/platforms/powernv/ocxl.c | 41 +++++++++++++++++++++++++++
 include/linux/memory_hotplug.h        |  5 ++++
 mm/memory_hotplug.c                   |  3 +-
 4 files changed, 50 insertions(+), 1 deletion(-)

diff --git a/arch/powerpc/include/asm/pnv-ocxl.h b/arch/powerpc/include/asm/pnv-ocxl.h
index 7de82647e761..f8f8ffb48aa8 100644
--- a/arch/powerpc/include/asm/pnv-ocxl.h
+++ b/arch/powerpc/include/asm/pnv-ocxl.h
@@ -32,5 +32,7 @@ extern int pnv_ocxl_spa_remove_pe_from_cache(void *platform_data, int pe_handle)
 
 extern int pnv_ocxl_alloc_xive_irq(u32 *irq, u64 *trigger_addr);
 extern void pnv_ocxl_free_xive_irq(u32 irq);
+extern u64 pnv_ocxl_platform_lpc_setup(struct pci_dev *pdev, u64 size);
+extern void pnv_ocxl_platform_lpc_release(struct pci_dev *pdev);
 
 #endif /* _ASM_PNV_OCXL_H */
diff --git a/arch/powerpc/platforms/powernv/ocxl.c b/arch/powerpc/platforms/powernv/ocxl.c
index 8c65aacda9c8..c6d4234e0aba 100644
--- a/arch/powerpc/platforms/powernv/ocxl.c
+++ b/arch/powerpc/platforms/powernv/ocxl.c
@@ -475,6 +475,47 @@ void pnv_ocxl_spa_release(void *platform_data)
 }
 EXPORT_SYMBOL_GPL(pnv_ocxl_spa_release);
 
+u64 pnv_ocxl_platform_lpc_setup(struct pci_dev *pdev, u64 size)
+{
+	struct pci_controller *hose = pci_bus_to_host(pdev->bus);
+	struct pnv_phb *phb = hose->private_data;
+	u32 bdfn = (pdev->bus->number << 8) | pdev->devfn;
+	u64 base_addr = 0;
+	int rc;
+
+	rc = opal_npu_mem_alloc(phb->opal_id, bdfn, size, &base_addr);
+	if (rc) {
+		dev_warn(&pdev->dev,
+			 "OPAL could not allocate LPC memory, rc=%d\n", rc);
+		return 0;
+	}
+
+	base_addr = be64_to_cpu(base_addr);
+
+	rc = check_hotplug_memory_addressable(base_addr >> PAGE_SHIFT,
+					      size >> PAGE_SHIFT);
+	if (rc)
+		return 0;
+
+	return base_addr;
+}
+EXPORT_SYMBOL_GPL(pnv_ocxl_platform_lpc_setup);
+
+void pnv_ocxl_platform_lpc_release(struct pci_dev *pdev)
+{
+	struct pci_controller *hose = pci_bus_to_host(pdev->bus);
+	struct pnv_phb *phb = hose->private_data;
+	u32 bdfn = (pdev->bus->number << 8) | pdev->devfn;
+	int rc;
+
+	rc = opal_npu_mem_release(phb->opal_id, bdfn);
+	if (rc)
+		dev_warn(&pdev->dev,
+			 "OPAL reported rc=%d when releasing LPC memory\n", rc);
+}
+EXPORT_SYMBOL_GPL(pnv_ocxl_platform_lpc_release);
+
+
 int pnv_ocxl_spa_remove_pe_from_cache(void *platform_data, int pe_handle)
 {
 	struct spa_data *data = (struct spa_data *) platform_data;
diff --git a/include/linux/memory_hotplug.h b/include/linux/memory_hotplug.h
index f46ea71b4ffd..3f5f1a642abe 100644
--- a/include/linux/memory_hotplug.h
+++ b/include/linux/memory_hotplug.h
@@ -339,6 +339,11 @@ static inline int remove_memory(int nid, u64 start, u64 size)
 static inline void __remove_memory(int nid, u64 start, u64 size) {}
 #endif /* CONFIG_MEMORY_HOTREMOVE */
 
+#if CONFIG_MEMORY_HOTPLUG_SPARSE
+int check_hotplug_memory_addressable(unsigned long pfn,
+		unsigned long nr_pages);
+#endif /* CONFIG_MEMORY_HOTPLUG_SPARSE */
+
 extern void __ref free_area_init_core_hotplug(int nid);
 extern int __add_memory(int nid, u64 start, u64 size);
 extern int add_memory(int nid, u64 start, u64 size);
diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
index 2cecf07b396f..b39827dbd071 100644
--- a/mm/memory_hotplug.c
+++ b/mm/memory_hotplug.c
@@ -278,7 +278,7 @@ static int check_pfn_span(unsigned long pfn, unsigned long nr_pages,
 	return 0;
 }
 
-static int check_hotplug_memory_addressable(unsigned long pfn,
+int check_hotplug_memory_addressable(unsigned long pfn,
 					    unsigned long nr_pages)
 {
 	const u64 max_addr = PFN_PHYS(pfn + nr_pages) - 1;
@@ -294,6 +294,7 @@ static int check_hotplug_memory_addressable(unsigned long pfn,
 
 	return 0;
 }
+EXPORT_SYMBOL_GPL(check_hotplug_memory_addressable);
 
 /*
  * Reasonably generic function for adding memory.  It is
-- 
2.21.0
_______________________________________________
Linux-nvdimm mailing list -- linux-nvdimm@lists.01.org
To unsubscribe send an email to linux-nvdimm-leave@lists.01.org

WARNING: multiple messages have this Message-ID (diff)
From: "Alastair D'Silva" <alastair@au1.ibm.com>
To: alastair@d-silva.org
Cc: "Benjamin Herrenschmidt" <benh@kernel.crashing.org>,
	"Paul Mackerras" <paulus@samba.org>,
	"Michael Ellerman" <mpe@ellerman.id.au>,
	"Frederic Barrat" <fbarrat@linux.ibm.com>,
	"Andrew Donnellan" <ajd@linux.ibm.com>,
	"Arnd Bergmann" <arnd@arndb.de>,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	"Dan Williams" <dan.j.williams@intel.com>,
	"Vishal Verma" <vishal.l.verma@intel.com>,
	"Dave Jiang" <dave.jiang@intel.com>,
	"Keith Busch" <keith.busch@intel.com>,
	"Ira Weiny" <ira.weiny@intel.com>,
	"Geert Uytterhoeven" <geert+renesas@glider.be>,
	"Krzysztof Kozlowski" <krzk@kernel.org>,
	"Anton Blanchard" <anton@ozlabs.org>,
	"Allison Randal" <allison@lohutok.net>,
	"Cédric Le Goater" <clg@kaod.org>,
	"David Gibson" <david@gibson.dropbear.id.au>,
	"Vasant Hegde" <hegdevasant@linux.vnet.ibm.com>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	"Anju T Sudhakar" <anju@linux.vnet.ibm.com>,
	"Hari Bathini" <hbathini@linux.ibm.com>,
	"Mahesh Salgaonkar" <mahesh@linux.vnet.ibm.com>,
	"Greg Kurz" <groug@kaod.org>,
	"Masahiro Yamada" <yamada.masahiro@socionext.com>,
	"Alexey Kardashevskiy" <aik@ozlabs.ru>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"David Hildenbrand" <david@redhat.com>,
	"Oscar Salvador" <osalvador@suse.com>,
	"Michal Hocko" <mhocko@suse.com>,
	"Pavel Tatashin" <pasha.tatashin@soleen.com>,
	"Wei Yang" <richard.weiyang@gmail.com>, "Qian Cai" <cai@lca.pw>,
	linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org,
	linux-nvdimm@lists.01.org, linux-mm@kvack.org
Subject: [PATCH 04/10] powerpc: Map & release OpenCAPI LPC memory
Date: Fri, 25 Oct 2019 15:46:59 +1100	[thread overview]
Message-ID: <20191025044721.16617-5-alastair@au1.ibm.com> (raw)
In-Reply-To: <20191025044721.16617-1-alastair@au1.ibm.com>

From: Alastair D'Silva <alastair@d-silva.org>

This patch adds platform support to map & release LPC memory.

Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
---
 arch/powerpc/include/asm/pnv-ocxl.h   |  2 ++
 arch/powerpc/platforms/powernv/ocxl.c | 41 +++++++++++++++++++++++++++
 include/linux/memory_hotplug.h        |  5 ++++
 mm/memory_hotplug.c                   |  3 +-
 4 files changed, 50 insertions(+), 1 deletion(-)

diff --git a/arch/powerpc/include/asm/pnv-ocxl.h b/arch/powerpc/include/asm/pnv-ocxl.h
index 7de82647e761..f8f8ffb48aa8 100644
--- a/arch/powerpc/include/asm/pnv-ocxl.h
+++ b/arch/powerpc/include/asm/pnv-ocxl.h
@@ -32,5 +32,7 @@ extern int pnv_ocxl_spa_remove_pe_from_cache(void *platform_data, int pe_handle)
 
 extern int pnv_ocxl_alloc_xive_irq(u32 *irq, u64 *trigger_addr);
 extern void pnv_ocxl_free_xive_irq(u32 irq);
+extern u64 pnv_ocxl_platform_lpc_setup(struct pci_dev *pdev, u64 size);
+extern void pnv_ocxl_platform_lpc_release(struct pci_dev *pdev);
 
 #endif /* _ASM_PNV_OCXL_H */
diff --git a/arch/powerpc/platforms/powernv/ocxl.c b/arch/powerpc/platforms/powernv/ocxl.c
index 8c65aacda9c8..c6d4234e0aba 100644
--- a/arch/powerpc/platforms/powernv/ocxl.c
+++ b/arch/powerpc/platforms/powernv/ocxl.c
@@ -475,6 +475,47 @@ void pnv_ocxl_spa_release(void *platform_data)
 }
 EXPORT_SYMBOL_GPL(pnv_ocxl_spa_release);
 
+u64 pnv_ocxl_platform_lpc_setup(struct pci_dev *pdev, u64 size)
+{
+	struct pci_controller *hose = pci_bus_to_host(pdev->bus);
+	struct pnv_phb *phb = hose->private_data;
+	u32 bdfn = (pdev->bus->number << 8) | pdev->devfn;
+	u64 base_addr = 0;
+	int rc;
+
+	rc = opal_npu_mem_alloc(phb->opal_id, bdfn, size, &base_addr);
+	if (rc) {
+		dev_warn(&pdev->dev,
+			 "OPAL could not allocate LPC memory, rc=%d\n", rc);
+		return 0;
+	}
+
+	base_addr = be64_to_cpu(base_addr);
+
+	rc = check_hotplug_memory_addressable(base_addr >> PAGE_SHIFT,
+					      size >> PAGE_SHIFT);
+	if (rc)
+		return 0;
+
+	return base_addr;
+}
+EXPORT_SYMBOL_GPL(pnv_ocxl_platform_lpc_setup);
+
+void pnv_ocxl_platform_lpc_release(struct pci_dev *pdev)
+{
+	struct pci_controller *hose = pci_bus_to_host(pdev->bus);
+	struct pnv_phb *phb = hose->private_data;
+	u32 bdfn = (pdev->bus->number << 8) | pdev->devfn;
+	int rc;
+
+	rc = opal_npu_mem_release(phb->opal_id, bdfn);
+	if (rc)
+		dev_warn(&pdev->dev,
+			 "OPAL reported rc=%d when releasing LPC memory\n", rc);
+}
+EXPORT_SYMBOL_GPL(pnv_ocxl_platform_lpc_release);
+
+
 int pnv_ocxl_spa_remove_pe_from_cache(void *platform_data, int pe_handle)
 {
 	struct spa_data *data = (struct spa_data *) platform_data;
diff --git a/include/linux/memory_hotplug.h b/include/linux/memory_hotplug.h
index f46ea71b4ffd..3f5f1a642abe 100644
--- a/include/linux/memory_hotplug.h
+++ b/include/linux/memory_hotplug.h
@@ -339,6 +339,11 @@ static inline int remove_memory(int nid, u64 start, u64 size)
 static inline void __remove_memory(int nid, u64 start, u64 size) {}
 #endif /* CONFIG_MEMORY_HOTREMOVE */
 
+#if CONFIG_MEMORY_HOTPLUG_SPARSE
+int check_hotplug_memory_addressable(unsigned long pfn,
+		unsigned long nr_pages);
+#endif /* CONFIG_MEMORY_HOTPLUG_SPARSE */
+
 extern void __ref free_area_init_core_hotplug(int nid);
 extern int __add_memory(int nid, u64 start, u64 size);
 extern int add_memory(int nid, u64 start, u64 size);
diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
index 2cecf07b396f..b39827dbd071 100644
--- a/mm/memory_hotplug.c
+++ b/mm/memory_hotplug.c
@@ -278,7 +278,7 @@ static int check_pfn_span(unsigned long pfn, unsigned long nr_pages,
 	return 0;
 }
 
-static int check_hotplug_memory_addressable(unsigned long pfn,
+int check_hotplug_memory_addressable(unsigned long pfn,
 					    unsigned long nr_pages)
 {
 	const u64 max_addr = PFN_PHYS(pfn + nr_pages) - 1;
@@ -294,6 +294,7 @@ static int check_hotplug_memory_addressable(unsigned long pfn,
 
 	return 0;
 }
+EXPORT_SYMBOL_GPL(check_hotplug_memory_addressable);
 
 /*
  * Reasonably generic function for adding memory.  It is
-- 
2.21.0


WARNING: multiple messages have this Message-ID (diff)
From: "Alastair D'Silva" <alastair@au1.ibm.com>
To: alastair@d-silva.org
Cc: "Oscar Salvador" <osalvador@suse.com>,
	"Michal Hocko" <mhocko@suse.com>,
	"Geert Uytterhoeven" <geert+renesas@glider.be>,
	"David Hildenbrand" <david@redhat.com>,
	"Alexey Kardashevskiy" <aik@ozlabs.ru>,
	"Wei Yang" <richard.weiyang@gmail.com>,
	"Keith Busch" <keith.busch@intel.com>,
	"Masahiro Yamada" <yamada.masahiro@socionext.com>,
	"Paul Mackerras" <paulus@samba.org>,
	"Ira Weiny" <ira.weiny@intel.com>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	"Pavel Tatashin" <pasha.tatashin@soleen.com>,
	"Dave Jiang" <dave.jiang@intel.com>,
	linux-nvdimm@lists.01.org,
	"Vishal Verma" <vishal.l.verma@intel.com>,
	"Krzysztof Kozlowski" <krzk@kernel.org>,
	"Anju T Sudhakar" <anju@linux.vnet.ibm.com>,
	"Allison Randal" <allison@lohutok.net>,
	"Mahesh Salgaonkar" <mahesh@linux.vnet.ibm.com>,
	"Andrew Donnellan" <ajd@linux.ibm.com>,
	"Arnd Bergmann" <arnd@arndb.de>, "Greg Kurz" <groug@kaod.org>,
	"Qian Cai" <cai@lca.pw>, "Cédric Le Goater" <clg@kaod.org>,
	"Dan Williams" <dan.j.williams@intel.com>,
	"Hari Bathini" <hbathini@linux.ibm.com>,
	"David Gibson" <david@gibson.dropbear.id.au>,
	linux-mm@kvack.org,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	linux-kernel@vger.kernel.org,
	"Vasant Hegde" <hegdevasant@linux.vnet.ibm.com>,
	"Frederic Barrat" <fbarrat@linux.ibm.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	linuxppc-dev@lists.ozlabs.org
Subject: [PATCH 04/10] powerpc: Map & release OpenCAPI LPC memory
Date: Fri, 25 Oct 2019 15:46:59 +1100	[thread overview]
Message-ID: <20191025044721.16617-5-alastair@au1.ibm.com> (raw)
In-Reply-To: <20191025044721.16617-1-alastair@au1.ibm.com>

From: Alastair D'Silva <alastair@d-silva.org>

This patch adds platform support to map & release LPC memory.

Signed-off-by: Alastair D'Silva <alastair@d-silva.org>
---
 arch/powerpc/include/asm/pnv-ocxl.h   |  2 ++
 arch/powerpc/platforms/powernv/ocxl.c | 41 +++++++++++++++++++++++++++
 include/linux/memory_hotplug.h        |  5 ++++
 mm/memory_hotplug.c                   |  3 +-
 4 files changed, 50 insertions(+), 1 deletion(-)

diff --git a/arch/powerpc/include/asm/pnv-ocxl.h b/arch/powerpc/include/asm/pnv-ocxl.h
index 7de82647e761..f8f8ffb48aa8 100644
--- a/arch/powerpc/include/asm/pnv-ocxl.h
+++ b/arch/powerpc/include/asm/pnv-ocxl.h
@@ -32,5 +32,7 @@ extern int pnv_ocxl_spa_remove_pe_from_cache(void *platform_data, int pe_handle)
 
 extern int pnv_ocxl_alloc_xive_irq(u32 *irq, u64 *trigger_addr);
 extern void pnv_ocxl_free_xive_irq(u32 irq);
+extern u64 pnv_ocxl_platform_lpc_setup(struct pci_dev *pdev, u64 size);
+extern void pnv_ocxl_platform_lpc_release(struct pci_dev *pdev);
 
 #endif /* _ASM_PNV_OCXL_H */
diff --git a/arch/powerpc/platforms/powernv/ocxl.c b/arch/powerpc/platforms/powernv/ocxl.c
index 8c65aacda9c8..c6d4234e0aba 100644
--- a/arch/powerpc/platforms/powernv/ocxl.c
+++ b/arch/powerpc/platforms/powernv/ocxl.c
@@ -475,6 +475,47 @@ void pnv_ocxl_spa_release(void *platform_data)
 }
 EXPORT_SYMBOL_GPL(pnv_ocxl_spa_release);
 
+u64 pnv_ocxl_platform_lpc_setup(struct pci_dev *pdev, u64 size)
+{
+	struct pci_controller *hose = pci_bus_to_host(pdev->bus);
+	struct pnv_phb *phb = hose->private_data;
+	u32 bdfn = (pdev->bus->number << 8) | pdev->devfn;
+	u64 base_addr = 0;
+	int rc;
+
+	rc = opal_npu_mem_alloc(phb->opal_id, bdfn, size, &base_addr);
+	if (rc) {
+		dev_warn(&pdev->dev,
+			 "OPAL could not allocate LPC memory, rc=%d\n", rc);
+		return 0;
+	}
+
+	base_addr = be64_to_cpu(base_addr);
+
+	rc = check_hotplug_memory_addressable(base_addr >> PAGE_SHIFT,
+					      size >> PAGE_SHIFT);
+	if (rc)
+		return 0;
+
+	return base_addr;
+}
+EXPORT_SYMBOL_GPL(pnv_ocxl_platform_lpc_setup);
+
+void pnv_ocxl_platform_lpc_release(struct pci_dev *pdev)
+{
+	struct pci_controller *hose = pci_bus_to_host(pdev->bus);
+	struct pnv_phb *phb = hose->private_data;
+	u32 bdfn = (pdev->bus->number << 8) | pdev->devfn;
+	int rc;
+
+	rc = opal_npu_mem_release(phb->opal_id, bdfn);
+	if (rc)
+		dev_warn(&pdev->dev,
+			 "OPAL reported rc=%d when releasing LPC memory\n", rc);
+}
+EXPORT_SYMBOL_GPL(pnv_ocxl_platform_lpc_release);
+
+
 int pnv_ocxl_spa_remove_pe_from_cache(void *platform_data, int pe_handle)
 {
 	struct spa_data *data = (struct spa_data *) platform_data;
diff --git a/include/linux/memory_hotplug.h b/include/linux/memory_hotplug.h
index f46ea71b4ffd..3f5f1a642abe 100644
--- a/include/linux/memory_hotplug.h
+++ b/include/linux/memory_hotplug.h
@@ -339,6 +339,11 @@ static inline int remove_memory(int nid, u64 start, u64 size)
 static inline void __remove_memory(int nid, u64 start, u64 size) {}
 #endif /* CONFIG_MEMORY_HOTREMOVE */
 
+#if CONFIG_MEMORY_HOTPLUG_SPARSE
+int check_hotplug_memory_addressable(unsigned long pfn,
+		unsigned long nr_pages);
+#endif /* CONFIG_MEMORY_HOTPLUG_SPARSE */
+
 extern void __ref free_area_init_core_hotplug(int nid);
 extern int __add_memory(int nid, u64 start, u64 size);
 extern int add_memory(int nid, u64 start, u64 size);
diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
index 2cecf07b396f..b39827dbd071 100644
--- a/mm/memory_hotplug.c
+++ b/mm/memory_hotplug.c
@@ -278,7 +278,7 @@ static int check_pfn_span(unsigned long pfn, unsigned long nr_pages,
 	return 0;
 }
 
-static int check_hotplug_memory_addressable(unsigned long pfn,
+int check_hotplug_memory_addressable(unsigned long pfn,
 					    unsigned long nr_pages)
 {
 	const u64 max_addr = PFN_PHYS(pfn + nr_pages) - 1;
@@ -294,6 +294,7 @@ static int check_hotplug_memory_addressable(unsigned long pfn,
 
 	return 0;
 }
+EXPORT_SYMBOL_GPL(check_hotplug_memory_addressable);
 
 /*
  * Reasonably generic function for adding memory.  It is
-- 
2.21.0


  parent reply	other threads:[~2019-10-25  4:49 UTC|newest]

Thread overview: 155+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-25  4:46 [PATCH 00/10] Add support for OpenCAPI SCM devices Alastair D'Silva
2019-10-25  4:46 ` Alastair D'Silva
2019-10-25  4:46 ` Alastair D'Silva
2019-10-25  4:46 ` [PATCH 01/10] memory_hotplug: Add a bounds check to __add_pages Alastair D'Silva
2019-10-25  4:46   ` Alastair D'Silva
2019-10-25  4:46   ` Alastair D'Silva
2019-10-25  4:46 ` [PATCH 02/10] nvdimm: remove prototypes for nonexistent functions Alastair D'Silva
2019-10-25  4:46   ` Alastair D'Silva
2019-10-25  4:46   ` Alastair D'Silva
2019-10-27 23:41   ` Andrew Donnellan
2019-10-27 23:41     ` Andrew Donnellan
2019-10-27 23:41     ` Andrew Donnellan
2019-11-07 17:56   ` Frederic Barrat
2019-11-07 17:56     ` Frederic Barrat
2019-11-07 17:56     ` Frederic Barrat
2019-11-15  4:30   ` Dan Williams
2019-11-15  4:30     ` Dan Williams
2019-11-15  4:30     ` Dan Williams
2019-10-25  4:46 ` [PATCH 03/10] powerpc: Add OPAL calls for LPC memory alloc/release Alastair D'Silva
2019-10-25  4:46   ` Alastair D'Silva
2019-10-25  4:46   ` Alastair D'Silva
2019-11-07 17:57   ` Frederic Barrat
2019-11-07 17:57     ` Frederic Barrat
2019-11-07 17:57     ` Frederic Barrat
2019-10-25  4:46 ` Alastair D'Silva [this message]
2019-10-25  4:46   ` [PATCH 04/10] powerpc: Map & release OpenCAPI LPC memory Alastair D'Silva
2019-10-25  4:46   ` Alastair D'Silva
2019-10-27 21:24   ` kbuild test robot
2019-10-27 21:24     ` kbuild test robot
2019-10-27 21:24     ` kbuild test robot
2019-10-27 21:24     ` kbuild test robot
2019-10-27 21:59   ` kbuild test robot
2019-10-27 21:59     ` kbuild test robot
2019-10-27 21:59     ` kbuild test robot
2019-10-27 21:59     ` kbuild test robot
2019-10-28  2:34   ` kbuild test robot
2019-10-28  2:34     ` kbuild test robot
2019-10-28  2:34     ` kbuild test robot
2019-10-28  2:34     ` kbuild test robot
2019-10-29  1:49   ` Andrew Donnellan
2019-10-29  1:49     ` Andrew Donnellan
2019-10-29  1:49     ` Andrew Donnellan
2019-10-29  2:44     ` Alastair D'Silva
2019-10-29  2:44       ` Alastair D'Silva
2019-10-29  2:44       ` Alastair D'Silva
2019-10-29  2:47       ` Andrew Donnellan
2019-10-29  2:47         ` Andrew Donnellan
2019-10-29  2:47         ` Andrew Donnellan
2019-11-07 17:59   ` Frederic Barrat
2019-11-07 17:59     ` Frederic Barrat
2019-11-07 17:59     ` Frederic Barrat
2019-11-11  9:34   ` Aneesh Kumar K.V
2019-11-11  9:34     ` Aneesh Kumar K.V
2019-10-25  4:47 ` [PATCH 05/10] ocxl: Tally up the LPC memory on a link & allow it to be mapped Alastair D'Silva
2019-10-25  4:47   ` Alastair D'Silva
2019-10-25  4:47   ` Alastair D'Silva
2019-11-07 18:02   ` Frederic Barrat
2019-11-07 18:02     ` Frederic Barrat
2019-11-07 18:02     ` Frederic Barrat
2019-10-25  4:47 ` [PATCH 06/10] ocxl: Add functions to map/unmap LPC memory Alastair D'Silva
2019-10-25  4:47   ` Alastair D'Silva
2019-10-25  4:47   ` Alastair D'Silva
2019-11-07 18:05   ` Frederic Barrat
2019-11-07 18:05     ` Frederic Barrat
2019-11-07 18:05     ` Frederic Barrat
2019-10-25  4:47 ` [PATCH 07/10] ocxl: Save the device serial number in ocxl_fn Alastair D'Silva
2019-10-25  4:47   ` Alastair D'Silva
2019-10-25  4:47   ` Alastair D'Silva
2019-11-06  3:10   ` Andrew Donnellan
2019-11-06  3:10     ` Andrew Donnellan
2019-11-06  3:10     ` Andrew Donnellan
2019-11-07 18:18   ` Frederic Barrat
2019-11-07 18:18     ` Frederic Barrat
2019-11-07 18:18     ` Frederic Barrat
2019-10-25  4:47 ` [PATCH 08/10] nvdimm: Add driver for OpenCAPI Storage Class Memory Alastair D'Silva
2019-10-25  4:47   ` Alastair D'Silva
2019-10-25  4:47   ` Alastair D'Silva
2019-10-27 22:19   ` kbuild test robot
2019-10-27 22:19     ` kbuild test robot
2019-10-27 22:19     ` kbuild test robot
2019-10-27 22:19     ` kbuild test robot
2019-10-27 22:53   ` kbuild test robot
2019-10-27 22:53     ` kbuild test robot
2019-10-27 22:53     ` kbuild test robot
2019-10-27 22:53     ` kbuild test robot
2019-10-28  1:12   ` [RFC PATCH] nvdimm: scm_get() can be static kbuild test robot
2019-10-28  1:12     ` kbuild test robot
2019-10-28  1:12     ` kbuild test robot
2019-10-28  1:12     ` kbuild test robot
2019-11-11 11:14   ` [PATCH 08/10] nvdimm: Add driver for OpenCAPI Storage Class Memory Aneesh Kumar K.V
2019-11-11 11:14     ` Aneesh Kumar K.V
2019-11-12  5:37     ` Dan Williams
2019-11-12  5:37       ` Dan Williams
2019-11-12  5:41       ` Dan Williams
2019-11-12  5:41         ` Dan Williams
2019-11-14 13:41   ` Frederic Barrat
2019-11-14 13:41     ` Frederic Barrat
2019-11-14 13:41     ` Frederic Barrat
2019-11-14 16:35     ` Dan Williams
2019-11-14 16:35       ` Dan Williams
2019-11-14 16:35       ` Dan Williams
2019-11-18 23:47       ` Andrew Donnellan
2019-11-18 23:47         ` Andrew Donnellan
2019-11-18 23:47         ` Andrew Donnellan
2019-11-19  0:04         ` Dan Williams
2019-11-19  0:04           ` Dan Williams
2019-11-19  0:04           ` Dan Williams
2019-11-19  2:48         ` Alastair D'Silva
2019-11-19  2:48           ` Alastair D'Silva
2019-11-19  2:48           ` Alastair D'Silva
2019-11-19  3:26           ` Andrew Donnellan
2019-11-19  3:26             ` Andrew Donnellan
2019-11-19  3:26             ` Andrew Donnellan
2019-11-19  4:41             ` Dan Williams
2019-11-19  4:41               ` Dan Williams
2019-11-19  4:41               ` Dan Williams
2019-11-18 23:01     ` Alastair D'Silva
2019-11-18 23:01       ` Alastair D'Silva
2019-11-18 23:01       ` Alastair D'Silva
2019-10-25  4:47 ` [PATCH 09/10] powerpc: Enable OpenCAPI Storage Class Memory driver on bare metal Alastair D'Silva
2019-10-25  4:47   ` Alastair D'Silva
2019-10-25  4:47   ` Alastair D'Silva
2019-10-28  2:43   ` Oliver O'Halloran
2019-10-28  2:43     ` Oliver O'Halloran
2019-10-28  2:43     ` Oliver O'Halloran
2019-10-28  2:43     ` Oliver O'Halloran
2019-11-08  7:10   ` Frederic Barrat
2019-11-08  7:10     ` Frederic Barrat
2019-11-08  7:10     ` Frederic Barrat
2020-01-31  4:56     ` Alastair D'Silva
2020-01-31  4:56       ` Alastair D'Silva
2020-01-31  4:56       ` Alastair D'Silva
2020-01-31  5:14       ` Dan Williams
2020-01-31  5:14         ` Dan Williams
2020-01-31  5:14         ` Dan Williams
2019-11-11  9:46   ` Aneesh Kumar K.V
2019-11-11  9:46     ` Aneesh Kumar K.V
2019-10-25  4:47 ` [PATCH 10/10] ocxl: Conditionally bind SCM devices to the generic OCXL driver Alastair D'Silva
2019-10-25  4:47   ` Alastair D'Silva
2019-10-25  4:47   ` Alastair D'Silva
2019-10-26  6:43   ` Christoph Hellwig
2019-10-26  6:43     ` Christoph Hellwig
2019-10-26  6:43     ` Christoph Hellwig
2019-11-06  3:46   ` Andrew Donnellan
2019-11-06  3:46     ` Andrew Donnellan
2019-11-06  3:46     ` Andrew Donnellan
2019-11-07 18:08   ` Frederic Barrat
2019-11-07 18:08     ` Frederic Barrat
2019-11-07 18:08     ` Frederic Barrat
2019-11-08  0:37     ` Alastair D'Silva
2019-11-08  0:37       ` Alastair D'Silva
2019-11-08  0:37       ` Alastair D'Silva
2019-10-25  7:57 ` [PATCH 00/10] Add support for OpenCAPI SCM devices Geert Uytterhoeven
2019-10-25  7:57   ` Geert Uytterhoeven
2019-10-25  7:57   ` Geert Uytterhoeven

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191025044721.16617-5-alastair@au1.ibm.com \
    --to=alastair@au1.ibm.com \
    --cc=aik@ozlabs.ru \
    --cc=ajd@linux.ibm.com \
    --cc=akpm@linux-foundation.org \
    --cc=alastair@d-silva.org \
    --cc=allison@lohutok.net \
    --cc=anju@linux.vnet.ibm.com \
    --cc=anton@ozlabs.org \
    --cc=arnd@arndb.de \
    --cc=benh@kernel.crashing.org \
    --cc=cai@lca.pw \
    --cc=clg@kaod.org \
    --cc=david@gibson.dropbear.id.au \
    --cc=david@redhat.com \
    --cc=fbarrat@linux.ibm.com \
    --cc=geert+renesas@glider.be \
    --cc=gregkh@linuxfoundation.org \
    --cc=groug@kaod.org \
    --cc=hbathini@linux.ibm.com \
    --cc=hegdevasant@linux.vnet.ibm.com \
    --cc=krzk@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-nvdimm@lists.01.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mahesh@linux.vnet.ibm.com \
    --cc=mhocko@suse.com \
    --cc=mpe@ellerman.id.au \
    --cc=osalvador@suse.com \
    --cc=pasha.tatashin@soleen.com \
    --cc=paulus@samba.org \
    --cc=richard.weiyang@gmail.com \
    --cc=tglx@linutronix.de \
    --cc=yamada.masahiro@socionext.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.