From 06f3138dc919df83cbacb880fb68d63698977e44 Mon Sep 17 00:00:00 2001 From: Ian Moffett Date: Sat, 13 Jul 2024 17:37:05 -0400 Subject: kernel: dev: Support bdevsw Signed-off-by: Ian Moffett --- sys/fs/devfs.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'sys/fs') diff --git a/sys/fs/devfs.c b/sys/fs/devfs.c index e320973..81c2a43 100644 --- a/sys/fs/devfs.c +++ b/sys/fs/devfs.c @@ -55,6 +55,14 @@ cdevsw_read(void *devsw, dev_t dev, struct sio_txn *sio) return cdevsw->read(dev, sio, 0); } +static inline int +bdevsw_read(void *devsw, dev_t dev, struct sio_txn *sio) +{ + struct bdevsw *bdevsw = devsw; + + return bdevsw->read(dev, sio, 0); +} + /* * Get a devfs node by name. * @@ -134,8 +142,8 @@ devfs_read(struct vnode *vp, struct sio_txn *sio) if (!dnp->is_block) return cdevsw_read(devsw, dnp->dev, sio); - /* TODO: Block devices */ - return -EIO; + /* Block device */ + return bdevsw_read(devsw, dnp->dev, sio); } static int -- cgit v1.2.3