view target-utils/flash-boot-test/ld.script @ 497:74610c4f10f7

target-utils: added 10 ms delay at the end of abb_power_off() The deosmification of the ABB access code (replacement of osmo_delay_ms() bogus delays with correctly-timed ones, which are significantly shorter) had one annoying side effect: when executing the poweroff command from any of the programs, one last '=' prompt character was being sent (and received by the x86 host) as the Calypso board powers off. With delays being shorter now, the abb_power_off() function was returning and the standalone program's main loop was printing its prompt before the Iota chip fully executed the switch-off sequence! I thought about inserting an endless tight loop at the end of the abb_power_off() function, but the implemented solution of a 10 ms delay is a little nicer IMO because if the DEVOFF operation doesn't happen for some reason in a manual hacking scenario, there won't be an artificial blocker in the form of a tight loop keeping us from further poking around.
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 25 May 2019 20:44:05 +0000
parents dbb54db721d1
children
line wrap: on
line source

ENTRY(_entry)
SECTIONS
{
    /* flash boot */
    .vectors 0 : {
        *(.vectors)
    }

    .magic 0x2000 : {
        *(.magic)
    }

    /* main code */
    .text 0x4000 : {
        /* regular code */
        *(.text*)
        /* gcc voodoo */
        *(.glue_7t) *(.glue_7) *(.vfp11_veneer) *(.v4_bx)
        . = ALIGN(4);
    }

    /* read-only data */
    . = ALIGN(4);
    .rodata : {
        *(.rodata*)
    }

    /* cannot have any initialized data */
    /DISCARD/ : {
        *(.data)
    }

    /* uninitialized data */
    .bss 0x83C000 (NOLOAD) : {
        . = ALIGN(4);
        __bss_start = .;
        *(.bss)
    }
    . = ALIGN(4);
    __bss_end = .;
    /* end of image */
    _end = .;
    PROVIDE(end = .);
}

stack_bottom = 0x83FFFC;