Lines Matching refs:ssr
75 struct glink_ssr *ssr = dev_get_drvdata(&rpdev->dev);
78 dev_err(ssr->dev, "message too short\n");
88 if (le32_to_cpu(msg->seq_num) != ssr->seq_num) {
89 dev_err(ssr->dev, "invalid sequence number of response\n");
93 complete(&ssr->completion);
102 struct glink_ssr *ssr = container_of(nb, struct glink_ssr, nb);
107 ssr->seq_num++;
108 reinit_completion(&ssr->completion);
112 msg.seq_num = cpu_to_le32(ssr->seq_num);
116 ret = rpmsg_send(ssr->ept, &msg, sizeof(msg));
118 dev_err(ssr->dev, "failed to send cleanup message\n");
120 ret = wait_for_completion_timeout(&ssr->completion, HZ);
122 dev_err(ssr->dev, "timeout waiting for cleanup done message\n");
129 struct glink_ssr *ssr;
131 ssr = devm_kzalloc(&rpdev->dev, sizeof(*ssr), GFP_KERNEL);
132 if (!ssr)
135 init_completion(&ssr->completion);
137 ssr->dev = &rpdev->dev;
138 ssr->ept = rpdev->ept;
139 ssr->nb.notifier_call = qcom_glink_ssr_notifier_call;
141 dev_set_drvdata(&rpdev->dev, ssr);
143 return blocking_notifier_chain_register(&ssr_notifiers, &ssr->nb);
148 struct glink_ssr *ssr = dev_get_drvdata(&rpdev->dev);
150 blocking_notifier_chain_unregister(&ssr_notifiers, &ssr->nb);