-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcyfx_gcc_startup.S
56 lines (44 loc) · 1007 Bytes
/
cyfx_gcc_startup.S
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# Copyright Cypress Semiconductor Corporation, 2010-2018,
# All Rights Reserved
# UNPUBLISHED, LICENSED SOFTWARE.
#
# CONFIDENTIAL AND PROPRIETARY INFORMATION
# WHICH IS THE PROPERTY OF CYPRESS.
#
# Use of this file is governed
# by the license agreement included in the file
#
# <install>/license/license.txt
#
# where <install> is the Cypress software
# installation root directory path.
#
# Cypress FX3 Firmware Startup code
.section .text
.code 32
.global jump
jump:
bx R0
.global CyU3PToolChainInit
CyU3PToolChainInit:
# clear the BSS area
__main:
mov R0, #0
ldr R1, =_bss_start
ldr R2, =_bss_end
1: cmp R1, R2
strlo R0, [R1], #4
blo 1b
b main
.global __user_initial_stackheap
__user_initial_stackheap:
# The tool chain is not expected to place the stack.
# No heap is expected to be used by USB 3.0 platform drivers.
# Place them as required by the user code
.if INTER == TRUE
bx lr
.else
mov pc, lr
.endif
.end
# []