All of lore.kernel.org
 help / color / mirror / Atom feed
From: Doug McLain <doug@nostar.net>
To: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Cc: alsa-devel@alsa-project.org, clemens@ladisch.de
Subject: Re: plans for fireworks driver
Date: Sun, 10 Mar 2013 03:28:12 -0400	[thread overview]
Message-ID: <513C360C.60804@nostar.net> (raw)
In-Reply-To: <513BEBE6.6030708@sakamocchi.jp>

After realizing that the ffado-mixer also didn't work on my AF12, I 
found that echo firmware > 4.8 broke ffado for the AF12 & AF8:

http://subversion.ffado.org/ticket/360

Interestingly though, I have been running 5.7 for a couple years using 
the snd-fireworks driver with no problems.  I have no use for the mixer 
on the AF12 after I initially set it up way before the firmware problem 
came about, so I never noticed anything was wrong.  Your driver now 
discovers the AF12 fine:

$ cat /proc/asound/card1/efc_hardware
flags: 0x11
guid_hi: 0x14860F
guid_lo: 0xC44A84A6
type: 0xAF12
version: 0x0
vendor_name: Echo Digital Audio
model_name: AudioFire12
supported_clock: 0x5
nb_1394_playback_channels: 0xC
nb_1394_capture_channels: 0xC
nb_phys_audio_out: 0xC
nb_phys_audio_in: 0xC
nb_out_groups: 0x1
out_group[0x0]: type 0x0, count 0x12
out_group[0x1]: type 0x0, count 0x0
out_group[0x2]: type 0x0, count 0x0
out_group[0x3]: type 0x0, count 0x0
out_group[0x4]: type 0x0, count 0x0
out_group[0x5]: type 0x0, count 0x0
out_group[0x6]: type 0x0, count 0x0
out_group[0x7]: type 0x0, count 0x0
nb_in_groups: 0x1
out_group[0x0]: type 0x0, count 0x12
out_group[0x1]: type 0x0, count 0x0
out_group[0x2]: type 0x0, count 0x0
out_group[0x3]: type 0x0, count 0x0
out_group[0x4]: type 0x0, count 0x0
out_group[0x5]: type 0x0, count 0x0
out_group[0x6]: type 0x0, count 0x0
out_group[0x7]: type 0x0, count 0x0
nb_midi_out: 0x1
nb_midi_in: 0x1
max_sample_rate: 0x2EE00
min_sample_rate: 0x7D00
dsp_version: 0x4080000
arm_version: 0x4080000
mixer_playback_channels: 0xC
mixer_capture_channels: 0xC
fpga_version: 0x0
nb_1394_playback_channels_2x: 0xC
nb_1394_capture_channels_2x: 0xC
nb_1394_playback_channels_4x: 0xC
nb_1394_capture_channels_4x: 0xC



Interestingly though, I've been running

On 03/09/2013 09:11 PM, Takashi Sakamoto wrote:
> Hi Doug,
>
> Thanks for your checking my source.
>
>
>> The latest change, which prompted me to write this email in the
>> first place, was the removal of __devinit and friends from kernel 3.8.
>
> Oh, it's my fault... __devXXX macros are removed from Linux tree since
> Dec 2012.
> For Linux 3.8-rc4 or later my module needs your patch but i's inconvenient.
> I realized it but have been forgeting...
>
> I remove them with this commit. Now you can build my module without your
> patch.
> https://github.com/takaswie/snd-firewire-improve/commit/77742d3f68e98e94ff99fa32d7ee9f7cdef4c4ad
>
>
>
>  > ...and the AF2
>
> Thank you. I add your log in the end of README.
> https://github.com/takaswie/snd-firewire-improve/commit/52beb73fa1e248a8eec985855b99774d74387a44
>
>
>
>> It discovers the AF2, but not the AF12.  Here is the log from  the AF12:
>  > Mar  9 15:47:11 iggy kernel: [63134.769274] ALSA fireworks_command.c:313
>  > EFC Failed [0/1]: 0
>
> H'm... It looks to fail to get the number of hardware metering channels
> when proving my module.
> To investigating this, anyway, I need the hardware information of AF12...
>
> Would you try this patch for AF12? This patch disable to get hardware
> metering channels during  module proving process.
>
> --- a/fireworks/fireworks.c
> +++ b/fireworks/fireworks.c
> @@ -329,11 +329,6 @@ static int snd_efw_probe(struct device *dev)
>          if (err < 0)
>                  goto error_card;
>
> -       /* get the number of hardware meters */
> -       err = snd_efw_get_hardware_meters_count(efw);
> -       if (err < 0)
> -               goto error_card;
> -
>          efw->syt_interval = 8;
>
>          for (i = 0; i < MAX_MIDI_OUTPUTS; i += 1)
>
>
> Thanks
>
>
> Takashi Sakamoto
> o-takashi@sakamocchi.jp
>
> (Mar 10 2013 05:52), Doug McLain wrote:
>> Attached is a patch of my hack to build your source of Fedora 18 with
>> kernel 3.8.  As I mentioned in the last email, I have had to do various
>> little hacks to the other snd-fireworks module source over the past few
>> years as chnages were made to the kernel API.  The latest change, which
>> prompted me to write this email in the first place, was the removal of
>> __devinit and friends from kernel 3.8.  So now its built, installed, and
>> running.  It discovers the AF2, but not the AF12.  Here is the log from
>> the AF12:
>>
>> Mar  9 15:47:06 iggy kernel: [63129.761604] firewire_core 0000:01:0b.0:
>> phy config: new root=ffc2, gap_count=7
>> Mar  9 15:47:11 iggy kernel: [63134.769274] ALSA fireworks_command.c:313
>> EFC Failed [0/1]: 0
>> Mar  9 15:47:11 iggy kernel: [63134.769289] snd-fireworks: probe of
>> fw2.0 failed with error -5
>> Mar  9 15:47:11 iggy kernel: [63134.769293] firewire_core 0000:01:0b.0:
>> created device fw2: GUID 0014860fc44a84a6, S400
>>
>>
>> ...and the AF2
>> $ cat /proc/asound/card0/efc_hardware
>> flags: 0xA1
>> guid_hi: 0x148606
>> guid_lo: 0x9D5BD6CA
>> type: 0xAF2
>> version: 0x0
>> vendor_name: Echo Digital Audio
>> model_name: AudioFire2
>> supported_clock: 0x9
>> nb_1394_playback_channels: 0x6
>> nb_1394_capture_channels: 0x4
>> nb_phys_audio_out: 0x6
>> nb_phys_audio_in: 0x4
>> nb_out_groups: 0x3
>> out_group[0x0]: type 0x0, count 0x2
>> out_group[0x1]: type 0x5, count 0x2
>> out_group[0x2]: type 0x1, count 0x2
>> out_group[0x3]: type 0x0, count 0x0
>> out_group[0x4]: type 0x0, count 0x0
>> out_group[0x5]: type 0x0, count 0x0
>> out_group[0x6]: type 0x0, count 0x0
>> out_group[0x7]: type 0x0, count 0x0
>> nb_in_groups: 0x2
>> out_group[0x0]: type 0x0, count 0x2
>> out_group[0x1]: type 0x5, count 0x2
>> out_group[0x2]: type 0x1, count 0x2
>> out_group[0x3]: type 0x0, count 0x0
>> out_group[0x4]: type 0x0, count 0x0
>> out_group[0x5]: type 0x0, count 0x0
>> out_group[0x6]: type 0x0, count 0x0
>> out_group[0x7]: type 0x0, count 0x0
>> nb_midi_out: 0x1
>> nb_midi_in: 0x1
>> max_sample_rate: 0x17700
>> min_sample_rate: 0x7D00
>> dsp_version: 0x0
>> arm_version: 0x4080000
>> mixer_playback_channels: 0x6
>> mixer_capture_channels: 0x4
>> fpga_version: 0x3000200
>> nb_1394_playback_channels_2x: 0x6
>> nb_1394_capture_channels_2x: 0x4
>> nb_1394_playback_channels_4x: 0x6
>> nb_1394_capture_channels_4x: 0x4
>>
>> -D
>>
>> On 03/09/2013 07:30 AM, Takashi Sakamoto wrote:
>>> Dear Doug,
>>>
>>> I'm a newcomer of ALSA project and currently working for snd-fireworks.
>>> Then I have a favour of you.
>>> (My first name is the same one that ALSA core developer has. But I'm
>>> newcomer Takashi)
>>>
>>> Unfortunatelly my post isn't delivered by mailman of
>>> alsa-devel@alsa-project.org. But I'm not a professional for mailman or
>>> SMTP so it takes a bit time that I debut in alsa-devel...
>>>
>>> Well, my source is here.
>>> https://github.com/takaswie/snd-firewire-improve
>>>
>>> It's a bit worse to you because current source has a lack of some
>>> functions that Clemens' snd-fireworks has.
>>>
>>>   - playback is available, capture is not. Additionally 2ch are
>>> available (under investigating...)
>>>   - MIDI is not available
>>>
>>> The reason is snd-firewire-lib.ko has these functions. Currently I'm
>>> working for them.
>>>
>>> But the implementation of hardware control is almost done:
>>>   - Hardware metering/monitoring/mixing are visible via procfs, but not
>>> configurable
>>>   - sampling rate, digital mode, digital format and clock source are
>>> changeable via alsamixer
>>>
>>> Hardware metering/monitoring/mixing will also be available via alsamixer
>>> after I've investigated the suitable way in ALSA's control component
>>> API.
>>>
>>> My favor of you is "building and installing my module and give me
>>> hardware information of your AF2 and AF12". I'm working with Ubuntu and
>>> utilize DKMS for debugging my module. You can see an instruction in
>>> README.
>>>
>>> If your Fireworks is identified by your system, there is
>>> /proc/asound/cardX/efc_hardware. If you "cat" this file, my module
>>> submit a command to your device to get hardware information and print
>>> the value. My module decide available functions refering it so it's very
>>> important.
>>>
>>> This is the output of my device, for your information:
>>> $ cat /proc/asound/card2/efc_hardware
>>> flags: 0x625
>>> guid_hi: 0x14860A
>>> guid_lo: 0x5B6BDB9B
>>> type: 0xAF9
>>> version: 0x0
>>> vendor_name: Echo Digital Audio
>>> model_name: AudioFirePre8
>>> supported_clock: 0x1D
>>> nb_1394_playback_channels: 0x10
>>> nb_1394_capture_channels: 0x10
>>> nb_phys_audio_out: 0x10
>>> nb_phys_audio_in: 0x10
>>> nb_out_groups: 0x2
>>> out_group[0x0]: type 0x0, count 0x8
>>> out_group[0x1]: type 0x3, count 0x8
>>> out_group[0x2]: type 0x0, count 0x0
>>> out_group[0x3]: type 0x0, count 0x0
>>> out_group[0x4]: type 0x0, count 0x0
>>> out_group[0x5]: type 0x0, count 0x0
>>> out_group[0x6]: type 0x0, count 0x0
>>> out_group[0x7]: type 0x0, count 0x0
>>> nb_in_groups: 0x2
>>> out_group[0x0]: type 0x0, count 0x8
>>> out_group[0x1]: type 0x3, count 0x8
>>> out_group[0x2]: type 0x0, count 0x0
>>> out_group[0x3]: type 0x0, count 0x0
>>> out_group[0x4]: type 0x0, count 0x0
>>> out_group[0x5]: type 0x0, count 0x0
>>> out_group[0x6]: type 0x0, count 0x0
>>> out_group[0x7]: type 0x0, count 0x0
>>> nb_midi_out: 0x1
>>> nb_midi_in: 0x1
>>> max_sample_rate: 0x17700
>>> min_sample_rate: 0x7D00
>>> dsp_version: 0x0
>>> arm_version: 0x5050000
>>> mixer_playback_channels: 0x10
>>> mixer_capture_channels: 0x10
>>> fpga_version: 0x4010100
>>> nb_1394_playback_channels_2x: 0xC
>>> nb_1394_capture_channels_2x: 0xC
>>> nb_1394_playback_channels_4x: 0xA
>>> nb_1394_capture_channels_4x: 0xA
>>>
>>> Kind Regards
>>>
>>>
>>> Takashi Sakamoto
>>> o-takashi@sakamocchi.jp
>>>
>>> (2013年03月09日 06:49), Doug McLain wrote:
>>>> I have been building and using the fireworks driver from
>>>> alsa-kprivate/fireworks for a few years now with my AF2 and AF12.  The
>>>> driver works great for me, although every so often after a kernel
>>>> update, compilation breaks and I have to hack at it a little bit to get
>>>> it to build again.
>>>>
>>>> Are there any plans to include this driver into the kernel?
>>>
>
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

  parent reply	other threads:[~2013-03-10  7:28 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-08 21:49 plans for fireworks driver Doug McLain
     [not found] ` <513B2B62.9040307@sakamocchi.jp>
2013-03-09 20:52   ` Doug McLain
     [not found]     ` <513BEBE6.6030708@sakamocchi.jp>
2013-03-10  7:28       ` Doug McLain [this message]
2013-03-10  9:04         ` Takashi Sakamoto
2013-03-10  9:30           ` Doug McLain
2013-03-10 10:37             ` Takashi Sakamoto

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=513C360C.60804@nostar.net \
    --to=doug@nostar.net \
    --cc=alsa-devel@alsa-project.org \
    --cc=clemens@ladisch.de \
    --cc=o-takashi@sakamocchi.jp \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.