← Back to team overview

desktop-packages team mailing list archive

[Bug 1381475] Re: Firewire sound card registered by the name of the fw controller

 

Hi,

I'm an authour of this kernel module (snd-bebob), I think you already
know.

I'll explain about the naming rule for ALSA FireWire drivers.

struct snd_ctl_card_info.driver[16]
    => BeBoB/Fireworks/OXFW/Dice/Digi00x etc...
struct snd_ctl_card_info.name[32]
    => 'model name' from config ROM, see below
struct snd_ctl_card_info.longname[80]
    => a joined string of 'vendor name', 'model name', bus speed etc... Sometimes truncated.
struct snd_ctl_card_info.mixername[80]
    => not important because these modules basically has no control elements
struct snd_ctl_card_info.components[128]
    => not filled

The 'config ROM' is defined in IEEE 1212 and IEEE 1394. Generally, each
device on IEEE 1394 bus have its information in the same register
defined in these specifications. In the information, vendor and model
name is included and the kernel modules refers to them.

You can see actual examples of the information in config ROM in ffado page:
http://subversion.ffado.org/wiki/AvcModels

For example,
http://subversion.ffado.org/wiki/AvcModels/TerratecPhase88

{{{
Config ROM
        Current Node Id:        0
        GUID:                   0x000aac0300d99287
        Vendor Name:            TerraTec Electronic GmbH
        Model Name:             PHASE 88 Rack FW
        ...
}}}

Well, I reccomend you to use struct snd_ctl_card_info.name[32] for shown
name. It can be retrieved by snd_ctl_card_info_get_name().

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to pulseaudio in Ubuntu.
https://bugs.launchpad.net/bugs/1381475

Title:
  Firewire sound card registered by the name of the fw controller

Status in “pulseaudio” package in Ubuntu:
  Triaged

Bug description:
  I am testing the new snd-firewire ALSA module which is currently getting accepted into the kernel.
  I have noticed that while ALSA recognizes the correct name for the card, PulseAudio displays another, wrong name, which is apparently the name of the FireWire controller through which the sound card is connected.

  $ aplay -l
  **** List of PLAYBACK Hardware Devices ****
  card 0: FW [PHASE 88 Rack FW], device 0: BeBoB [PHASE 88 Rack FW PCM]
    Subdevices: 1/1
    Subdevice #0: subdevice #0

  $ pacmd list-sinks
  Welcome to PulseAudio! Use "help" for usage information.
  >>> 4 sink(s) available.
      [...]
      index: 2
  	name: <alsa_output.firewire-0x000aac0300592827.10-channels>
  	driver: <module-alsa-card.c>
  	flags: HARDWARE DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
  	state: SUSPENDED
  	suspend cause: IDLE 
  	priority: 9000
  	volume: 0: 100% 1: 100% 2: 100% 3: 100% 4: 100% 5: 100% 6: 100% 7: 100% 8: 100% 9: 100%
  	        0: 0,00 dB 1: 0,00 dB 2: 0,00 dB 3: 0,00 dB 4: 0,00 dB 5: 0,00 dB 6: 0,00 dB 7: 0,00 dB 8: 0,00 dB 9: 0,00 dB
  	        balance 0,00
  	base volume: 100%
  	             0,00 dB
  	volume steps: 65537
  	muted: no
  	current latency: 0,00 ms
  	max request: 0 KiB
  	max rewind: 0 KiB
  	monitor source: 5
  	sample spec: s16le 10ch 44100Hz
  	channel map: front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right,aux0,aux1
  	used by: 0
  	linked by: 0
  	configured latency: 0,00 ms; range is 0,50 .. 185,76 ms
  	card: 3 <alsa_card.firewire-0x000aac0300592827>
  	module: 8
  	properties:
  		alsa.resolution_bits = "16"
  		device.api = "alsa"
  		device.class = "sound"
  		alsa.class = "generic"
  		alsa.subclass = "generic-mix"
  		alsa.name = "PHASE 88 Rack FW PCM"
  		alsa.id = "BeBoB"
  		alsa.subdevice = "0"
  		alsa.subdevice_name = "subdevice #0"
  		alsa.device = "0"
  		alsa.card = "0"
  		alsa.card_name = "PHASE 88 Rack FW"
  		alsa.long_card_name = "TerraTec Electronic Gmb PHASE 88 Rack FW (id:3, rev:1), GUID 000aac0300592827 a"
  		alsa.driver_name = "snd_bebob"
  		device.bus_path = "pci-0000:01:09.0"
  		sysfs.path = "/devices/pci0000:00/0000:00:09.0/0000:01:09.0/fw2/fw2.0/sound/card0"
  		udev.id = "firewire-0x000aac0300592827"
  		device.bus = "firewire"
  		device.vendor.name = "Texas Instruments"
  		device.product.name = "TSB43AB22A IEEE-1394a-2000 Controller (PHY/Link) [iOHCI-Lynx]"
  		device.string = "hw:0"
  		device.buffering.buffer_size = "163840"
  		device.buffering.fragment_size = "81920"
  		device.access_mode = "mmap+timer"
  		device.profile.name = "10-channels"
  		device.profile.description = "10 Channels"
  		device.description = "TSB43AB22A IEEE-1394a-2000 Controller (PHY/Link) [iOHCI-Lynx] 10 Channels"
  		alsa.mixer_name = "PHASE 88 Rack FW"
  		module-udev-detect.discovered = "1"
  		device.icon_name = "audio-card-firewire"

  
  PulseAudio 1:4.0-0ubuntu11

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/1381475/+subscriptions


References