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

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

Merge "ARM: dts: qcom: Add NPU BWMON device to vote for DDR statically"

parents 5c7919af 162384cd
Loading
Loading
Loading
Loading
+30 −0
Original line number Diff line number Diff line
MSM Static Map governor

static map governor is a device that registers with a clock notifier
of the master port and votes for the slave port using the core-dev freq
mapping table. The idea behind the governor is to match the voltage corners
of the master and slave ports when voting for the bandwidth.

Required properties:
- compatible:		Must be "qcom,static-map"
- clocks:		The phandles for clock specified in "clock-names" property
- clock-names:		Names of the clocks for registering a notifier
- qcom,dev-clk:		Names of the clocks for registering a notifier
- qcom,target-dev:	The DT device that corresponds to this master port
- qcom,core-dev-table:		A mapping table of core frequency to a required
				bandwidth vote at the given core frequency.
Example:
	npu_staticmap_mon: qcom,npu-staticmap-mon {
		compatible = "qcom,static-map";
		qcom,target-dev = <&npu_ddr_static>;
		clocks = <&clock_npucc NPU_CC_CAL_HM0_CLK>;
		clock-names = "cal_hm0_clk";
		qcom,dev_clk = "cal_hm0_clk";
		qcom,core-dev-table =
				<       0 MHZ_TO_MBPS(    0, 4) >,
				<  200000 MHZ_TO_MBPS(  451, 4) >,
				<  466000 MHZ_TO_MBPS(  768, 4) >,
				<  533000 MHZ_TO_MBPS( 1017, 4) >,
				<  850000 MHZ_TO_MBPS( 1555, 4) >,
				< 1000000 MHZ_TO_MBPS( 2736, 4) >;
	};
+23 −0
Original line number Diff line number Diff line
@@ -1071,6 +1071,29 @@
		qcom,count-unit = <0x10000>;
	};

	npu_npu_ddr_latfloor: qcom,npu-npu-ddr-latfloor {
		compatible = "qcom,devbw-ddr";
		governor = "powersave";
		qcom,src-dst-ports = <MSM_BUS_MASTER_NPU MSM_BUS_SLAVE_EBI_CH0>;
		operating-points-v2 = <&suspendable_ddr_bw_opp_table>;
	};

	npu_staticmap_mon: qcom,npu-staticmap-mon {
		compatible = "qcom,static-map";
		qcom,target-dev = <&npu_npu_ddr_latfloor>;
		clocks = <&clock_npucc NPU_CC_CAL_HM0_CLK>;
		clock-names = "cal_hm0_clk";
		qcom,dev_clk = "cal_hm0_clk";
		qcom,core-dev-table =
				<       0 MHZ_TO_MBPS(    0, 4) >,
				<  300000 MHZ_TO_MBPS(  451, 4) >,
				<  406000 MHZ_TO_MBPS(  768, 4) >,
				<  533000 MHZ_TO_MBPS( 1555, 4) >,
				<  730000 MHZ_TO_MBPS( 1804, 4) >,
				<  920000 MHZ_TO_MBPS( 2092, 4) >,
				< 1000000 MHZ_TO_MBPS( 2736, 4) >;
	};

	cpu0_cpu_llcc_lat: qcom,cpu0-cpu-llcc-lat {
		compatible = "qcom,devbw";
		governor = "performance";