Page MenuHomeFreeBSD

D55902.id174008.diff
No OneTemporary

D55902.id174008.diff

diff --git a/sys/dev/sound/usb/uaudio.c b/sys/dev/sound/usb/uaudio.c
--- a/sys/dev/sound/usb/uaudio.c
+++ b/sys/dev/sound/usb/uaudio.c
@@ -555,7 +555,6 @@
static int umidi_open(struct usb_fifo *, int);
static int umidi_ioctl(struct usb_fifo *, u_long cmd, void *, int);
static void umidi_close(struct usb_fifo *, int);
-static void umidi_init(device_t dev);
static int umidi_attach(device_t dev);
static int umidi_detach(device_t dev);
static int uaudio_hid_probe(struct uaudio_softc *sc,
@@ -1000,8 +999,6 @@
else
sc->sc_set_spdif_fn = uaudio_set_spdif_dummy;
- umidi_init(dev);
-
device_set_usb_desc(dev);
id = usbd_get_interface_descriptor(uaa->iface);
@@ -5966,15 +5963,6 @@
return (ENODEV);
}
-static void
-umidi_init(device_t dev)
-{
- struct uaudio_softc *sc = device_get_softc(dev);
- struct umidi_chan *chan = &sc->sc_midi_chan;
-
- mtx_init(&chan->mtx, "umidi lock", NULL, MTX_DEF | MTX_RECURSE);
-}
-
static struct usb_fifo_methods umidi_fifo_methods = {
.f_start_read = &umidi_start_read,
.f_start_write = &umidi_start_write,
@@ -5997,6 +5985,8 @@
int error;
uint32_t n;
+ mtx_init(&chan->mtx, "umidi lock", NULL, MTX_DEF | MTX_RECURSE);
+
if (usb_test_quirk(uaa, UQ_SINGLE_CMD_MIDI))
chan->single_command = 1;
@@ -6074,6 +6064,8 @@
return (0); /* success */
detach:
+ umidi_detach(dev);
+
return (ENXIO); /* failure */
}

File Metadata

Mime Type
text/plain
Expires
Sun, Apr 12, 12:38 AM (10 h, 8 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
30076368
Default Alt Text
D55902.id174008.diff (1 KB)

Event Timeline