From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: [PATCH 00/10] ALSA: firewire-motu: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks Date: Tue, 18 Jun 2019 08:46:49 +0200 Message-ID: References: <20190617081510.11025-1-o-takashi@sakamocchi.jp> Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mx1.suse.de (mx2.suse.de [195.135.220.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by alsa1.perex.cz (Postfix) with ESMTPS id 2BC33F80CC4 for ; Tue, 18 Jun 2019 08:46:50 +0200 (CEST) In-Reply-To: <20190617081510.11025-1-o-takashi@sakamocchi.jp> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: "Alsa-devel" To: Takashi Sakamoto Cc: alsa-devel@alsa-project.org, clemens@ladisch.de List-Id: alsa-devel@alsa-project.org On Mon, 17 Jun 2019 10:15:00 +0200, Takashi Sakamoto wrote: > > Hi, > > This patchset is the last part of patches for all of drivers in ALSA > firewire stack to reserve/release isochronous resources in > pcm.hw_params/hw_free callbacks, like the other patchsets: > > https://mailman.alsa-project.org/pipermail/alsa-devel/2019-June/150118.html > https://mailman.alsa-project.org/pipermail/alsa-devel/2019-June/150863.html > > In current implementation, the resources are reserved at the same time > to start packet streaming, and released at the same time to stop packet > streaming. However, once allocated, the resources are available > independent of lifetime of each of packet streaming. > > The isochronous resources are the resources of IEEE 1394 bus. On the > other side of view, it's a kind of resources of hardware to maintain > the bus (isochronous resource manager). For this kind of reservation and > release, hw_params and hw_free operations are suitable in ALSA PCM > interface. > > Ideally, the operation to reserve/release isochronous resource should > be separated from the operation to start/stop packet streaming. However, > IEEE 1394 bus has reset event. Once reset occurs, isochronous resource > manager releases allocated resources. The resources should be > reallocated by requesters themselves. For this reason, in this patchset, > bus generation is checked before starting packet streaming. If > generation is updated, reallocation is requested to isochronous > resource manager, then packet streaming starts. > > Takashi Sakamoto (10): > ALSA: firewire-motu: unify the count of subscriber for packet > streaming > ALSA: firewire-motu: unify midi callback function > ALSA: firewire-motu: add helper function to keep isochronous resources > ALSA: firewire-motu: code refactoring for condition to stop streaming > ALSA: firewire-motu: rename helper functions to begin/finish streaming > session > ALSA: firewire-motu: minor code refactoring to stop isochronous > context > ALSA: firewire-motu: code refactoring to finish streaming session > ALSA: firewire-motu: reserve/release isochronous resources in > pcm.hw_params/hw_free callbacks > ALSA: firewire-motu: update isochronous resources when starting packet > streaming after bus-reset > ALSA: firewire-motu: code refactoring for pcm.hw_params/hw_free > callbacks Applied all ten patches now. Thanks. Takashi