[PlanetCCRMA] Planet CCRMA and (new) Gadget Labs driver questions...

Fernando Lopez-Lezcano nando at ccrma.Stanford.EDU
Mon May 5 14:42:18 PDT 2008


On Mon, 2008-05-05 at 08:33 -0400, Mike Mazarick wrote:
> Greetings, list!!!
>
> I’m testing out a new (unreleased to alsa) driver, and am unsure of
> whether I’m running into driver issues, FC8 issues, or something else
> (most likely, “the ‘nut’ behind the wheel”).
> 
>  
> Here are the issues:
>
> 1.        When the driver is loaded into a FC8 CCRMA setup (by
> directly inserting the module with the command ‘insmod ./gl824.ko’),

You probably should use modprobe, that will take care of dependencies if
any (more general purpose than insmod). 

>  the /dev/snd directory looks like this:
> 
> (before the driver is loaded, because there is an on-board via
> soundcard)
> 
> crw-rw----  1 root root 116, 8 2008-05-04 18:25 controlC2
> crw-rw----+ 1 root root 116, 7 2008-05-04 18:25 pcmC2D0c
> crw-rw----+ 1 root root 116, 6 2008-05-04 18:25 pcmC2D0p
> crw-rw----+ 1 root root 116, 5 2008-05-04 18:25 pcmC2D1c
> crw-rw----+ 1 root root 116, 4 2008-05-04 18:25 pcmC2D1p
> crw-rw----+ 1 root root 116, 3 2008-05-04 18:25 seq
> crw-rw----+ 1 root root 116, 2 2008-05-04 18:25 timer
>
> (after the Gadget Labs driver is loaded)
> 
> crw-rw----+ 1 root root 116, 18 2008-05-04 18:28 controlC0
> crw-rw----+ 1 root root 116, 28 2008-05-04 18:28 controlC1
> crw-rw----  1 root root 116,  8 2008-05-04 18:25 controlC2
> crw-rw----+ 1 root root 116, 17 2008-05-04 18:28 midiC0D0
> crw-rw----+ 1 root root 116, 27 2008-05-04 18:28 midiC1D1
> crw-rw----+ 1 root root 116, 16 2008-05-04 18:28 pcmC0D0c
> crw-rw----+ 1 root root 116, 15 2008-05-04 18:28 pcmC0D0p
> crw-rw----+ 1 root root 116, 14 2008-05-04 18:28 pcmC0D1c
> crw-rw----+ 1 root root 116, 13 2008-05-04 18:28 pcmC0D1p
> crw-rw----+ 1 root root 116, 12 2008-05-04 18:28 pcmC0D2c
> crw-rw----+ 1 root root 116, 11 2008-05-04 18:28 pcmC0D2p
> crw-rw----+ 1 root root 116, 10 2008-05-04 18:28 pcmC0D3c
> crw-rw----+ 1 root root 116,  9 2008-05-04 18:28 pcmC0D3p
> crw-rw----+ 1 root root 116, 26 2008-05-04 18:28 pcmC1D0c
> crw-rw----+ 1 root root 116, 25 2008-05-04 18:28 pcmC1D0p
> crw-rw----+ 1 root root 116, 24 2008-05-04 18:28 pcmC1D1c
> crw-rw----+ 1 root root 116, 23 2008-05-04 18:28 pcmC1D1p
> crw-rw----+ 1 root root 116, 22 2008-05-04 18:28 pcmC1D2c
> crw-rw----+ 1 root root 116, 21 2008-05-04 18:28 pcmC1D2p
> crw-rw----+ 1 root root 116, 20 2008-05-04 18:28 pcmC1D3c
> crw-rw----+ 1 root root 116, 19 2008-05-04 18:28 pcmC1D3p
> crw-rw----+ 1 root root 116,  7 2008-05-04 18:25 pcmC2D0c
> crw-rw----+ 1 root root 116,  6 2008-05-04 18:25 pcmC2D0p
> crw-rw----+ 1 root root 116,  5 2008-05-04 18:25 pcmC2D1c
> crw-rw----+ 1 root root 116,  4 2008-05-04 18:25 pcmC2D1p
> crw-rw----+ 1 root root 116,  3 2008-05-04 18:25 seq
> crw-rw----+ 1 root root 116,  2 2008-05-04 18:25 timer
>
> Now, on Debian/Ubunto distributions, the permissions look like this:
> 
>  
> [root at localhost snd]# ls -l
> 
> total 0
> 
> crw-rw----+ 1 root audio 116, 18 2008-05-04 18:28 controlC0
> crw-rw----+ 1 root audio 116, 28 2008-05-04 18:28 controlC1
> crw-rw----  1 root audio 116,  8 2008-05-04 18:25 controlC2
> crw-rw----+ 1 root audio 116, 17 2008-05-04 18:28 midiC0D0
> crw-rw----+ 1 root audio 116, 27 2008-05-04 18:28 midiC1D1
> crw-rw----+ 1 root audio 116, 16 2008-05-04 18:28 pcmC0D0c
> crw-rw----+ 1 root audio 116, 15 2008-05-04 18:28 pcmC0D0p
> crw-rw----+ 1 root audio 116, 14 2008-05-04 18:28 pcmC0D1c
> crw-rw----+ 1 root audio 116, 13 2008-05-04 18:28 pcmC0D1p
> crw-rw----+ 1 root audio 116, 12 2008-05-04 18:28 pcmC0D2c
> crw-rw----+ 1 root audio 116, 11 2008-05-04 18:28 pcmC0D2p
> crw-rw----+ 1 root audio 116, 10 2008-05-04 18:28 pcmC0D3c
> crw-rw----+ 1 root audio 116,  9 2008-05-04 18:28 pcmC0D3p
> crw-rw----+ 1 root audio 116, 26 2008-05-04 18:28 pcmC1D0c
> crw-rw----+ 1 root audio 116, 25 2008-05-04 18:28 pcmC1D0p
> crw-rw----+ 1 root audio 116, 24 2008-05-04 18:28 pcmC1D1c
> crw-rw----+ 1 root audio 116, 23 2008-05-04 18:28 pcmC1D1p
> crw-rw----+ 1 root audio 116, 22 2008-05-04 18:28 pcmC1D2c
> crw-rw----+ 1 root audio 116, 21 2008-05-04 18:28 pcmC1D2p
> crw-rw----+ 1 root audio 116, 20 2008-05-04 18:28 pcmC1D3c
> crw-rw----+ 1 root audio 116, 19 2008-05-04 18:28 pcmC1D3p
> crw-rw----+ 1 root audio 116,  7 2008-05-04 18:25 pcmC2D0c
> crw-rw----+ 1 root audio 116,  6 2008-05-04 18:25 pcmC2D0p
> crw-rw----+ 1 root audio 116,  5 2008-05-04 18:25 pcmC2D1c
> crw-rw----+ 1 root audio 116,  4 2008-05-04 18:25 pcmC2D1p
> crw-rw----+ 1 root audio 116,  3 2008-05-04 18:25 seq
> crw-rw----+ 1 root audio 116,  2 2008-05-04 18:25 timer
>  
> 
> Notice the group is ‘audio’.  

The /dev/snd/* files in a Fedora system should be owned by whoever is
logged into the console (into the graphical login). This is so that only
the logged in user can use the audio devices. No audio group by
default. 

Are you looking at this from a text console without logging into a
graphical session?

The permissions are controlled through /etc/security/console.perms*

> Now, we can work around this small issue by putting the user account
> in the ‘audio’ group. 

Hmm, not in Fedora right? There is no audio group, I think. Or at least
it is not necessary to have one. 

>  However, I don’t think that is normally done, so I’d be interested in
> hearing what the normal group id is for the devices in /dev/snd for a
> PlanetCCRMA/FC8 distribution. 

Files should be owned by the logged in user, that is done automagically
by the system at login time. 

> It’s probably not a big deal one way or the other, but we would prefer
> to do something consistent with what normally occurs as far as
> permissions in multiple distributions.   I’m pushing for Planet CCRMA
> testing, but several of the folks seem to prefer Ubunto over Fedora
> (and it would be good if it worked in both).
>
> Please let me know the normal user permissions and ownership structure
> of the /dev/snd devices.   If they are all ‘user-root, group-root, no
> world read/write permission’ how are they accessed?
> 
>  
> 2.       What are the best applications to test out the linux driver
> after you fire up qjackctl?   Is it important to hook up a keyboard or
> microphone preamp first, or is there enough things to check out the
> basic functions (outputs) of the sound card without it?   There is
> such a daunting list of applications in the PlanetCCRMA menu item, it
> would be easy to get discouraged from not knowing what to do first.
> Ideally, it appears to me that a casual user of this soundcard would
> want to do the basic system test first
> (/usr/bin/system-config-soundcard), followed by qjackctl, followed by
> some applications that would allow them to get sound out (like
> hydrogen drum machine). 

I usually fire up hydrogen for quick tests and select one of the demo
songs. 

> The next step may be some apps which allow (computer) keyboard/mouse
> input, followed by an excursion into the difficult world of midi and
> softsynths (and midi channels/setups/sysex, etc),  followed by
> keyboard/mic/mixer analog inputs and the world of Ardour/Audacity,
> etc.  Like most soundcards, it requires a preamp per channel, so I
> believe a lot of folks will use something like a Mackie mixer as a
> front end and tap in with the insert jacks to get preamp out to the
> soundcard).   I’m inclined to believe most of the ‘pro’ level stuff is
> used with Jack, and there is some internal discussion about making the
> card ‘Jack’ only.
>
> What would be your best recommendation of the set of apps that should
> be used for testing?   Do all of them have a ‘Jack’ frontend?   It
> would be of interest to us to have an app that enabled multiple
> inputs/outputs since the card has 8 in/outs, and can be slaved
> together for 16, 24, or 32 channels (the latter two numbers being very
> optimistic about driver performance).

For multiple outputs and inputs Ardour would seem like the most 
complete testbed. 

-- Fernando





More information about the PlanetCCRMA mailing list