Move the bitbang prerequisite checks out from
main() into their own bitbang_check_prerequisites(). git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@626 81a1dc3b-b13d-400b-aceb-764788c761c2
This commit is contained in:
parent
ed68a1ea69
commit
0b05af1165
10
ChangeLog
10
ChangeLog
|
@ -1,3 +1,13 @@
|
||||||
|
2006-08-22 Joerg Wunsch <j@uriah.heep.sax.de>
|
||||||
|
|
||||||
|
* bitbang.c: Move the bitbang prerequisite checks out from
|
||||||
|
main() into their own bitbang_check_prerequisites().
|
||||||
|
* bitbang.h: (Ditto.)
|
||||||
|
* main.c: (Ditto.)
|
||||||
|
* par.c: (Ditto.)
|
||||||
|
* serbb_posix.c: (Ditto.)
|
||||||
|
* serbb_win32.c: (Ditto.)
|
||||||
|
|
||||||
2006-08-22 Joerg Wunsch <j@uriah.heep.sax.de>
|
2006-08-22 Joerg Wunsch <j@uriah.heep.sax.de>
|
||||||
|
|
||||||
* avrdude.conf.in: Add page mode parameters for all "eeprom"
|
* avrdude.conf.in: Add page mode parameters for all "eeprom"
|
||||||
|
|
20
bitbang.c
20
bitbang.c
|
@ -335,4 +335,24 @@ int bitbang_initialize(PROGRAMMER * pgm, AVRPART * p)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void verify_pin_assigned(PROGRAMMER * pgm, int pin, char * desc)
|
||||||
|
{
|
||||||
|
if (pgm->pinno[pin] == 0) {
|
||||||
|
fprintf(stderr, "%s: error: no pin has been assigned for %s\n",
|
||||||
|
progname, desc);
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Verify all prerequisites for a bit-bang programmer are present.
|
||||||
|
*/
|
||||||
|
void bitbang_check_prerequisites(PROGRAMMER *pgm)
|
||||||
|
{
|
||||||
|
|
||||||
|
verify_pin_assigned(pgm, PIN_AVR_RESET, "AVR RESET");
|
||||||
|
verify_pin_assigned(pgm, PIN_AVR_SCK, "AVR SCK");
|
||||||
|
verify_pin_assigned(pgm, PIN_AVR_MISO, "AVR MISO");
|
||||||
|
verify_pin_assigned(pgm, PIN_AVR_MOSI, "AVR MOSI");
|
||||||
|
}
|
||||||
|
|
|
@ -27,6 +27,8 @@ int bitbang_getpin(int fd, int pin);
|
||||||
int bitbang_highpulsepin(int fd, int pin);
|
int bitbang_highpulsepin(int fd, int pin);
|
||||||
void bitbang_delay(unsigned int us);
|
void bitbang_delay(unsigned int us);
|
||||||
|
|
||||||
|
void bitbang_check_prerequisites(PROGRAMMER *pgm);
|
||||||
|
|
||||||
int bitbang_rdy_led (PROGRAMMER * pgm, int value);
|
int bitbang_rdy_led (PROGRAMMER * pgm, int value);
|
||||||
int bitbang_err_led (PROGRAMMER * pgm, int value);
|
int bitbang_err_led (PROGRAMMER * pgm, int value);
|
||||||
int bitbang_pgm_led (PROGRAMMER * pgm, int value);
|
int bitbang_pgm_led (PROGRAMMER * pgm, int value);
|
||||||
|
|
19
main.c
19
main.c
|
@ -165,17 +165,6 @@ void programmer_display(char * p)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
void verify_pin_assigned(int pin, char * desc)
|
|
||||||
{
|
|
||||||
if (pgm->pinno[pin] == 0) {
|
|
||||||
fprintf(stderr, "%s: error: no pin has been assigned for %s\n",
|
|
||||||
progname, desc);
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
PROGRAMMER * locate_programmer(LISTID programmers, char * configid)
|
PROGRAMMER * locate_programmer(LISTID programmers, char * configid)
|
||||||
{
|
{
|
||||||
LNODEID ln1, ln2;
|
LNODEID ln1, ln2;
|
||||||
|
@ -1097,7 +1086,6 @@ int main(int argc, char * argv [])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* set up seperate instances of the avr part, one for use in
|
* set up seperate instances of the avr part, one for use in
|
||||||
* programming, one for use in verifying. These are separate
|
* programming, one for use in verifying. These are separate
|
||||||
|
@ -1106,13 +1094,6 @@ int main(int argc, char * argv [])
|
||||||
p = avr_dup_part(p);
|
p = avr_dup_part(p);
|
||||||
v = avr_dup_part(p);
|
v = avr_dup_part(p);
|
||||||
|
|
||||||
if (strcmp(pgm->type, "PPI") == 0) {
|
|
||||||
verify_pin_assigned(PIN_AVR_RESET, "AVR RESET");
|
|
||||||
verify_pin_assigned(PIN_AVR_SCK, "AVR SCK");
|
|
||||||
verify_pin_assigned(PIN_AVR_MISO, "AVR MISO");
|
|
||||||
verify_pin_assigned(PIN_AVR_MOSI, "AVR MOSI");
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* open the programmer
|
* open the programmer
|
||||||
*/
|
*/
|
||||||
|
|
2
par.c
2
par.c
|
@ -254,6 +254,8 @@ static int par_open(PROGRAMMER * pgm, char * port)
|
||||||
{
|
{
|
||||||
int rc;
|
int rc;
|
||||||
|
|
||||||
|
bitbang_check_prerequisites(pgm);
|
||||||
|
|
||||||
pgm->fd = ppi_open(port);
|
pgm->fd = ppi_open(port);
|
||||||
if (pgm->fd < 0) {
|
if (pgm->fd < 0) {
|
||||||
fprintf(stderr, "%s: failed to open parallel port \"%s\"\n\n",
|
fprintf(stderr, "%s: failed to open parallel port \"%s\"\n\n",
|
||||||
|
|
|
@ -200,6 +200,8 @@ static int serbb_open(PROGRAMMER *pgm, char *port)
|
||||||
struct termios mode;
|
struct termios mode;
|
||||||
int flags;
|
int flags;
|
||||||
|
|
||||||
|
bitbang_check_prerequisites(pgm);
|
||||||
|
|
||||||
/* adapted from uisp code */
|
/* adapted from uisp code */
|
||||||
|
|
||||||
pgm->fd = open(port, O_RDWR | O_NOCTTY | O_NONBLOCK);
|
pgm->fd = open(port, O_RDWR | O_NOCTTY | O_NONBLOCK);
|
||||||
|
|
|
@ -272,6 +272,8 @@ static int serbb_open(PROGRAMMER *pgm, char *port)
|
||||||
LPVOID lpMsgBuf;
|
LPVOID lpMsgBuf;
|
||||||
HANDLE hComPort = INVALID_HANDLE_VALUE;
|
HANDLE hComPort = INVALID_HANDLE_VALUE;
|
||||||
|
|
||||||
|
bitbang_check_prerequisites(pgm);
|
||||||
|
|
||||||
hComPort = CreateFile(port, GENERIC_READ | GENERIC_WRITE, 0, NULL,
|
hComPort = CreateFile(port, GENERIC_READ | GENERIC_WRITE, 0, NULL,
|
||||||
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
|
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue