Lines Matching refs:ssr
74 struct glink_ssr *ssr = dev_get_drvdata(&rpdev->dev);
77 dev_err(ssr->dev, "message too short\n");
87 if (le32_to_cpu(msg->seq_num) != ssr->seq_num) {
88 dev_err(ssr->dev, "invalid sequence number of response\n");
92 complete(&ssr->completion);
101 struct glink_ssr *ssr = container_of(nb, struct glink_ssr, nb);
106 ssr->seq_num++;
107 reinit_completion(&ssr->completion);
111 msg.seq_num = cpu_to_le32(ssr->seq_num);
115 ret = rpmsg_send(ssr->ept, &msg, sizeof(msg));
117 dev_err(ssr->dev, "failed to send cleanup message\n");
119 ret = wait_for_completion_timeout(&ssr->completion, HZ);
121 dev_err(ssr->dev, "timeout waiting for cleanup done message\n");
128 struct glink_ssr *ssr;
130 ssr = devm_kzalloc(&rpdev->dev, sizeof(*ssr), GFP_KERNEL);
131 if (!ssr)
134 init_completion(&ssr->completion);
136 ssr->dev = &rpdev->dev;
137 ssr->ept = rpdev->ept;
138 ssr->nb.notifier_call = qcom_glink_ssr_notifier_call;
140 dev_set_drvdata(&rpdev->dev, ssr);
142 return blocking_notifier_chain_register(&ssr_notifiers, &ssr->nb);
147 struct glink_ssr *ssr = dev_get_drvdata(&rpdev->dev);
149 blocking_notifier_chain_unregister(&ssr_notifiers, &ssr->nb);