Øyvind Harboe wrote:
> Committed 1980
>
> Moved helper fn from xsvf.c  to jtag.c to promote it to a helper fn.
>
> This does *NOT* change any of the lower level parts of the
> JTAG API or drivers, just "shows" how to use the JTAG API.
>
>   
> ------------------------------------------------------------------------
>
> _______________________________________________
> Openocd-development mailing list
> Openocd-development@lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/openocd-development
>   
My idea was to use the  state_tables and JTAG_STATEMOVE command we 
already have  implemented in all drivers.
 
void jtag_add_statemove(tap_state_t end_state)
{
    int retval;

    if ((end_state != TAP_INVALID) && !tap_is_state_stable(end_state))
    {
        LOG_ERROR("BUG: TAP path doesn't finish in a stable state");
        exit(-1);
    }
    jtag_prelude(end_state);

    retval=interface_jtag_add_statemove(end_state);
    if (retval!=ERROR_OK)
        jtag_error=retval;   
}

int MINIDRIVER(interface_jtag_add_statemove)(tap_state_t end_state)
{
    jtag_command_t **last_cmd = jtag_get_last_command_p();

    /* allocate memory for a new list member */
    *last_cmd = cmd_queue_alloc(sizeof(jtag_command_t));
    last_comand_pointer = &((*last_cmd)->next);
    (*last_cmd)->next = NULL;
    (*last_cmd)->type = JTAG_STATEMOVE;

    (*last_cmd)->cmd.statemove = 
cmd_queue_alloc(sizeof(statemove_command_t));
    (*last_cmd)->cmd.statemove->end_state = end_state;

    return ERROR_OK;
}


_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to