Exemple #1
0
def handle_xds110(args):
    """Helper function for handling 'xds110' command"""
    session_args = get_session_args(args)

    if args.cmd == 'xds110-reset':
        try:
            result = tiflash.xds110_reset(**session_args)
            print(result)
        except Exception as e:
            __exit_with_error(e)

    elif args.cmd == 'xds110-list':
        try:
            result = tiflash.xds110_list(**session_args)
            header = "XDS110 Devices:"
            print(header)
            print('-' * len(header))
            for dev in result:
                print("%s (%s)" % (dev[0], dev[1]))
        except Exception as e:
            __exit_with_error(e)
    elif args.cmd == 'xds110-upgrade':
        try:
            result = tiflash.xds110_upgrade(**session_args)
            print(result)
        except Exception as e:
            __exit_with_error(e)
Exemple #2
0
def handle_flash(args):
    """Helper function for handling 'flash' command"""
    session_args = get_session_args(args)
    images = list()
    options = dict()

    for img in args.images:
        images.append(img)

    if args.options:
        for opt in args.options:
            option_id = opt[0]
            option_value = opt[1]

            options.update({option_id: option_value})

    if len(options) == 0:
        options = None

    # TODO: Add multi image flashing
    try:
        result = tiflash.flash(images[0], binary=args.bin, options=options,
                           address=args.address, **session_args)
        print(result)
    except Exception as e:
        __exit_with_error(e)
Exemple #3
0
def handle_options(args):
    """Helper function for handling 'option' command"""
    session_args = get_session_args(args)
    # Get Option
    if args.cmd == 'options-get':
        try:
            value = tiflash.get_option(args.optionID, pre_operation=args.operation,
                                   **session_args)
            print(value)
        except Exception as e:
            __exit_with_error(e)

    # Set Option
    elif args.cmd == 'options-set':
        try:
            tiflash.set_option(args.optionID, args.optionVal,
                                post_operation=args.operation, **session_args)
        except Exception as e:
            __exit_with_error(e)

    # Display Option Information
    elif args.cmd == 'options-list':
        options = tiflash.list_options(option_id=args.optionID, **session_args)
        header = "Options (%s):" % args.optionID if args.optionID else "Options:"
        print(header)
        print("-" * len(header))
        __print_options(options)
Exemple #4
0
def handle_attach(args):
    """Helper function for handling 'attach' command"""
    session_args = get_session_args(args)

    try:
        result = tiflash.attach(**session_args)
    except Exception as e:
        __exit_with_error(e)
Exemple #5
0
def handle_info(args):
    """Helper function for handling 'info' command"""
    session_args = get_session_args(args)

    info_dict = tiflash.get_info(**session_args)
    ordered_keys = ['tiflash version', 'release date', 'python version',
                    'ccs version', 'ccs prefix', 'ccs location', 'device drivers']
    for k in ordered_keys:
        print("{key:<20}{val}".format(key=(k+':'), val=info_dict[k]))
Exemple #6
0
def handle_expression(args):
    """Helper function for handling 'expression' command"""
    session_args = get_session_args(args)

    try:
        result = tiflash.evaluate(args.expression, symbol_file=args.symbols,
                                **session_args)
        print(result)
    except Exception as e:
        __exit_with_error(e)
Exemple #7
0
def handle_detect(args):
    """Helper function for handling 'detect' command"""
    session_args = get_session_args(args)

    try:
        result = tiflash.detect_devices(**session_args)
        header = "Detected Devices:"
        print(header)
        print('-' * len(header))
        for i, dev in enumerate(result):
            print("Connection:\t%s" % dev['connection'])
            print("Devicetype:\t%s" % (dev['devicetype'] or "N/A"))
            print("Serno:\t\t%s\n" % (dev['serno'] or "N/A"))
    except Exception as e:
        __exit_with_error(e)
Exemple #8
0
def handle_list(args):
    """Helper function for handling 'list' command"""
    results = []
    session_args = get_session_args(args)
    if args.devicetypes:
        results = tiflash.get_devicetypes(args.ccs, search=args.search)
    elif args.connections:
        results = tiflash.get_connections(args.ccs, search=args.search)
    elif args.cpus:
        results = tiflash.get_cpus(args.ccs, search=args.search)
    elif args.options:
        # tiflash.print_options(**session_args)
        results = tiflash.list_options(**session_args)

    for e in results:
        print(e)
Exemple #9
0
def handle_register(args):
    """Helper function for handling 'register' command"""
    session_args = get_session_args(args)

    if args.cmd == 'register-read':
        try:
            result = tiflash.register_read(args.regname, **session_args)
            if args.hex:
                result = hex(result)
            print(result)
        except Exception as e:
            __exit_with_error(e)
    elif args.cmd == 'register-write':
        try:
            result = tiflash.register_write(args.regname, args.value,
                **session_args)
        except Exception as e:
            __exit_with_error(e)
Exemple #10
0
def handle_memory(args):
    """Helper function for handling 'memory' command"""
    session_args = get_session_args(args)

    if args.cmd == 'memory-read':
        try:
            result = tiflash.memory_read(args.address, args.num_bytes, args.page,
                **session_args)
            if args.hex:
                result = [ hex(h) for h in result ]
            print(result)
        except Exception as e:
            __exit_with_error(e)
    elif args.cmd == 'memory-write':
        try:
            result = tiflash.memory_write(args.address, args.data, args.page,
                **session_args)
        except Exception as e:
            __exit_with_error(e)
Exemple #11
0
def handle_erase(args):
    """Helper function for handling 'erase' command"""
    session_args = get_session_args(args)
    options = dict()

    if args.options:
        for opt in args.options:
            option_id = opt[0]
            option_value = opt[1]

            options.update({option_id: option_value})

    if len(options) == 0:
        options = None

    try:
        result = tiflash.erase(options=options, **session_args)
        print(result)
    except Exception as e:
        __exit_with_error(e)
Exemple #12
0
def handle_verify(args):
    """Helper function for handling 'verify' command"""
    session_args = get_session_args(args)
    options = dict()

    if args.options:
        for opt in args.options:
            option_id = opt[0]
            option_value = opt[1]

        options.update({option_id: option_value})

    if len(options) == 0:
        options = None

    # TODO: Add multi image verifying
    try:
        result = tiflash.verify(args.image[0], options=options, binary=args.bin, **session_args)
        print(result)
    except Exception as e:
        __exit_with_error(e)