[coreboot] AMD CAR II

Myles Watson mylesgw at gmail.com
Fri May 7 22:04:58 CEST 2010


> II) we have some L1 data cache evicted into L2. This really happens in our CAR!
> print_debug("Copying data from cache to RAM -- switching to use RAM as stack...");
> memcopy((void *)((CONFIG_RAMTOP)-CONFIG_DCACHE_RAM_SIZE), (void
> *)CONFIG_DCACHE_RAM_BASE, CONFIG_DCACHE_RAM_SIZE);
>
> It happens here because we do copy from CAR region to RAM while CAR is still
> running. Both regions are WB so we must evict some L1 cache lines for sure, and
> performance counters confirm this. You may say this is not an issue because RAM
> is running normally, but for example while we resume from S3 we cannot overwrite
> random memory with out CAR... I think this evictions so far happens only here
> and still things works nice here is why:
Are you sure they're both WB?  Since CAR is running, we don't disable
the cache and enable it again, which is recommended when setting an
MTRR.  I commented out the line that sets that MTRR and can't tell a
difference.

I like the rest of analysis.

Thanks,
Myles




More information about the coreboot mailing list