-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
rpmsg: char: Export eptdev create and destroy functions
To prepare the split of the code related to the control (ctrldev) and the endpoint (eptdev) devices in 2 separate files: - Rename and export the functions in rpmsg_char.h. - Suppress the dependency with the rpmsg_ctrldev struct in the rpmsg_eptdev_create function. Suggested-by: Mathieu Poirier <mathieu.poirier@linaro.org> Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com> Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Link: https://lore.kernel.org/r/20220124102524.295783-2-arnaud.pouliquen@foss.st.com
- Loading branch information
Arnaud Pouliquen
authored and
Bjorn Andersson
committed
Mar 13, 2022
1 parent
cbf5825
commit 69265bc
Showing
2 changed files
with
57 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
/* SPDX-License-Identifier: GPL-2.0 */ | ||
/* | ||
* Copyright (C) 2022, STMicroelectronics | ||
*/ | ||
|
||
#ifndef __RPMSG_CHRDEV_H__ | ||
#define __RPMSG_CHRDEV_H__ | ||
|
||
#if IS_ENABLED(CONFIG_RPMSG_CHAR) | ||
/** | ||
* rpmsg_chrdev_eptdev_create() - register char device based on an endpoint | ||
* @rpdev: prepared rpdev to be used for creating endpoints | ||
* @parent: parent device | ||
* @chinfo: associated endpoint channel information. | ||
* | ||
* This function create a new rpmsg char endpoint device to instantiate a new | ||
* endpoint based on chinfo information. | ||
*/ | ||
int rpmsg_chrdev_eptdev_create(struct rpmsg_device *rpdev, struct device *parent, | ||
struct rpmsg_channel_info chinfo); | ||
|
||
/** | ||
* rpmsg_chrdev_eptdev_destroy() - destroy created char device endpoint. | ||
* @data: private data associated to the endpoint device | ||
* | ||
* This function destroys a rpmsg char endpoint device created by the RPMSG_DESTROY_EPT_IOCTL | ||
* control. | ||
*/ | ||
int rpmsg_chrdev_eptdev_destroy(struct device *dev, void *data); | ||
|
||
#else /*IS_ENABLED(CONFIG_RPMSG_CHAR) */ | ||
|
||
static inline int rpmsg_chrdev_eptdev_create(struct rpmsg_device *rpdev, struct device *parent, | ||
struct rpmsg_channel_info chinfo) | ||
{ | ||
return -ENXIO; | ||
} | ||
|
||
static inline int rpmsg_chrdev_eptdev_destroy(struct device *dev, void *data) | ||
{ | ||
return -ENXIO; | ||
} | ||
|
||
#endif /*IS_ENABLED(CONFIG_RPMSG_CHAR) */ | ||
|
||
#endif /*__RPMSG_CHRDEV_H__ */ |