OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [orpmon/] [reset.S] - Diff between revs 817 and 820

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 817 Rev 820
Line 9... Line 9...
        .extern _src_beg
        .extern _src_beg
        .extern _dst_beg
        .extern _dst_beg
        .extern _dst_end
        .extern _dst_end
        .extern _c_reset
        .extern _c_reset
        .extern _int_main
        .extern _int_main
 
        .extern _crc32
 
 
        /* Used by global.src_addr for default value */
        /* Used by global.src_addr for default value */
        .extern _src_addr
        .extern _src_addr
 
 
        .global _lolev_ie
        .global _lolev_ie
        .global _lolev_idis
        .global _lolev_idis
        .global _align
        .global _align
 
        .global _calc_mycrc32
 
 
        .section .stack, "aw", @nobits
        .section .stack, "aw", @nobits
.space  STACK_SIZE
.space  STACK_SIZE
_stack:
_stack:
 
                                .section .crc
 
_mycrc32:
 
        .word   0xcccccccc
 
_mysize:
 
        .word 0xdddddddd
 
 
 
_calc_mycrc32:
 
                                l.addi  r3,r0,0
 
        l.movhi r4,hi(_calc_mycrc32)
 
        l.ori   r4,r4,lo(_calc_mycrc32)
 
        l.movhi r5,hi(_mysize)
 
        l.ori   r5,r5,lo(_mysize)
 
        l.lwz   r5,0(r5)
 
 
 
        /* unsigned long crc32 (unsigned long crc, const unsigned char *buf, unsigned long len); */
 
                                l.jal           _crc32
 
                                l.nop
 
 
 
                                l.movhi r3,hi(_mycrc32)
 
        l.ori   r3,r3,lo(_mycrc32)
 
        l.lwz   r3,0(r3)
 
 
 
        l.jr            r9
 
                                l.xor     r11,r3,r11
 
                                .org 0x100
 
 
.if IN_FLASH
.if IN_FLASH
        .section .reset, "ax"
        .section .reset, "ax"
.else
.else
        .section .vectors, "ax"
        .section .vectors, "ax"
.endif
.endif
 
 
        .org 0x100
 
_reset:
_reset:
.if IN_FLASH
.if IN_FLASH
        l.movhi r3,hi(MC_BASE_ADDR)
        l.movhi r3,hi(MC_BASE_ADDR)
        l.ori   r3,r3,MC_BA_MASK
        l.ori   r3,r3,MC_BA_MASK
        l.addi  r5,r0,0x00
        l.addi  r5,r0,0x00

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.