Rev 5270 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5270 | Rev 6082 | ||
---|---|---|---|
Line 6... | Line 6... | ||
6 | #include |
6 | #include |
Line 7... | Line 7... | ||
7 | 7 | ||
8 | /* |
8 | /* |
9 | * The set_memory_* API can be used to change various attributes of a virtual |
9 | * The set_memory_* API can be used to change various attributes of a virtual |
10 | * address range. The attributes include: |
10 | * address range. The attributes include: |
11 | * Cachability : UnCached, WriteCombining, WriteBack |
11 | * Cachability : UnCached, WriteCombining, WriteThrough, WriteBack |
12 | * Executability : eXeutable, NoteXecutable |
12 | * Executability : eXeutable, NoteXecutable |
13 | * Read/Write : ReadOnly, ReadWrite |
13 | * Read/Write : ReadOnly, ReadWrite |
14 | * Presence : NotPresent |
14 | * Presence : NotPresent |
15 | * |
15 | * |
Line 33... | Line 33... | ||
33 | * The caller is required to take care of these. |
33 | * The caller is required to take care of these. |
34 | */ |
34 | */ |
Line 35... | Line 35... | ||
35 | 35 | ||
36 | int _set_memory_uc(unsigned long addr, int numpages); |
36 | int _set_memory_uc(unsigned long addr, int numpages); |
- | 37 | int _set_memory_wc(unsigned long addr, int numpages); |
|
37 | int _set_memory_wc(unsigned long addr, int numpages); |
38 | int _set_memory_wt(unsigned long addr, int numpages); |
38 | int _set_memory_wb(unsigned long addr, int numpages); |
39 | int _set_memory_wb(unsigned long addr, int numpages); |
39 | int set_memory_uc(unsigned long addr, int numpages); |
40 | int set_memory_uc(unsigned long addr, int numpages); |
- | 41 | int set_memory_wc(unsigned long addr, int numpages); |
|
40 | int set_memory_wc(unsigned long addr, int numpages); |
42 | int set_memory_wt(unsigned long addr, int numpages); |
41 | int set_memory_wb(unsigned long addr, int numpages); |
43 | int set_memory_wb(unsigned long addr, int numpages); |
42 | int set_memory_x(unsigned long addr, int numpages); |
44 | int set_memory_x(unsigned long addr, int numpages); |
43 | int set_memory_nx(unsigned long addr, int numpages); |
45 | int set_memory_nx(unsigned long addr, int numpages); |
44 | int set_memory_ro(unsigned long addr, int numpages); |
46 | int set_memory_ro(unsigned long addr, int numpages); |
45 | int set_memory_rw(unsigned long addr, int numpages); |
47 | int set_memory_rw(unsigned long addr, int numpages); |
46 | int set_memory_np(unsigned long addr, int numpages); |
48 | int set_memory_np(unsigned long addr, int numpages); |
Line 47... | Line 49... | ||
47 | int set_memory_4k(unsigned long addr, int numpages); |
49 | int set_memory_4k(unsigned long addr, int numpages); |
48 | 50 | ||
- | 51 | int set_memory_array_uc(unsigned long *addr, int addrinarray); |
|
49 | int set_memory_array_uc(unsigned long *addr, int addrinarray); |
52 | int set_memory_array_wc(unsigned long *addr, int addrinarray); |
Line 50... | Line 53... | ||
50 | int set_memory_array_wc(unsigned long *addr, int addrinarray); |
53 | int set_memory_array_wt(unsigned long *addr, int addrinarray); |
51 | int set_memory_array_wb(unsigned long *addr, int addrinarray); |
54 | int set_memory_array_wb(unsigned long *addr, int addrinarray); |
- | 55 | ||
52 | 56 | int set_pages_array_uc(struct page **pages, int addrinarray); |
|
Line 53... | Line 57... | ||
53 | int set_pages_array_uc(struct page **pages, int addrinarray); |
57 | int set_pages_array_wc(struct page **pages, int addrinarray); |
54 | int set_pages_array_wc(struct page **pages, int addrinarray); |
58 | int set_pages_array_wt(struct page **pages, int addrinarray); |
55 | int set_pages_array_wb(struct page **pages, int addrinarray); |
59 | int set_pages_array_wb(struct page **pages, int addrinarray); |
Line 103... | Line 107... | ||
103 | { |
107 | { |
104 | return 0; |
108 | return 0; |
105 | }; |
109 | }; |
Line 106... | Line -... | ||
106 | - | ||
107 | 110 | ||
Line -... | Line 111... | ||
- | 111 | ||
- | 112 | void clflush_cache_range(void *addr, unsigned int size); |
|
108 | 113 | ||
109 | void clflush_cache_range(void *addr, unsigned int size); |
114 | #define mmio_flush_range(addr, size) clflush_cache_range(addr, size) |
110 | 115 | ||
111 | #ifdef CONFIG_DEBUG_RODATA |
116 | #ifdef CONFIG_DEBUG_RODATA |
112 | void mark_rodata_ro(void); |
117 | void mark_rodata_ro(void); |