From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: [PATCH 49/49] firewire/bebob: Add a workaround for M-Audio special Firewire series Date: Sat, 31 May 2014 07:56:09 +0200 Message-ID: References: <1398433530-13136-1-git-send-email-o-takashi@sakamocchi.jp> <1398433530-13136-50-git-send-email-o-takashi@sakamocchi.jp> <20140530222259.78f93253@kant> Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20140530222259.78f93253@kant> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: linux1394-devel-bounces@lists.sourceforge.net To: Stefan Richter Cc: alsa-devel@alsa-project.org, perex@perex.cz, ffado-devel@lists.sf.net, linux1394-devel@lists.sourceforge.net List-Id: alsa-devel@alsa-project.org At Fri, 30 May 2014 22:22:59 +0200, Stefan Richter wrote: > > On May 30 Takashi Iwai wrote: > > At Fri, 25 Apr 2014 22:45:30 +0900, > > Takashi Sakamoto wrote: > > > > > > In post commit, a quirk of this firmware about transactions is reported. > > > This commit apply a workaround for this quirk. > > > > > > They often fail transactions due to gap_count mismatch. This state is changed > > > by generating bus reset. > > > > > > The fw_schedule_bus_reset() is an exported symbol in firewire-core. But there > > > are no header for public. This commit moves its prototype from > > > drivers/firewire/core.h to include/linux/firewire.h. > > > > > > This mismatch still affects bus management before generating this bus reset. > > > It still takes a time to call driver's probe() because transactions are still > > > often failed. > > > > > > Signed-off-by: Takashi Sakamoto > > > > Hrm, I should have taken a deeper review. This change was slipped to > > my tree without Stefan's ack. > > Stefan, is it OK to keep this change as is? > > Yes, the implementation of this patch and its routing through the ALSA > tree is OK with me. I should have sent > Acked-by: Stefan Richter > right away when this revision of the patch series showed up on the list. > (I think I only sent an informal agreement a time ago for an earlier > revision.) OK, thanks for confirmation! > Longer term we should look into improving this workaround to address > 1. the above mentioned transaction failures which happen before the bebob > driver's .probe is called (which are merely transient recoverable > failures, apparently), > 2. the theoretical possibility of the very same problem occurring with > other IEEE 1394 devices. > If we indeed come up with such a more general solution, its implementation > will of course move out of the bebob driver into firewire-core. But this > is really longer term since we need to be careful with that, and I might > want to recreate an environment which reproduces the issue before I > attempt such generalization or before I take a respective patch from > somebody else. --- So in short, let's proceed with this patch through ALSA > git. Sounds reasonable. thanks, Takashi > > > thanks, > > > > Takashi > > > > > --- > > > drivers/firewire/core.h | 1 - > > > include/linux/firewire.h | 3 +++ > > > sound/firewire/bebob/bebob.c | 32 ++++++++++++++++++++++++++++---- > > > sound/firewire/bebob/bebob.h | 1 + > > > 4 files changed, 32 insertions(+), 5 deletions(-) > [...] > > -- > Stefan Richter > -=====-====- -=-= ====- > http://arcgraph.de/sr/ > ------------------------------------------------------------------------------ Time is money. Stop wasting it! Get your web API in 5 minutes. www.restlet.com/download http://p.sf.net/sfu/restlet