view loadtools/ltmisc.c @ 390:bb4814eb51e4

target-utils abb[rw] commands: call abb_init() to avoid dead hang
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Wed, 11 Jun 2014 07:11:16 +0000
parents 0c1480317c18
children
line wrap: on
line source

/*
 * This module is a place to implement little miscellaneous fc-loadtool
 * commands which don't belong anywhere else.
 */

#include <sys/types.h>
#include <stdio.h>
#include <stdint.h>

cmd_dieid(argc, argv)
	char **argv;
{
	static uint32_t addrs[4] = {0xFFFEF010, 0xFFFEF012, 0xFFFEF014,
				    0xFFFEF016};
	uint16_t data[4];
	int i, stat;
	FILE *of;

	for (i = 0; i < 4; i++) {
		stat = do_r16(addrs[i], data + i);
		if (stat)
			return(stat);
		printf("%08lX: %04X\n", (u_long)addrs[i], (int)data[i]);
	}
	if (argc < 2)
		return(0);
	of = fopen(argv[1], "w");
	if (!of) {
		perror(argv[1]);
		return(-1);
	}
	for (i = 0; i < 4; i++)
		fprintf(of, "%08lX: %04X\n", (u_long)addrs[i], (int)data[i]);
	fclose(of);
	printf("Saved to %s\n", argv[1]);
	return(0);
}