@@ -524,86 +524,86 @@ COMMAND_HANDLER(linuxgpiod_handle_gpiochip)
return ERROR_OK;
return ERROR_OK;
}
}
static const struct command_registration linuxgpiod_command_handlers[] = {
static const struct command_registration linuxgpiod_sub command_handlers[] = {
{
{
.name = "linuxgpiod_ jtag_nums",
.name = "jtag_nums",
.handler = linuxgpiod_handle_jtag_gpionums,
.handler = linuxgpiod_handle_jtag_gpionums,
.mode = COMMAND_CONFIG,
.mode = COMMAND_CONFIG,
.help = "gpio numbers for tck, tms, tdi, tdo. (in that order)",
.help = "gpio numbers for tck, tms, tdi, tdo. (in that order)",
.usage = "tck tms tdi tdo",
.usage = "tck tms tdi tdo",
},
},
{
{
.name = "linuxgpiod_ tck_num",
.name = "tck_num",
.handler = linuxgpiod_handle_jtag_gpionum_tck,
.handler = linuxgpiod_handle_jtag_gpionum_tck,
.mode = COMMAND_CONFIG,
.mode = COMMAND_CONFIG,
.help = "gpio number for tck.",
.help = "gpio number for tck.",
.usage = "tck",
.usage = "tck",
},
},
{
{
.name = "linuxgpiod_ tms_num",
.name = "tms_num",
.handler = linuxgpiod_handle_jtag_gpionum_tms,
.handler = linuxgpiod_handle_jtag_gpionum_tms,
.mode = COMMAND_CONFIG,
.mode = COMMAND_CONFIG,
.help = "gpio number for tms.",
.help = "gpio number for tms.",
.usage = "tms",
.usage = "tms",
},
},
{
{
.name = "linuxgpiod_ tdo_num",
.name = "tdo_num",
.handler = linuxgpiod_handle_jtag_gpionum_tdo,
.handler = linuxgpiod_handle_jtag_gpionum_tdo,
.mode = COMMAND_CONFIG,
.mode = COMMAND_CONFIG,
.help = "gpio number for tdo.",
.help = "gpio number for tdo.",
.usage = "tdo",
.usage = "tdo",
},
},
{
{
.name = "linuxgpiod_ tdi_num",
.name = "tdi_num",
.handler = linuxgpiod_handle_jtag_gpionum_tdi,
.handler = linuxgpiod_handle_jtag_gpionum_tdi,
.mode = COMMAND_CONFIG,
.mode = COMMAND_CONFIG,
.help = "gpio number for tdi.",
.help = "gpio number for tdi.",
.usage = "tdi",
.usage = "tdi",
},
},
{
{
.name = "linuxgpiod_ srst_num",
.name = "srst_num",
.handler = linuxgpiod_handle_jtag_gpionum_srst,
.handler = linuxgpiod_handle_jtag_gpionum_srst,
.mode = COMMAND_CONFIG,
.mode = COMMAND_CONFIG,
.help = "gpio number for srst.",
.help = "gpio number for srst.",
.usage = "srst",
.usage = "srst",
},
},
{
{
.name = "linuxgpiod_ trst_num",
.name = "trst_num",
.handler = linuxgpiod_handle_jtag_gpionum_trst,
.handler = linuxgpiod_handle_jtag_gpionum_trst,
.mode = COMMAND_CONFIG,
.mode = COMMAND_CONFIG,
.help = "gpio number for trst.",
.help = "gpio number for trst.",
.usage = "trst",
.usage = "trst",
},
},
{
{
.name = "linuxgpiod_ swd_nums",
.name = "swd_nums",
.handler = linuxgpiod_handle_swd_gpionums,
.handler = linuxgpiod_handle_swd_gpionums,
.mode = COMMAND_CONFIG,
.mode = COMMAND_CONFIG,
.help = "gpio numbers for swclk, swdio. (in that order)",
.help = "gpio numbers for swclk, swdio. (in that order)",
.usage = "swclk swdio",
.usage = "swclk swdio",
},
},
{
{
.name = "linuxgpiod_ swclk_num",
.name = "swclk_num",
.handler = linuxgpiod_handle_swd_gpionum_swclk,
.handler = linuxgpiod_handle_swd_gpionum_swclk,
.mode = COMMAND_CONFIG,
.mode = COMMAND_CONFIG,
.help = "gpio number for swclk.",
.help = "gpio number for swclk.",
.usage = "swclk",
.usage = "swclk",
},
},
{
{
.name = "linuxgpiod_ swdio_num",
.name = "swdio_num",
.handler = linuxgpiod_handle_swd_gpionum_swdio,
.handler = linuxgpiod_handle_swd_gpionum_swdio,
.mode = COMMAND_CONFIG,
.mode = COMMAND_CONFIG,
.help = "gpio number for swdio.",
.help = "gpio number for swdio.",
.usage = "swdio",
.usage = "swdio",
},
},
{
{
.name = "linuxgpiod_l ed_num",
.name = "led_num",
.handler = linuxgpiod_handle_gpionum_led,
.handler = linuxgpiod_handle_gpionum_led,
.mode = COMMAND_CONFIG,
.mode = COMMAND_CONFIG,
.help = "gpio number for LED.",
.help = "gpio number for LED.",
.usage = "led",
.usage = "led",
},
},
{
{
.name = "linuxgpiod_ gpiochip",
.name = "gpiochip",
.handler = linuxgpiod_handle_gpiochip,
.handler = linuxgpiod_handle_gpiochip,
.mode = COMMAND_CONFIG,
.mode = COMMAND_CONFIG,
.help = "number of the gpiochip.",
.help = "number of the gpiochip.",
@@ -612,6 +612,17 @@ static const struct command_registration linuxgpiod_command_handlers[] = {
COMMAND_REGISTRATION_DONE
COMMAND_REGISTRATION_DONE
};
};
static const struct command_registration linuxgpiod_command_handlers[] = {
{
.name = "linuxgpiod",
.mode = COMMAND_ANY,
.help = "perform linuxgpiod management",
.chain = linuxgpiod_subcommand_handlers,
.usage = "",
},
COMMAND_REGISTRATION_DONE
};
static const char *const linuxgpiod_transport[] = { "swd", "jtag", NULL };
static const char *const linuxgpiod_transport[] = { "swd", "jtag", NULL };
static struct jtag_interface linuxgpiod_interface = {
static struct jtag_interface linuxgpiod_interface = {