MCPcopy Create free account
hub / github.com/apache/nuttx / rpmsgdev_close

Function rpmsgdev_close

drivers/misc/rpmsgdev.c:259–287  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

257 ****************************************************************************/
258
259static int rpmsgdev_close(FAR struct file *filep)
260{
261 FAR struct rpmsgdev_s *dev;
262 FAR struct rpmsgdev_priv_s *priv;
263 struct rpmsgdev_close_s msg;
264 int ret;
265
266 /* Recover our private data from the struct file instance */
267
268 dev = filep->f_inode->i_private;
269 priv = filep->f_priv;
270 DEBUGASSERT(dev != NULL && priv != NULL);
271
272 /* Try to close the device in the remote cpu */
273
274 msg.filep = priv->filep;
275 ret = rpmsgdev_send_recv(dev, RPMSGDEV_CLOSE, true, &msg.header,
276 sizeof(msg), NULL);
277 if (ret < 0)
278 {
279 rpmsgdeverr("close failed, ret=%d\n", ret);
280 return ret;
281 }
282
283 filep->f_priv = NULL;
284 kmm_free(priv);
285
286 return ret;
287}
288
289/****************************************************************************
290 * Name: rpmsgdev_wait_cb

Callers

nothing calls this directly

Calls 2

rpmsgdev_send_recvFunction · 0.85
kmm_freeFunction · 0.85

Tested by

no test coverage detected