Subversion Repositories HelenOS

Rev

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 */