Skip to content
Snippets Groups Projects
  1. Jan 26, 2015
  2. Jan 09, 2015
    • Alexey Brodkin's avatar
      arc: introduce "mdbtrick" target · 4c8c485a
      Alexey Brodkin authored
      MetaWare debugger (MDB) is still used as a primary tool for interaction
      with target via JTAG. Moreover some very advanced features are not yet
      implemented in GDB for ARC (and not sure if they will be implemnted
      sometime soon given complexity and rare need for those features for
      common user).
      
      So if we're talking about development process when U-Boot is loaded in
      target memory not by low-level boot-loader but manually through JTAG
      chances are high developer uses MDB for it.
      
      But MDB doesn't support PIE (position-independent executable) - it will
      refuse to even start - that means no chance to load elf contents on
      target.
      Then the only way to load U-Boot in MDB is to fake it by:
        1. Reset PIE flag in ELF header
           This is simpe - on attempt to open elf MDB checks header and if it
      doesn't match its expectation refuces to use provided elf.
        2. Strip all debug information from elf
           If (1) is done then MDB will open elf but on parsing of elf's debug
      info it will refuse to process due to debug info it cannot understand
      (symbols with PIE relocation).
      
      Even though it could be done manually (I got it documented quite a while
      ago here http://www.denx.de/wiki/U-Boot/ARCNotes
      
      ) having this automated
      way is very convenient. User may build U-Boot that will be loaded on
      target via MDB saying "make mdbtrick".
      
      Then if we now apply the manipulation MDB will happily start and will
      load all required sections into the target.
      
      Indeed there will be no source-level debug info available. But still MDB
      will do its work on showing disassembly, global symbols, registers,
      accessing low-level debug facilities etc.
      
      As a summary - this is a pretty dirty hack but it simplifies life a lot
      for us ARc developers.
      
      Signed-off-by: default avatarAlexey Brodkin <abrodkin@synopsys.com>
      Cc: Tom Rini <trini@ti.com>
      Cc: Wolfgang Denk <wd@denx.de>
      4c8c485a
    • Stefan Agner's avatar
      arm: build arch memset/memcpy in Thumb2 mode · 75d7a0d7
      Stefan Agner authored
      
      Resynchronize memcpy/memset with kernel 3.17 and build them in
      Thumb2 mode (unified syntax). Those assembler files can be built
      and linked in ARM mode too, however when calling them from Thumb2
      built code, the stack got corrupted and the copy did not succeed
      (the exact details have not been traced back). However, the Linux
      kernel builds those files in Thumb2 mode. Hence U-Boot should
      build them in Thumb2 mode too when CONFIG_SYS_THUMB_BUILD is set.
      
      To build the files without warning, some assembler instructions
      had to be replaced with their UAL compliant variant (thanks
      Jeroen for this input).
      
      To build the file in Thumb2 mode the implicit-it=always option need
      to be set to generate Thumb2 compliant IT instructions where needed.
      We add this option to the general AFLAGS when building for Thumb2.
      
      Reviewed-by: default avatarSimon Glass <sjg@chromium.org>
      Tested-by: default avatarSimon Glass <sjg@chromium.org>
      Signed-off-by: default avatarStefan Agner <stefan@agner.ch>
      75d7a0d7
  3. Jan 08, 2015
  4. Jan 07, 2015
  5. Jan 06, 2015
  6. Jan 05, 2015
Loading