further changes towards LITEKIT m5484 support. Board now runs until PCI bus scan

This commit is contained in:
Markus Fröschle
2013-10-30 17:53:24 +00:00
parent ce2303c83a
commit 2bcb5ec873
4 changed files with 42 additions and 6 deletions

View File

@@ -3,6 +3,12 @@
*/
#include "startcf.h"
#ifdef MACHINE_FIREBEE
#include "firebee.h"
#endif /* MACHINE_FIREBEE */
#ifdef MACHINE_M5484LITE
#include "m5484l.h"
#endif /* MACHINE_M5484LITE */
.extern _rt_vbr
.extern _rt_cacr
@@ -132,6 +138,7 @@ _mmu_init:
// 00D0'0000 - 0x00DF'FFFF (last megabyte of ST RAM = Falcon video memory) locked ID=6
// mapped to physical address 60D0'0000 (FPGA video memory)
// video ram: read write execute normal write true
#ifdef MACHINE_FIREBEE
move.l #0x00d00000|MCF_MMU_MMUTR_ID(sca_page_ID)|std_mmutr,d0
move.l #0x60d00000|writethrough_mmudr|MCF_MMU_MMUDR_LK,d1
move.l d0,MCF_MMU_MMUTR
@@ -143,6 +150,7 @@ _mmu_init:
move.l #0x2000,d0
move.l d0,_video_tlb // set page as video page
clr.l _video_sbt // clear time
#endif /* MACHINE_FIREBEE */
// Make the TOS (in SDRAM) read-only
@@ -157,13 +165,16 @@ _mmu_init:
// 00f0'0000 locked
// this maps virtual 0x00F0'0000 - 0x00FF'FFFF to physical 0xFFF0'0000 - 0xFFFF'FFFF effectively making I/O area
// accesses ST-compatible (just the same what Atari made for TT and Falcon)
#ifdef MACHINE_FIREBEE
move.l #0x00f00000|std_mmutr,d0
move.l #0xfff00000|nocache_precise_mmudr|MCF_MMU_MMUDR_LK,d1
move.l d0,MCF_MMU_MMUTR
move.l d1,MCF_MMU_MMUDR
move.l d2,MCF_MMU_MMUOR // mapped to ffffxxx, precise,
move.l d3,MCF_MMU_MMUOR // mapped to ffffxxx, precise,
#endif /* MACHINE_FIREBEE */
#ifdef MACHINE_FIREBEE
// 1ff0'0000 locked
// maps virtual 0x1FF0'0000 - 0x1FFF'FFFF to the same physical address
move.l #0x1FF00000|std_mmutr,d0 // last megabyte of physical RAM. Reserved for BaS
@@ -172,6 +183,7 @@ _mmu_init:
move.l d1,MCF_MMU_MMUDR
move.l d2,MCF_MMU_MMUOR // setzen data
move.l d3,MCF_MMU_MMUOR // setzen instr
#endif /* MACHINE_FIREBEE */
move.l (sp)+,d2 // Restore registers
move.l (sp)+,d3