pit: When turning on caching, cache the SRAM as well.

The stack is still in SRAM, and this improves performance substantially.

Old:
20 entries total:

   1:12
   2:3,867 (3,855)
   3:6,956 (3,089)
   4:256,586 (249,630)
  10:259,115 (2,529)
  30:259,591 (476)
  40:267,682 (8,091)
  50:268,138 (456)
  60:269,572 (1,434)
  70:572,493 (302,921)
  75:572,570 (77)
  80:572,642 (72)
  90:574,937 (2,295)
  99:823,874 (248,937)
1000:825,451 (1,577)
1001:825,458 (7)
1002:831,254 (5,796)
1003:966,115 (134,861)
1004:1,022,663 (56,548)
1100:1,784,639 (761,976)

New:
20 entries total:

   1:12
   2:3,865 (3,853)
   3:6,953 (3,088)
   4:256,214 (249,261)
  10:258,744 (2,530)
  30:259,219 (475)
  40:266,854 (7,635)
  50:266,888 (34)
  60:268,066 (1,178)
  70:568,441 (300,375)
  75:568,451 (10)
  80:568,461 (10)
  90:569,149 (688)
  99:600,914 (31,765)
1000:602,264 (1,350)
1001:602,271 (7)
1002:608,065 (5,794)
1003:742,975 (134,910)
1004:799,448 (56,473)
1100:1,527,482 (728,034)

BUG=chrome-os-partner:19420
TEST=Built and booted on pit.
BRANCH=None

Change-Id: Iaaecd7da2b21391d2f9657ec4673654843b9eff8
Signed-off-by: Gabe Black <gabeblack@google.com>
Reviewed-on: https://gerrit.chromium.org/gerrit/65779
Reviewed-by: Stefan Reinauer <reinauer@google.com>
Reviewed-by: David Hendricks <dhendrix@chromium.org>
Tested-by: Gabe Black <gabeblack@chromium.org>
Reviewed-by: Ronald G. Minnich <rminnich@chromium.org>
Tested-by: Ronald G. Minnich <rminnich@chromium.org>
Commit-Queue: Gabe Black <gabeblack@chromium.org>
This commit is contained in:
Gabe Black 2013-08-13 16:30:12 -07:00 committed by ChromeBot
commit 50113ae2a4

View file

@ -44,6 +44,8 @@
#define DRAM_START (CONFIG_SYS_SDRAM_BASE >> 20)
#define DRAM_SIZE CONFIG_DRAM_SIZE_MB
#define DRAM_END (DRAM_START + DRAM_SIZE) /* plus one... */
#define SRAM_START (0x02020000 >> 20)
#define SRAM_SIZE 1
static struct edid edid = {
.ha = 1366,
@ -447,6 +449,7 @@ static void mainboard_enable(device_t dev)
mmu_init();
mmu_config_range(0, DRAM_START, DCACHE_OFF);
mmu_config_range(DRAM_START, DRAM_SIZE, DCACHE_WRITEBACK);
mmu_config_range(SRAM_START, SRAM_SIZE, DCACHE_WRITEBACK);
mmu_config_range(DRAM_END, 4096 - DRAM_END, DCACHE_OFF);
dcache_invalidate_all();
dcache_mmu_enable();