Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 15c0b025 authored by Loic Pallardy's avatar Loic Pallardy Committed by Bjorn Andersson
Browse files

remoteproc: introduce rproc_add_carveout function



This patch introduces a new API to allow platform driver to register
platform specific carveout regions.

Signed-off-by: default avatarLoic Pallardy <loic.pallardy@st.com>
Acked-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
parent 72029c90
Loading
Loading
Loading
Loading
+15 −1
Original line number Diff line number Diff line
@@ -747,7 +747,7 @@ static int rproc_handle_carveout(struct rproc *rproc,
	if (!carveout)
		goto free_carv;

	list_add_tail(&carveout->node, &rproc->carveouts);
	rproc_add_carveout(rproc, carveout);

	return 0;

@@ -760,6 +760,20 @@ static int rproc_handle_carveout(struct rproc *rproc,
	return ret;
}

/**
 * rproc_add_carveout() - register an allocated carveout region
 * @rproc: rproc handle
 * @mem: memory entry to register
 *
 * This function registers specified memory entry in @rproc carveouts list.
 * Specified carveout should have been allocated before registering.
 */
void rproc_add_carveout(struct rproc *rproc, struct rproc_mem_entry *mem)
{
	list_add_tail(&mem->node, &rproc->carveouts);
}
EXPORT_SYMBOL(rproc_add_carveout);

/**
 * rproc_mem_entry_init() - allocate and initialize rproc_mem_entry struct
 * @dev: pointer on device struct
+2 −0
Original line number Diff line number Diff line
@@ -559,6 +559,8 @@ int rproc_add(struct rproc *rproc);
int rproc_del(struct rproc *rproc);
void rproc_free(struct rproc *rproc);

void rproc_add_carveout(struct rproc *rproc, struct rproc_mem_entry *mem);

struct rproc_mem_entry *
rproc_mem_entry_init(struct device *dev,
		     void *va, dma_addr_t dma, int len, u32 da,