Cleaner separation of find_t509_device/fill_t509_device.

pull/1/head
Michael Brown 2005-04-14 23:20:56 +00:00
parent f78fd79c16
commit c7694a5322
1 changed files with 11 additions and 4 deletions

View File

@ -120,6 +120,17 @@ static inline int fill_t509_device ( struct t509_device *t509 ) {
int i; int i;
uint16_t iobase; uint16_t iobase;
/*
* We need an ID port, if we don't already have one.
*
*/
if ( ! t509->id_port ) {
if ( ! find_id_port ( t509 ) ) {
DBG ( "No ID port available for contention select\n" );
return 0;
}
}
/* /*
* If this is the start of the scan, clear all tag registers. * If this is the start of the scan, clear all tag registers.
* Otherwise, tell already-found NICs not to respond. * Otherwise, tell already-found NICs not to respond.
@ -173,10 +184,6 @@ static inline int find_t509_device ( struct t509_device *t509,
if ( t509->magic != t509_magic ) { if ( t509->magic != t509_magic ) {
memset ( t509, 0, sizeof ( *t509 ) ); memset ( t509, 0, sizeof ( *t509 ) );
t509->magic = t509_magic; t509->magic = t509_magic;
if ( ! find_id_port ( t509 ) ) {
DBG ( "No ID port available for contention select\n" );
return 0;
}
} }
/* Find the next t509 device */ /* Find the next t509 device */