diff mbox series

usb: gadget: f_uac1: Change volume name and remove alt names

Message ID 20240803155215.2746444-2-crwulff@gmail.com (mailing list archive)
State Superseded
Headers show
Series usb: gadget: f_uac1: Change volume name and remove alt names | expand

Commit Message

Chris Wulff Aug. 3, 2024, 3:52 p.m. UTC
From: Chris Wulff <crwulff@gmail.com>

This changes the UAPI to align with disussion of alt settings work.

fu_name is renamed to fu_vol_name, and alt settings mode names
are removed for now in favor of future work where they will be
settable in subdirectories for each alt mode.

Signed-off-by: Chris Wulff <crwulff@gmail.com>
---
discussion thread for api changes for alt mode settings:
https://lore.kernel.org/linux-usb/35be4668-58d3-894a-72cf-de1afaacae45@ivitera.com/T/
---
 .../ABI/testing/configfs-usb-gadget-uac1      |  8 ++---
 Documentation/usb/gadget-testing.rst          |  8 ++---
 drivers/usb/gadget/function/f_uac1.c          | 36 +++++++------------
 drivers/usb/gadget/function/u_uac1.h          |  8 ++---
 4 files changed, 18 insertions(+), 42 deletions(-)

Comments

Krishna Kurapati Aug. 3, 2024, 5:23 p.m. UTC | #1
On 8/3/2024 9:22 PM, crwulff@gmail.com wrote:
> From: Chris Wulff <crwulff@gmail.com>
> 
> This changes the UAPI to align with disussion of alt settings work.
> 
> fu_name is renamed to fu_vol_name, and alt settings mode names
> are removed for now in favor of future work where they will be
> settable in subdirectories for each alt mode.
> 

Just a nit.

It would be good to keep the discussion thread link inside commit text 
rather than below the SoB. It would give more context when the patch is 
applied.

Regards,
Krishna,

> Signed-off-by: Chris Wulff <crwulff@gmail.com>
> ---
> discussion thread for api changes for alt mode settings:
> https://lore.kernel.org/linux-usb/35be4668-58d3-894a-72cf-de1afaacae45@ivitera.com/T/
> ---
>   .../ABI/testing/configfs-usb-gadget-uac1      |  8 ++---
>   Documentation/usb/gadget-testing.rst          |  8 ++---
>   drivers/usb/gadget/function/f_uac1.c          | 36 +++++++------------
>   drivers/usb/gadget/function/u_uac1.h          |  8 ++---
>   4 files changed, 18 insertions(+), 42 deletions(-)
> 
> diff --git a/Documentation/ABI/testing/configfs-usb-gadget-uac1 b/Documentation/ABI/testing/configfs-usb-gadget-uac1
> index cf93b98b274d..64188a85592b 100644
> --- a/Documentation/ABI/testing/configfs-usb-gadget-uac1
> +++ b/Documentation/ABI/testing/configfs-usb-gadget-uac1
> @@ -33,13 +33,9 @@ Description:
>   		p_it_name		playback input terminal name
>   		p_it_ch_name		playback channels name
>   		p_ot_name		playback output terminal name
> -		p_fu_name		playback functional unit name
> -		p_alt0_name		playback alt mode 0 name
> -		p_alt1_name		playback alt mode 1 name
> +		p_fu_vol_name		playback mute/volume functional unit name
>   		c_it_name		capture input terminal name
>   		c_it_ch_name		capture channels name
>   		c_ot_name		capture output terminal name
> -		c_fu_name		capture functional unit name
> -		c_alt0_name		capture alt mode 0 name
> -		c_alt1_name		capture alt mode 1 name
> +		c_fu_vol_name		capture mute/volume functional unit name
>   		=====================	=======================================
> diff --git a/Documentation/usb/gadget-testing.rst b/Documentation/usb/gadget-testing.rst
> index a89b49e639c3..7a94490fb2fd 100644
> --- a/Documentation/usb/gadget-testing.rst
> +++ b/Documentation/usb/gadget-testing.rst
> @@ -960,15 +960,11 @@ The uac1 function provides these attributes in its function directory:
>   	p_it_name        playback input terminal name
>   	p_it_ch_name     playback channels name
>   	p_ot_name        playback output terminal name
> -	p_fu_name        playback functional unit name
> -	p_alt0_name      playback alt mode 0 name
> -	p_alt1_name      playback alt mode 1 name
> +	p_fu_vol_name    playback mute/volume functional unit name
>   	c_it_name        capture input terminal name
>   	c_it_ch_name     capture channels name
>   	c_ot_name        capture output terminal name
> -	c_fu_name        capture functional unit name
> -	c_alt0_name      capture alt mode 0 name
> -	c_alt1_name      capture alt mode 1 name
> +	c_fu_vol_name    capture mute/volume functional unit name
>   	================ ====================================================
>   
>   The attributes have sane default values.
> diff --git a/drivers/usb/gadget/function/f_uac1.c b/drivers/usb/gadget/function/f_uac1.c
> index 06a220fb7a87..bb36ce2be569 100644
> --- a/drivers/usb/gadget/function/f_uac1.c
> +++ b/drivers/usb/gadget/function/f_uac1.c
> @@ -1254,16 +1254,16 @@ static int f_audio_bind(struct usb_configuration *c, struct usb_function *f)
>   	strings_uac1[STR_USB_OUT_IT].s = audio_opts->p_it_name;
>   	strings_uac1[STR_USB_OUT_IT_CH_NAMES].s = audio_opts->p_it_ch_name;
>   	strings_uac1[STR_IO_OUT_OT].s = audio_opts->p_ot_name;
> -	strings_uac1[STR_FU_OUT].s = audio_opts->p_fu_name;
> -	strings_uac1[STR_AS_OUT_IF_ALT0].s = audio_opts->p_alt0_name;
> -	strings_uac1[STR_AS_OUT_IF_ALT1].s = audio_opts->p_alt1_name;
> +	strings_uac1[STR_FU_OUT].s = audio_opts->p_fu_vol_name;
> +	strings_uac1[STR_AS_OUT_IF_ALT0].s = "Playback Inactive";
> +	strings_uac1[STR_AS_OUT_IF_ALT1].s = "Playback Active";
>   
>   	strings_uac1[STR_IO_IN_IT].s = audio_opts->c_it_name;
>   	strings_uac1[STR_IO_IN_IT_CH_NAMES].s = audio_opts->c_it_ch_name;
>   	strings_uac1[STR_USB_IN_OT].s = audio_opts->c_ot_name;
> -	strings_uac1[STR_FU_IN].s = audio_opts->c_fu_name;
> -	strings_uac1[STR_AS_IN_IF_ALT0].s = audio_opts->c_alt0_name;
> -	strings_uac1[STR_AS_IN_IF_ALT1].s = audio_opts->c_alt1_name;
> +	strings_uac1[STR_FU_IN].s = audio_opts->c_fu_vol_name;
> +	strings_uac1[STR_AS_IN_IF_ALT0].s = "Capture Inactive";
> +	strings_uac1[STR_AS_IN_IF_ALT1].s = "Capture Active";
>   
>   	us = usb_gstrings_attach(cdev, uac1_strings, ARRAY_SIZE(strings_uac1));
>   	if (IS_ERR(us))
> @@ -1687,16 +1687,12 @@ UAC1_ATTRIBUTE_STRING(function_name);
>   UAC1_ATTRIBUTE_STRING(p_it_name);
>   UAC1_ATTRIBUTE_STRING(p_it_ch_name);
>   UAC1_ATTRIBUTE_STRING(p_ot_name);
> -UAC1_ATTRIBUTE_STRING(p_fu_name);
> -UAC1_ATTRIBUTE_STRING(p_alt0_name);
> -UAC1_ATTRIBUTE_STRING(p_alt1_name);
> +UAC1_ATTRIBUTE_STRING(p_fu_vol_name);
>   
>   UAC1_ATTRIBUTE_STRING(c_it_name);
>   UAC1_ATTRIBUTE_STRING(c_it_ch_name);
>   UAC1_ATTRIBUTE_STRING(c_ot_name);
> -UAC1_ATTRIBUTE_STRING(c_fu_name);
> -UAC1_ATTRIBUTE_STRING(c_alt0_name);
> -UAC1_ATTRIBUTE_STRING(c_alt1_name);
> +UAC1_ATTRIBUTE_STRING(c_fu_vol_name);
>   
>   static struct configfs_attribute *f_uac1_attrs[] = {
>   	&f_uac1_opts_attr_c_chmask,
> @@ -1724,16 +1720,12 @@ static struct configfs_attribute *f_uac1_attrs[] = {
>   	&f_uac1_opts_attr_p_it_name,
>   	&f_uac1_opts_attr_p_it_ch_name,
>   	&f_uac1_opts_attr_p_ot_name,
> -	&f_uac1_opts_attr_p_fu_name,
> -	&f_uac1_opts_attr_p_alt0_name,
> -	&f_uac1_opts_attr_p_alt1_name,
> +	&f_uac1_opts_attr_p_fu_vol_name,
>   
>   	&f_uac1_opts_attr_c_it_name,
>   	&f_uac1_opts_attr_c_it_ch_name,
>   	&f_uac1_opts_attr_c_ot_name,
> -	&f_uac1_opts_attr_c_fu_name,
> -	&f_uac1_opts_attr_c_alt0_name,
> -	&f_uac1_opts_attr_c_alt1_name,
> +	&f_uac1_opts_attr_c_fu_vol_name,
>   
>   	NULL,
>   };
> @@ -1792,16 +1784,12 @@ static struct usb_function_instance *f_audio_alloc_inst(void)
>   	scnprintf(opts->p_it_name, sizeof(opts->p_it_name), "Playback Input terminal");
>   	scnprintf(opts->p_it_ch_name, sizeof(opts->p_it_ch_name), "Playback Channels");
>   	scnprintf(opts->p_ot_name, sizeof(opts->p_ot_name), "Playback Output terminal");
> -	scnprintf(opts->p_fu_name, sizeof(opts->p_fu_name), "Playback Volume");
> -	scnprintf(opts->p_alt0_name, sizeof(opts->p_alt0_name), "Playback Inactive");
> -	scnprintf(opts->p_alt1_name, sizeof(opts->p_alt1_name), "Playback Active");
> +	scnprintf(opts->p_fu_vol_name, sizeof(opts->p_fu_vol_name), "Playback Volume");
>   
>   	scnprintf(opts->c_it_name, sizeof(opts->c_it_name), "Capture Input terminal");
>   	scnprintf(opts->c_it_ch_name, sizeof(opts->c_it_ch_name), "Capture Channels");
>   	scnprintf(opts->c_ot_name, sizeof(opts->c_ot_name), "Capture Output terminal");
> -	scnprintf(opts->c_fu_name, sizeof(opts->c_fu_name), "Capture Volume");
> -	scnprintf(opts->c_alt0_name, sizeof(opts->c_alt0_name), "Capture Inactive");
> -	scnprintf(opts->c_alt1_name, sizeof(opts->c_alt1_name), "Capture Active");
> +	scnprintf(opts->c_fu_vol_name, sizeof(opts->c_fu_vol_name), "Capture Volume");
>   
>   	return &opts->func_inst;
>   }
> diff --git a/drivers/usb/gadget/function/u_uac1.h b/drivers/usb/gadget/function/u_uac1.h
> index 67784de9782b..feb6eb76462f 100644
> --- a/drivers/usb/gadget/function/u_uac1.h
> +++ b/drivers/usb/gadget/function/u_uac1.h
> @@ -57,16 +57,12 @@ struct f_uac1_opts {
>   	char			p_it_name[USB_MAX_STRING_LEN];
>   	char			p_it_ch_name[USB_MAX_STRING_LEN];
>   	char			p_ot_name[USB_MAX_STRING_LEN];
> -	char			p_fu_name[USB_MAX_STRING_LEN];
> -	char			p_alt0_name[USB_MAX_STRING_LEN];
> -	char			p_alt1_name[USB_MAX_STRING_LEN];
> +	char			p_fu_vol_name[USB_MAX_STRING_LEN];
>   
>   	char			c_it_name[USB_MAX_STRING_LEN];
>   	char			c_it_ch_name[USB_MAX_STRING_LEN];
>   	char			c_ot_name[USB_MAX_STRING_LEN];
> -	char			c_fu_name[USB_MAX_STRING_LEN];
> -	char			c_alt0_name[USB_MAX_STRING_LEN];
> -	char			c_alt1_name[USB_MAX_STRING_LEN];
> +	char			c_fu_vol_name[USB_MAX_STRING_LEN];
>   
>   	struct mutex			lock;
>   	int				refcnt;
Chris Wulff Aug. 3, 2024, 11:24 p.m. UTC | #2
On Sat, Aug 3, 2024 at 1:23 PM Krishna Kurapati PSSNV
<quic_kriskura@quicinc.com> wrote:
>
>
>
> On 8/3/2024 9:22 PM, crwulff@gmail.com wrote:
> > From: Chris Wulff <crwulff@gmail.com>
> >
> > This changes the UAPI to align with disussion of alt settings work.
> >
> > fu_name is renamed to fu_vol_name, and alt settings mode names
> > are removed for now in favor of future work where they will be
> > settable in subdirectories for each alt mode.
> >
>
> Just a nit.
>
> It would be good to keep the discussion thread link inside commit text
> rather than below the SoB. It would give more context when the patch is
> applied.

Ok, I can move it. I wasn't sure if it was appropriate to include in the commit
message or not.

  -- Chris

>
> Regards,
> Krishna,
>
> > Signed-off-by: Chris Wulff <crwulff@gmail.com>
> > ---
> > discussion thread for api changes for alt mode settings:
> > https://lore.kernel.org/linux-usb/35be4668-58d3-894a-72cf-de1afaacae45@ivitera.com/T/
> > ---
> >   .../ABI/testing/configfs-usb-gadget-uac1      |  8 ++---
> >   Documentation/usb/gadget-testing.rst          |  8 ++---
> >   drivers/usb/gadget/function/f_uac1.c          | 36 +++++++------------
> >   drivers/usb/gadget/function/u_uac1.h          |  8 ++---
> >   4 files changed, 18 insertions(+), 42 deletions(-)
> >
> > diff --git a/Documentation/ABI/testing/configfs-usb-gadget-uac1 b/Documentation/ABI/testing/configfs-usb-gadget-uac1
> > index cf93b98b274d..64188a85592b 100644
> > --- a/Documentation/ABI/testing/configfs-usb-gadget-uac1
> > +++ b/Documentation/ABI/testing/configfs-usb-gadget-uac1
> > @@ -33,13 +33,9 @@ Description:
> >               p_it_name               playback input terminal name
> >               p_it_ch_name            playback channels name
> >               p_ot_name               playback output terminal name
> > -             p_fu_name               playback functional unit name
> > -             p_alt0_name             playback alt mode 0 name
> > -             p_alt1_name             playback alt mode 1 name
> > +             p_fu_vol_name           playback mute/volume functional unit name
> >               c_it_name               capture input terminal name
> >               c_it_ch_name            capture channels name
> >               c_ot_name               capture output terminal name
> > -             c_fu_name               capture functional unit name
> > -             c_alt0_name             capture alt mode 0 name
> > -             c_alt1_name             capture alt mode 1 name
> > +             c_fu_vol_name           capture mute/volume functional unit name
> >               =====================   =======================================
> > diff --git a/Documentation/usb/gadget-testing.rst b/Documentation/usb/gadget-testing.rst
> > index a89b49e639c3..7a94490fb2fd 100644
> > --- a/Documentation/usb/gadget-testing.rst
> > +++ b/Documentation/usb/gadget-testing.rst
> > @@ -960,15 +960,11 @@ The uac1 function provides these attributes in its function directory:
> >       p_it_name        playback input terminal name
> >       p_it_ch_name     playback channels name
> >       p_ot_name        playback output terminal name
> > -     p_fu_name        playback functional unit name
> > -     p_alt0_name      playback alt mode 0 name
> > -     p_alt1_name      playback alt mode 1 name
> > +     p_fu_vol_name    playback mute/volume functional unit name
> >       c_it_name        capture input terminal name
> >       c_it_ch_name     capture channels name
> >       c_ot_name        capture output terminal name
> > -     c_fu_name        capture functional unit name
> > -     c_alt0_name      capture alt mode 0 name
> > -     c_alt1_name      capture alt mode 1 name
> > +     c_fu_vol_name    capture mute/volume functional unit name
> >       ================ ====================================================
> >
> >   The attributes have sane default values.
> > diff --git a/drivers/usb/gadget/function/f_uac1.c b/drivers/usb/gadget/function/f_uac1.c
> > index 06a220fb7a87..bb36ce2be569 100644
> > --- a/drivers/usb/gadget/function/f_uac1.c
> > +++ b/drivers/usb/gadget/function/f_uac1.c
> > @@ -1254,16 +1254,16 @@ static int f_audio_bind(struct usb_configuration *c, struct usb_function *f)
> >       strings_uac1[STR_USB_OUT_IT].s = audio_opts->p_it_name;
> >       strings_uac1[STR_USB_OUT_IT_CH_NAMES].s = audio_opts->p_it_ch_name;
> >       strings_uac1[STR_IO_OUT_OT].s = audio_opts->p_ot_name;
> > -     strings_uac1[STR_FU_OUT].s = audio_opts->p_fu_name;
> > -     strings_uac1[STR_AS_OUT_IF_ALT0].s = audio_opts->p_alt0_name;
> > -     strings_uac1[STR_AS_OUT_IF_ALT1].s = audio_opts->p_alt1_name;
> > +     strings_uac1[STR_FU_OUT].s = audio_opts->p_fu_vol_name;
> > +     strings_uac1[STR_AS_OUT_IF_ALT0].s = "Playback Inactive";
> > +     strings_uac1[STR_AS_OUT_IF_ALT1].s = "Playback Active";
> >
> >       strings_uac1[STR_IO_IN_IT].s = audio_opts->c_it_name;
> >       strings_uac1[STR_IO_IN_IT_CH_NAMES].s = audio_opts->c_it_ch_name;
> >       strings_uac1[STR_USB_IN_OT].s = audio_opts->c_ot_name;
> > -     strings_uac1[STR_FU_IN].s = audio_opts->c_fu_name;
> > -     strings_uac1[STR_AS_IN_IF_ALT0].s = audio_opts->c_alt0_name;
> > -     strings_uac1[STR_AS_IN_IF_ALT1].s = audio_opts->c_alt1_name;
> > +     strings_uac1[STR_FU_IN].s = audio_opts->c_fu_vol_name;
> > +     strings_uac1[STR_AS_IN_IF_ALT0].s = "Capture Inactive";
> > +     strings_uac1[STR_AS_IN_IF_ALT1].s = "Capture Active";
> >
> >       us = usb_gstrings_attach(cdev, uac1_strings, ARRAY_SIZE(strings_uac1));
> >       if (IS_ERR(us))
> > @@ -1687,16 +1687,12 @@ UAC1_ATTRIBUTE_STRING(function_name);
> >   UAC1_ATTRIBUTE_STRING(p_it_name);
> >   UAC1_ATTRIBUTE_STRING(p_it_ch_name);
> >   UAC1_ATTRIBUTE_STRING(p_ot_name);
> > -UAC1_ATTRIBUTE_STRING(p_fu_name);
> > -UAC1_ATTRIBUTE_STRING(p_alt0_name);
> > -UAC1_ATTRIBUTE_STRING(p_alt1_name);
> > +UAC1_ATTRIBUTE_STRING(p_fu_vol_name);
> >
> >   UAC1_ATTRIBUTE_STRING(c_it_name);
> >   UAC1_ATTRIBUTE_STRING(c_it_ch_name);
> >   UAC1_ATTRIBUTE_STRING(c_ot_name);
> > -UAC1_ATTRIBUTE_STRING(c_fu_name);
> > -UAC1_ATTRIBUTE_STRING(c_alt0_name);
> > -UAC1_ATTRIBUTE_STRING(c_alt1_name);
> > +UAC1_ATTRIBUTE_STRING(c_fu_vol_name);
> >
> >   static struct configfs_attribute *f_uac1_attrs[] = {
> >       &f_uac1_opts_attr_c_chmask,
> > @@ -1724,16 +1720,12 @@ static struct configfs_attribute *f_uac1_attrs[] = {
> >       &f_uac1_opts_attr_p_it_name,
> >       &f_uac1_opts_attr_p_it_ch_name,
> >       &f_uac1_opts_attr_p_ot_name,
> > -     &f_uac1_opts_attr_p_fu_name,
> > -     &f_uac1_opts_attr_p_alt0_name,
> > -     &f_uac1_opts_attr_p_alt1_name,
> > +     &f_uac1_opts_attr_p_fu_vol_name,
> >
> >       &f_uac1_opts_attr_c_it_name,
> >       &f_uac1_opts_attr_c_it_ch_name,
> >       &f_uac1_opts_attr_c_ot_name,
> > -     &f_uac1_opts_attr_c_fu_name,
> > -     &f_uac1_opts_attr_c_alt0_name,
> > -     &f_uac1_opts_attr_c_alt1_name,
> > +     &f_uac1_opts_attr_c_fu_vol_name,
> >
> >       NULL,
> >   };
> > @@ -1792,16 +1784,12 @@ static struct usb_function_instance *f_audio_alloc_inst(void)
> >       scnprintf(opts->p_it_name, sizeof(opts->p_it_name), "Playback Input terminal");
> >       scnprintf(opts->p_it_ch_name, sizeof(opts->p_it_ch_name), "Playback Channels");
> >       scnprintf(opts->p_ot_name, sizeof(opts->p_ot_name), "Playback Output terminal");
> > -     scnprintf(opts->p_fu_name, sizeof(opts->p_fu_name), "Playback Volume");
> > -     scnprintf(opts->p_alt0_name, sizeof(opts->p_alt0_name), "Playback Inactive");
> > -     scnprintf(opts->p_alt1_name, sizeof(opts->p_alt1_name), "Playback Active");
> > +     scnprintf(opts->p_fu_vol_name, sizeof(opts->p_fu_vol_name), "Playback Volume");
> >
> >       scnprintf(opts->c_it_name, sizeof(opts->c_it_name), "Capture Input terminal");
> >       scnprintf(opts->c_it_ch_name, sizeof(opts->c_it_ch_name), "Capture Channels");
> >       scnprintf(opts->c_ot_name, sizeof(opts->c_ot_name), "Capture Output terminal");
> > -     scnprintf(opts->c_fu_name, sizeof(opts->c_fu_name), "Capture Volume");
> > -     scnprintf(opts->c_alt0_name, sizeof(opts->c_alt0_name), "Capture Inactive");
> > -     scnprintf(opts->c_alt1_name, sizeof(opts->c_alt1_name), "Capture Active");
> > +     scnprintf(opts->c_fu_vol_name, sizeof(opts->c_fu_vol_name), "Capture Volume");
> >
> >       return &opts->func_inst;
> >   }
> > diff --git a/drivers/usb/gadget/function/u_uac1.h b/drivers/usb/gadget/function/u_uac1.h
> > index 67784de9782b..feb6eb76462f 100644
> > --- a/drivers/usb/gadget/function/u_uac1.h
> > +++ b/drivers/usb/gadget/function/u_uac1.h
> > @@ -57,16 +57,12 @@ struct f_uac1_opts {
> >       char                    p_it_name[USB_MAX_STRING_LEN];
> >       char                    p_it_ch_name[USB_MAX_STRING_LEN];
> >       char                    p_ot_name[USB_MAX_STRING_LEN];
> > -     char                    p_fu_name[USB_MAX_STRING_LEN];
> > -     char                    p_alt0_name[USB_MAX_STRING_LEN];
> > -     char                    p_alt1_name[USB_MAX_STRING_LEN];
> > +     char                    p_fu_vol_name[USB_MAX_STRING_LEN];
> >
> >       char                    c_it_name[USB_MAX_STRING_LEN];
> >       char                    c_it_ch_name[USB_MAX_STRING_LEN];
> >       char                    c_ot_name[USB_MAX_STRING_LEN];
> > -     char                    c_fu_name[USB_MAX_STRING_LEN];
> > -     char                    c_alt0_name[USB_MAX_STRING_LEN];
> > -     char                    c_alt1_name[USB_MAX_STRING_LEN];
> > +     char                    c_fu_vol_name[USB_MAX_STRING_LEN];
> >
> >       struct mutex                    lock;
> >       int                             refcnt;
diff mbox series

Patch

diff --git a/Documentation/ABI/testing/configfs-usb-gadget-uac1 b/Documentation/ABI/testing/configfs-usb-gadget-uac1
index cf93b98b274d..64188a85592b 100644
--- a/Documentation/ABI/testing/configfs-usb-gadget-uac1
+++ b/Documentation/ABI/testing/configfs-usb-gadget-uac1
@@ -33,13 +33,9 @@  Description:
 		p_it_name		playback input terminal name
 		p_it_ch_name		playback channels name
 		p_ot_name		playback output terminal name
-		p_fu_name		playback functional unit name
-		p_alt0_name		playback alt mode 0 name
-		p_alt1_name		playback alt mode 1 name
+		p_fu_vol_name		playback mute/volume functional unit name
 		c_it_name		capture input terminal name
 		c_it_ch_name		capture channels name
 		c_ot_name		capture output terminal name
-		c_fu_name		capture functional unit name
-		c_alt0_name		capture alt mode 0 name
-		c_alt1_name		capture alt mode 1 name
+		c_fu_vol_name		capture mute/volume functional unit name
 		=====================	=======================================
diff --git a/Documentation/usb/gadget-testing.rst b/Documentation/usb/gadget-testing.rst
index a89b49e639c3..7a94490fb2fd 100644
--- a/Documentation/usb/gadget-testing.rst
+++ b/Documentation/usb/gadget-testing.rst
@@ -960,15 +960,11 @@  The uac1 function provides these attributes in its function directory:
 	p_it_name        playback input terminal name
 	p_it_ch_name     playback channels name
 	p_ot_name        playback output terminal name
-	p_fu_name        playback functional unit name
-	p_alt0_name      playback alt mode 0 name
-	p_alt1_name      playback alt mode 1 name
+	p_fu_vol_name    playback mute/volume functional unit name
 	c_it_name        capture input terminal name
 	c_it_ch_name     capture channels name
 	c_ot_name        capture output terminal name
-	c_fu_name        capture functional unit name
-	c_alt0_name      capture alt mode 0 name
-	c_alt1_name      capture alt mode 1 name
+	c_fu_vol_name    capture mute/volume functional unit name
 	================ ====================================================
 
 The attributes have sane default values.
diff --git a/drivers/usb/gadget/function/f_uac1.c b/drivers/usb/gadget/function/f_uac1.c
index 06a220fb7a87..bb36ce2be569 100644
--- a/drivers/usb/gadget/function/f_uac1.c
+++ b/drivers/usb/gadget/function/f_uac1.c
@@ -1254,16 +1254,16 @@  static int f_audio_bind(struct usb_configuration *c, struct usb_function *f)
 	strings_uac1[STR_USB_OUT_IT].s = audio_opts->p_it_name;
 	strings_uac1[STR_USB_OUT_IT_CH_NAMES].s = audio_opts->p_it_ch_name;
 	strings_uac1[STR_IO_OUT_OT].s = audio_opts->p_ot_name;
-	strings_uac1[STR_FU_OUT].s = audio_opts->p_fu_name;
-	strings_uac1[STR_AS_OUT_IF_ALT0].s = audio_opts->p_alt0_name;
-	strings_uac1[STR_AS_OUT_IF_ALT1].s = audio_opts->p_alt1_name;
+	strings_uac1[STR_FU_OUT].s = audio_opts->p_fu_vol_name;
+	strings_uac1[STR_AS_OUT_IF_ALT0].s = "Playback Inactive";
+	strings_uac1[STR_AS_OUT_IF_ALT1].s = "Playback Active";
 
 	strings_uac1[STR_IO_IN_IT].s = audio_opts->c_it_name;
 	strings_uac1[STR_IO_IN_IT_CH_NAMES].s = audio_opts->c_it_ch_name;
 	strings_uac1[STR_USB_IN_OT].s = audio_opts->c_ot_name;
-	strings_uac1[STR_FU_IN].s = audio_opts->c_fu_name;
-	strings_uac1[STR_AS_IN_IF_ALT0].s = audio_opts->c_alt0_name;
-	strings_uac1[STR_AS_IN_IF_ALT1].s = audio_opts->c_alt1_name;
+	strings_uac1[STR_FU_IN].s = audio_opts->c_fu_vol_name;
+	strings_uac1[STR_AS_IN_IF_ALT0].s = "Capture Inactive";
+	strings_uac1[STR_AS_IN_IF_ALT1].s = "Capture Active";
 
 	us = usb_gstrings_attach(cdev, uac1_strings, ARRAY_SIZE(strings_uac1));
 	if (IS_ERR(us))
@@ -1687,16 +1687,12 @@  UAC1_ATTRIBUTE_STRING(function_name);
 UAC1_ATTRIBUTE_STRING(p_it_name);
 UAC1_ATTRIBUTE_STRING(p_it_ch_name);
 UAC1_ATTRIBUTE_STRING(p_ot_name);
-UAC1_ATTRIBUTE_STRING(p_fu_name);
-UAC1_ATTRIBUTE_STRING(p_alt0_name);
-UAC1_ATTRIBUTE_STRING(p_alt1_name);
+UAC1_ATTRIBUTE_STRING(p_fu_vol_name);
 
 UAC1_ATTRIBUTE_STRING(c_it_name);
 UAC1_ATTRIBUTE_STRING(c_it_ch_name);
 UAC1_ATTRIBUTE_STRING(c_ot_name);
-UAC1_ATTRIBUTE_STRING(c_fu_name);
-UAC1_ATTRIBUTE_STRING(c_alt0_name);
-UAC1_ATTRIBUTE_STRING(c_alt1_name);
+UAC1_ATTRIBUTE_STRING(c_fu_vol_name);
 
 static struct configfs_attribute *f_uac1_attrs[] = {
 	&f_uac1_opts_attr_c_chmask,
@@ -1724,16 +1720,12 @@  static struct configfs_attribute *f_uac1_attrs[] = {
 	&f_uac1_opts_attr_p_it_name,
 	&f_uac1_opts_attr_p_it_ch_name,
 	&f_uac1_opts_attr_p_ot_name,
-	&f_uac1_opts_attr_p_fu_name,
-	&f_uac1_opts_attr_p_alt0_name,
-	&f_uac1_opts_attr_p_alt1_name,
+	&f_uac1_opts_attr_p_fu_vol_name,
 
 	&f_uac1_opts_attr_c_it_name,
 	&f_uac1_opts_attr_c_it_ch_name,
 	&f_uac1_opts_attr_c_ot_name,
-	&f_uac1_opts_attr_c_fu_name,
-	&f_uac1_opts_attr_c_alt0_name,
-	&f_uac1_opts_attr_c_alt1_name,
+	&f_uac1_opts_attr_c_fu_vol_name,
 
 	NULL,
 };
@@ -1792,16 +1784,12 @@  static struct usb_function_instance *f_audio_alloc_inst(void)
 	scnprintf(opts->p_it_name, sizeof(opts->p_it_name), "Playback Input terminal");
 	scnprintf(opts->p_it_ch_name, sizeof(opts->p_it_ch_name), "Playback Channels");
 	scnprintf(opts->p_ot_name, sizeof(opts->p_ot_name), "Playback Output terminal");
-	scnprintf(opts->p_fu_name, sizeof(opts->p_fu_name), "Playback Volume");
-	scnprintf(opts->p_alt0_name, sizeof(opts->p_alt0_name), "Playback Inactive");
-	scnprintf(opts->p_alt1_name, sizeof(opts->p_alt1_name), "Playback Active");
+	scnprintf(opts->p_fu_vol_name, sizeof(opts->p_fu_vol_name), "Playback Volume");
 
 	scnprintf(opts->c_it_name, sizeof(opts->c_it_name), "Capture Input terminal");
 	scnprintf(opts->c_it_ch_name, sizeof(opts->c_it_ch_name), "Capture Channels");
 	scnprintf(opts->c_ot_name, sizeof(opts->c_ot_name), "Capture Output terminal");
-	scnprintf(opts->c_fu_name, sizeof(opts->c_fu_name), "Capture Volume");
-	scnprintf(opts->c_alt0_name, sizeof(opts->c_alt0_name), "Capture Inactive");
-	scnprintf(opts->c_alt1_name, sizeof(opts->c_alt1_name), "Capture Active");
+	scnprintf(opts->c_fu_vol_name, sizeof(opts->c_fu_vol_name), "Capture Volume");
 
 	return &opts->func_inst;
 }
diff --git a/drivers/usb/gadget/function/u_uac1.h b/drivers/usb/gadget/function/u_uac1.h
index 67784de9782b..feb6eb76462f 100644
--- a/drivers/usb/gadget/function/u_uac1.h
+++ b/drivers/usb/gadget/function/u_uac1.h
@@ -57,16 +57,12 @@  struct f_uac1_opts {
 	char			p_it_name[USB_MAX_STRING_LEN];
 	char			p_it_ch_name[USB_MAX_STRING_LEN];
 	char			p_ot_name[USB_MAX_STRING_LEN];
-	char			p_fu_name[USB_MAX_STRING_LEN];
-	char			p_alt0_name[USB_MAX_STRING_LEN];
-	char			p_alt1_name[USB_MAX_STRING_LEN];
+	char			p_fu_vol_name[USB_MAX_STRING_LEN];
 
 	char			c_it_name[USB_MAX_STRING_LEN];
 	char			c_it_ch_name[USB_MAX_STRING_LEN];
 	char			c_ot_name[USB_MAX_STRING_LEN];
-	char			c_fu_name[USB_MAX_STRING_LEN];
-	char			c_alt0_name[USB_MAX_STRING_LEN];
-	char			c_alt1_name[USB_MAX_STRING_LEN];
+	char			c_fu_vol_name[USB_MAX_STRING_LEN];
 
 	struct mutex			lock;
 	int				refcnt;