Messages in this thread | | | Date | Mon, 16 Nov 2009 12:50:06 -0500 | Subject | Re: i686 quirk for AMD Geode | From | (Lennart Sorensen) |
| |
On Fri, Nov 13, 2009 at 09:21:48PM +0000, Alan Cox wrote: > > > Which usually means some form of write gathering is enabled or something > > > thinks the device is write combining on the PCI bus. What does the PCI > > > bus and the RCRR MTRR set look like ? > > > > Well there is no /proc/mtrr. > > Linux doesn't have an RCRR driver - so you need to dump the MSRs directly > (see the Geode GX manual MSR list) and read out the msrs.
Hmm, so looking at the Geode SC1200 data book, it doesn't mention mtrr, rcrr or msr. I know the Geode LX has lots of MSR documentation.
Looking at the GX1 data book (which it seems the SC1200 refers to), it does mention mtrr, as not supported. I have managed to find something called the region configuration range registers, which must be RCRR.
I think this is a dump of the 8 region MSRs:
0x00001810->0xbf848ba8b7f282e8 0x00001811->0xbfcb5328b7f932e8 0x00001812->0xbfe93418b7f712e8 0x00001813->0xbfbd59b8b7fb52e8 0x00001814->0xbfb5f868b7f3d2e8 0x00001815->0xbf815018b7ef42e8 0x00001816->0xbfc4c0d8b7f2a2e8 0x00001817->0xbfe1eea8b7eff2e8
This must of course mean I read them wrong because those are not the right values. Some bit ranges must be 0 and are not.
Trying rdmsr from msr-tools 1.2 gives me:
# ./rdmsr -x 0x00001810 rdmsr: CPU 0 cannot read MSR 0x00001810
Hmm, now what?
-- Len Sorensen
| |