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

Commit 31d2e09a authored by Deepak Katragadda's avatar Deepak Katragadda
Browse files

qcom: ssr: Add ssctl-instance-id property for subsystem entries



Add a "qcom,ssctl-instance-id" property to subsystem dt entries
for storing the instance id with which the subsystem driver
connects to the QMI Subsystem Control(SSCTL) service. This
service is hosted by a hardware subsystem with the APSS being
the client, to issue commands such as shutdown or to pass event
information.

Change-Id: Ic874d8e6e5d6fee5349c0fb8f460eec7b5a1d388
Signed-off-by: default avatarDeepak Katragadda <dkatraga@codeaurora.org>
parent a65a4f74
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -103,6 +103,7 @@ Optional driver parameters:
- qcom,restart-group: List of subsystems that will need to restart together.
- qcom,mdm-dual-link: Boolean indicates wheter both links can used for
		communication.
- qcom,ssctl-instance-id: Instance id used by the subsystem to connect with the SSCTL service.

Example:
	mdm0: qcom,mdm0 {
@@ -138,4 +139,5 @@ Example:
                qcom,ramdump-timeout-ms = <120000>;
                qcom,vddmin-modes  = "normal";
                qcom,vddmin-drive-strength = <8>;
		qcom,ssctl-instance-id = <10>;
        };
+3 −0
Original line number Diff line number Diff line
@@ -44,6 +44,8 @@ Optional properties:
- qcom,restart-group: List of subsystems that will need to restart together.
- qcom,mba-image-is-not-elf:	Boolean- Present if MBA image doesnt use the ELF
				format.
- qcom,ssctl-instance-id: Instance id used by the subsystem to connect with the SSCTL
			  service.

Example:
	qcom,mss@fc880000 {
@@ -72,4 +74,5 @@ Example:

		/* GPIO output to mss */
		qcom,gpio-force-stop = <&smp2pgpio_ssr_smp2p_1_out 0 0>;
		qcom,ssctl-instance-id = <12>;
	};
+3 −0
Original line number Diff line number Diff line
@@ -51,6 +51,8 @@ Optional properties:
- qcom,gpio-stop-ack: GPIO used by the subsystem to ack force stop or a graceful stop
		      to the apps.
- qcom,restart-group: List of subsystems that will need to restart together.
- qcom,ssctl-instance-id: Instance id used by the subsystem to connect with the SSCTL
			  service.

Example:
	qcom,venus@fdce0000 {
@@ -113,4 +115,5 @@ Example:

		/* GPIO output to lpass */
		qcom,gpio-force-stop = <&smp2pgpio_ssr_smp2p_2_out 0 0>;
		qcom,ssctl-instance-id = <14>;
	};
+6 −0
Original line number Diff line number Diff line
@@ -1402,6 +1402,12 @@ struct subsys_device *subsys_register(struct subsys_desc *desc)
		ret = subsys_setup_irqs(subsys);
		if (ret < 0)
			goto err_register;

		if (of_property_read_u32(desc->dev->of_node,
					"qcom,ssctl-instance-id",
					&desc->ssctl_instance_id))
			pr_debug("Reading instance-id for %s failed\n",
								desc->name);
	}

	mutex_lock(&subsys_list_lock);
+2 −0
Original line number Diff line number Diff line
@@ -44,6 +44,7 @@ struct module;
 * framework
 * @no_auth: Set if subsystem does not rely on PIL to authenticate and bring
 * it out of reset
 * @ssctl_instance_id: Instance id used to connect with SSCTL service
 */
struct subsys_desc {
	const char *name;
@@ -65,6 +66,7 @@ struct subsys_desc {
	unsigned int wdog_bite_irq;
	int force_stop_gpio;
	bool no_auth;
	int ssctl_instance_id;
};

/**