Skip to content
Snippets Groups Projects
Forked from Reform / reform-boundary-uboot
Source project has a limited visibility.
  • Igor Guryanov's avatar
    20a58ac0
    arc: introduce separate section for interrupt vector table · 20a58ac0
    Igor Guryanov authored
    
    Even though existing implementation works fine in preparation to
    submission of ARCv2 architecture we need this change.
    
    In case of ARCv2 interrupt vector table consists of just addresses
    of corresponding handlers. And if those addresses will be in .text
    section then assembler will encode them as everything in .text section
    as middle-endian and then on real execution CPU will read swapped
    addresses and will jump into the wild.
    
    Once introduced new section is situated so .text section remains the
    first which allows us to use common linker option for linking everything
    to a specified CONFIG_SYS_TEXT_BASE.
    
    Signed-off-by: default avatarAlexey Brodkin <abrodkin@synopsys.com>
    Signed-off-by: default avatarIgor Guryanov <guryanov@synopsys.com>
    20a58ac0
    History
    arc: introduce separate section for interrupt vector table
    Igor Guryanov authored
    
    Even though existing implementation works fine in preparation to
    submission of ARCv2 architecture we need this change.
    
    In case of ARCv2 interrupt vector table consists of just addresses
    of corresponding handlers. And if those addresses will be in .text
    section then assembler will encode them as everything in .text section
    as middle-endian and then on real execution CPU will read swapped
    addresses and will jump into the wild.
    
    Once introduced new section is situated so .text section remains the
    first which allows us to use common linker option for linking everything
    to a specified CONFIG_SYS_TEXT_BASE.
    
    Signed-off-by: default avatarAlexey Brodkin <abrodkin@synopsys.com>
    Signed-off-by: default avatarIgor Guryanov <guryanov@synopsys.com>