Changeset 33 in XOpenSparcT1
- Timestamp:
- 04/07/11 16:19:25 (14 years ago)
- Location:
- trunk
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WB/wb_conbus_top.v
r26 r33 144 144 parameter s1_addr = {40'h800000FFF0,1'b0}; // slave 1 address 145 145 146 //ETHERNET 146 147 parameter s2_addr_w = 56 ; 147 148 parameter s2_addr = {56'h800000FFF0C2C1}; // slave 2 address 149 150 //UART 148 151 parameter s3_addr_w = 60 ; 149 152 parameter s3_addr = {60'h800000FFF0C2C00}; // slave 3 address 153 150 154 parameter s4_addr_w = 37 ; 151 155 parameter s4_addr = {36'h800000FFF,1'b1}; // slave 4 address -
trunk/os2wb/os2wb.v
r27 r33 122 122 //`define MEM_SIZE 64'h00000000_10000000 //256 MB 123 123 //`define MEM_SIZE 64'h00000000_00100000 //1MB 124 `define MEM_SIZE 64'h00000000_0000 0100 //1KB124 `define MEM_SIZE 64'h00000000_00001000 //16KB 125 125 126 126 // sal: escludo test della DRAM `define TEST_DRAM 1 … … 689 689 if(wb_ack) 690 690 begin 691 $display("INFO: OS2WB: PCX_REQ_STEP1_1 wb_addr = %x ",wb_addr);691 $display("INFO: OS2WB: PCX_REQ_STEP1_1 wb_addr = %x wb_data_i = %x wb_data_o = ",wb_addr, wb_data_i,wb_data_o); 692 692 cpx_packet_1[144]<=1; // Valid 693 693 cpx_packet_1[139]<=(pcx_packet_d[122:118]==5'b00000) || (pcx_packet_d[122:118]==5'b10000) ? 1:0; // L2 always miss on load and ifill -
trunk/sw/linker.lds
r32 r33 2 2 3 3 OUTPUT_FORMAT("elf64-sparc") 4 ENTRY( main)4 ENTRY(__setup) 5 5 6 6 7 7 SECTIONS { 8 .text 0x00000020 : { *(.text) } 8 .boot 0x0000000000000020 : { *(.boot);} 9 .text : { *(.text) } 9 10 .data : { *(.data) } 10 11 .bss : { *(.bss) *(COMMON) } -
trunk/sw/uart.c
r32 r33 1 1 #include "uart.h" 2 2 3 const int UART_BASE_ADR[1] = {0};3 const long UART_BASE_ADR[1] = {0x800000FFF0C2C000}; 4 4 const int UART_BAUDS[1] = {0}; 5 5 const int IN_CLK =50000000; … … 32 32 volatile int tx_level, rx_level; 33 33 34 void main() __attribute__((noreturn));35 void main()34 void sal_main() __attribute__((noreturn)); 35 void sal_main() 36 36 { 37 asm("mov 0x00, %sp\n"); 38 asm("mov 0x00, %fp\n"); 37 38 39 /* 40 #define CONFIG_SYS_GBL_DATA_SIZE 128 / size in bytes reserved for initial data 41 #define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_END - CONFIG_SYS_GBL_DATA_SIZE) 42 #define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET 43 44 45 stackp: 46 set CONFIG_SYS_INIT_SP_OFFSET, %fp 47 andn %fp, 0x0f, %fp 48 sub %fp, 64, %sp 49 */ 39 50 uart_init(0); 40 51 for(;;) { … … 49 60 int divisor; 50 61 float float_divisor; 51 52 62 /* Reset receiver and transmiter */ 53 63 REG8( UART_FCR ) = UART_FCR_ENABLE_FIFO | UART_FCR_CLEAR_RCVR | UART_FCR_CLEAR_XMIT | UART_FCR_TRIGGER_14; 54 64 //asm("clr %sp \n"); 65 //asm("sethi %hi(8), %sp \n"); 66 //asm("mov 0xfff, %sp \n"); 67 55 68 /* Disable all interrupts */ 56 69 REG8(UART_BASE_ADR[core] + UART_IER) = 0x00; -
trunk/tools/compila
r30 r33 9 9 10 10 11 #assembla il boot.S 12 /opt/sparc64-sun-solaris2.8-toolchain/bin/sparc-sun-solaris2.8-as -64 boot.S -o boot.o 13 11 14 ## compila con ISA SPARC-V9 12 /opt/sparc64-sun-solaris2.8-toolchain/bin/sparc64-sun-solaris2.8-gcc - ffreestanding -nostdinc -Os -c $1.c15 /opt/sparc64-sun-solaris2.8-toolchain/bin/sparc64-sun-solaris2.8-gcc -m64 -ffreestanding -nostdinc -Os -c $1.c 13 16 14 17 ## linka con ISA SPARC-V9 a 64 bits 15 18 echo "create $1.bin" 16 /opt/sparc64-sun-solaris2.8-toolchain/sparc64-sun-solaris2.8/bin/ld -melf64_sparc --script linker.lds $1.o -o $1.bin19 /opt/sparc64-sun-solaris2.8-toolchain/sparc64-sun-solaris2.8/bin/ld -melf64_sparc --script linker.lds boot.o $1.o -o $1.bin 17 20 18 21
Note: See TracChangeset
for help on using the changeset viewer.