Rev 4343 | Rev 4346 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4343 | Rev 4344 | ||
---|---|---|---|
Line 24... | Line 24... | ||
24 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
24 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
25 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
25 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
26 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
26 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
27 | */ |
27 | */ |
28 | 28 | ||
29 | /** @addtogroup mips32mm |
29 | /** @addtogroup mips32mm |
30 | * @{ |
30 | * @{ |
31 | */ |
31 | */ |
32 | /** @file |
32 | /** @file |
33 | */ |
33 | */ |
34 | 34 | ||
Line 63... | Line 63... | ||
63 | } phys_region_t; |
63 | } phys_region_t; |
64 | 64 | ||
65 | static count_t phys_regions_count = 0; |
65 | static count_t phys_regions_count = 0; |
66 | static phys_region_t phys_regions[MAX_REGIONS]; |
66 | static phys_region_t phys_regions[MAX_REGIONS]; |
67 | 67 | ||
68 | uintptr_t end_frame = 0; |
- | |
69 | - | ||
70 | 68 | ||
71 | /** Check whether frame is available |
69 | /** Check whether frame is available |
72 | * |
70 | * |
73 | * Returns true if given frame is generally available for use. |
71 | * Returns true if given frame is generally available for use. |
74 | * Returns false if given frame is used for physical memory |
72 | * Returns false if given frame is used for physical memory |
Line 218... | Line 216... | ||
218 | avail = false; |
216 | avail = false; |
219 | else { |
217 | else { |
220 | ZERO_PAGE_VALUE = 0xdeadbeef; |
218 | ZERO_PAGE_VALUE = 0xdeadbeef; |
221 | if (ZERO_PAGE_VALUE != 0xdeadbeef) |
219 | if (ZERO_PAGE_VALUE != 0xdeadbeef) |
222 | avail = false; |
220 | avail = false; |
223 | #if defined(lgxemul) || defined(bgxemul) |
221 | #if defined(MACHINE_lgxemul) || defined(MACHINE_bgxemul) |
224 | else { |
222 | else { |
225 | ZERO_PAGE_VALUE_KSEG1(frame) = 0xaabbccdd; |
223 | ZERO_PAGE_VALUE_KSEG1(frame) = 0xaabbccdd; |
226 | if (ZERO_PAGE_VALUE_KSEG1(frame) != 0xaabbccdd) |
224 | if (ZERO_PAGE_VALUE_KSEG1(frame) != 0xaabbccdd) |
227 | avail = false; |
225 | avail = false; |
228 | } |
226 | } |
Line 236... | Line 234... | ||
236 | start_frame = frame + 1; |
234 | start_frame = frame + 1; |
237 | avail = true; |
235 | avail = true; |
238 | } |
236 | } |
239 | } |
237 | } |
240 | 238 | ||
241 | end_frame = frame; |
- | |
242 | - | ||
243 | frame_add_region(start_frame, end_frame); |
239 | frame_add_region(start_frame, frame); |
244 | 240 | ||
245 | /* Blacklist interrupt vector frame */ |
241 | /* Blacklist interrupt vector frame */ |
246 | frame_mark_unavailable(0, 1); |
242 | frame_mark_unavailable(0, 1); |
247 | 243 | ||
248 | /* Cleanup */ |
244 | /* Cleanup */ |