When run_command is called, a new instance will be created on the stack, filled with the proper values, and passed by reference to the required COMMAND_HANDLER routine.
Parse a number (base 10, base 16 or base 8) and store the result into a bit buffer. Use the prefixes '0' and '0x' for base 8 and 16, otherwise defaults to base 10. In case of parsing error, a user-readable error message is produced.
Retrieves @a bank from a command argument, reporting errors parsing the bank identifier or retrieving the specified bank. The bank may be identified by its bank number or by @c name.instance, where @a instance is driver-specific.
Defines an extended command handler function declaration to enable access to (and manipulation of) the server port number. Call server_port like a normal COMMAND_HANDLER with an extra @a out parameter to receive the specified port number.
Handle the initial NAND device command for AT91SAM9 controllers. This initializes much of the controller information struct to be ready for future reads and writes.
Private flash commands ************************* Command to determine the signature of the whole flash. Uses the Built-In-Self-Test (BIST) to generate a 128-bit hash value of the flash content.
Perform the Stellaris "Recovering a 'Locked' Device procedure. This performs a mass erase and then restores all nonvolatile registers (including USER_* registers and flash lock bits) to their defaults. Accordingly, flash can be reprogrammed, and JTAG can be used. NOTE that DustDevil parts (at least rev A0 silicon) have errata which can affect this operation if flash protection has been enabled.
Simulates broken Vector Catch Function will try to determine entry point of user application. If it succeeds it will set HW breakpoint at that address, issue SW Reset and remove the breakpoint afterwards. In case of CM0, SYSRESETREQ is used. This allows to reset all peripherals. Boot code will reset CM4 anyway, so using SYSRESETREQ is safe here. In case of CM4, VECTRESET is used instead of SYSRESETREQ to not disturb CM0 core.
mips32_cp0_get_all_regs - Print all CP0 registers and their values. Iterates over all CP0 registers, reads their values, and prints them. Only considers registers relevant to the current core, as defined by cp0_mask.
mips32_cp0_get_reg_by_name - Read and print a CP0 register's value by name. Finds a CP0 register by name, reads its value, and prints it. Handles error scenarios like register not found or read failure.
mips32_cp0_get_reg_by_number - Read and print a CP0 register's value by number. Reads a specific CP0 register (identified by number and selection) and prints its value. The register number and selection are parsed from the command arguments.
mips32_cp0_set_reg_by_name - Write to a CP0 register identified by name. Writes a value to a CP0 register specified by name. Updates internal cache if specific registers (STATUS, CAUSE, DEPC, GUESTCTL1) are modified.
mips32_cp0_set_reg_by_number - Write to a CP0 register identified by number. Writes a value to a CP0 register specified by number and selection. Handles special cases like updating the internal cache for certain registers.
mips32_handle_cp0_command - Handle commands related to CP0 registers. @cmd: Command invocation context. Orchestrates different operations on CP0 registers based on the command arguments. Supports operations like reading all registers, reading/writing a specific register by name or number. Return: ERROR_OK on success; error code on failure.
mips32_handle_cpuinfo_command - Handles the 'cpuinfo' command. Executes the 'cpuinfo' command which displays detailed information about the current CPU core. This includes core type, vendor, instruction set, cache size, and other relevant details.
mips32_dsp_get_all_regs - Get values of all MIPS32 DSP registers This function iterates through all DSP registers, reads their values, and prints each register name along with its corresponding value.
mips32_dsp_get_register - Get the value of a MIPS32 DSP register Retrieves the value of a specified MIPS32 DSP register. If the register is found, it reads the register value and prints the result. If the register is not found, it prints an error message.
mips32_dsp_set_register - Set the value of a MIPS32 DSP register Sets the value of a specified MIPS32 DSP register. If the register is found, it writes provided value to the register. If the register is not found or there is an error in writing the value, it prints an error message.
Translate a virtual address to a physical address. The low-level target implementation must have logged a detailed error which is forwarded to telnet/GDB session.
Implements the Tcl "transport select" command, choosing the transport to be used in this debug session from among the set supported by the debug adapter being used. Return value is scriptable (allowing "if swd then..." etc).