Helper to backtrace a user context
[akaros.git] / kern / arch / riscv / colored_caches.c
1 /* Copyright (c) 2009 The Regents of the University  of California. 
2  * See the COPYRIGHT files at the top of this source tree for full 
3  * license information.
4  * 
5  * Kevin Klues <klueska@cs.berkeley.edu>    
6  */
7
8 #include <colored_caches.h>
9 #include <stdio.h>
10
11 // Global variables
12 static cache_t l1,l2,l3;
13 cache_t* llc_cache;
14 available_caches_t available_caches;
15
16 /************** Cache Related Functions  *****************/
17 void cache_init() 
18 {
19         // Initialize the caches available on this system.
20         // TODO: Should call out to something reading the acpi tables from 
21         // memory, or something similar.  For now, just initialize them inline
22         available_caches.l1 = &l1;
23         available_caches.l2 = &l2;
24         available_caches.l3 = &l3;
25         llc_cache = &l3;
26         init_cache_properties(&l1,   32,  8, 64);
27         init_cache_properties(&l2,  256,  8, 64);
28         init_cache_properties(&l3, 8192, 16, 64);
29         printk("Cache init successful\n");
30 }
31
32 void cache_color_alloc_init()
33 {
34         init_free_cache_colors_map(&l1);
35         init_free_cache_colors_map(&l2);
36         init_free_cache_colors_map(&l3);
37 }
38