xpp: astribank_hexload: we need more lines
* Newer firmwares may have more lines. * While we're at it, add better debug printing. * Remove some unused debugging code. Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com> git-svn-id: http://svn.astersk.org/svn/dahdi/tools/trunk@10343 17933a7a-c749-41c5-a318-cba88f637d49
This commit is contained in:
parent
b093554f54
commit
29280a548c
@ -24,6 +24,7 @@
|
|||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#include <stdarg.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
#include <arpa/inet.h>
|
#include <arpa/inet.h>
|
||||||
@ -36,7 +37,7 @@
|
|||||||
#include "../autoconfig.h"
|
#include "../autoconfig.h"
|
||||||
|
|
||||||
#define DBG_MASK 0x80
|
#define DBG_MASK 0x80
|
||||||
#define MAX_HEX_LINES 10000
|
#define MAX_HEX_LINES 64000
|
||||||
#define HAVE_OCTASIC 1
|
#define HAVE_OCTASIC 1
|
||||||
|
|
||||||
static char *progname;
|
static char *progname;
|
||||||
@ -81,15 +82,27 @@ int handle_hexline(struct astribank_device *astribank, struct hexline *hexline)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void print_parse_errors(int level, const char *msg, ...)
|
||||||
|
{
|
||||||
|
va_list ap;
|
||||||
|
|
||||||
|
if (verbose > level) {
|
||||||
|
va_start (ap, msg);
|
||||||
|
vfprintf (stderr, msg, ap);
|
||||||
|
va_end (ap);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static int load_hexfile(struct astribank_device *astribank, const char *hexfile, enum dev_dest dest)
|
static int load_hexfile(struct astribank_device *astribank, const char *hexfile, enum dev_dest dest)
|
||||||
{
|
{
|
||||||
struct hexdata *hexdata = NULL;
|
struct hexdata *hexdata = NULL;
|
||||||
int finished = 0;
|
int finished = 0;
|
||||||
int ret;
|
int ret;
|
||||||
int i;
|
unsigned i;
|
||||||
char star[] = "+\\+|+/+-";
|
char star[] = "+\\+|+/+-";
|
||||||
const char *devstr;
|
const char *devstr;
|
||||||
|
|
||||||
|
parse_hexfile_set_reporting(print_parse_errors);
|
||||||
if((hexdata = parse_hexfile(hexfile, MAX_HEX_LINES)) == NULL) {
|
if((hexdata = parse_hexfile(hexfile, MAX_HEX_LINES)) == NULL) {
|
||||||
perror(hexfile);
|
perror(hexfile);
|
||||||
return -errno;
|
return -errno;
|
||||||
@ -100,13 +113,6 @@ static int load_hexfile(struct astribank_device *astribank, const char *hexfile,
|
|||||||
xusb_serial(astribank->xusb),
|
xusb_serial(astribank->xusb),
|
||||||
dev_dest2str(dest),
|
dev_dest2str(dest),
|
||||||
hexdata->fname, hexdata->version_info);
|
hexdata->fname, hexdata->version_info);
|
||||||
#if 0
|
|
||||||
FILE *fp;
|
|
||||||
if((fp = fopen("fpga_dump_new.txt", "w")) == NULL) {
|
|
||||||
perror("dump");
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
if((ret = mpp_send_start(astribank, dest, hexdata->version_info)) < 0) {
|
if((ret = mpp_send_start(astribank, dest, hexdata->version_info)) < 0) {
|
||||||
ERR("%s: Failed hexfile send start: %d\n", devstr, ret);
|
ERR("%s: Failed hexfile send start: %d\n", devstr, ret);
|
||||||
return ret;
|
return ret;
|
||||||
|
Loading…
Reference in New Issue
Block a user