lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAB0kiBJiK=fQ_g0bjUkVTLzisQT+A5i-X9fxvM5Lvr1efpkYCA@mail.gmail.com>
Date: Sat, 3 Aug 2024 20:23:09 -0400
From: Chris Wulff <crwulff@...il.com>
To: linux-usb@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>, Lee Jones <lee@...nel.org>, 
	Jeff Johnson <quic_jjohnson@...cinc.com>, Perr Zhang <perr@...7.net>, 
	Pavel Hofman <pavel.hofman@...tera.com>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2] usb: gadget: f_uac1: Change volume name and remove alt names

I just realized the name semantics are backwards in the original patch as well.
(c_/p_ are device centric semantics and I made them host centric)
I will update that and send out a new version.

  -- Chris Wulff

On Sat, Aug 3, 2024 at 7:27 PM <crwulff@...il.com> wrote:
>
> From: Chris Wulff <crwulff@...il.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.
>
> discussion thread for api changes for alt mode settings:
> https://lore.kernel.org/linux-usb/35be4668-58d3-894a-72cf-de1afaacae45@ivitera.com/T/
>
> Signed-off-by: Chris Wulff <crwulff@...il.com>
> ---
> v2: Moved discussion thread tidbit into commit message
> v1: https://lore.kernel.org/all/20240803155215.2746444-2-crwulff@gmail.com/
> ---
>  .../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;
> --
> 2.43.0
>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ