lkml.org 
[lkml]   [2018]   [Sep]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 4.18 118/131] ALSA: asihpi: Fix PCM format notations
    Date
    From: Takashi Iwai <tiwai@suse.de>

    [ Upstream commit a91a0e774984aa57090c39dc3269a812417737ed ]

    asihpi driver treats -1 as an own invalid PCM format, but this needs
    a proper cast with __force prefix since PCM format type is __bitwise.
    Define a constant with the proper type and use it allover.

    This fixes sparse warnings like:
    sound/pci/asihpi/asihpi.c:315:9: warning: incorrect type in initializer (different base types)

    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
    ---
    sound/pci/asihpi/asihpi.c | 24 +++++++++++++-----------
    1 file changed, 13 insertions(+), 11 deletions(-)

    diff --git a/sound/pci/asihpi/asihpi.c b/sound/pci/asihpi/asihpi.c
    index 64e0961f93ba..a31fe1550903 100644
    --- a/sound/pci/asihpi/asihpi.c
    +++ b/sound/pci/asihpi/asihpi.c
    @@ -311,27 +311,29 @@ static void print_hwparams(struct snd_pcm_substream *substream,
    snd_pcm_format_width(params_format(p)) / 8);
    }

    +#define INVALID_FORMAT (__force snd_pcm_format_t)(-1)
    +
    static snd_pcm_format_t hpi_to_alsa_formats[] = {
    - -1, /* INVALID */
    + INVALID_FORMAT, /* INVALID */
    SNDRV_PCM_FORMAT_U8, /* HPI_FORMAT_PCM8_UNSIGNED 1 */
    SNDRV_PCM_FORMAT_S16, /* HPI_FORMAT_PCM16_SIGNED 2 */
    - -1, /* HPI_FORMAT_MPEG_L1 3 */
    + INVALID_FORMAT, /* HPI_FORMAT_MPEG_L1 3 */
    SNDRV_PCM_FORMAT_MPEG, /* HPI_FORMAT_MPEG_L2 4 */
    SNDRV_PCM_FORMAT_MPEG, /* HPI_FORMAT_MPEG_L3 5 */
    - -1, /* HPI_FORMAT_DOLBY_AC2 6 */
    - -1, /* HPI_FORMAT_DOLBY_AC3 7 */
    + INVALID_FORMAT, /* HPI_FORMAT_DOLBY_AC2 6 */
    + INVALID_FORMAT, /* HPI_FORMAT_DOLBY_AC3 7 */
    SNDRV_PCM_FORMAT_S16_BE,/* HPI_FORMAT_PCM16_BIGENDIAN 8 */
    - -1, /* HPI_FORMAT_AA_TAGIT1_HITS 9 */
    - -1, /* HPI_FORMAT_AA_TAGIT1_INSERTS 10 */
    + INVALID_FORMAT, /* HPI_FORMAT_AA_TAGIT1_HITS 9 */
    + INVALID_FORMAT, /* HPI_FORMAT_AA_TAGIT1_INSERTS 10 */
    SNDRV_PCM_FORMAT_S32, /* HPI_FORMAT_PCM32_SIGNED 11 */
    - -1, /* HPI_FORMAT_RAW_BITSTREAM 12 */
    - -1, /* HPI_FORMAT_AA_TAGIT1_HITS_EX1 13 */
    + INVALID_FORMAT, /* HPI_FORMAT_RAW_BITSTREAM 12 */
    + INVALID_FORMAT, /* HPI_FORMAT_AA_TAGIT1_HITS_EX1 13 */
    SNDRV_PCM_FORMAT_FLOAT, /* HPI_FORMAT_PCM32_FLOAT 14 */
    #if 1
    /* ALSA can't handle 3 byte sample size together with power-of-2
    * constraint on buffer_bytes, so disable this format
    */
    - -1
    + INVALID_FORMAT
    #else
    /* SNDRV_PCM_FORMAT_S24_3LE */ /* HPI_FORMAT_PCM24_SIGNED 15 */
    #endif
    @@ -1023,7 +1025,7 @@ static u64 snd_card_asihpi_playback_formats(struct snd_card_asihpi *asihpi,
    format, sample_rate, 128000, 0);
    if (!err)
    err = hpi_outstream_query_format(h_stream, &hpi_format);
    - if (!err && (hpi_to_alsa_formats[format] != -1))
    + if (!err && (hpi_to_alsa_formats[format] != INVALID_FORMAT))
    formats |= pcm_format_to_bits(hpi_to_alsa_formats[format]);
    }
    return formats;
    @@ -1205,7 +1207,7 @@ static u64 snd_card_asihpi_capture_formats(struct snd_card_asihpi *asihpi,
    format, sample_rate, 128000, 0);
    if (!err)
    err = hpi_instream_query_format(h_stream, &hpi_format);
    - if (!err && (hpi_to_alsa_formats[format] != -1))
    + if (!err && (hpi_to_alsa_formats[format] != INVALID_FORMAT))
    formats |= pcm_format_to_bits(hpi_to_alsa_formats[format]);
    }
    return formats;
    --
    2.17.1
    \
     
     \ /
      Last update: 2018-09-02 15:06    [W:4.103 / U:0.748 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site