Hi Will,

The issue is not visible during build time but on a platform startup.

I believe that Michal's patch solves this issue so let's apply this patch
using git am or accept pull request he has prepared.

Best regards,
Lukasz

On Nov 7, 2016 4:12 PM, "will sanfilippo" <[email protected]> wrote:

> Hey all:
>
> Sorry about this. I think my build found the startup file somewhere but
> what is in develop doesnt. We will address this today.
>
> Thanks, and sorry.
>
> Will
>
> > On Nov 7, 2016, at 6:13 AM, Michał Narajowski <
> [email protected]> wrote:
> >
> > Also sent a pull request.
> >
> > 2016-11-07 14:15 GMT+01:00 Michał Narajowski <
> [email protected]>
> > :
> >
> >> With this patch it is possible to start nrf52dk board.
> >> Regression observed after patch:
> >> 290c683 MYNEWT-475: BSP Cleanup
> >> ---
> >> .../src/arch/cortex_m4/gcc_startup_nrf52.s         | 289
> >> +++++++++++++++++++++
> >> .../src/arch/cortex_m4/gcc_startup_nrf52_split.s   | 150 +++++++++++
> >> hw/mcu/nordic/nrf52xxx/src/gcc_startup_nrf52.s     | 289
> >> ---------------------
> >> .../nordic/nrf52xxx/src/gcc_startup_nrf52_split.s  | 150 -----------
> >> 4 files changed, 439 insertions(+), 439 deletions(-)
> >> create mode 100755 hw/mcu/nordic/nrf52xxx/src/
> arch/cortex_m4/gcc_startup_
> >> nrf52.s
> >> create mode 100755 hw/mcu/nordic/nrf52xxx/src/
> arch/cortex_m4/gcc_startup_
> >> nrf52_split.s
> >> delete mode 100755 hw/mcu/nordic/nrf52xxx/src/gcc_startup_nrf52.s
> >> delete mode 100755 hw/mcu/nordic/nrf52xxx/src/gcc_startup_nrf52_split.s
> >>
> >> diff --git a/hw/mcu/nordic/nrf52xxx/src/arch/cortex_m4/gcc_startup_
> nrf52.s
> >> b/hw/mcu/nordic/nrf52xxx/src/arch/cortex_m4/gcc_startup_nrf52.s
> >> new file mode 100755
> >> index 0000000..fb804fd
> >> --- /dev/null
> >> +++ b/hw/mcu/nordic/nrf52xxx/src/arch/cortex_m4/gcc_startup_nrf52.s
> >> @@ -0,0 +1,289 @@
> >> +/*
> >> +Copyright (c) 2015, Nordic Semiconductor ASA
> >> +All rights reserved.
> >> +
> >> +Redistribution and use in source and binary forms, with or without
> >> +modification, are permitted provided that the following conditions are
> >> met:
> >> +
> >> +* Redistributions of source code must retain the above copyright
> notice,
> >> this
> >> +  list of conditions and the following disclaimer.
> >> +
> >> +* Redistributions in binary form must reproduce the above copyright
> >> notice,
> >> +  this list of conditions and the following disclaimer in the
> >> documentation
> >> +  and/or other materials provided with the distribution.
> >> +
> >> +* Neither the name of Nordic Semiconductor ASA nor the names of its
> >> +  contributors may be used to endorse or promote products derived from
> >> +  this software without specific prior written permission.
> >> +
> >> +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
> >> IS"
> >> +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
> THE
> >> +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
> >> PURPOSE ARE
> >> +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
> >> LIABLE
> >> +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
> CONSEQUENTIAL
> >> +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
> GOODS OR
> >> +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
> HOWEVER
> >> +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
> >> LIABILITY,
> >> +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
> THE
> >> USE
> >> +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> >> +*/
> >> +
> >> +/*
> >> +NOTE: Template files (including this one) are application specific and
> >> therefore
> >> +expected to be copied into the application project folder prior to its
> >> use!
> >> +*/
> >> +
> >> +    .syntax unified
> >> +    .arch armv7-m
> >> +
> >> +    .section .stack
> >> +    .align 3
> >> +    .equ    Stack_Size, 432
> >> +    .globl    __StackTop
> >> +    .globl    __StackLimit
> >> +__StackLimit:
> >> +    .space    Stack_Size
> >> +    .size __StackLimit, . - __StackLimit
> >> +__StackTop:
> >> +    .size __StackTop, . - __StackTop
> >> +
> >> +    .section .heap
> >> +    .align 3
> >> +#ifdef __HEAP_SIZE
> >> +    .equ    Heap_Size, __HEAP_SIZE
> >> +#else
> >> +    .equ    Heap_Size, 0
> >> +#endif
> >> +    .globl    __HeapBase
> >> +    .globl    __HeapLimit
> >> +__HeapBase:
> >> +    .if    Heap_Size
> >> +    .space    Heap_Size
> >> +    .endif
> >> +    .size __HeapBase, . - __HeapBase
> >> +__HeapLimit:
> >> +    .size __HeapLimit, . - __HeapLimit
> >> +
> >> +    .section .isr_vector
> >> +    .align 2
> >> +    .globl __isr_vector
> >> +__isr_vector:
> >> +    .long    __StackTop            /* Top of Stack */
> >> +    .long   Reset_Handler               /* Reset Handler */
> >> +    .long   NMI_Handler                 /* NMI Handler */
> >> +    .long   HardFault_Handler           /* Hard Fault Handler */
> >> +    .long   0                           /* Reserved */
> >> +    .long   0                           /* Reserved */
> >> +    .long   0                           /* Reserved */
> >> +    .long   0                           /* Reserved */
> >> +    .long   0                           /* Reserved */
> >> +    .long   0                           /* Reserved */
> >> +    .long   0                           /* Reserved */
> >> +    .long   SVC_Handler                 /* SVCall Handler */
> >> +    .long   0                           /* Reserved */
> >> +    .long   0                           /* Reserved */
> >> +    .long   PendSV_Handler              /* PendSV Handler */
> >> +    .long   SysTick_Handler             /* SysTick Handler */
> >> +
> >> +  /* External Interrupts */
> >> +    .long   POWER_CLOCK_IRQHandler
> >> +    .long   RADIO_IRQHandler
> >> +    .long   UARTE0_UART0_IRQHandler
> >> +    .long   SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler
> >> +    .long   SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler
> >> +    .long   NFCT_IRQHandler
> >> +    .long   GPIOTE_IRQHandler
> >> +    .long   SAADC_IRQHandler
> >> +    .long   TIMER0_IRQHandler
> >> +    .long   TIMER1_IRQHandler
> >> +    .long   TIMER2_IRQHandler
> >> +    .long   RTC0_IRQHandler
> >> +    .long   TEMP_IRQHandler
> >> +    .long   RNG_IRQHandler
> >> +    .long   ECB_IRQHandler
> >> +    .long   CCM_AAR_IRQHandler
> >> +    .long   WDT_IRQHandler
> >> +    .long   RTC1_IRQHandler
> >> +    .long   QDEC_IRQHandler
> >> +    .long   COMP_LPCOMP_IRQHandler
> >> +    .long   SWI0_EGU0_IRQHandler
> >> +    .long   SWI1_EGU1_IRQHandler
> >> +    .long   SWI2_EGU2_IRQHandler
> >> +    .long   SWI3_EGU3_IRQHandler
> >> +    .long   SWI4_EGU4_IRQHandler
> >> +    .long   SWI5_EGU5_IRQHandler
> >> +    .long   TIMER3_IRQHandler
> >> +    .long   TIMER4_IRQHandler
> >> +    .long   PWM0_IRQHandler
> >> +    .long   PDM_IRQHandler
> >> +    .long   0                         /*Reserved */
> >> +    .long   0                         /*Reserved */
> >> +    .long   MWU_IRQHandler
> >> +    .long   PWM1_IRQHandler
> >> +    .long   PWM2_IRQHandler
> >> +    .long   SPIM2_SPIS2_SPI2_IRQHandler
> >> +    .long   RTC2_IRQHandler
> >> +    .long   I2S_IRQHandler
> >> +
> >> +    .size    __isr_vector, . - __isr_vector
> >> +
> >> +/* Reset Handler */
> >> +
> >> +    .text
> >> +    .thumb
> >> +    .thumb_func
> >> +    .align 1
> >> +    .globl    Reset_Handler
> >> +    .type    Reset_Handler, %function
> >> +Reset_Handler:
> >> +    .fnstart
> >> +
> >> +/*     Loop to copy data from read only memory to RAM. The ranges
> >> + *      of copy from/to are specified by following symbols evaluated in
> >> + *      linker script.
> >> + *      __etext: End of code section, i.e., begin of data sections to
> >> copy from.
> >> + *      __data_start__/__data_end__: RAM address range that data
> should be
> >> + *      copied to. Both must be aligned to 4 bytes boundary.  */
> >> +
> >> +    ldr    r1, =__etext
> >> +    ldr    r2, =__data_start__
> >> +    ldr    r3, =__data_end__
> >> +
> >> +    subs    r3, r2
> >> +    ble     .LC0
> >> +
> >> +.LC1:
> >> +    subs    r3, 4
> >> +    ldr    r0, [r1,r3]
> >> +    str    r0, [r2,r3]
> >> +    bgt    .LC1
> >> +
> >> +.LC0:
> >> +
> >> +    LDR     R0, =__HeapBase
> >> +    LDR     R1, =__HeapLimit
> >> +    BL      _sbrkInit
> >> +
> >> +    LDR     R0, =SystemInit
> >> +    BLX     R0
> >> +
> >> +    LDR     R0, =_start
> >> +    BX      R0
> >> +
> >> +    .pool
> >> +    .cantunwind
> >> +    .fnend
> >> +    .size   Reset_Handler,.-Reset_Handler
> >> +
> >> +    .section ".text"
> >> +
> >> +
> >> +/* Dummy Exception Handlers (infinite loops which can be modified) */
> >> +
> >> +    .weak   NMI_Handler
> >> +    .type   NMI_Handler, %function
> >> +NMI_Handler:
> >> +    B       .
> >> +    .size   NMI_Handler, . - NMI_Handler
> >> +
> >> +
> >> +    .weak   HardFault_Handler
> >> +    .type   HardFault_Handler, %function
> >> +HardFault_Handler:
> >> +    B       .
> >> +    .size   HardFault_Handler, . - HardFault_Handler
> >> +
> >> +
> >> +    .weak   MemoryManagement_Handler
> >> +    .type   MemoryManagement_Handler, %function
> >> +MemoryManagement_Handler:
> >> +    B       .
> >> +    .size   MemoryManagement_Handler, . - MemoryManagement_Handler
> >> +
> >> +
> >> +    .weak   BusFault_Handler
> >> +    .type   BusFault_Handler, %function
> >> +BusFault_Handler:
> >> +    B       .
> >> +    .size   BusFault_Handler, . - BusFault_Handler
> >> +
> >> +
> >> +    .weak   UsageFault_Handler
> >> +    .type   UsageFault_Handler, %function
> >> +UsageFault_Handler:
> >> +    B       .
> >> +    .size   UsageFault_Handler, . - UsageFault_Handler
> >> +
> >> +
> >> +    .weak   SVC_Handler
> >> +    .type   SVC_Handler, %function
> >> +SVC_Handler:
> >> +    B       .
> >> +    .size   SVC_Handler, . - SVC_Handler
> >> +
> >> +
> >> +    .weak   PendSV_Handler
> >> +    .type   PendSV_Handler, %function
> >> +PendSV_Handler:
> >> +    B       .
> >> +    .size   PendSV_Handler, . - PendSV_Handler
> >> +
> >> +
> >> +    .weak   SysTick_Handler
> >> +    .type   SysTick_Handler, %function
> >> +SysTick_Handler:
> >> +    B       .
> >> +    .size   SysTick_Handler, . - SysTick_Handler
> >> +
> >> +
> >> +/* IRQ Handlers */
> >> +
> >> +    .globl  Default_Handler
> >> +    .type   Default_Handler, %function
> >> +Default_Handler:
> >> +    B       .
> >> +    .size   Default_Handler, . - Default_Handler
> >> +
> >> +    .macro  IRQ handler
> >> +    .weak   \handler
> >> +    .set    \handler, Default_Handler
> >> +    .endm
> >> +
> >> +    IRQ  POWER_CLOCK_IRQHandler
> >> +    IRQ  RADIO_IRQHandler
> >> +    IRQ  UARTE0_UART0_IRQHandler
> >> +    IRQ  SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler
> >> +    IRQ  SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler
> >> +    IRQ  NFCT_IRQHandler
> >> +    IRQ  GPIOTE_IRQHandler
> >> +    IRQ  SAADC_IRQHandler
> >> +    IRQ  TIMER0_IRQHandler
> >> +    IRQ  TIMER1_IRQHandler
> >> +    IRQ  TIMER2_IRQHandler
> >> +    IRQ  RTC0_IRQHandler
> >> +    IRQ  TEMP_IRQHandler
> >> +    IRQ  RNG_IRQHandler
> >> +    IRQ  ECB_IRQHandler
> >> +    IRQ  CCM_AAR_IRQHandler
> >> +    IRQ  WDT_IRQHandler
> >> +    IRQ  RTC1_IRQHandler
> >> +    IRQ  QDEC_IRQHandler
> >> +    IRQ  COMP_LPCOMP_IRQHandler
> >> +    IRQ  SWI0_EGU0_IRQHandler
> >> +    IRQ  SWI1_EGU1_IRQHandler
> >> +    IRQ  SWI2_EGU2_IRQHandler
> >> +    IRQ  SWI3_EGU3_IRQHandler
> >> +    IRQ  SWI4_EGU4_IRQHandler
> >> +    IRQ  SWI5_EGU5_IRQHandler
> >> +    IRQ  TIMER3_IRQHandler
> >> +    IRQ  TIMER4_IRQHandler
> >> +    IRQ  PWM0_IRQHandler
> >> +    IRQ  PDM_IRQHandler
> >> +    IRQ  MWU_IRQHandler
> >> +    IRQ  PWM1_IRQHandler
> >> +    IRQ  PWM2_IRQHandler
> >> +    IRQ  SPIM2_SPIS2_SPI2_IRQHandler
> >> +    IRQ  RTC2_IRQHandler
> >> +    IRQ  I2S_IRQHandler
> >> +
> >> +  .end
> >> diff --git a/hw/mcu/nordic/nrf52xxx/src/arch/cortex_m4/gcc_startup_
> nrf52_split.s
> >> b/hw/mcu/nordic/nrf52xxx/src/arch/cortex_m4/gcc_startup_nrf52_split.s
> >> new file mode 100755
> >> index 0000000..7426848
> >> --- /dev/null
> >> +++ b/hw/mcu/nordic/nrf52xxx/src/arch/cortex_m4/gcc_startup_
> nrf52_split.s
> >> @@ -0,0 +1,150 @@
> >> +/*
> >> +Copyright (c) 2015, Nordic Semiconductor ASA
> >> +All rights reserved.
> >> +
> >> +Redistribution and use in source and binary forms, with or without
> >> +modification, are permitted provided that the following conditions are
> >> met:
> >> +
> >> +* Redistributions of source code must retain the above copyright
> notice,
> >> this
> >> +  list of conditions and the following disclaimer.
> >> +
> >> +* Redistributions in binary form must reproduce the above copyright
> >> notice,
> >> +  this list of conditions and the following disclaimer in the
> >> documentation
> >> +  and/or other materials provided with the distribution.
> >> +
> >> +* Neither the name of Nordic Semiconductor ASA nor the names of its
> >> +  contributors may be used to endorse or promote products derived from
> >> +  this software without specific prior written permission.
> >> +
> >> +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
> >> IS"
> >> +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
> THE
> >> +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
> >> PURPOSE ARE
> >> +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
> >> LIABLE
> >> +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
> CONSEQUENTIAL
> >> +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
> GOODS OR
> >> +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
> HOWEVER
> >> +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
> >> LIABILITY,
> >> +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
> THE
> >> USE
> >> +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> >> +*/
> >> +
> >> +/*
> >> +NOTE: Template files (including this one) are application specific and
> >> therefore
> >> +expected to be copied into the application project folder prior to its
> >> use!
> >> +*/
> >> +
> >> +    .syntax unified
> >> +    .arch armv7-m
> >> +    .section .stack
> >> +    .align 3
> >> +    .equ    Stack_Size, 432
> >> +    .globl    __StackTop
> >> +    .globl    __StackLimit
> >> +__StackLimit:
> >> +    .space    Stack_Size
> >> +    .size __StackLimit, . - __StackLimit
> >> +__StackTop:
> >> +    .size __StackTop, . - __StackTop
> >> +
> >> +    .section .heap
> >> +    .align 3
> >> +#ifdef __HEAP_SIZE
> >> +    .equ    Heap_Size, __HEAP_SIZE
> >> +#else
> >> +    .equ    Heap_Size, 0
> >> +#endif
> >> +    .globl    __HeapBase
> >> +    .globl    __HeapLimit
> >> +__HeapBase:
> >> +    .if    Heap_Size
> >> +    .space    Heap_Size
> >> +    .endif
> >> +    .size __HeapBase, . - __HeapBase
> >> +__HeapLimit:
> >> +    .size __HeapLimit, . - __HeapLimit
> >> +
> >> +    .section .isr_vector_split
> >> +    .align 2
> >> +    .globl __isr_vector_split
> >> +__isr_vector_split:
> >> +    .long    __StackTop            /* Top of Stack */
> >> +    .long   Reset_Handler_split               /* Reset Handler */
> >> +
> >> +    .size    __isr_vector_split, . - __isr_vector_split
> >> +
> >> +/* Reset Handler */
> >> +
> >> +    .text
> >> +    .thumb
> >> +    .thumb_func
> >> +    .align 1
> >> +    .globl    Reset_Handler_split
> >> +    .type    Reset_Handler_split, %function
> >> +Reset_Handler_split:
> >> +    .fnstart
> >> +
> >> +
> >> +/*     Loop to copy data from read only memory to RAM. The ranges
> >> + *      of copy from/to are specified by following symbols evaluated in
> >> + *      linker script.
> >> + *      __etext: End of code section, i.e., begin of data sections to
> >> copy from.
> >> + *      __data_start__/__data_end__: RAM address range that data
> should be
> >> + *      copied to. Both must be aligned to 4 bytes boundary.  */
> >> +
> >> +    ldr    r1, =__etext
> >> +    ldr    r2, =__data_start__
> >> +    ldr    r3, =__data_end__
> >> +
> >> +    subs    r3, r2
> >> +    ble     .LC0
> >> +
> >> +.LC1:
> >> +    subs    r3, 4
> >> +    ldr    r0, [r1,r3]
> >> +    str    r0, [r2,r3]
> >> +    bgt    .LC1
> >> +
> >> +.LC0:
> >> +    ldr    r1, =__etext_loader
> >> +    ldr    r2, =__data_start___loader
> >> +    ldr    r3, =__data_end___loader
> >> +
> >> +    subs    r3, r2
> >> +    ble     .LC2
> >> +
> >> +.LC3:
> >> +    subs    r3, 4
> >> +    ldr    r0, [r1,r3]
> >> +    str    r0, [r2,r3]
> >> +    bgt    .LC3
> >> +.LC2:
> >> +
> >> +    subs    r0, r0
> >> +    ldr    r2, =__bss_start___loader
> >> +    ldr    r3, =__bss_end___loader
> >> +
> >> +    subs    r3, r2
> >> +    ble     .LC4
> >> +
> >> +.LC5:
> >> +    subs    r3, 4
> >> +    str    r0, [r2,r3]
> >> +    bgt    .LC5
> >> +.LC4:
> >> +
> >> +    LDR     R0, =__HeapBase
> >> +    LDR     R1, =__HeapLimit
> >> +    BL      _sbrkInit
> >> +
> >> +    LDR     R0, =SystemInit
> >> +    BLX     R0
> >> +    LDR     R0, =_start
> >> +    BX      R0
> >> +
> >> +    .pool
> >> +    .cantunwind
> >> +    .fnend
> >> +    .size   Reset_Handler_split,.-Reset_Handler_split
> >> +
> >> +    .section ".text"
> >> +  .end
> >> diff --git a/hw/mcu/nordic/nrf52xxx/src/gcc_startup_nrf52.s
> >> b/hw/mcu/nordic/nrf52xxx/src/gcc_startup_nrf52.s
> >> deleted file mode 100755
> >> index fb804fd..0000000
> >> --- a/hw/mcu/nordic/nrf52xxx/src/gcc_startup_nrf52.s
> >> +++ /dev/null
> >> @@ -1,289 +0,0 @@
> >> -/*
> >> -Copyright (c) 2015, Nordic Semiconductor ASA
> >> -All rights reserved.
> >> -
> >> -Redistribution and use in source and binary forms, with or without
> >> -modification, are permitted provided that the following conditions are
> >> met:
> >> -
> >> -* Redistributions of source code must retain the above copyright
> notice,
> >> this
> >> -  list of conditions and the following disclaimer.
> >> -
> >> -* Redistributions in binary form must reproduce the above copyright
> >> notice,
> >> -  this list of conditions and the following disclaimer in the
> >> documentation
> >> -  and/or other materials provided with the distribution.
> >> -
> >> -* Neither the name of Nordic Semiconductor ASA nor the names of its
> >> -  contributors may be used to endorse or promote products derived from
> >> -  this software without specific prior written permission.
> >> -
> >> -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
> >> IS"
> >> -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
> THE
> >> -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
> >> PURPOSE ARE
> >> -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
> >> LIABLE
> >> -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
> CONSEQUENTIAL
> >> -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
> GOODS OR
> >> -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
> HOWEVER
> >> -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
> >> LIABILITY,
> >> -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
> THE
> >> USE
> >> -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> >> -*/
> >> -
> >> -/*
> >> -NOTE: Template files (including this one) are application specific and
> >> therefore
> >> -expected to be copied into the application project folder prior to its
> >> use!
> >> -*/
> >> -
> >> -    .syntax unified
> >> -    .arch armv7-m
> >> -
> >> -    .section .stack
> >> -    .align 3
> >> -    .equ    Stack_Size, 432
> >> -    .globl    __StackTop
> >> -    .globl    __StackLimit
> >> -__StackLimit:
> >> -    .space    Stack_Size
> >> -    .size __StackLimit, . - __StackLimit
> >> -__StackTop:
> >> -    .size __StackTop, . - __StackTop
> >> -
> >> -    .section .heap
> >> -    .align 3
> >> -#ifdef __HEAP_SIZE
> >> -    .equ    Heap_Size, __HEAP_SIZE
> >> -#else
> >> -    .equ    Heap_Size, 0
> >> -#endif
> >> -    .globl    __HeapBase
> >> -    .globl    __HeapLimit
> >> -__HeapBase:
> >> -    .if    Heap_Size
> >> -    .space    Heap_Size
> >> -    .endif
> >> -    .size __HeapBase, . - __HeapBase
> >> -__HeapLimit:
> >> -    .size __HeapLimit, . - __HeapLimit
> >> -
> >> -    .section .isr_vector
> >> -    .align 2
> >> -    .globl __isr_vector
> >> -__isr_vector:
> >> -    .long    __StackTop            /* Top of Stack */
> >> -    .long   Reset_Handler               /* Reset Handler */
> >> -    .long   NMI_Handler                 /* NMI Handler */
> >> -    .long   HardFault_Handler           /* Hard Fault Handler */
> >> -    .long   0                           /* Reserved */
> >> -    .long   0                           /* Reserved */
> >> -    .long   0                           /* Reserved */
> >> -    .long   0                           /* Reserved */
> >> -    .long   0                           /* Reserved */
> >> -    .long   0                           /* Reserved */
> >> -    .long   0                           /* Reserved */
> >> -    .long   SVC_Handler                 /* SVCall Handler */
> >> -    .long   0                           /* Reserved */
> >> -    .long   0                           /* Reserved */
> >> -    .long   PendSV_Handler              /* PendSV Handler */
> >> -    .long   SysTick_Handler             /* SysTick Handler */
> >> -
> >> -  /* External Interrupts */
> >> -    .long   POWER_CLOCK_IRQHandler
> >> -    .long   RADIO_IRQHandler
> >> -    .long   UARTE0_UART0_IRQHandler
> >> -    .long   SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler
> >> -    .long   SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler
> >> -    .long   NFCT_IRQHandler
> >> -    .long   GPIOTE_IRQHandler
> >> -    .long   SAADC_IRQHandler
> >> -    .long   TIMER0_IRQHandler
> >> -    .long   TIMER1_IRQHandler
> >> -    .long   TIMER2_IRQHandler
> >> -    .long   RTC0_IRQHandler
> >> -    .long   TEMP_IRQHandler
> >> -    .long   RNG_IRQHandler
> >> -    .long   ECB_IRQHandler
> >> -    .long   CCM_AAR_IRQHandler
> >> -    .long   WDT_IRQHandler
> >> -    .long   RTC1_IRQHandler
> >> -    .long   QDEC_IRQHandler
> >> -    .long   COMP_LPCOMP_IRQHandler
> >> -    .long   SWI0_EGU0_IRQHandler
> >> -    .long   SWI1_EGU1_IRQHandler
> >> -    .long   SWI2_EGU2_IRQHandler
> >> -    .long   SWI3_EGU3_IRQHandler
> >> -    .long   SWI4_EGU4_IRQHandler
> >> -    .long   SWI5_EGU5_IRQHandler
> >> -    .long   TIMER3_IRQHandler
> >> -    .long   TIMER4_IRQHandler
> >> -    .long   PWM0_IRQHandler
> >> -    .long   PDM_IRQHandler
> >> -    .long   0                         /*Reserved */
> >> -    .long   0                         /*Reserved */
> >> -    .long   MWU_IRQHandler
> >> -    .long   PWM1_IRQHandler
> >> -    .long   PWM2_IRQHandler
> >> -    .long   SPIM2_SPIS2_SPI2_IRQHandler
> >> -    .long   RTC2_IRQHandler
> >> -    .long   I2S_IRQHandler
> >> -
> >> -    .size    __isr_vector, . - __isr_vector
> >> -
> >> -/* Reset Handler */
> >> -
> >> -    .text
> >> -    .thumb
> >> -    .thumb_func
> >> -    .align 1
> >> -    .globl    Reset_Handler
> >> -    .type    Reset_Handler, %function
> >> -Reset_Handler:
> >> -    .fnstart
> >> -
> >> -/*     Loop to copy data from read only memory to RAM. The ranges
> >> - *      of copy from/to are specified by following symbols evaluated in
> >> - *      linker script.
> >> - *      __etext: End of code section, i.e., begin of data sections to
> >> copy from.
> >> - *      __data_start__/__data_end__: RAM address range that data
> should be
> >> - *      copied to. Both must be aligned to 4 bytes boundary.  */
> >> -
> >> -    ldr    r1, =__etext
> >> -    ldr    r2, =__data_start__
> >> -    ldr    r3, =__data_end__
> >> -
> >> -    subs    r3, r2
> >> -    ble     .LC0
> >> -
> >> -.LC1:
> >> -    subs    r3, 4
> >> -    ldr    r0, [r1,r3]
> >> -    str    r0, [r2,r3]
> >> -    bgt    .LC1
> >> -
> >> -.LC0:
> >> -
> >> -    LDR     R0, =__HeapBase
> >> -    LDR     R1, =__HeapLimit
> >> -    BL      _sbrkInit
> >> -
> >> -    LDR     R0, =SystemInit
> >> -    BLX     R0
> >> -
> >> -    LDR     R0, =_start
> >> -    BX      R0
> >> -
> >> -    .pool
> >> -    .cantunwind
> >> -    .fnend
> >> -    .size   Reset_Handler,.-Reset_Handler
> >> -
> >> -    .section ".text"
> >> -
> >> -
> >> -/* Dummy Exception Handlers (infinite loops which can be modified) */
> >> -
> >> -    .weak   NMI_Handler
> >> -    .type   NMI_Handler, %function
> >> -NMI_Handler:
> >> -    B       .
> >> -    .size   NMI_Handler, . - NMI_Handler
> >> -
> >> -
> >> -    .weak   HardFault_Handler
> >> -    .type   HardFault_Handler, %function
> >> -HardFault_Handler:
> >> -    B       .
> >> -    .size   HardFault_Handler, . - HardFault_Handler
> >> -
> >> -
> >> -    .weak   MemoryManagement_Handler
> >> -    .type   MemoryManagement_Handler, %function
> >> -MemoryManagement_Handler:
> >> -    B       .
> >> -    .size   MemoryManagement_Handler, . - MemoryManagement_Handler
> >> -
> >> -
> >> -    .weak   BusFault_Handler
> >> -    .type   BusFault_Handler, %function
> >> -BusFault_Handler:
> >> -    B       .
> >> -    .size   BusFault_Handler, . - BusFault_Handler
> >> -
> >> -
> >> -    .weak   UsageFault_Handler
> >> -    .type   UsageFault_Handler, %function
> >> -UsageFault_Handler:
> >> -    B       .
> >> -    .size   UsageFault_Handler, . - UsageFault_Handler
> >> -
> >> -
> >> -    .weak   SVC_Handler
> >> -    .type   SVC_Handler, %function
> >> -SVC_Handler:
> >> -    B       .
> >> -    .size   SVC_Handler, . - SVC_Handler
> >> -
> >> -
> >> -    .weak   PendSV_Handler
> >> -    .type   PendSV_Handler, %function
> >> -PendSV_Handler:
> >> -    B       .
> >> -    .size   PendSV_Handler, . - PendSV_Handler
> >> -
> >> -
> >> -    .weak   SysTick_Handler
> >> -    .type   SysTick_Handler, %function
> >> -SysTick_Handler:
> >> -    B       .
> >> -    .size   SysTick_Handler, . - SysTick_Handler
> >> -
> >> -
> >> -/* IRQ Handlers */
> >> -
> >> -    .globl  Default_Handler
> >> -    .type   Default_Handler, %function
> >> -Default_Handler:
> >> -    B       .
> >> -    .size   Default_Handler, . - Default_Handler
> >> -
> >> -    .macro  IRQ handler
> >> -    .weak   \handler
> >> -    .set    \handler, Default_Handler
> >> -    .endm
> >> -
> >> -    IRQ  POWER_CLOCK_IRQHandler
> >> -    IRQ  RADIO_IRQHandler
> >> -    IRQ  UARTE0_UART0_IRQHandler
> >> -    IRQ  SPIM0_SPIS0_TWIM0_TWIS0_SPI0_TWI0_IRQHandler
> >> -    IRQ  SPIM1_SPIS1_TWIM1_TWIS1_SPI1_TWI1_IRQHandler
> >> -    IRQ  NFCT_IRQHandler
> >> -    IRQ  GPIOTE_IRQHandler
> >> -    IRQ  SAADC_IRQHandler
> >> -    IRQ  TIMER0_IRQHandler
> >> -    IRQ  TIMER1_IRQHandler
> >> -    IRQ  TIMER2_IRQHandler
> >> -    IRQ  RTC0_IRQHandler
> >> -    IRQ  TEMP_IRQHandler
> >> -    IRQ  RNG_IRQHandler
> >> -    IRQ  ECB_IRQHandler
> >> -    IRQ  CCM_AAR_IRQHandler
> >> -    IRQ  WDT_IRQHandler
> >> -    IRQ  RTC1_IRQHandler
> >> -    IRQ  QDEC_IRQHandler
> >> -    IRQ  COMP_LPCOMP_IRQHandler
> >> -    IRQ  SWI0_EGU0_IRQHandler
> >> -    IRQ  SWI1_EGU1_IRQHandler
> >> -    IRQ  SWI2_EGU2_IRQHandler
> >> -    IRQ  SWI3_EGU3_IRQHandler
> >> -    IRQ  SWI4_EGU4_IRQHandler
> >> -    IRQ  SWI5_EGU5_IRQHandler
> >> -    IRQ  TIMER3_IRQHandler
> >> -    IRQ  TIMER4_IRQHandler
> >> -    IRQ  PWM0_IRQHandler
> >> -    IRQ  PDM_IRQHandler
> >> -    IRQ  MWU_IRQHandler
> >> -    IRQ  PWM1_IRQHandler
> >> -    IRQ  PWM2_IRQHandler
> >> -    IRQ  SPIM2_SPIS2_SPI2_IRQHandler
> >> -    IRQ  RTC2_IRQHandler
> >> -    IRQ  I2S_IRQHandler
> >> -
> >> -  .end
> >> diff --git a/hw/mcu/nordic/nrf52xxx/src/gcc_startup_nrf52_split.s
> >> b/hw/mcu/nordic/nrf52xxx/src/gcc_startup_nrf52_split.s
> >> deleted file mode 100755
> >> index 7426848..0000000
> >> --- a/hw/mcu/nordic/nrf52xxx/src/gcc_startup_nrf52_split.s
> >> +++ /dev/null
> >> @@ -1,150 +0,0 @@
> >> -/*
> >> -Copyright (c) 2015, Nordic Semiconductor ASA
> >> -All rights reserved.
> >> -
> >> -Redistribution and use in source and binary forms, with or without
> >> -modification, are permitted provided that the following conditions are
> >> met:
> >> -
> >> -* Redistributions of source code must retain the above copyright
> notice,
> >> this
> >> -  list of conditions and the following disclaimer.
> >> -
> >> -* Redistributions in binary form must reproduce the above copyright
> >> notice,
> >> -  this list of conditions and the following disclaimer in the
> >> documentation
> >> -  and/or other materials provided with the distribution.
> >> -
> >> -* Neither the name of Nordic Semiconductor ASA nor the names of its
> >> -  contributors may be used to endorse or promote products derived from
> >> -  this software without specific prior written permission.
> >> -
> >> -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
> >> IS"
> >> -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
> THE
> >> -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
> >> PURPOSE ARE
> >> -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
> >> LIABLE
> >> -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
> CONSEQUENTIAL
> >> -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
> GOODS OR
> >> -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
> HOWEVER
> >> -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
> >> LIABILITY,
> >> -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
> THE
> >> USE
> >> -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> >> -*/
> >> -
> >> -/*
> >> -NOTE: Template files (including this one) are application specific and
> >> therefore
> >> -expected to be copied into the application project folder prior to its
> >> use!
> >> -*/
> >> -
> >> -    .syntax unified
> >> -    .arch armv7-m
> >> -    .section .stack
> >> -    .align 3
> >> -    .equ    Stack_Size, 432
> >> -    .globl    __StackTop
> >> -    .globl    __StackLimit
> >> -__StackLimit:
> >> -    .space    Stack_Size
> >> -    .size __StackLimit, . - __StackLimit
> >> -__StackTop:
> >> -    .size __StackTop, . - __StackTop
> >> -
> >> -    .section .heap
> >> -    .align 3
> >> -#ifdef __HEAP_SIZE
> >> -    .equ    Heap_Size, __HEAP_SIZE
> >> -#else
> >> -    .equ    Heap_Size, 0
> >> -#endif
> >> -    .globl    __HeapBase
> >> -    .globl    __HeapLimit
> >> -__HeapBase:
> >> -    .if    Heap_Size
> >> -    .space    Heap_Size
> >> -    .endif
> >> -    .size __HeapBase, . - __HeapBase
> >> -__HeapLimit:
> >> -    .size __HeapLimit, . - __HeapLimit
> >> -
> >> -    .section .isr_vector_split
> >> -    .align 2
> >> -    .globl __isr_vector_split
> >> -__isr_vector_split:
> >> -    .long    __StackTop            /* Top of Stack */
> >> -    .long   Reset_Handler_split               /* Reset Handler */
> >> -
> >> -    .size    __isr_vector_split, . - __isr_vector_split
> >> -
> >> -/* Reset Handler */
> >> -
> >> -    .text
> >> -    .thumb
> >> -    .thumb_func
> >> -    .align 1
> >> -    .globl    Reset_Handler_split
> >> -    .type    Reset_Handler_split, %function
> >> -Reset_Handler_split:
> >> -    .fnstart
> >> -
> >> -
> >> -/*     Loop to copy data from read only memory to RAM. The ranges
> >> - *      of copy from/to are specified by following symbols evaluated in
> >> - *      linker script.
> >> - *      __etext: End of code section, i.e., begin of data sections to
> >> copy from.
> >> - *      __data_start__/__data_end__: RAM address range that data
> should be
> >> - *      copied to. Both must be aligned to 4 bytes boundary.  */
> >> -
> >> -    ldr    r1, =__etext
> >> -    ldr    r2, =__data_start__
> >> -    ldr    r3, =__data_end__
> >> -
> >> -    subs    r3, r2
> >> -    ble     .LC0
> >> -
> >> -.LC1:
> >> -    subs    r3, 4
> >> -    ldr    r0, [r1,r3]
> >> -    str    r0, [r2,r3]
> >> -    bgt    .LC1
> >> -
> >> -.LC0:
> >> -    ldr    r1, =__etext_loader
> >> -    ldr    r2, =__data_start___loader
> >> -    ldr    r3, =__data_end___loader
> >> -
> >> -    subs    r3, r2
> >> -    ble     .LC2
> >> -
> >> -.LC3:
> >> -    subs    r3, 4
> >> -    ldr    r0, [r1,r3]
> >> -    str    r0, [r2,r3]
> >> -    bgt    .LC3
> >> -.LC2:
> >> -
> >> -    subs    r0, r0
> >> -    ldr    r2, =__bss_start___loader
> >> -    ldr    r3, =__bss_end___loader
> >> -
> >> -    subs    r3, r2
> >> -    ble     .LC4
> >> -
> >> -.LC5:
> >> -    subs    r3, 4
> >> -    str    r0, [r2,r3]
> >> -    bgt    .LC5
> >> -.LC4:
> >> -
> >> -    LDR     R0, =__HeapBase
> >> -    LDR     R1, =__HeapLimit
> >> -    BL      _sbrkInit
> >> -
> >> -    LDR     R0, =SystemInit
> >> -    BLX     R0
> >> -    LDR     R0, =_start
> >> -    BX      R0
> >> -
> >> -    .pool
> >> -    .cantunwind
> >> -    .fnend
> >> -    .size   Reset_Handler_split,.-Reset_Handler_split
> >> -
> >> -    .section ".text"
> >> -  .end
> >> --
> >> 2.7.4
> >>
> >>
>
>

Reply via email to