mirror of
https://github.com/freebsd/freebsd-src.git
synced 2024-12-04 12:28:58 +00:00
Ok set in the values in clock 7 as in the
original codes (I had changed one by accident) Also do the pic_ack/pic_delayed_ack after the interrupt so we clear it. The clock with these changes starts working. Its off doing a short/long short/long warning but it now runs. My NFS mount now works but has the same problem with sbin/init (errno 8 ENOEXEC) so it panics with no init. Either this is a problem with my buildworld.. OR its a yet undiscovered RMI issue.
This commit is contained in:
parent
e0c4754e87
commit
4ba9b90b06
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/projects/mips/; revision=199203
@ -240,7 +240,7 @@ platform_initclocks(void)
|
||||
pic_update_control(1 << (8 + 7));
|
||||
|
||||
xlr_write_reg(mmio, PIC_TIMER_6_MAXVAL_0, (0xffffffff & 0xffffffff));
|
||||
xlr_write_reg(mmio, PIC_TIMER_6_MAXVAL_1, (0xffffffff & 0xffffffff));
|
||||
xlr_write_reg(mmio, PIC_TIMER_6_MAXVAL_1, (0x0 & 0xffffffff));
|
||||
xlr_write_reg(mmio, PIC_IRT_0_TIMER_6, (1 << cpu));
|
||||
xlr_write_reg(mmio, PIC_IRT_1_TIMER_6, (1 << 31) | (0 << 30) | (1 << 6) | (PIC_TIMER_6_IRQ));
|
||||
pic_update_control(1 << (8 + 6));
|
||||
|
@ -47,6 +47,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <mips/rmi/xlrconfig.h>
|
||||
#include <mips/rmi/interrupt.h>
|
||||
#include <mips/rmi/clock.h>
|
||||
#include <mips/rmi/pic.h>
|
||||
|
||||
/*#include <machine/intrcnt.h>*/
|
||||
|
||||
@ -167,6 +168,7 @@ cpu_intr(struct trapframe *tf)
|
||||
ie = mih->mih_event;
|
||||
|
||||
write_c0_eirr64(1ULL << i);
|
||||
pic_ack(i);
|
||||
if (!ie || TAILQ_EMPTY(&ie->ie_handlers)) {
|
||||
printf("stray interrupt %d\n", i);
|
||||
continue;
|
||||
@ -174,6 +176,7 @@ cpu_intr(struct trapframe *tf)
|
||||
if (intr_event_handle(ie, tf) != 0) {
|
||||
printf("stray interrupt %d\n", i);
|
||||
}
|
||||
pic_delayed_ack(i);
|
||||
}
|
||||
critical_exit();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user