Message ID | 20240308165232.53906-2-silviu.barbulescu@nxp.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Broadcast source reconfiguration support | expand |
Context | Check | Description |
---|---|---|
tedd_an/pre-ci_am | success | Success |
tedd_an/CheckPatch | success | CheckPatch PASS |
tedd_an/GitLint | success | Gitlint PASS |
tedd_an/BuildEll | success | Build ELL PASS |
tedd_an/BluezMake | success | Bluez Make PASS |
tedd_an/MakeCheck | success | Bluez Make Check PASS |
tedd_an/MakeDistcheck | success | Make Distcheck PASS |
tedd_an/CheckValgrind | success | Check Valgrind PASS |
tedd_an/CheckSmatch | success | CheckSparse PASS |
tedd_an/bluezmakeextell | success | Make External ELL PASS |
tedd_an/IncrementalBuild | success | Incremental Build PASS |
tedd_an/ScanBuild | success | Scan Build PASS |
Hi Silviu, On Fri, Mar 8, 2024 at 11:52 AM Silviu Florian Barbulescu <silviu.barbulescu@nxp.com> wrote: > > endpoint.config /org/bluez/hci0/pac_bcast0 /local/endpoint/ep0 48_4_1 > [/local/endpoint/ep0] This is a BIS Reconfiguration? (yes/no): y > The BIS index is assigned in the order of the configuration > starting with 1 > [/local/endpoint/ep0] BIS Index (value): 1 > [/local/endpoint/ep0] BIG (auto/value): 0 > [/local/endpoint/ep0] Enter channel location (value/no): 2 > [/local/endpoint/ep0] Enter Metadata (value/no): n > > --- > client/player.c | 46 ++++++++++++++++++++++++++++++++++++++++++++-- > 1 file changed, 44 insertions(+), 2 deletions(-) > > diff --git a/client/player.c b/client/player.c > index a40bf66e3..35143115a 100644 > --- a/client/player.c > +++ b/client/player.c > @@ -3809,6 +3809,48 @@ static void config_endpoint_iso_group(const char *input, void *user_data) > } > } > > +static void endpoint_set_reconfigure_cfg(const char *input, void *user_data) > +{ > + char *endptr = NULL; > + int value; > + struct endpoint_config *cfg = user_data; > + > + value = strtol(input, &endptr, 0); > + > + if (!endptr || *endptr != '\0' || value > UINT8_MAX) { > + bt_shell_printf("Invalid argument: %s\n", input); > + return bt_shell_noninteractive_quit(EXIT_FAILURE); > + } > + > + cfg->ep->iso_stream = value; > + > + bt_shell_prompt_input(cfg->ep->path, > + "BIG (auto/value):", > + config_endpoint_iso_group, cfg); > +} > + > +static void endpoint_is_reconfigure_cfg(const char *input, void *user_data) > +{ > + struct endpoint_config *cfg = user_data; > + > + if (!strcasecmp(input, "n") || !strcasecmp(input, "no")) { > + cfg->ep->iso_stream = BT_ISO_QOS_STREAM_UNSET; > + goto done; > + } else { > + bt_shell_printf("The BIS index is assigned in the order of " > + "the configuration starting with 1\n"); > + bt_shell_prompt_input(cfg->ep->path, > + "BIS Index (value):", > + endpoint_set_reconfigure_cfg, cfg); > + return; > + } > + > +done: > + bt_shell_prompt_input(cfg->ep->path, > + "BIG (auto/value):", > + config_endpoint_iso_group, cfg); > +} > + > static void endpoint_set_config_bcast(struct endpoint_config *cfg) > { > cfg->ep->bcode = g_new0(struct iovec, 1); > @@ -3835,8 +3877,8 @@ static void endpoint_set_config_bcast(struct endpoint_config *cfg) > } > > bt_shell_prompt_input(cfg->ep->path, > - "BIG (auto/value):", > - config_endpoint_iso_group, cfg); > + "This is a BIS reconfiguration? (yes/no):", > + endpoint_is_reconfigure_cfg, cfg); > } > > static void cmd_config_endpoint(int argc, char *argv[]) > -- > 2.39.2 Instead of having a 2 step process we could ask the BIS index right away and if the user answers no/0 it means it doesn't want to reconfigure an existing index.
This is automated email and please do not reply to this email! Dear submitter, Thank you for submitting the patches to the linux bluetooth mailing list. This is a CI test results with your patch series: PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=833849 ---Test result--- Test Summary: CheckPatch PASS 1.53 seconds GitLint PASS 1.00 seconds BuildEll PASS 24.54 seconds BluezMake PASS 1713.73 seconds MakeCheck PASS 13.65 seconds MakeDistcheck PASS 179.10 seconds CheckValgrind PASS 249.57 seconds CheckSmatch PASS 352.54 seconds bluezmakeextell PASS 119.87 seconds IncrementalBuild PASS 4739.05 seconds ScanBuild PASS 1075.86 seconds --- Regards, Linux Bluetooth
diff --git a/client/player.c b/client/player.c index a40bf66e3..35143115a 100644 --- a/client/player.c +++ b/client/player.c @@ -3809,6 +3809,48 @@ static void config_endpoint_iso_group(const char *input, void *user_data) } } +static void endpoint_set_reconfigure_cfg(const char *input, void *user_data) +{ + char *endptr = NULL; + int value; + struct endpoint_config *cfg = user_data; + + value = strtol(input, &endptr, 0); + + if (!endptr || *endptr != '\0' || value > UINT8_MAX) { + bt_shell_printf("Invalid argument: %s\n", input); + return bt_shell_noninteractive_quit(EXIT_FAILURE); + } + + cfg->ep->iso_stream = value; + + bt_shell_prompt_input(cfg->ep->path, + "BIG (auto/value):", + config_endpoint_iso_group, cfg); +} + +static void endpoint_is_reconfigure_cfg(const char *input, void *user_data) +{ + struct endpoint_config *cfg = user_data; + + if (!strcasecmp(input, "n") || !strcasecmp(input, "no")) { + cfg->ep->iso_stream = BT_ISO_QOS_STREAM_UNSET; + goto done; + } else { + bt_shell_printf("The BIS index is assigned in the order of " + "the configuration starting with 1\n"); + bt_shell_prompt_input(cfg->ep->path, + "BIS Index (value):", + endpoint_set_reconfigure_cfg, cfg); + return; + } + +done: + bt_shell_prompt_input(cfg->ep->path, + "BIG (auto/value):", + config_endpoint_iso_group, cfg); +} + static void endpoint_set_config_bcast(struct endpoint_config *cfg) { cfg->ep->bcode = g_new0(struct iovec, 1); @@ -3835,8 +3877,8 @@ static void endpoint_set_config_bcast(struct endpoint_config *cfg) } bt_shell_prompt_input(cfg->ep->path, - "BIG (auto/value):", - config_endpoint_iso_group, cfg); + "This is a BIS reconfiguration? (yes/no):", + endpoint_is_reconfigure_cfg, cfg); } static void cmd_config_endpoint(int argc, char *argv[])