* There is one definition for the dh and one for the dm.
*/
int dhprobe(), dhattach(), dhrint(), dhxint();
* There is one definition for the dh and one for the dm.
*/
int dhprobe(), dhattach(), dhrint(), dhxint();
u_short dhstd[] = { 0 };
struct uba_driver dhdriver =
{ dhprobe, 0, dhattach, 0, dhstd, "dh", dhinfo };
int dmprobe(), dmattach(), dmintr();
u_short dhstd[] = { 0 };
struct uba_driver dhdriver =
{ dhprobe, 0, dhattach, 0, dhstd, "dh", dhinfo };
int dmprobe(), dmattach(), dmintr();
u_short dmstd[] = { 0 };
struct uba_driver dmdriver =
{ dmprobe, 0, dmattach, 0, dmstd, "dm", dminfo };
u_short dmstd[] = { 0 };
struct uba_driver dmdriver =
{ dmprobe, 0, dmattach, 0, dmstd, "dm", dminfo };
int dhact; /* mask of active dh's */
int dhstart(), ttrstrt();
int dhact; /* mask of active dh's */
int dhstart(), ttrstrt();
/* 512+ is a kludge to try to get around a hardware problem */
dh_ubinfo[ui->ui_ubanum] =
uballoc(ui->ui_ubanum, (caddr_t)cfree,
/* 512+ is a kludge to try to get around a hardware problem */
dh_ubinfo[ui->ui_ubanum] =
uballoc(ui->ui_ubanum, (caddr_t)cfree,
addr->un.dhcsr |= DH_CNI;
printf("dh%d NXM\n", dh);
}
addr->un.dhcsr |= DH_CNI;
printf("dh%d NXM\n", dh);
}
printf(" dh");
ubarelse(uban, &dh_ubinfo[uban]);
dh_ubinfo[uban] = uballoc(uban, (caddr_t)cfree,
printf(" dh");
ubarelse(uban, &dh_ubinfo[uban]);
dh_ubinfo[uban] = uballoc(uban, (caddr_t)cfree,
ui = dhinfo[dh];
if (ui == 0 || ui->ui_alive == 0 || ui->ui_ubanum != uban)
continue;
((struct dhdevice *)ui->ui_addr)->un.dhcsr |= DH_IE;
ui = dhinfo[dh];
if (ui == 0 || ui->ui_alive == 0 || ui->ui_ubanum != uban)
continue;
((struct dhdevice *)ui->ui_addr)->un.dhcsr |= DH_IE;