ALSA: bebob: delete workaround for protocol version 3
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Fri, 11 Jun 2021 03:50:02 +0000 (12:50 +0900)
committerTakashi Iwai <tiwai@suse.de>
Fri, 11 Jun 2021 08:30:04 +0000 (10:30 +0200)
In a commit c4d860a0d256 ("ALSA: bebob: loosen up severity of checking
continuity for BeBoB v3 quirk"), a workaround was added for the quirk in
BeBoB protocol version 3 against the discontinuity of data block counter.
As long as seeing with sequence replay for media clock recovery, such
quirk disappears.

This commit deletes the workaround.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Link: https://lore.kernel.org/r/20210611035003.26852-3-o-takashi@sakamocchi.jp
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/firewire/bebob/bebob.c
sound/firewire/bebob/bebob.h
sound/firewire/bebob/bebob_stream.c

index e7dd112..25222cc 100644 (file)
@@ -75,7 +75,6 @@ name_device(struct snd_bebob *bebob)
        u32 hw_id;
        u32 data[2] = {0};
        u32 revision;
-       u32 version;
        int err;
 
        /* get vendor name from root directory */
@@ -108,12 +107,6 @@ name_device(struct snd_bebob *bebob)
        if (err < 0)
                goto end;
 
-       err = snd_bebob_read_quad(bebob->unit, INFO_OFFSET_BEBOB_VERSION,
-                                 &version);
-       if (err < 0)
-               goto end;
-       bebob->version = version;
-
        strcpy(bebob->card->driver, "BeBoB");
        strcpy(bebob->card->shortname, model);
        strcpy(bebob->card->mixername, model);
index edd9369..fc2b9b3 100644 (file)
@@ -109,8 +109,6 @@ struct snd_bebob {
        /* for M-Audio special devices */
        void *maudio_special_quirk;
 
-       /* For BeBoB version quirk. */
-       unsigned int version;
        bool discontinuity_quirk;
 
        struct amdtp_domain domain;
index 6d47c25..02972b3 100644 (file)
@@ -456,14 +456,6 @@ static int init_stream(struct snd_bebob *bebob, struct amdtp_stream *stream)
        }
 
        if (stream == &bebob->tx_stream) {
-               // BeBoB v3 transfers packets with these qurks:
-               //  - In the beginning of streaming, the value of dbc is
-               //    incremented even if no data blocks are transferred.
-               //  - The value of dbc is reset suddenly.
-               if (bebob->version > 2)
-                       bebob->tx_stream.flags |= CIP_EMPTY_HAS_WRONG_DBC |
-                                                 CIP_SKIP_DBC_ZERO_CHECK;
-
                // At high sampling rate, M-Audio special firmware transmits
                // empty packet with the value of dbc incremented by 8 but the
                // others are valid to IEC 61883-1.