@@ -792,6 +792,45 @@ static int cmd_discoverable(const struct shell *sh, size_t argc, char *argv[])
792792 return 0 ;
793793}
794794
795+ static int cmd_iscan_param (const struct shell * sh , size_t argc , char * argv [])
796+ {
797+ int err = 0 ;
798+
799+ if (!strcmp (argv [1 ], "default" )) {
800+ err = bt_br_inquiry_scan_update_param (BT_BR_INQUIRY_SCAN_PARAM_DEFAULT );
801+ if (err ) {
802+ shell_print (sh , "BR/EDR update inquiry scan param failed (err %d)" , err );
803+ return - ENOEXEC ;
804+ }
805+ } else if (!strcmp (argv [1 ], "defined" )) {
806+ uint16_t interval ;
807+ uint16_t window ;
808+ enum bt_br_scan_type type ;
809+ struct bt_br_inquiry_scan_param param = {0 };
810+
811+ interval = strtoul (argv [2 ], NULL , 16 );
812+ window = strtoul (argv [3 ], NULL , 16 );
813+ type = strtoul (argv [4 ], NULL , 16 );
814+
815+ param .interval = interval ;
816+ param .window = window ;
817+ param .type = type ;
818+
819+ err = bt_br_inquiry_scan_update_param (& param );
820+ if (err ) {
821+ shell_print (sh , "BR/EDR update inquiry scan param failed (err %d)" , err );
822+ return - ENOEXEC ;
823+ }
824+ } else {
825+ shell_help (sh );
826+ return SHELL_CMD_HELP_PRINTED ;
827+ }
828+
829+ shell_print (sh , "BR/EDR update inquiry scan param done" );
830+
831+ return 0 ;
832+ }
833+
795834static int cmd_connectable (const struct shell * sh , size_t argc , char * argv [])
796835{
797836 int err ;
@@ -1688,6 +1727,10 @@ static int cmd_default_handler(const struct shell *sh, size_t argc, char **argv)
16881727 "[<interval>] [<window>] [<type>]\n" \
16891728 "<interval>: scan interval in units of 0.625 ms"
16901729
1730+ #define HELP_ISCAN_PARAM \
1731+ "<type: default, defined> [<interval>] [<window>] [<type>]\n" \
1732+ "<interval>: scan interval in units of 0.625 ms"
1733+
16911734SHELL_STATIC_SUBCMD_SET_CREATE (echo_cmds ,
16921735 SHELL_CMD_ARG (register , NULL , HELP_NONE , cmd_l2cap_echo_reg , 1 , 0 ),
16931736 SHELL_CMD_ARG (unregister , NULL , HELP_NONE , cmd_l2cap_echo_unreg , 1 , 0 ),
@@ -1737,6 +1780,7 @@ SHELL_STATIC_SUBCMD_SET_CREATE(br_cmds,
17371780 cmd_discovery , 2 , 2 ),
17381781 SHELL_CMD_ARG (iscan , NULL , "<value: on, off> [mode: limited]" ,
17391782 cmd_discoverable , 2 , 1 ),
1783+ SHELL_CMD_ARG (iscan - param , NULL , HELP_ISCAN_PARAM , cmd_iscan_param , 2 , 3 ),
17401784 SHELL_CMD (l2cap , & l2cap_cmds , HELP_NONE , cmd_default_handler ),
17411785 SHELL_CMD_ARG (oob , NULL , NULL , cmd_oob , 1 , 0 ),
17421786 SHELL_CMD_ARG (pscan , NULL , "<value: on, off>" , cmd_connectable , 2 , 0 ),
0 commit comments