- setPmon(save->save_r4, save->save_r5); /* Go load up MMCR0 and MMCR1 */
- return -1; /* Regurn and don't check for ASTs */
-
-/*
- * Map a page
- * Don't bother to check for any errors.
- * parms - vaddr, paddr, prot, attributes
- */
- case dgMapPage:
-
- (void)mapping_map(current_act()->map->pmap, /* Map in the page */
- (addr64_t)(((save->save_r5 & 0xFFFFFFFF) << 32) | (save->save_r5 & 0xFFFFFFFF)), save->save_r6, 0, 1, VM_PROT_READ|VM_PROT_WRITE);
-
- return -1; /* Return and check for ASTs... */
-
-/*
- * SCOM interface
- * parms - pointer to scomcomm
- */
- case dgScom:
-
- ret = copyin((unsigned int)(save->save_r4), &sarea, sizeof(scomcomm)); /* Get the data */
- if(ret) return 0; /* Copyin failed - return an exception */
-
- sarea.scomstat = 0xFFFFFFFFFFFFFFFFULL; /* Clear status */
- cpu = cpu_number(); /* Get us */
-
- if((sarea.scomcpu < NCPUS) && machine_slot[sarea.scomcpu].running) {
- if(sarea.scomcpu == cpu) fwSCOM(&sarea); /* Do it if it is us */
- else { /* Otherwise, tell the other processor */
- (void)cpu_signal(sarea.scomcpu, SIGPcpureq, CPRQscom ,(unsigned int)&sarea); /* Ask him to do this */
- (void)hw_cpu_sync((unsigned long)&sarea.scomstat, LockTimeOut); /* Wait for the other processor to get its temperature */
- }
- }
-
- ret = copyout(&sarea, (unsigned int)(save->save_r4), sizeof(scomcomm)); /* Get the data */
- if(ret) return 0; /* Copyin failed - return an exception */
-
- return -1; /* Return and check for ASTs... */
-
-