summaryrefslogtreecommitdiffstats
path: root/sys/dev
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/mlx/mlx.c12
-rw-r--r--sys/dev/mly/mly.c8
2 files changed, 8 insertions, 12 deletions
diff --git a/sys/dev/mlx/mlx.c b/sys/dev/mlx/mlx.c
index 368530d..dc6a4ba 100644
--- a/sys/dev/mlx/mlx.c
+++ b/sys/dev/mlx/mlx.c
@@ -474,8 +474,9 @@ mlx_attach(struct mlx_softc *sc)
/*
* Create the control device.
*/
- sc->mlx_dev_t = make_dev(&mlx_cdevsw, device_get_unit(sc->mlx_dev), UID_ROOT, GID_OPERATOR,
+ sc->mlx_dev_t = make_dev(&mlx_cdevsw, 0, UID_ROOT, GID_OPERATOR,
S_IRUSR | S_IWUSR, "mlx%d", device_get_unit(sc->mlx_dev));
+ sc->mlx_dev_t->si_drv1 = sc;
/*
* Start the timeout routine.
@@ -711,8 +712,7 @@ mlx_submit_buf(struct mlx_softc *sc, mlx_bio *bp)
int
mlx_open(struct cdev *dev, int flags, int fmt, struct thread *td)
{
- int unit = dev2unit(dev);
- struct mlx_softc *sc = devclass_get_softc(mlx_devclass, unit);
+ struct mlx_softc *sc = dev->si_drv1;
sc->mlx_state |= MLX_STATE_OPEN;
return(0);
@@ -724,8 +724,7 @@ mlx_open(struct cdev *dev, int flags, int fmt, struct thread *td)
int
mlx_close(struct cdev *dev, int flags, int fmt, struct thread *td)
{
- int unit = dev2unit(dev);
- struct mlx_softc *sc = devclass_get_softc(mlx_devclass, unit);
+ struct mlx_softc *sc = dev->si_drv1;
sc->mlx_state &= ~MLX_STATE_OPEN;
return (0);
@@ -737,8 +736,7 @@ mlx_close(struct cdev *dev, int flags, int fmt, struct thread *td)
int
mlx_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int32_t flag, struct thread *td)
{
- int unit = dev2unit(dev);
- struct mlx_softc *sc = devclass_get_softc(mlx_devclass, unit);
+ struct mlx_softc *sc = dev->si_drv1;
struct mlx_rebuild_request *rb = (struct mlx_rebuild_request *)addr;
struct mlx_rebuild_status *rs = (struct mlx_rebuild_status *)addr;
int *arg = (int *)addr;
diff --git a/sys/dev/mly/mly.c b/sys/dev/mly/mly.c
index 2fcaadc..1f61542 100644
--- a/sys/dev/mly/mly.c
+++ b/sys/dev/mly/mly.c
@@ -310,7 +310,7 @@ mly_attach(device_t dev)
/*
* Create the control device.
*/
- sc->mly_dev_t = make_dev(&mly_cdevsw, device_get_unit(sc->mly_dev), UID_ROOT, GID_OPERATOR,
+ sc->mly_dev_t = make_dev(&mly_cdevsw, 0, UID_ROOT, GID_OPERATOR,
S_IRUSR | S_IWUSR, "mly%d", device_get_unit(sc->mly_dev));
sc->mly_dev_t->si_drv1 = sc;
@@ -2834,8 +2834,7 @@ mly_print_controller(int controller)
static int
mly_user_open(struct cdev *dev, int flags, int fmt, struct thread *td)
{
- int unit = dev2unit(dev);
- struct mly_softc *sc = devclass_get_softc(devclass_find("mly"), unit);
+ struct mly_softc *sc = dev->si_drv1;
sc->mly_state |= MLY_STATE_OPEN;
return(0);
@@ -2847,8 +2846,7 @@ mly_user_open(struct cdev *dev, int flags, int fmt, struct thread *td)
static int
mly_user_close(struct cdev *dev, int flags, int fmt, struct thread *td)
{
- int unit = dev2unit(dev);
- struct mly_softc *sc = devclass_get_softc(devclass_find("mly"), unit);
+ struct mly_softc *sc = dev->si_drv1;
sc->mly_state &= ~MLY_STATE_OPEN;
return (0);
OpenPOWER on IntegriCloud