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

Commit 553154d0 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: adsprpc: Donate 5MB of DMA memory for Unsigned process"

parents 844bc64f 1be85e55
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -3360,6 +3360,7 @@ static int fastrpc_init_create_dynamic_process(struct fastrpc_file *fl,
	remote_arg_t ra[6];
	int fds[6];
	unsigned int gid = 0, one_mb = 1024*1024;
	unsigned int dsp_userpd_memlen = 3 * one_mb;
	struct fastrpc_buf *init_mem;

	struct {
@@ -3443,8 +3444,13 @@ static int fastrpc_init_create_dynamic_process(struct fastrpc_file *fl,
		locked = 0;
	}

	/* Allocate DMA buffer in kernel for donating to remote process */
	memlen = ALIGN(max(3*one_mb, init->filelen * 4), one_mb);
	/* Allocate DMA buffer in kernel for donating to remote process
	 * Unsigned PD requires additional memory because of the
	 * additional static heap initialized within the process.
	 */
	if (uproc->attrs & FASTRPC_MODE_UNSIGNED_MODULE)
		dsp_userpd_memlen += 2*one_mb;
	memlen = ALIGN(max(dsp_userpd_memlen, init->filelen * 4), one_mb);
	imem_dma_attr = DMA_ATTR_EXEC_MAPPING |
					DMA_ATTR_DELAYED_UNMAP |
					DMA_ATTR_NO_KERNEL_MAPPING;