summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkrw <krw@openbsd.org>2020-07-11 14:48:53 +0000
committerkrw <krw@openbsd.org>2020-07-11 14:48:53 +0000
commit51b504e01d154214d4f4b09ea9c85c5ffa40060f (patch)
tree21bb9a8d58d686d1513eb6661bd00b7510efb82e
parentExpunge some Captain Obvious comments to make upcoming diff(s) smaller (diff)
downloadwireguard-openbsd-51b504e01d154214d4f4b09ea9c85c5ffa40060f.tar.xz
wireguard-openbsd-51b504e01d154214d4f4b09ea9c85c5ffa40060f.zip
Build 'flags' in intermediate variable and shuffle sc_link
initialization closer to config_found() invocation.
-rw-r--r--sys/dev/usb/umass_scsi.c33
1 files changed, 17 insertions, 16 deletions
diff --git a/sys/dev/usb/umass_scsi.c b/sys/dev/usb/umass_scsi.c
index eb2222191bf..881323fa2a3 100644
--- a/sys/dev/usb/umass_scsi.c
+++ b/sys/dev/usb/umass_scsi.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: umass_scsi.c,v 1.53 2020/07/11 13:34:06 krw Exp $ */
+/* $OpenBSD: umass_scsi.c,v 1.54 2020/07/11 14:48:53 krw Exp $ */
/* $NetBSD: umass_scsipi.c,v 1.9 2003/02/16 23:14:08 augustss Exp $ */
/*
* Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -83,25 +83,12 @@ umass_scsi_attach(struct umass_softc *sc)
{
struct scsibus_attach_args saa;
struct umass_scsi_softc *scbus;
+ u_int16_t flags = SDEV_UMASS;
scbus = malloc(sizeof(*scbus), M_DEVBUF, M_WAITOK | M_ZERO);
sc->bus = scbus;
- scsi_iopool_init(&scbus->sc_iopool, scbus, umass_io_get, umass_io_put);
-
- scbus->sc_link.adapter_buswidth = 2;
- scbus->sc_link.adapter = &umass_scsi_switch;
- scbus->sc_link.adapter_softc = sc;
- scbus->sc_link.adapter_target = UMASS_SCSIID_HOST;
- scbus->sc_link.openings = 1;
- scbus->sc_link.quirks = SDEV_ONLYBIG | sc->sc_busquirks;
- scbus->sc_link.pool = &scbus->sc_iopool;
- scbus->sc_link.luns = sc->maxlun + 1;
- scbus->sc_link.flags = SDEV_UMASS;
-
- saa.saa_sc_link = &scbus->sc_link;
-
switch (sc->sc_cmd) {
case UMASS_CPROTO_RBC:
case UMASS_CPROTO_SCSI:
@@ -111,7 +98,7 @@ umass_scsi_attach(struct umass_softc *sc)
break;
case UMASS_CPROTO_UFI:
case UMASS_CPROTO_ATAPI:
- scbus->sc_link.flags |= SDEV_ATAPI;
+ flags |= SDEV_ATAPI;
DPRINTF(UDMASS_USB, ("%s: umass_attach_bus: ATAPI\n"
"sc = 0x%p, scbus = 0x%p\n",
sc->sc_dev.dv_xname, sc, scbus));
@@ -120,6 +107,20 @@ umass_scsi_attach(struct umass_softc *sc)
break;
}
+ scsi_iopool_init(&scbus->sc_iopool, scbus, umass_io_get, umass_io_put);
+
+ scbus->sc_link.adapter_buswidth = 2;
+ scbus->sc_link.adapter = &umass_scsi_switch;
+ scbus->sc_link.adapter_softc = sc;
+ scbus->sc_link.adapter_target = UMASS_SCSIID_HOST;
+ scbus->sc_link.openings = 1;
+ scbus->sc_link.quirks = SDEV_ONLYBIG | sc->sc_busquirks;
+ scbus->sc_link.pool = &scbus->sc_iopool;
+ scbus->sc_link.luns = sc->maxlun + 1;
+ scbus->sc_link.flags = flags;
+
+ saa.saa_sc_link = &scbus->sc_link;
+
sc->sc_refcnt++;
scbus->sc_child = config_found((struct device *)sc, &saa, scsiprint);
if (--sc->sc_refcnt < 0)