PDP11: Fix RH address range disappearing after disable/enable of RP/TU/RS

As discussed in #396
This commit is contained in:
Mike Hill 2017-02-20 14:21:24 +01:00
parent c02584440b
commit f9cfae0c00

View file

@ -849,7 +849,6 @@ if (dptr->flags & DEV_DIS) { /* Disabling? */
uint32 mb = dibp->ba; uint32 mb = dibp->ba;
dibp->ba = MBA_AUTO; /* Flag unassigned */ dibp->ba = MBA_AUTO; /* Flag unassigned */
dibp->ulnt = dibp->lnt = 0;
mba_reset (&mba_dev[mb]); /* reset prior MBA */ mba_reset (&mba_dev[mb]); /* reset prior MBA */
} }
build_dib_tab(); build_dib_tab();
@ -923,7 +922,7 @@ mbregW[idx] = dibp->wr; /* set wr dispatch */
mbabort[idx] = dibp->ack[0]; /* set abort dispatch */ mbabort[idx] = dibp->ack[0]; /* set abort dispatch */
mba_dev[idx].flags &= ~DEV_DIS; /* mark MBA enabled */ mba_dev[idx].flags &= ~DEV_DIS; /* mark MBA enabled */
((DIB *)mba_dev[idx].ctxt)->lnt = dibp->lnt; ((DIB *)mba_dev[idx].ctxt)->lnt = dibp->lnt;
((DIB *)mba_dev[idx].ctxt)->ulnt = dibp->lnt; ((DIB *)mba_dev[idx].ctxt)->ulnt = dibp->ulnt;
return build_ubus_tab (&mba_dev[idx], (DIB *)mba_dev[idx].ctxt); return build_ubus_tab (&mba_dev[idx], (DIB *)mba_dev[idx].ctxt);
} }