• Johny Mattsson's avatar
    Cleaned up all uses of INTERNAL_FLASH_START_ADDRESS. · c4e8b04f
    Johny Mattsson authored
    There was only one genuine use of this macro, all other places were
    using it only as a necessary compensation. While this was fine as long as
    it was the first meg of flash which was mapped, it became incorrect and
    quite dangerous whenever this assumption did not hold (such as when
    running from the second slot in an OTA scenario).
    
    The flash API now uses actual addresses, not translated/mapped
    addresses, and the users of this API have been adjusted accordingly.
    This makes the flash API work correctly regardless of what flash mapping
    is in use.
    
    The old macro is still available under the new name
    INTERNAL_FLASH_MAPPED_ADDRESS, and this is used to detect flash writes
    where the source is mapped flash (and thus has to be bounced), and to
    adjust the _flash_used_end linker symbol when used with
    flassh_find_sector() by the filesystem code. The latter usage is not
    OTA-proof, but in an OTA scenario the filesystem needs a fixed location
    anyway and thus would not use this code path.
    c4e8b04f
platform.c 14.9 KB