module name reporting WAS: Re: HEADSUP: Soekris and generic LED/lamp support in FreeBSD-current

Mathew Kanner mat at cnd.mcgill.ca
Fri Nov 7 16:13:41 PST 2003


[ I snipped some CC's]

On Nov 07, Scott Long wrote:
> On Fri, 7 Nov 2003, Mathew Kanner wrote:
> >
> > 	kldunload should unload all driver.  I plan to augment
> > /dev/sndstat to show which driver is actually behind the device.
> 
> The current semantics are intentional (IIRC from talking with Cameron).
> The idea was to make it easy to load the correct sound driver without
> having to know specifically which one you needed, but not waste RAM by
> loading all of them.  Modifying /dev/sndstat like you said would be
> interesting, but changing the unload semantics then makes things less
> convenient.

	Attached you will find patches that get to most drivers,

tube# kldload snd_cmi
pcm0: <CMedia CMI8738> port 0xb800-0xb8ff irq 10 at device 5.0 on pci0
tube# cat /dev/sndstat
FreeBSD Audio Driver (newpcm)
Installed devices:
pcm0: <CMedia CMI8738> at io 0xb800 irq 10 kld snd_cmi (1p/1r/0v channels duplex default

	--Mat
-- 
	I don't even know what street Canada is on.
			- Al Capone
-------------- next part --------------
diff -ru dev/sound/pci.old/als4000.c dev/sound/pci/als4000.c
--- dev/sound/pci.old/als4000.c	Sun Sep  7 05:14:58 2003
+++ dev/sound/pci/als4000.c	Fri Nov  7 18:59:42 2003
@@ -818,7 +818,7 @@
 	pcm_addchan(dev, PCMDIR_PLAY, &alspchan_class, sc);
 	pcm_addchan(dev, PCMDIR_REC,  &alsrchan_class, sc);
 
-	snprintf(status, SND_STATUSLEN, "at io 0x%lx irq %ld",
+	snprintf(status, SND_STATUSLEN, "at io 0x%lx irq %ld kld snd_als4000",
 		 rman_get_start(sc->reg), rman_get_start(sc->irq));
 	pcm_setstatus(dev, status);
 	return 0;
diff -ru dev/sound/pci.old/au88x0.c dev/sound/pci/au88x0.c
--- dev/sound/pci.old/au88x0.c	Wed Oct 22 00:55:50 2003
+++ dev/sound/pci/au88x0.c	Fri Nov  7 19:00:03 2003
@@ -529,7 +529,7 @@
 	struct au88x0_info *aui;
 
 	aui = pcm_getdevinfo(dev);
-	snprintf(status, sizeof status, "at %s 0x%lx irq %ld",
+	snprintf(status, sizeof status, "at %s 0x%lx irq %ld kld snd_au88x0",
 	    (aui->aui_regtype == SYS_RES_IOPORT)? "io" : "memory",
 	    rman_get_start(aui->aui_reg), rman_get_start(aui->aui_irq));
 	pcm_setstatus(dev, status);
diff -ru dev/sound/pci.old/aureal.c dev/sound/pci/aureal.c
--- dev/sound/pci.old/aureal.c	Sat Sep 13 21:09:21 2003
+++ dev/sound/pci/aureal.c	Fri Nov  7 19:01:10 2003
@@ -647,7 +647,7 @@
 		goto bad;
 	}
 
-	snprintf(status, SND_STATUSLEN, "at %s 0x%lx irq %ld",
+	snprintf(status, SND_STATUSLEN, "at %s 0x%lx irq %ld kld snd_aureal",
 		 (type[0] == SYS_RES_IOPORT)? "io" : "memory",
 		 rman_get_start(reg[0]), rman_get_start(irq));
 
diff -ru dev/sound/pci.old/cmi.c dev/sound/pci/cmi.c
--- dev/sound/pci.old/cmi.c	Fri Oct 24 23:49:03 2003
+++ dev/sound/pci/cmi.c	Fri Nov  7 19:01:19 2003
@@ -898,7 +898,7 @@
 	pcm_addchan(dev, PCMDIR_PLAY, &cmichan_class, sc);
 	pcm_addchan(dev, PCMDIR_REC, &cmichan_class, sc);
 
-	snprintf(status, SND_STATUSLEN, "at io 0x%lx irq %ld",
+	snprintf(status, SND_STATUSLEN, "at io 0x%lx irq %ld kld snd_cmi",
 		 rman_get_start(sc->reg), rman_get_start(sc->irq));
 	pcm_setstatus(dev, status);
 
diff -ru dev/sound/pci.old/cs4281.c dev/sound/pci/cs4281.c
--- dev/sound/pci.old/cs4281.c	Sun Sep  7 05:14:58 2003
+++ dev/sound/pci/cs4281.c	Fri Nov  7 19:01:43 2003
@@ -858,7 +858,7 @@
     pcm_addchan(dev, PCMDIR_PLAY, &cs4281chan_class, sc);
     pcm_addchan(dev, PCMDIR_REC, &cs4281chan_class, sc);
 
-    snprintf(status, SND_STATUSLEN, "at %s 0x%lx irq %ld",
+    snprintf(status, SND_STATUSLEN, "at %s 0x%lx irq %ld kld snd_cs4281",
 	     (sc->regtype == SYS_RES_IOPORT)? "io" : "memory",
 	     rman_get_start(sc->reg), rman_get_start(sc->irq));
     pcm_setstatus(dev, status);
diff -ru dev/sound/pci.old/csapcm.c dev/sound/pci/csapcm.c
--- dev/sound/pci.old/csapcm.c	Sun Sep  7 05:14:58 2003
+++ dev/sound/pci/csapcm.c	Fri Nov  7 19:02:10 2003
@@ -788,7 +788,7 @@
 		return (ENXIO);
 	}
 
-	snprintf(status, SND_STATUSLEN, "at irq %ld", rman_get_start(resp->irq));
+	snprintf(status, SND_STATUSLEN, "at irq %ld kld snd_csa", rman_get_start(resp->irq));
 
 	/* Enable interrupt. */
 	if (snd_setup_intr(dev, resp->irq, INTR_MPSAFE, csa_intr, csa, &csa->ih)) {
diff -ru dev/sound/pci.old/ds1.c dev/sound/pci/ds1.c
--- dev/sound/pci.old/ds1.c	Sun Sep  7 05:14:58 2003
+++ dev/sound/pci/ds1.c	Fri Nov  7 19:02:33 2003
@@ -996,7 +996,7 @@
 		goto bad;
 	}
 
-	snprintf(status, SND_STATUSLEN, "at memory 0x%lx irq %ld",
+	snprintf(status, SND_STATUSLEN, "at memory 0x%lx irq %ld kld snd_ds1",
 		 rman_get_start(sc->reg), rman_get_start(sc->irq));
 
 	if (pcm_register(dev, sc, DS1_CHANS, 2))
diff -ru dev/sound/pci.old/emu10k1.c dev/sound/pci/emu10k1.c
--- dev/sound/pci.old/emu10k1.c	Sat Sep 13 21:09:21 2003
+++ dev/sound/pci/emu10k1.c	Fri Nov  7 19:02:48 2003
@@ -1517,7 +1517,7 @@
 		goto bad;
 	}
 
-	snprintf(status, SND_STATUSLEN, "at io 0x%lx irq %ld", rman_get_start(sc->reg), rman_get_start(sc->irq));
+	snprintf(status, SND_STATUSLEN, "at io 0x%lx irq %ld kld snd_emu10k1", rman_get_start(sc->reg), rman_get_start(sc->irq));
 
 	if (pcm_register(dev, sc, EMU_CHANS, gotmic ? 3 : 2)) goto bad;
 	for (i = 0; i < EMU_CHANS; i++)
diff -ru dev/sound/pci.old/es137x.c dev/sound/pci/es137x.c
--- dev/sound/pci.old/es137x.c	Sat Sep 13 21:09:21 2003
+++ dev/sound/pci/es137x.c	Fri Nov  7 19:03:01 2003
@@ -924,7 +924,7 @@
 		goto bad;
 	}
 
-	snprintf(status, SND_STATUSLEN, "at %s 0x%lx irq %ld",
+	snprintf(status, SND_STATUSLEN, "at %s 0x%lx irq %ld kld snd_es137x",
 		 (es->regtype == SYS_RES_IOPORT)? "io" : "memory",
 		 rman_get_start(es->reg), rman_get_start(es->irq));
 
diff -ru dev/sound/pci.old/fm801.c dev/sound/pci/fm801.c
--- dev/sound/pci.old/fm801.c	Sun Sep  7 05:14:58 2003
+++ dev/sound/pci/fm801.c	Fri Nov  7 19:03:20 2003
@@ -638,7 +638,7 @@
 		goto oops;
 	}
 
-	snprintf(status, 64, "at %s 0x%lx irq %ld",
+	snprintf(status, 64, "at %s 0x%lx irq %ld kld snd_fm801",
 		(fm801->regtype == SYS_RES_IOPORT)? "io" : "memory",
 		rman_get_start(fm801->reg), rman_get_start(fm801->irq));
 
diff -ru dev/sound/pci.old/ich.c dev/sound/pci/ich.c
--- dev/sound/pci.old/ich.c	Wed Oct 22 00:55:50 2003
+++ dev/sound/pci/ich.c	Fri Nov  7 19:03:32 2003
@@ -761,7 +761,7 @@
 	if (sc->hasmic)
 		pcm_addchan(dev, PCMDIR_REC, &ichchan_class, sc);	/* record mic */
 
-	snprintf(status, SND_STATUSLEN, "at io 0x%lx, 0x%lx irq %ld bufsz %u",
+	snprintf(status, SND_STATUSLEN, "at io 0x%lx, 0x%lx irq %ld bufsz %u kld snd_ich",
 		 rman_get_start(sc->nambar), rman_get_start(sc->nabmbar), rman_get_start(sc->irq), sc->bufsz);
 
 	pcm_setstatus(dev, status);
diff -ru dev/sound/pci.old/maestro.c dev/sound/pci/maestro.c
--- dev/sound/pci.old/maestro.c	Sat Sep 13 21:09:21 2003
+++ dev/sound/pci/maestro.c	Fri Nov  7 19:03:46 2003
@@ -1033,7 +1033,7 @@
 	ess->irqid = irqid;
 	ess->ih = ih;
 
-	snprintf(status, SND_STATUSLEN, "at I/O port 0x%lx irq %ld",
+	snprintf(status, SND_STATUSLEN, "at I/O port 0x%lx irq %ld kld snd_maestro",
 	    rman_get_start(reg), rman_get_start(irq));
 
 	if (pcm_register(dev, ess, AGG_MAXPLAYCH, 1))
diff -ru dev/sound/pci.old/maestro3.c dev/sound/pci/maestro3.c
--- dev/sound/pci.old/maestro3.c	Sun Sep  7 05:14:58 2003
+++ dev/sound/pci/maestro3.c	Fri Nov  7 19:04:05 2003
@@ -1189,7 +1189,7 @@
 			goto bad;
 		}
 	}
- 	snprintf(status, SND_STATUSLEN, "at %s 0x%lx irq %ld",
+ 	snprintf(status, SND_STATUSLEN, "at %s 0x%lx irq %ld kld snd_maestro3",
 		 (sc->regtype == SYS_RES_IOPORT)? "io" : "memory",
 		 rman_get_start(sc->reg), rman_get_start(sc->irq));
 	if (pcm_setstatus(dev, status)) {
diff -ru dev/sound/pci.old/neomagic.c dev/sound/pci/neomagic.c
--- dev/sound/pci.old/neomagic.c	Sat Sep 13 21:09:22 2003
+++ dev/sound/pci/neomagic.c	Fri Nov  7 19:04:24 2003
@@ -704,7 +704,7 @@
 		goto bad;
 	}
 
-	snprintf(status, SND_STATUSLEN, "at memory 0x%lx, 0x%lx irq %ld",
+	snprintf(status, SND_STATUSLEN, "at memory 0x%lx, 0x%lx irq %ld kld snd_neomagic",
 		 rman_get_start(sc->buf), rman_get_start(sc->reg),
 		 rman_get_start(sc->irq));
 
diff -ru dev/sound/pci.old/solo.c dev/sound/pci/solo.c
--- dev/sound/pci.old/solo.c	Sat Sep 13 21:09:22 2003
+++ dev/sound/pci/solo.c	Fri Nov  7 19:04:37 2003
@@ -997,7 +997,7 @@
 		goto no;
     	}
 
-    	snprintf(status, SND_STATUSLEN, "at io 0x%lx,0x%lx,0x%lx irq %ld",
+    	snprintf(status, SND_STATUSLEN, "at io 0x%lx,0x%lx,0x%lx irq %ld kld snd_solo",
     	     	rman_get_start(sc->io), rman_get_start(sc->sb), rman_get_start(sc->vc),
 		rman_get_start(sc->irq));
 
diff -ru dev/sound/pci.old/t4dwave.c dev/sound/pci/t4dwave.c
--- dev/sound/pci.old/t4dwave.c	Sat Sep 13 21:09:22 2003
+++ dev/sound/pci/t4dwave.c	Fri Nov  7 19:04:48 2003
@@ -860,7 +860,7 @@
 		goto bad;
 	}
 
-	snprintf(status, 64, "at io 0x%lx irq %ld",
+	snprintf(status, 64, "at io 0x%lx irq %ld kld snd_t4dwave",
 		 rman_get_start(tr->reg), rman_get_start(tr->irq));
 
 	if (pcm_register(dev, tr, TR_MAXPLAYCH, 1)) goto bad;
diff -ru dev/sound/pci.old/via8233.c dev/sound/pci/via8233.c
--- dev/sound/pci.old/via8233.c	Sun Sep  7 05:14:58 2003
+++ dev/sound/pci/via8233.c	Fri Nov  7 19:04:59 2003
@@ -843,7 +843,7 @@
 		ac97_setextmode(via->codec, ext);
 	}
 
-	snprintf(status, SND_STATUSLEN, "at io 0x%lx irq %ld", 
+	snprintf(status, SND_STATUSLEN, "at io 0x%lx irq %ld kld snd_via8233", 
 		 rman_get_start(via->reg), rman_get_start(via->irq));
 
 	/* Register */
diff -ru dev/sound/pci.old/via82c686.c dev/sound/pci/via82c686.c
--- dev/sound/pci.old/via82c686.c	Sun Sep  7 05:14:58 2003
+++ dev/sound/pci/via82c686.c	Fri Nov  7 19:05:12 2003
@@ -572,7 +572,7 @@
 	if (bus_dmamap_load(via->sgd_dmat, via->sgd_dmamap, via->sgd_table, NSEGS * sizeof(struct via_dma_op), dma_cb, via, 0))
 		goto bad;
 
-	snprintf(status, SND_STATUSLEN, "at io 0x%lx irq %ld", rman_get_start(via->reg), rman_get_start(via->irq));
+	snprintf(status, SND_STATUSLEN, "at io 0x%lx irq %ld kld snd_via82c686", rman_get_start(via->reg), rman_get_start(via->irq));
 
 	/* Register */
 	if (pcm_register(dev, via, 1, 1)) goto bad;
diff -ru dev/sound/pci.old/vibes.c dev/sound/pci/vibes.c
--- dev/sound/pci.old/vibes.c	Sun Sep  7 05:14:58 2003
+++ dev/sound/pci/vibes.c	Fri Nov  7 19:05:26 2003
@@ -878,7 +878,7 @@
         pcm_addchan(dev, PCMDIR_PLAY, &svpchan_class, sc);
         pcm_addchan(dev, PCMDIR_REC,  &svrchan_class, sc);
 
-        snprintf(status, SND_STATUSLEN, "at io 0x%lx irq %ld",
+        snprintf(status, SND_STATUSLEN, "at io 0x%lx irq %ld kld snd_vibes",
                  rman_get_start(sc->enh_reg),  rman_get_start(sc->irq));
         pcm_setstatus(dev, status);
 


More information about the freebsd-multimedia mailing list