URL
https://opencores.org/ocsvn/or1k/or1k/trunk
[/] [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
|
© copyright 1999-2025
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.