diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2022-02-07 10:49:49 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2022-02-08 09:13:57 +0100 |
commit | 62f3df2fcdb693680dd5fa6b70eecdb07806c324 (patch) | |
tree | 4f704fe1c6ca05632dd839f7f3114babe574a582 /fs | |
parent | 76bfcf78702c32271f8c278eb106b422b998d5e7 (diff) | |
download | barebox-62f3df2fcdb693680dd5fa6b70eecdb07806c324.tar.gz barebox-62f3df2fcdb693680dd5fa6b70eecdb07806c324.tar.xz |
cdev: implement cdev_open()
Implement cdev_open() with the expected semantics that takes a struct
cdev * argument. We already have an unimplemented prototype
cdev_do_open(), remove this.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Reviewed-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Link: https://lore.barebox.org/20220207094953.949868-4-s.hauer@pengutronix.de
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/devfs-core.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/fs/devfs-core.c b/fs/devfs-core.c index 770b570d7b..3812ae939f 100644 --- a/fs/devfs-core.c +++ b/fs/devfs-core.c @@ -169,6 +169,14 @@ int cdev_find_free_index(const char *basename) return -EBUSY; /* all indexes are used */ } +int cdev_open(struct cdev *cdev, unsigned long flags) +{ + if (cdev->ops->open) + return cdev->ops->open(cdev, flags); + + return 0; +} + struct cdev *cdev_open_by_name(const char *name, unsigned long flags) { struct cdev *cdev; @@ -178,11 +186,9 @@ struct cdev *cdev_open_by_name(const char *name, unsigned long flags) if (!cdev) return NULL; - if (cdev->ops->open) { - ret = cdev->ops->open(cdev, flags); - if (ret) - return NULL; - } + ret = cdev_open(cdev, flags); + if (ret) + return NULL; return cdev; } |