Currently __create_region() is a static routine used within region.c
So to use it from another file rename it to cxl_create_region().

Later patch will create cxl region after fetching region information
from LSA using cxl_create_region() along with two extra function
parameters.

Signed-off-by: Neeraj Kumar <[email protected]>
---
 drivers/cxl/core/core.h   | 12 ++++++++++++
 drivers/cxl/core/region.c | 13 ++++++++-----
 2 files changed, 20 insertions(+), 5 deletions(-)

diff --git a/drivers/cxl/core/core.h b/drivers/cxl/core/core.h
index 1fb66132b777..268f6d19ab9d 100644
--- a/drivers/cxl/core/core.h
+++ b/drivers/cxl/core/core.h
@@ -42,6 +42,10 @@ int cxl_get_poison_by_endpoint(struct cxl_port *port);
 struct cxl_region *cxl_dpa_to_region(const struct cxl_memdev *cxlmd, u64 dpa);
 u64 cxl_dpa_to_hpa(struct cxl_region *cxlr, const struct cxl_memdev *cxlmd,
                   u64 dpa);
+struct cxl_region *cxl_create_region(struct cxl_root_decoder *cxlrd,
+                                    enum cxl_partition_mode mode, int id,
+                                    struct cxl_pmem_region_params *pmem_params,
+                                    struct cxl_endpoint_decoder *cxled);
 
 #else
 static inline u64 cxl_dpa_to_hpa(struct cxl_region *cxlr,
@@ -71,6 +75,14 @@ static inline int cxl_region_init(void)
 static inline void cxl_region_exit(void)
 {
 }
+static inline struct cxl_region *
+cxl_create_region(struct cxl_root_decoder *cxlrd,
+                 enum cxl_partition_mode mode, int id,
+                 struct cxl_pmem_region_params *params,
+                 struct cxl_endpoint_decoder *cxled)
+{
+       return ERR_PTR(-EOPNOTSUPP);
+}
 #define CXL_REGION_ATTR(x) NULL
 #define CXL_REGION_TYPE(x) NULL
 #define SET_CXL_REGION_ATTR(x)
diff --git a/drivers/cxl/core/region.c b/drivers/cxl/core/region.c
index 26238fb5e8cf..2e60e5e72551 100644
--- a/drivers/cxl/core/region.c
+++ b/drivers/cxl/core/region.c
@@ -2638,8 +2638,10 @@ static ssize_t create_ram_region_show(struct device *dev,
        return __create_region_show(to_cxl_root_decoder(dev), buf);
 }
 
-static struct cxl_region *__create_region(struct cxl_root_decoder *cxlrd,
-                                         enum cxl_partition_mode mode, int id)
+struct cxl_region *cxl_create_region(struct cxl_root_decoder *cxlrd,
+                                    enum cxl_partition_mode mode, int id,
+                                    struct cxl_pmem_region_params *pmem_params,
+                                    struct cxl_endpoint_decoder *cxled)
 {
        int rc;
 
@@ -2675,7 +2677,7 @@ static ssize_t create_region_store(struct device *dev, 
const char *buf,
        if (rc != 1)
                return -EINVAL;
 
-       cxlr = __create_region(cxlrd, mode, id);
+       cxlr = cxl_create_region(cxlrd, mode, id, NULL, NULL);
        if (IS_ERR(cxlr))
                return PTR_ERR(cxlr);
 
@@ -3644,8 +3646,9 @@ static struct cxl_region *construct_region(struct 
cxl_root_decoder *cxlrd,
        struct cxl_region *cxlr;
 
        do {
-               cxlr = __create_region(cxlrd, cxlds->part[part].mode,
-                                      atomic_read(&cxlrd->region_id));
+               cxlr = cxl_create_region(cxlrd, cxlds->part[part].mode,
+                                        atomic_read(&cxlrd->region_id),
+                                        NULL, NULL);
        } while (IS_ERR(cxlr) && PTR_ERR(cxlr) == -EBUSY);
 
        if (IS_ERR(cxlr)) {
-- 
2.34.1


Reply via email to