- cleaned up
git-svn-id: http://moon:8086/svn/mips@25 a8ebac50-d88d-4704-bea3-6648445a41b3
This commit is contained in:
@@ -31,15 +31,14 @@ ROMGEN=$(MIPS_HOME)/tools/romgen
|
|||||||
|
|
||||||
all: bootloader_flash
|
all: bootloader_flash
|
||||||
|
|
||||||
libsys: startup_boot.S init_boot.S kernel_boot.S libsys_boot.c
|
libsys: startup_boot.S kernel_boot.S libsys_boot.c
|
||||||
$(CC) $(CFLAGS) -c startup_boot.S -o startup.o
|
$(CC) $(CFLAGS) -c startup_boot.S -o startup.o
|
||||||
$(CC) $(CFLAGS) -c init_boot.S -o init.o
|
|
||||||
$(CC) $(CFLAGS) -c kernel_boot.S -o kernel.o
|
$(CC) $(CFLAGS) -c kernel_boot.S -o kernel.o
|
||||||
$(CC) $(CFLAGS) -c libsys_boot.c -o libsys.o
|
$(CC) $(CFLAGS) -c libsys_boot.c -o libsys.o
|
||||||
|
|
||||||
bootloader: libsys bootloader.c
|
bootloader: libsys bootloader.c
|
||||||
$(CC) $(CFLAGS) -g -c bootloader.c
|
$(CC) $(CFLAGS) -g -c bootloader.c
|
||||||
$(LD) $(LFLAGS) $(LIB_DIRS) startup.o init.o kernel.o libsys.o bootloader.o -o $@.elf $(LIBS) >$@.map
|
$(LD) $(LFLAGS) $(LIB_DIRS) startup.o kernel.o libsys.o bootloader.o -o $@.elf $(LIBS) >$@.map
|
||||||
$(OBJDUMP) -D $@.elf > $@.dis
|
$(OBJDUMP) -D $@.elf > $@.dis
|
||||||
$(OBJCOPY) $@.elf -O binary $@.ROM.bin
|
$(OBJCOPY) $@.elf -O binary $@.ROM.bin
|
||||||
$(OBJCOPY) -O srec $@.elf $@.srec
|
$(OBJCOPY) -O srec $@.elf $@.srec
|
||||||
@@ -48,7 +47,7 @@ bootloader: libsys bootloader.c
|
|||||||
bootloader_flash: libsys bootloader_with_flash.c
|
bootloader_flash: libsys bootloader_with_flash.c
|
||||||
$(CC) $(CFLAGS) -g -c bootloader_with_flash.c
|
$(CC) $(CFLAGS) -g -c bootloader_with_flash.c
|
||||||
$(CC) $(CFLAGS) -g -c ../cfiflash.c
|
$(CC) $(CFLAGS) -g -c ../cfiflash.c
|
||||||
$(LD) $(LFLAGS) $(LIB_DIRS) startup.o init.o kernel.o libsys.o cfiflash.o bootloader_with_flash.o -o $@.elf $(LIBS) >$@.map
|
$(LD) $(LFLAGS) $(LIB_DIRS) startup.o kernel.o libsys.o cfiflash.o bootloader_with_flash.o -o $@.elf $(LIBS) >$@.map
|
||||||
$(OBJDUMP) -D $@.elf > $@.dis
|
$(OBJDUMP) -D $@.elf > $@.dis
|
||||||
$(OBJCOPY) $@.elf -O binary $@.ROM.bin
|
$(OBJCOPY) $@.elf -O binary $@.ROM.bin
|
||||||
$(OBJCOPY) -O srec $@.elf $@.srec
|
$(OBJCOPY) -O srec $@.elf $@.srec
|
||||||
@@ -56,8 +55,8 @@ bootloader_flash: libsys bootloader_with_flash.c
|
|||||||
|
|
||||||
test: libsys test.c
|
test: libsys test.c
|
||||||
$(CC) $(CFLAGS) -g -c test.c
|
$(CC) $(CFLAGS) -g -c test.c
|
||||||
$(LD) $(LFLAGS) $(LIB_DIRS) startup.o init.o kernel.o libsys.o test.o -o $@.elf $(LIBS) >$@.map
|
$(LD) $(LFLAGS) $(LIB_DIRS) startup.o kernel.o libsys.o test.o -o $@.elf $(LIBS) >$@.map
|
||||||
$(OBJDUMP) -D $@.elf > $@.dis
|
$(OBJDUMP) -d $@.elf > $@.dis
|
||||||
$(OBJCOPY) $@.elf -O binary $@.ROM.bin
|
$(OBJCOPY) $@.elf -O binary $@.ROM.bin
|
||||||
$(OBJCOPY) -O srec $@.elf $@.srec
|
$(OBJCOPY) -O srec $@.elf $@.srec
|
||||||
$(ROMGEN) $@.ROM.bin 10 $(ENDIAN_FLAGS)
|
$(ROMGEN) $@.ROM.bin 10 $(ENDIAN_FLAGS)
|
||||||
|
|||||||
@@ -6,11 +6,6 @@ MEMORY
|
|||||||
io : ORIGIN = 0xA0000000, LENGTH = 0x00800000 /* 8M */
|
io : ORIGIN = 0xA0000000, LENGTH = 0x00800000 /* 8M */
|
||||||
}
|
}
|
||||||
|
|
||||||
OUTPUT_ARCH(mips)
|
|
||||||
SEARCH_DIR(".");
|
|
||||||
SEARCH_DIR("/usr/local/mipsel-elf/lib:/usr/local/mipsel-elf/lib/eb");
|
|
||||||
SEARCH_DIR("/usr/local/lib/gcc/mipsel-elf/4.3.3:/usr/local/lib/gcc/mipsel-elf/4.3.3/eb");
|
|
||||||
|
|
||||||
stack_ptr = 0x7FFFEFF0;
|
stack_ptr = 0x7FFFEFF0;
|
||||||
baudrate = 0x0D;
|
baudrate = 0x0D;
|
||||||
sys_led_port = 0xA0000000;
|
sys_led_port = 0xA0000000;
|
||||||
@@ -29,7 +24,7 @@ SECTIONS
|
|||||||
entry = ALIGN(4);
|
entry = ALIGN(4);
|
||||||
_entry = ALIGN(4);
|
_entry = ALIGN(4);
|
||||||
__entry = ALIGN(4);
|
__entry = ALIGN(4);
|
||||||
*(.stext)
|
*(.init)
|
||||||
} > rom
|
} > rom
|
||||||
|
|
||||||
.ktext ORIGIN(rom) + 0x180 :
|
.ktext ORIGIN(rom) + 0x180 :
|
||||||
|
|||||||
@@ -7,11 +7,6 @@ MEMORY
|
|||||||
io : ORIGIN = 0xAC000000, LENGTH = 0x00800000 /* 8M */
|
io : ORIGIN = 0xAC000000, LENGTH = 0x00800000 /* 8M */
|
||||||
}
|
}
|
||||||
|
|
||||||
OUTPUT_ARCH(mips)
|
|
||||||
SEARCH_DIR(".");
|
|
||||||
SEARCH_DIR("/usr/local/mipsel-elf/lib:/usr/local/mipsel-elf/lib/eb");
|
|
||||||
SEARCH_DIR("/usr/local/lib/gcc/mipsel-elf/4.3.3:/usr/local/lib/gcc/mipsel-elf/4.3.3/eb");
|
|
||||||
|
|
||||||
stack_ptr = 0x83FFEFF0;
|
stack_ptr = 0x83FFEFF0;
|
||||||
baudrate = 0x0D;
|
baudrate = 0x0D;
|
||||||
sys_led_port = 0xAC000000;
|
sys_led_port = 0xAC000000;
|
||||||
|
|||||||
@@ -1,18 +0,0 @@
|
|||||||
.file "init.S"
|
|
||||||
.text
|
|
||||||
.section .init,"ax"
|
|
||||||
.globl _init
|
|
||||||
.align 2
|
|
||||||
.extern end
|
|
||||||
|
|
||||||
_init:
|
|
||||||
.set noreorder
|
|
||||||
|
|
||||||
# set uart
|
|
||||||
la $26, sys_uart_baud
|
|
||||||
addiu $27, $0, baudrate
|
|
||||||
sw $27, 0($26)
|
|
||||||
|
|
||||||
jr $ra
|
|
||||||
|
|
||||||
.set reorder
|
|
||||||
@@ -2,7 +2,6 @@
|
|||||||
|
|
||||||
.text
|
.text
|
||||||
.section .init,"ax"
|
.section .init,"ax"
|
||||||
.extern _init
|
|
||||||
.align 2
|
.align 2
|
||||||
|
|
||||||
_start:
|
_start:
|
||||||
@@ -28,11 +27,12 @@ _start:
|
|||||||
# Invalidate D-Cache
|
# Invalidate D-Cache
|
||||||
cop0 34
|
cop0 34
|
||||||
|
|
||||||
# jump init
|
_init:
|
||||||
la $26, _init
|
# set uart
|
||||||
jalr $26
|
la $26, sys_uart_baud
|
||||||
nop
|
addiu $27, $0, baudrate
|
||||||
|
sw $27, 0($26)
|
||||||
|
|
||||||
la $26, main
|
la $26, main
|
||||||
|
|
||||||
jalr $26
|
jalr $26
|
||||||
|
|||||||
@@ -10,8 +10,16 @@ void main()
|
|||||||
*pGPIODIR = GPIO_0_DFLT_DIR;
|
*pGPIODIR = GPIO_0_DFLT_DIR;
|
||||||
uint8_t led = 0;
|
uint8_t led = 0;
|
||||||
|
|
||||||
|
sputs("Hello, world!\n");
|
||||||
while(1)
|
while(1)
|
||||||
{
|
{
|
||||||
|
sputs("Iteration # ");print_word(led);sputs("\n");
|
||||||
|
|
||||||
|
if(led == 0)
|
||||||
|
{
|
||||||
|
memdump((uint8_t*)pRAM, 0, 16, 256);
|
||||||
|
}
|
||||||
|
|
||||||
*pGPIO = led;
|
*pGPIO = led;
|
||||||
for (i=0; i < 1024*1024; i++)
|
for (i=0; i < 1024*1024; i++)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user