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

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

Merge "msm_bus: support "qti" binding for dt parameters"

parents 677765d0 0b776d76
Loading
Loading
Loading
Loading
+88 −88
Original line number Diff line number Diff line
@@ -12,23 +12,23 @@ compatible: The bus devices need to be compatible with
cell-id:		A 32 bit integer unique per bus per chipset. The IDs
			for buses are in multiples of 1024.
label:			Bus name
qcom,fabclk-dual:	Dual set (active/sleep) bus clock name
qcom,fabclk-active:	Active set bus clock name
qcom,nfab:		An integer property which specifies the total number
qti,fabclk-dual:	Dual set (active/sleep) bus clock name
qti,fabclk-active:	Active set bus clock name
qti,nfab:		An integer property which specifies the total number
			of buses on the chipset.

The following properties are optional as a bus might not support
these features:

qcom,ntieredslaves:	Number of tiered slaves on the bus.
qcom,qos-freq:		QoS frequency (In Hz)
qcom,hw-sel:		A string which decides whether QoS data
qti,ntieredslaves:	Number of tiered slaves on the bus.
qti,qos-freq:		QoS frequency (In Hz)
qti,hw-sel:		A string which decides whether QoS data
			should be sent to RPM, set using BIMC or NoCs.
			It can be set to "RPM", "NoC" or "BIMC".
qcom,rpm-en:		A boolean flag indicating whether RPM transactions are
qti,rpm-en:		A boolean flag indicating whether RPM transactions are
			supported for nodes of the bus.
qcom,ahb:		A boolean flag indicating whether the bus is ahb type.
qcom,virt:		A boolean property indicating this is a virtual bus.
qti,ahb:		A boolean flag indicating whether the bus is ahb type.
qti,virt:		A boolean property indicating this is a virtual bus.
reg:			Register space of the bus device. Not required in case
			the bus is virtual.

@@ -57,62 +57,62 @@ The properties can be chosen depending on the type of child node.
cell-id:		For a master the ID is between 0 - 512
			For a slave the ID is between 512 - 1024
label:			Name of the master/slave/gateway
qcom,masterp:		Hardware master port number(s)
qcom,tier:		The tier to which a master/slave belongs.
qti,masterp:		Hardware master port number(s)
qti,tier:		The tier to which a master/slave belongs.
			Note that tiering might not be supported on
			all architectures.
qcom,hw-sel:		A string which decides whether QoS data should be sent
qti,hw-sel:		A string which decides whether QoS data should be sent
			to RPM, set using BIMC or NoCs.
			It can be set to "RPM", "NoC" or "BIMC".
qcom,mode:		Used for masters on NoC/BIMC. Indicates which of the
qti,mode:		Used for masters on NoC/BIMC. Indicates which of the
			four modes (Fixed/Limiter/Bypass/Regulator) the master
			belongs to.
qcom,perm-mode:		Permissible mode switches. Indicates which of the four
qti,perm-mode:		Permissible mode switches. Indicates which of the four
			modes are supported of the master node. Generally,
			modes are set at boot-up and not switched at run-time.
qcom,qport:		QoS port number. This can be different from the
qti,qport:		QoS port number. This can be different from the
			master-port number.
qcom,ws:		Window size (in Hz), used for NoC/BIMC masters to
qti,ws:			Window size (in Hz), used for NoC/BIMC masters to
			calculate saturation values.
qcom,mas-hw-id:		A unique hardware ID agreed upon by processors across
qti,mas-hw-id:		A unique hardware ID agreed upon by processors across
			the system. This ID is assigned to every master. It can
			be used to send master specific data from
			Apps/Modem/LPASS to RPM.
qcom,slv-hw-id:		A unique hardware ID agreed upon by processors across
qti,slv-hw-id:		A unique hardware ID agreed upon by processors across
			the system. This ID is assigned to every slave. It can
			be used to send slave specific data from
			Apps/Modem/LPASS to RPM.
qcom,gateway:		Flag indicating whether a particular node is a gateway.
qcom,slavep:		Hardware slave port number(s).
qcom,buswidth:		Width of the interconnect between a node and the bus.
qti,gateway:		Flag indicating whether a particular node is a gateway.
qti,slavep:		Hardware slave port number(s).
qti,buswidth:		Width of the interconnect between a node and the bus.
			(In Bytes).
qcom,prio-rd:		Read priority for a BIMC bus master (Can be 0/1/2)
qcom,prio-wr:		Write priority for a BIMC bus master (Can be 0/1/2)
qcom,prio0:		Priority low signal for a NoC bus master
qti,prio-rd:		Read priority for a BIMC bus master (Can be 0/1/2)
qti,prio-wr:		Write priority for a BIMC bus master (Can be 0/1/2)
qti,prio0:		Priority low signal for a NoC bus master
			(Can be 0/1/2).
qcom,prio1:		Priority high signal for a NoC bus master
qti,prio1:		Priority high signal for a NoC bus master
			(Can be 0/1/2)
qcom,dual-conf:		Indicates whether a BIMC/NoC master can be configured
qti,dual-conf:		Indicates whether a BIMC/NoC master can be configured
			in multiple modes at run-time. (Boolean)
qcom,mode-thresh:	Threshold mode for a BIMC/NoC master. Beyond a certain
qti,mode-thresh:	Threshold mode for a BIMC/NoC master. Beyond a certain
			threshold frequency, a threshold mode can be used.
			(Can be Fixed/Limiter/Bypass/Regulator)
qcom,bimc,bw:		Bandwidth limit for a BIMC master using dual modes.
qti,bimc,bw:		Bandwidth limit for a BIMC master using dual modes.
			This bandwidth is used to calculate Grant count and
			other parameters used in Limiter and Regular mode
			for static BKE configuration. It is defined in KBps.
qcom,bimc,gp:		Grant Period for configuring a master in limiter
qti,bimc,gp:		Grant Period for configuring a master in limiter
			mode. This is an integer value in nano-seconds.
qcom,bimc,thmp:		Medium threshold percentage for BIMC masters.
qti,bimc,thmp:		Medium threshold percentage for BIMC masters.
			This percentage is used to calculate medium threshold
			value for BIMC Masters in Limiter mode for static
			configuration. This can be any integer value between
			1 and 100.
qcom,thresh:		Beyond this threshold frequency, the mode usage is
			switched from mode specified by property qcom,mode
			to the one specified by qcom,mode-thresh. In case the
qti,thresh:		Beyond this threshold frequency, the mode usage is
			switched from mode specified by property qti,mode
			to the one specified by qti,mode-thresh. In case the
			requested IB value falls below this threshold, the mode
			is switched back to qcom,mode. Frequency is specified in
			is switched back to qti,mode. Frequency is specified in
			KBps.


@@ -127,38 +127,38 @@ Example:
		reg = <0xfc478000 0x00004000>;
		cell-id = <2048>;
		label = "msm_mmss_noc";
		qcom,fabclk-dual = "bus_clk";
		qcom,fabclk-active = "bus_a_clk";
		qcom,ntieredslaves = <0>;
		qcom,qos-freq = <4800>;
		qcom,hw-sel = "NoC";
		qcom,rpm-en;
		qcom,nfab = <6>;
		qti,fabclk-dual = "bus_clk";
		qti,fabclk-active = "bus_a_clk";
		qti,ntieredslaves = <0>;
		qti,qos-freq = <4800>;
		qti,hw-sel = "NoC";
		qti,rpm-en;
		qti,nfab = <6>;

		mas-gfx3d {
			cell-id = <26>;
			label = "mas-gfx3d";
			qcom,masterp = <2 3>;
			qcom,tier = <2>;
			qcom,hw-sel = "NoC";
			qcom,perm-mode = "Bypass";
			qcom,mode = "Bypass";
			qcom,ws = <10000>;
			qcom,qport = <2 3>;
			qcom,mas-hw-id = <6>;
			qti,masterp = <2 3>;
			qti,tier = <2>;
			qti,hw-sel = "NoC";
			qti,perm-mode = "Bypass";
			qti,mode = "Bypass";
			qti,ws = <10000>;
			qti,qport = <2 3>;
			qti,mas-hw-id = <6>;
		};

		mas-jpeg {
			cell-id = <62>;
			label = "mas-jpeg";
			qcom,masterp = <4>;
			qcom,tier = <2>;
			qcom,hw-sel = "NoC";
			qcom,perm-mode = "Bypass";
			qcom,mode = "Bypass";
			qcom,qport = <0>;
			qcom,ws = <10000>;
			qcom,mas-hw-id = <7>;
			qti,masterp = <4>;
			qti,tier = <2>;
			qti,hw-sel = "NoC";
			qti,perm-mode = "Bypass";
			qti,mode = "Bypass";
			qti,qport = <0>;
			qti,ws = <10000>;
			qti,mas-hw-id = <7>;
		};
	};

@@ -167,12 +167,12 @@ Example:
		reg = <0xfc380000 0x0006A000>;
		cell-id = <0>;
		label = "msm_bimc";
		qcom,fabclk-dual = "mem_clk";
		qcom,fabclk-active = "mem_a_clk";
		qcom,ntieredslaves = <0>;
		qcom,qos-freq = <19200>;
		qcom,hw-sel = "BIMC";
		qcom,rpm-en;
		qti,fabclk-dual = "mem_clk";
		qti,fabclk-active = "mem_a_clk";
		qti,ntieredslaves = <0>;
		qti,qos-freq = <19200>;
		qti,hw-sel = "BIMC";
		qti,rpm-en;

		coresight-id = <55>;
		coresight-name = "coresight-bimc";
@@ -184,21 +184,21 @@ Example:
		mas-ampss-m0 {
			cell-id = <1>;
			label = "mas-ampss-m0";
			qcom,masterp = <0>;
			qcom,tier = <2>;
			qcom,hw-sel = "BIMC";
			qcom,mode = "Limiter";
			qcom,qport = <0>;
			qcom,ws = <10000>;
			qcom,mas-hw-id = <0>;
			qcom,prio-rd = <0>;
			qcom,prio-wr = <0>;
			qcom,mode-thresh = "Fixed";
			qcom,thresh = <2000000>;
			qcom,dual-conf;
			qcom,bimc,bw = <300000>;
			qcom,bimc,gp = <5>;
			qcom,bimc,thmp = <50>;
			qti,masterp = <0>;
			qti,tier = <2>;
			qti,hw-sel = "BIMC";
			qti,mode = "Limiter";
			qti,qport = <0>;
			qti,ws = <10000>;
			qti,mas-hw-id = <0>;
			qti,prio-rd = <0>;
			qti,prio-wr = <0>;
			qti,mode-thresh = "Fixed";
			qti,thresh = <2000000>;
			qti,dual-conf;
			qti,bimc,bw = <300000>;
			qti,bimc,gp = <5>;
			qti,bimc,thmp = <50>;
		};
	};

@@ -217,22 +217,22 @@ The device-tree data required for bus-scaling can be embedded within
the clients' device nodes. The clients can register with the bus driver
using the following properties:

- qcom,msm-bus,name:		String representing the client-name
- qcom,msm-bus,num-cases:	Total number of usecases
- qcom,msm-bus,active-only:	Boolean context flag for requests in active or
- qti,msm-bus,name:		String representing the client-name
- qti,msm-bus,num-cases:	Total number of usecases
- qti,msm-bus,active-only:	Boolean context flag for requests in active or
				dual (active & sleep) contex
- qcom,msm-bus,num-paths:	Total number of master-slave pairs
- qcom,msm-bus,vectors-KBps:	Arrays of unsigned integers representing:
- qti,msm-bus,num-paths:	Total number of master-slave pairs
- qti,msm-bus,vectors-KBps:	Arrays of unsigned integers representing:
				master-id, slave-id, arbitrated bandwidth
				in KBps, instantaneous bandwidth in KBps

Example:

	qcom,msm-bus,name = "client-name";
	qcom,msm-bus,num-cases = <3>;
	qcom,msm-bus,active-only;
	qcom,msm-bus,num-paths = <2>;
	qcom,msm-bus,vectors =
	qti,msm-bus,name = "client-name";
	qti,msm-bus,num-cases = <3>;
	qti,msm-bus,active-only;
	qti,msm-bus,num-paths = <2>;
	qti,msm-bus,vectors =
			<22 512 0 0>, <26 512 0 0>,
			<22 512 320000 3200000>, <26 512 3200000 3200000>,
			<22 512 160000 1600000>, <26 512 1600000 1600000>;
+213 −101

File changed.

Preview size limit exceeded, changes collapsed.