lkml.org 
[lkml]   [2024]   [Feb]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v15 25/50] ALSA: usb-audio: Save UAC sample size information
    Date
    Within the UAC descriptor, there is information describing the size of a
    sample (bSubframeSize/bSubslotSize) and the number of relevant bits
    (bBitResolution). Currently, fmt_bits carries only the bit resolution,
    however, some offloading entities may also require the overall size of the
    sample. Save this information in a separate parameter, as depending on the
    UAC format type, the sample size can not easily be decoded from other
    exisiting parameters.

    Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com>
    ---
    sound/usb/card.h | 1 +
    sound/usb/format.c | 1 +
    2 files changed, 2 insertions(+)

    diff --git a/sound/usb/card.h b/sound/usb/card.h
    index 2884912adc96..02e4ea898db5 100644
    --- a/sound/usb/card.h
    +++ b/sound/usb/card.h
    @@ -15,6 +15,7 @@ struct audioformat {
    unsigned int channels; /* # channels */
    unsigned int fmt_type; /* USB audio format type (1-3) */
    unsigned int fmt_bits; /* number of significant bits */
    + unsigned int fmt_sz; /* overall audio sub frame/slot size */
    unsigned int frame_size; /* samples per frame for non-audio */
    unsigned char iface; /* interface number */
    unsigned char altsetting; /* corresponding alternate setting */
    diff --git a/sound/usb/format.c b/sound/usb/format.c
    index ab5fed9f55b6..1721e4f360fb 100644
    --- a/sound/usb/format.c
    +++ b/sound/usb/format.c
    @@ -80,6 +80,7 @@ static u64 parse_audio_format_i_type(struct snd_usb_audio *chip,
    }

    fp->fmt_bits = sample_width;
    + fp->fmt_sz = sample_bytes;

    if ((pcm_formats == 0) &&
    (format == 0 || format == (1 << UAC_FORMAT_TYPE_I_UNDEFINED))) {
    \
     
     \ /
      Last update: 2024-05-27 15:00    [W:4.146 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site