summaryrefslogtreecommitdiffstats
path: root/sys/dev/cp
diff options
context:
space:
mode:
authored <ed@FreeBSD.org>2008-09-27 08:51:18 +0000
committered <ed@FreeBSD.org>2008-09-27 08:51:18 +0000
commit4efdef565f9a0ca3468534f97c6ac4aaaf747c9a (patch)
treedd0035910760a440d495b23940f57a42ed24ca85 /sys/dev/cp
parentd720932e5974ce75bf983cc61010a6eb70f94b86 (diff)
downloadFreeBSD-src-4efdef565f9a0ca3468534f97c6ac4aaaf747c9a.zip
FreeBSD-src-4efdef565f9a0ca3468534f97c6ac4aaaf747c9a.tar.gz
Replace all calls to minor() with dev2unit().
After I removed all the unit2minor()/minor2unit() calls from the kernel yesterday, I realised calling minor() everywhere is quite confusing. Character devices now only have the ability to store a unit number, not a minor number. Remove the confusion by using dev2unit() everywhere. This commit could also be considered as a bug fix. A lot of drivers call minor(), while they should actually be calling dev2unit(). In -CURRENT this isn't a problem, but it turns out we never had any problem reports related to that issue in the past. I suspect not many people connect more than 256 pieces of the same hardware. Reviewed by: kib
Diffstat (limited to 'sys/dev/cp')
-rw-r--r--sys/dev/cp/if_cp.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/dev/cp/if_cp.c b/sys/dev/cp/if_cp.c
index 36b12ab..0b300ce 100644
--- a/sys/dev/cp/if_cp.c
+++ b/sys/dev/cp/if_cp.c
@@ -999,7 +999,7 @@ static void cp_error (cp_chan_t *c, int data)
*/
static int cp_open (struct cdev *dev, int oflags, int devtype, struct thread *td)
{
- int unit = minor (dev);
+ int unit = dev2unit (dev);
drv_t *d;
if (unit >= NBRD*NCHAN || ! (d = channel[unit]))
@@ -1013,7 +1013,7 @@ static int cp_open (struct cdev *dev, int oflags, int devtype, struct thread *td
*/
static int cp_close (struct cdev *dev, int fflag, int devtype, struct thread *td)
{
- drv_t *d = channel [minor (dev)];
+ drv_t *d = channel [dev2unit (dev)];
CP_DEBUG2 (d, ("cp_close\n"));
return 0;
@@ -1040,7 +1040,7 @@ static int cp_modem_status (cp_chan_t *c)
static int cp_ioctl (struct cdev *dev, u_long cmd, caddr_t data, int flag, struct thread *td)
{
- drv_t *d = channel [minor (dev)];
+ drv_t *d = channel [dev2unit (dev)];
bdrv_t *bd = d->board->sys;
cp_chan_t *c = d->chan;
struct serial_statistics *st;
OpenPOWER on IntegriCloud