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

Commit f6cd484c authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "ARM: dts: msm: Add new property to specify OCMEM size"

parents facbdc55 9af6d96a
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -37,7 +37,8 @@ Optional properties:
- qcom,buffer-type-tz-usage-table : a key-value pair, mapping a buffer type
  (enum hal_buffer) to its corresponding TZ usage. The TZ usages are defined
  as "enum cp_mem_usage" in include/linux/msm_ion.h
- qcom,has-ocmem: indicate the target has ocmem if this property exists
- qcom,ocmem-size: ocmem size required by hardware for optimum performance.
  If ocmem is not present then there is no need to specify this property.
- qcom,vidc-iommu-domains: node containing individual domain nodes, each with:
	- a unique domain name for the domain node (e.g vidc,domain-ns)
	- qcom,vidc-domain-phandle: phandle for the domain as defined in
+1 −1
Original line number Diff line number Diff line
@@ -1601,7 +1601,7 @@
		reg = <0xfdc00000 0xff000>;
		interrupts = <0 44 0>;
		qcom,hfi = "venus";
		qcom,has-ocmem;
		qcom,ocmem-size = <524288>; /* 512 * 1024*/
		qcom,max-hw-load = <1281600>; /* Full 4k @ 30 + 1080p @ 30 */
		qcom,vidc-ns-map = <0x40000000 0x40000000>;
		qcom,load-freq-tbl = <979200 465000000>,
+1 −1
Original line number Diff line number Diff line
@@ -216,7 +216,7 @@
		interrupts = <0 44 0>;
		vdd-supply = <&gdsc_venus>;
		qcom,hfi = "venus";
		qcom,has-ocmem;
		qcom,ocmem-size = <524288>; /* 512 * 1024*/
		qcom,max-hw-load = <1224450>; /* 4k @ 30 + 1080p @ 30*/
	};

+1 −1
Original line number Diff line number Diff line
@@ -152,7 +152,7 @@
			<108000 100000000>,
			<36000   50000000>;
		qcom,hfi = "venus";
		qcom,has-ocmem;
		qcom,ocmem-size = <131072>; /* 128 * 1024 */
		qcom,bus-ports = <1>;
		qcom,reg-presets = <0xE0024 0x0>,
			<0x80124 0x3>,
+1 −13
Original line number Diff line number Diff line
@@ -1274,15 +1274,6 @@ void msm_comm_scale_clocks_and_bus(struct msm_vidc_inst *inst)
	}
}

static inline unsigned long get_ocmem_requirement(u32 height, u32 width)
{
	int num_mbs = 0;
	num_mbs = GET_NUM_MBS(height, width);
	/*TODO: This should be changes once the numbers are
	 * available from firmware*/
	return 512 * 1024;
}

static int msm_comm_unset_ocmem(struct msm_vidc_core *core)
{
	int rc = 0;
@@ -1600,7 +1591,6 @@ static int msm_vidc_load_resources(int flipped_state,
	struct msm_vidc_inst *inst)
{
	int rc = 0;
	u32 ocmem_sz = 0;
	struct hfi_device *hdev;
	int num_mbs_per_sec = 0;
	int height, width;
@@ -1642,8 +1632,6 @@ static int msm_vidc_load_resources(int flipped_state,
			inst->prop.height[OUTPUT_PORT]);
		width = max(inst->prop.width[CAPTURE_PORT],
			inst->prop.width[OUTPUT_PORT]);
		ocmem_sz = get_ocmem_requirement(
			height, width);
		rc = msm_comm_scale_bus(inst->core, inst->session_type,
					OCMEM_MEM);
		mutex_unlock(&inst->core->sync_lock);
@@ -1651,7 +1639,7 @@ static int msm_vidc_load_resources(int flipped_state,
			mutex_lock(&inst->core->sync_lock);
			rc = call_hfi_op(hdev, alloc_ocmem,
					hdev->hfi_device_data,
					ocmem_sz);
					inst->core->resources.has_ocmem);
			mutex_unlock(&inst->core->sync_lock);
			if (rc) {
				dprintk(VIDC_WARN,
Loading