svn commit: r191304 - head/sys/cam/scsi
Ed Schouten
ed at FreeBSD.org
Mon Apr 20 10:40:43 UTC 2009
Author: ed
Date: Mon Apr 20 10:40:42 2009
New Revision: 191304
URL: http://svn.freebsd.org/changeset/base/191304
Log:
Get rid of the device index number stored in the sa(4) unit number.
The device index number stored in the unit number of sa(4) devices is
only used to print debug messages. Get rid of this index number and use
devtoname() to just print the entire device name.
Modified:
head/sys/cam/scsi/scsi_sa.c
Modified: head/sys/cam/scsi/scsi_sa.c
==============================================================================
--- head/sys/cam/scsi/scsi_sa.c Mon Apr 20 10:35:50 2009 (r191303)
+++ head/sys/cam/scsi/scsi_sa.c Mon Apr 20 10:40:42 2009 (r191304)
@@ -173,13 +173,9 @@ typedef enum {
SA_QUIRK_NO_CPAGE = 0x80 /* Don't use DEVICE COMPRESSION page */
} sa_quirks;
-/* units are bits 4-7, 16-21 (1024 units) */
-#define SAUNIT(DEV) \
- (((dev2unit(DEV) & 0xF0) >> 4) | ((dev2unit(DEV) & 0x3f0000) >> 16))
-
-#define SAMODE(z) ((dev2unit(z) & 0x3))
-#define SADENSITY(z) (((dev2unit(z) >> 2) & 0x3))
-#define SA_IS_CTRL(z) (dev2unit(z) & (1 << 29))
+#define SAMODE(z) (dev2unit(z) & 0x3)
+#define SADENSITY(z) ((dev2unit(z) >> 2) & 0x3)
+#define SA_IS_CTRL(z) (dev2unit(z) & (1 << 4))
#define SA_NOT_CTLDEV 0
#define SA_CTLDEV 1
@@ -188,9 +184,8 @@ typedef enum {
#define SA_ATYPE_NR 1
#define SA_ATYPE_ER 2
-#define SAMINOR(ctl, unit, mode, access) \
- ((ctl << 29) | ((unit & 0x3f0) << 16) | ((unit & 0xf) << 4) | \
- (mode << 0x2) | (access & 0x3))
+#define SAMINOR(ctl, mode, access) \
+ ((ctl << 4) | (mode << 2) | (access & 0x3))
#define SA_NUM_MODES 4
struct sa_devs {
@@ -445,11 +440,8 @@ saopen(struct cdev *dev, int flags, int
{
struct cam_periph *periph;
struct sa_softc *softc;
- int unit;
int error;
- unit = SAUNIT(dev);
-
periph = (struct cam_periph *)dev->si_drv1;
if (cam_periph_acquire(periph) != CAM_REQ_CMP) {
return (ENXIO);
@@ -460,7 +452,7 @@ saopen(struct cdev *dev, int flags, int
softc = (struct sa_softc *)periph->softc;
CAM_DEBUG(periph->path, CAM_DEBUG_TRACE|CAM_DEBUG_INFO,
- ("saopen(%d): dev=0x%x softc=0x%x\n", unit, unit, softc->flags));
+ ("saopen(%s): softc=0x%x\n", devtoname(dev), softc->flags));
if (SA_IS_CTRL(dev)) {
softc->ctrl_mode = 1;
@@ -521,10 +513,9 @@ saclose(struct cdev *dev, int flag, int
{
struct cam_periph *periph;
struct sa_softc *softc;
- int unit, mode, error, writing, tmp;
+ int mode, error, writing, tmp;
int closedbits = SA_FLAG_OPEN;
- unit = SAUNIT(dev);
mode = SAMODE(dev);
periph = (struct cam_periph *)dev->si_drv1;
if (periph == NULL)
@@ -535,7 +526,7 @@ saclose(struct cdev *dev, int flag, int
softc = (struct sa_softc *)periph->softc;
CAM_DEBUG(periph->path, CAM_DEBUG_TRACE|CAM_DEBUG_INFO,
- ("saclose(%d): dev=0x%x softc=0x%x\n", unit, unit, softc->flags));
+ ("saclose(%s): softc=0x%x\n", devtoname(dev), softc->flags));
softc->open_rdonly = 0;
@@ -1496,26 +1487,26 @@ saregister(struct cam_periph *periph, vo
DEVSTAT_TYPE_IF_SCSI, DEVSTAT_PRIORITY_TAPE);
softc->devs.ctl_dev = make_dev(&sa_cdevsw, SAMINOR(SA_CTLDEV,
- periph->unit_number, 0, SA_ATYPE_R), UID_ROOT, GID_OPERATOR,
+ 0, SA_ATYPE_R), UID_ROOT, GID_OPERATOR,
0660, "%s%d.ctl", periph->periph_name, periph->unit_number);
softc->devs.ctl_dev->si_drv1 = periph;
for (i = 0; i < SA_NUM_MODES; i++) {
softc->devs.mode_devs[i].r_dev = make_dev(&sa_cdevsw,
- SAMINOR(SA_NOT_CTLDEV, periph->unit_number, i, SA_ATYPE_R),
+ SAMINOR(SA_NOT_CTLDEV, i, SA_ATYPE_R),
UID_ROOT, GID_OPERATOR, 0660, "%s%d.%d",
periph->periph_name, periph->unit_number, i);
softc->devs.mode_devs[i].r_dev->si_drv1 = periph;
softc->devs.mode_devs[i].nr_dev = make_dev(&sa_cdevsw,
- SAMINOR(SA_NOT_CTLDEV, periph->unit_number, i, SA_ATYPE_NR),
+ SAMINOR(SA_NOT_CTLDEV, i, SA_ATYPE_NR),
UID_ROOT, GID_OPERATOR, 0660, "n%s%d.%d",
periph->periph_name, periph->unit_number, i);
softc->devs.mode_devs[i].nr_dev->si_drv1 = periph;
softc->devs.mode_devs[i].er_dev = make_dev(&sa_cdevsw,
- SAMINOR(SA_NOT_CTLDEV, periph->unit_number, i, SA_ATYPE_ER),
+ SAMINOR(SA_NOT_CTLDEV, i, SA_ATYPE_ER),
UID_ROOT, GID_OPERATOR, 0660, "e%s%d.%d",
periph->periph_name, periph->unit_number, i);
softc->devs.mode_devs[i].er_dev->si_drv1 = periph;
More information about the svn-src-all
mailing list