Ronald G Minnich wrote: > > I notice that the fixed MTRR for region 0xd0000 is defined as ROM. The > type is WRPROT, value 5. Does this mean cacheable? Still worse, if it is > write protected, why did DoC code even work ... After all, 0xd0000 should > not be writeable! I put a scope on the we# pin on the DoC and it is > clearly being written, once for each command to DoC. I don't think the > MTRR is disabling writes ... > > Shouldn't all the MTRRs above 0xa0000 be UNCACHABLE up to 0xf0000, which > is ROM? The debug prints from linuxbios indicate that fixed MTRR is > enabled. >
I don't think these fixed MTRR matters. In docmill_fill_inbuf.c the DoC is addressed/accessed at DOC_MIL_BASE which is #ifndef DOC_MIL_BASE #define DOC_MIL_BASE 0xffffe000 #endif which should be uncached by mtrr.c Did you change the definition of DOC_MIL_BASE ?? Which DOC_MIL_BASE does you "user mode" test program use ?? 0xd000 or 0xffffe000 ?? Ollie
