From f79de79e1dee134f25f93ede09fd43315601af5b Mon Sep 17 00:00:00 2001 From: Taylor R Campbell Date: Sat, 15 Jan 2022 19:18:09 +0000 Subject: [PATCH 06/39] driver(9): New function dev_minor_unit. --- sys/kern/subr_devsw.c | 15 +++++++++++++++ sys/sys/conf.h | 1 + 2 files changed, 16 insertions(+) diff --git a/sys/kern/subr_devsw.c b/sys/kern/subr_devsw.c index d0451363a041..d24480114f94 100644 --- a/sys/kern/subr_devsw.c +++ b/sys/kern/subr_devsw.c @@ -1299,3 +1299,18 @@ nommap(dev_t dev, off_t off, int prot) return (paddr_t)-1; } + +/* + * dev_minor_unit(dev) + * + * Returns minor(dev) as an int. Intended for use with struct + * bdevsw, cdevsw::d_devtounit for drivers whose /dev nodes are + * implemented by reference to an autoconf instance with the minor + * number. + */ +int +dev_minor_unit(dev_t dev) +{ + + return minor(dev); +} diff --git a/sys/sys/conf.h b/sys/sys/conf.h index 12cfd3bf89a6..cb4c287d1982 100644 --- a/sys/sys/conf.h +++ b/sys/sys/conf.h @@ -280,6 +280,7 @@ devmajor_t devsw_name2blk(const char *, char *, size_t); devmajor_t devsw_name2chr(const char *, char *, size_t); dev_t devsw_chr2blk(dev_t); dev_t devsw_blk2chr(dev_t); +int dev_minor_unit(dev_t); void mm_init(void); #endif /* _KERNEL */