cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

rpmsg_char.h (1342B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2/*
      3 * Copyright (C) 2022, STMicroelectronics
      4 */
      5
      6#ifndef __RPMSG_CHRDEV_H__
      7#define __RPMSG_CHRDEV_H__
      8
      9#if IS_ENABLED(CONFIG_RPMSG_CHAR)
     10/**
     11 * rpmsg_chrdev_eptdev_create() - register char device based on an endpoint
     12 * @rpdev:  prepared rpdev to be used for creating endpoints
     13 * @parent: parent device
     14 * @chinfo: associated endpoint channel information.
     15 *
     16 * This function create a new rpmsg char endpoint device to instantiate a new
     17 * endpoint based on chinfo information.
     18 */
     19int rpmsg_chrdev_eptdev_create(struct rpmsg_device *rpdev, struct device *parent,
     20			       struct rpmsg_channel_info chinfo);
     21
     22/**
     23 * rpmsg_chrdev_eptdev_destroy() - destroy created char device endpoint.
     24 * @data: private data associated to the endpoint device
     25 *
     26 * This function destroys a rpmsg char endpoint device created by the RPMSG_DESTROY_EPT_IOCTL
     27 * control.
     28 */
     29int rpmsg_chrdev_eptdev_destroy(struct device *dev, void *data);
     30
     31#else  /*IS_ENABLED(CONFIG_RPMSG_CHAR) */
     32
     33static inline int rpmsg_chrdev_eptdev_create(struct rpmsg_device *rpdev, struct device *parent,
     34					     struct rpmsg_channel_info chinfo)
     35{
     36	return -ENXIO;
     37}
     38
     39static inline int rpmsg_chrdev_eptdev_destroy(struct device *dev, void *data)
     40{
     41	return -ENXIO;
     42}
     43
     44#endif /*IS_ENABLED(CONFIG_RPMSG_CHAR) */
     45
     46#endif /*__RPMSG_CHRDEV_H__ */