All of lore.kernel.org
 help / color / mirror / Atom feed
From: Takashi Sakamoto <o-takashi@sakamocchi.jp>
To: Takashi Iwai <tiwai@suse.de>
Cc: alsa-devel@alsa-project.org, clemens@ladisch.de,
	ffado-devel@lists.sf.net
Subject: Re: [PATCH 00/25 v2] ALSA: support AMDTP variants
Date: Tue, 25 Aug 2015 20:47:23 +0900	[thread overview]
Message-ID: <55DC55CB.1020207@sakamocchi.jp> (raw)
In-Reply-To: <s5hoahw3pqf.wl-tiwai@suse.de>

Hi,

On Aug 25 2015 14:24, Takashi Iwai wrote:
> On Mon, 24 Aug 2015 08:26:56 +0200,
> Takashi Iwai wrote:
>>
>> On Sun, 23 Aug 2015 16:58:44 +0200,
>> Takashi Sakamoto wrote:
>>>
>>> On 2015年08月23日 17:04, Takashi Iwai wrote:
>>>> On Sat, 22 Aug 2015 11:19:16 +0200,
>>>> Takashi Sakamoto wrote:
>>>>>
>>>>> This patchset for Linux 4.3 updates my previous one:
>>>>
>>>> Sorry this seems too late for 4.3.  If this got reviewed and acked by
>>>> Clemens or other, I would take it.  But otherwise it's too intrusive
>>>> to take in the last day of the development cycle.
>>>>
>>>>
>>>> Takashi
>>>
>>> OK.
>>
>> Now 4.2-rc8 was released unexpectedly, so we have a chance to review
>> for one more week.  Let's see.
>
> So I started a quick review from the bottom, and as already posted,
> there are obvious errors, and I stopped reading at that point.
>
> Here are a few suggestions:
>
> - In general, the series is way too big and contains a wide variety of
>    changes.  Better to split to smaller patch series.  This makes much
>    easier to review, and more importantly to merge.  Otherwise a
>    failure in one patch would block the whole series.

I agree with it, of course. If possible, I'd like to post small changes 
because a large patchset really exhausts me.

But this patchset is for new device drivers, sigh. The changes are just 
for devices supported by this patchset, and have no advantages to the 
other devices already supported by the other drivers. What is even 
worse, it can bring disadvantages or overhead to current stack. 
Therefore, it's meaning less to apply a part of the patchset.

> - __u32 or such is basically for API exposed to user space.  In
>    kernel, better to use u32 instead.
>
> - When you write a new code, consider using EXPORT_SYMBOL_GPL()
>    instead of EXPORT_SYMBOL().
>
> - Re-read each patch once before submission as if you were a reviewer;
>    this often helps to catch the typos or simple mistakes.

I always have several nights for self-reviewing, nevertheless patchset 
includes such a trivial mistakes... (This is one of reasons that I don't 
like to post such a large patchset.)

For all that, the last part of this patchset is a bot worse. I concide 
it, sorry. MIDI functionality of TASCAM FireWire series is enough 
complicated to me and I always have a headache at considering about is 
(then make some easy mistakes).

> Also, I see quite a few code duplications in the series.  For example,
> PCM read/write/silence loop is almost identical except for a few lines
> of differences inside the loop.  Ditto for MIDI accessors.  Can they
> be shared somehow better?

I think you mention about the codes in data block processing, such as 
read_pcm_s32() in sound/firewire/amdtp-am824.c (originally in amdtp.c). 
These functions are called as frequently as 8,000 times per second, thus 
it's preferrable to keep the size as small as possible for CPU usage.

While, each data block processing includes quite similar codes. In this 
meaning, your idea is valid, indeed. But currently, I adhere to the way 
to implement different data block processing as what the shape is. 
There's no public specification about it and I prefer to keep the codes 
as easy to read as possible.


Thanks

Takashi Sakamoto
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

  reply	other threads:[~2015-08-25 11:47 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-22  9:19 [PATCH 00/25 v2] ALSA: support AMDTP variants Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 01/25] ALSA: firewire-lib: rename 'amdtp' to 'amdtp-stream' for functional separation Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 02/25] ALSA: firewire-lib: functional separation for packet transmission layer and data processing layer Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 03/25] ALSA: firewire-lib: add helper functions for asynchronous MIDI port Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 04/25] ALSA: firewire-lib: add a restriction for a transaction at once Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 05/25] ALSA: firewire-lib: schedule tasklet again when MIDI substream has rest of MIDI messages Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 06/25] ALSA: firewire-lib: add throttle for MIDI data rate Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 07/25] ALSA: firewire-lib: avoid endless loop to transfer MIDI messages at fatal error Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 08/25] ALSA: firewire-digi00x: add skeleton for Digi 002/003 family Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 09/25] ALSA: firewire-digi00x: add data processing layer Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 10/25] ALSA: firewire-digi00x: add stream functionality Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 11/25] ALSA: firewire-digi00x: add proc node to show clock status Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 12/25] ALSA: firewire-digi00x: add PCM functionality Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 13/25] ALSA: firewire-digi00x: add MIDI functionality Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 14/25] ALSA: firewire-digi00x: add hwdep interface Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 15/25] ALSA: firewire-digi00x: add support for asynchronous messaging Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 16/25] ALSA: firewire-digi00x: add support for MIDI ports for machine control Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 17/25] ALSA: firewire-tascam: add skeleton for TASCAM FireWire series Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 18/25] ALSA: firewire-tascam: add a structure for model-dependent parameters Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 19/25] ALSA: firewire-tascam: add proc node to show firmware information Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 20/25] ALSA: firewire-tascam: add data processing layer Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 21/25] ALSA: firewire-tascam: add streaming functionality Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 22/25] ALSA: firewire-tascam: add PCM functionality Takashi Sakamoto
2015-08-24 21:12   ` Takashi Iwai
2015-08-25 11:56     ` Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 23/25] ALSA: firewire-tascam: add transaction functionality Takashi Sakamoto
2015-08-22  9:19 ` [PATCH 24/25] ALSA: firewire-tascam: add MIDI functionality Takashi Sakamoto
2015-08-24 20:59   ` Takashi Iwai
2015-08-22  9:19 ` [PATCH 25/25] ALSA: firewire-tascam: add hwdep interface Takashi Sakamoto
2015-08-23  8:04 ` [PATCH 00/25 v2] ALSA: support AMDTP variants Takashi Iwai
2015-08-23 14:58   ` Takashi Sakamoto
2015-08-24  6:26     ` Takashi Iwai
2015-08-25  5:24       ` Takashi Iwai
2015-08-25 11:47         ` Takashi Sakamoto [this message]
2015-08-25 12:03           ` Takashi Iwai
2015-08-29  6:00             ` 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=55DC55CB.1020207@sakamocchi.jp \
    --to=o-takashi@sakamocchi.jp \
    --cc=alsa-devel@alsa-project.org \
    --cc=clemens@ladisch.de \
    --cc=ffado-devel@lists.sf.net \
    --cc=tiwai@suse.de \
    /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.