in nubus.c [829:858]
static void __init nubus_probe_slot(int slot)
{
unsigned char dp;
unsigned char *rp;
int i;
rp = nubus_rom_addr(slot);
for (i = 4; i; i--) {
rp--;
if (!hwreg_present(rp))
continue;
dp = *rp;
/* The last byte of the format block consists of two
nybbles which are "mirror images" of each other.
These show us the valid bytelanes */
if ((((dp >> 4) ^ dp) & 0x0F) != 0x0F)
continue;
/* Check that this value is actually *on* one of the
bytelanes it claims are valid! */
if (not_useful(rp, dp))
continue;
/* Looks promising. Let's put it on the list. */
nubus_add_board(slot, dp);
return;
}
}