From 2806d76b357112777888e1e74d5df01dd646e5fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Markus=20Fr=C3=B6schle?= Date: Sat, 18 Jan 2014 20:59:42 +0000 Subject: [PATCH] removed locked MMU pages --- BaS_gcc/sys/mmu.c | 104 ---------------------------------------------- 1 file changed, 104 deletions(-) diff --git a/BaS_gcc/sys/mmu.c b/BaS_gcc/sys/mmu.c index 82f6c20..c1a7e9d 100644 --- a/BaS_gcc/sys/mmu.c +++ b/BaS_gcc/sys/mmu.c @@ -230,110 +230,6 @@ void mmu_init(void) /* clear all MMU TLB entries */ MCF_MMU_MMUOR = MCF_MMU_MMUOR_CA; - - /* create locked TLB entries */ - - /* - * 0x0000'0000 - 0x000F'FFFF (first MB of physical memory) locked virtual = physical - */ - MCF_MMU_MMUTR = 0x0 | /* virtual address */ - MCF_MMU_MMUTR_SG | /* shared global */ - MCF_MMU_MMUTR_V; /* valid */ - MCF_MMU_MMUDR = 0x0 | /* physical address */ - MCF_MMU_MMUDR_SZ(0) | /* 1 MB page size */ - MCF_MMU_MMUDR_CM(0x1) | /* cacheable, copyback */ - MCF_MMU_MMUDR_R | /* read access enable */ - MCF_MMU_MMUDR_W | /* write access enable */ - MCF_MMU_MMUDR_X | /* execute access enable */ - MCF_MMU_MMUDR_LK; /* lock entry */ - MCF_MMU_MMUOR = MCF_MMU_MMUOR_ACC | /* access TLB, data */ - MCF_MMU_MMUOR_UAA; /* update allocation address field */ - MCF_MMU_MMUOR = MCF_MMU_MMUOR_ITLB | /* instruction */ - MCF_MMU_MMUOR_ACC | /* access TLB */ - MCF_MMU_MMUOR_UAA; /* update allocation address field */ - - /* - * 0x00d0'0000 - 0x00df'ffff (last megabyte of ST RAM = Falcon video memory) locked ID = 6 - * mapped to physical address 0x60d0'0000 (FPGA video memory) - * video RAM: read write execute normal write true - */ - - MCF_MMU_MMUTR = 0x00d00000 | /* virtual address */ -#if defined(MACHINE_FIREBEE) - MCF_MMU_MMUTR_ID(SCA_PAGE_ID) | -#endif /* MACHINE_FIREBEE */ - MCF_MMU_MMUTR_SG | /* shared global */ - MCF_MMU_MMUTR_V; /* valid */ -#if defined(MACHINE_FIREBEE) - /* map FPGA video memory for FireBee only */ - MCF_MMU_MMUDR = 0x60d00000 | /* physical address */ -#elif defined(MACHINE_M5484LITE) - MCF_MMU_MMUDR = 0x00d00000 | /* physical address */ -#endif /* MACHINE_FIREBEE */ - MCF_MMU_MMUDR_SZ(0) | /* 1 MB page size */ - MCF_MMU_MMUDR_CM(0x0) | /* cachable writethrough */ - /* caveat: can't be supervisor protected since TOS puts the application stack there! */ - //MCF_MMU_MMUDR_SP | /* supervisor protect */ - MCF_MMU_MMUDR_R | /* read access enable */ - MCF_MMU_MMUDR_W | /* write access enable */ - MCF_MMU_MMUDR_X | /* execute access enable */ - MCF_MMU_MMUDR_LK; /* lock entry */ - MCF_MMU_MMUOR = MCF_MMU_MMUOR_ACC | /* access TLB, data */ - MCF_MMU_MMUOR_UAA; /* update allocation address field */ - MCF_MMU_MMUOR = MCF_MMU_MMUOR_ITLB | /* instruction */ - MCF_MMU_MMUOR_ACC | /* access TLB */ - MCF_MMU_MMUOR_UAA; /* update allocation address field */ - -#if defined(MACHINE_FIREBEE) - video_tlb = 0x2000; /* set page as video page */ - video_sbt = 0x0; /* clear time */ -#endif /* MACHINE_FIREBEE */ - -#if MACHINE_FIREBEE - /* - * Map FireBee I/O area (0xfff0'0000 - 0xffff'ffff physical) to the Falcon-compatible I/O - * area (0x00f0'0000 - 0x00ff'ffff virtual) for the FireBee - */ - - MCF_MMU_MMUTR = 0x00f00000 | /* virtual address */ - MCF_MMU_MMUTR_SG | /* shared global */ - MCF_MMU_MMUTR_V; /* valid */ - MCF_MMU_MMUDR = 0xfff00000 | /* physical address */ - MCF_MMU_MMUDR_SZ(0) | /* 1 MB page size */ - MCF_MMU_MMUDR_CM(0x2) | /* nocache precise */ - MCF_MMU_MMUDR_SP | /* supervisor protect */ - MCF_MMU_MMUDR_R | /* read access enable */ - MCF_MMU_MMUDR_W | /* write access enable */ - MCF_MMU_MMUDR_X | /* execute access enable */ - MCF_MMU_MMUDR_LK; /* lock entry */ - MCF_MMU_MMUOR = MCF_MMU_MMUOR_ACC | /* access TLB, data */ - MCF_MMU_MMUOR_UAA; /* update allocation address field */ - MCF_MMU_MMUOR = MCF_MMU_MMUOR_ITLB | /* instruction */ - MCF_MMU_MMUOR_ACC | /* access TLB */ - MCF_MMU_MMUOR_UAA; /* update allocation address field */ -#endif /* MACHINE_FIREBEE */ - - /* - * Map (locked) the very last MB of physical SDRAM (this is where the driver buffers reside) to the same - * virtual address. Used uncached for drivers. - */ - - MCF_MMU_MMUTR = (SDRAM_START + SDRAM_SIZE - 0x00100000) | /* virtual address */ - MCF_MMU_MMUTR_SG | /* shared global */ - MCF_MMU_MMUTR_V; /* valid */ - MCF_MMU_MMUDR = (SDRAM_START + SDRAM_SIZE - 0x00100000) | /* physical address */ - MCF_MMU_MMUDR_SZ(0) | /* 1 MB page size */ - MCF_MMU_MMUDR_CM(0x2) | /* nocache precise */ - MCF_MMU_MMUDR_SP | /* supervisor protect */ - MCF_MMU_MMUDR_R | /* read access enable */ - MCF_MMU_MMUDR_W | /* write access enable */ - //MCF_MMU_MMUDR_X | /* execute access enable */ - MCF_MMU_MMUDR_LK; /* lock entry */ - MCF_MMU_MMUOR = MCF_MMU_MMUOR_ACC | /* access TLB, data */ - MCF_MMU_MMUOR_UAA; /* update allocation address field */ - MCF_MMU_MMUOR = MCF_MMU_MMUOR_ITLB | /* instruction */ - MCF_MMU_MMUOR_ACC | /* access TLB */ - MCF_MMU_MMUOR_UAA; /* update allocation address field */ }