Skip to content
Snippets Groups Projects
  1. May 31, 2017
    • Tobias Diedrich's avatar
      flash: Add support for Atheros (ath79) SPI interface · 6b9d19d3
      Tobias Diedrich authored
      Supported SoCs: AR71xx, AR724x, AR91xx, AR93xx, QCA9558
      
      Extended and revised version of my original patch submitted by Dmytro
      here: http://openocd.zylin.com/#/c/3390
      
      
      
      This driver is using pure SPI mode, so the flash base address is not
      used except some flash commands (e.g. "flash program") need it to
      distinguish the banks.
      
      Example config with all 3 chip selects:
      flash bank flash0 ath79 0 0 0 0 $_TARGETNAME cs0
      flash bank flash1 ath79 0x10000000 0 0 0 $_TARGETNAME cs1
      flash bank flash2 ath79 0x20000000 0 0 0 $_TARGETNAME cs2
      
      Example usage:
      > flash probe flash0
      Found flash device 'win w25q128fv' (ID 0x001840ef)
      flash 'ath79' found at 0x00000000
      > flash probe flash1
      No SPI flash found
      > flash probe flash2
      No SPI flash found
      > flash banks
      > flash read_bank flash0 /tmp/test.bin 0x00000000 0x1000
      reading 4096 bytes from flash @0x00000000
      wrote 4096 bytes to file /tmp/test.bin from flash bank 0 at offset
      0x00000000 in 28.688066s (0.139 KiB/s)
      
      Change-Id: I5feb697722c07e83a9c1b361a9db7b06bc699aa8
      Signed-off-by: default avatarTobias Diedrich <ranma+openocd@tdiedrich.de>
      Reviewed-on: http://openocd.zylin.com/3612
      
      
      Tested-by: jenkins
      Reviewed-by: default avatarDmytro <dioptimizer@hotmail.com>
      Reviewed-by: default avatarPaul Fertser <fercerpav@gmail.com>
      6b9d19d3
  2. Dec 25, 2016
  3. Dec 08, 2016
  4. Nov 06, 2016
  5. Jun 23, 2016
    • Esben Haabendal's avatar
      Support for Freescale LS102x SAP · f906c65f
      Esben Haabendal authored
      
      The SAP in LS102x SoC's from Freescale is able to read and write to all
      physical memory locations, independently of CPU cores and DAP.
      
      This implementation is 100% based on reverse-engineering of JTAG
      communication with an LS1021A SAP using a JTAG debugger with SAP support.
      
      And as such, this code is for now "works-for-me", pending verification
      by other OpenOCD users, or even better, actual information from Freescale
      on the SAP interface.
      
      Change-Id: Ibb30945e017894da5c402f9f633fc513bed4e68c
      Signed-off-by: default avatarEsben Haabendal <esben@haabendal.dk>
      Reviewed-on: http://openocd.zylin.com/3096
      
      
      Tested-by: jenkins
      Reviewed-by: default avatarPaul Fertser <fercerpav@gmail.com>
      f906c65f
  6. May 05, 2016
  7. Feb 29, 2016
    • Andreas Färber's avatar
      flash: New Spansion FM4 flash driver · 43ff5acd
      Andreas Färber authored
      
      The Spansion FM4 family of microcontrollers does not offer a way to
      identify the chip model nor the flash size, except for Dual Flash vs.
      regular layout. Therefore the family is passed as argument and
      wildcard-matched - MB9BFx6x and S6E2CC families are supported.
      
      Iterations showed that ...
      1) Just doing the flash command sequence from SRAM loader code for each
      half-word took 20 minutes for an 8 KB block.
      2) Doing the busy-wait in the loader merely reduced the time to 19 minutes.
      3) Significant performance gains were achieved by looping in loader code
      rather than in OpenOCD and by maximizing the batch size across sectors,
      getting us down to ~2 seconds for 8 KB and ~2.5 minutes for 1.1 MB.
      (Tested with SK-FM4-176L-S6E2CC-ETH v11, CMSIS-DAP v23.)
      
      gcc, objcopy -Obinary and bin2char.sh are used for automating the
      integration of hand-written assembler snippets.
      
      Change-Id: I092c81074662534f50b71b91d54eb8e0098fec76
      Signed-off-by: default avatarAndreas Färber <afaerber@suse.de>
      Reviewed-on: http://openocd.zylin.com/2190
      
      
      Tested-by: jenkins
      Reviewed-by: default avatarSpencer Oliver <spen@spen-soft.co.uk>
      43ff5acd
  8. Nov 26, 2015
  9. Nov 11, 2015
    • Jeff Ciesielski's avatar
      flash: New driver for XMC4xxx microcontroller family · 33b048d4
      Jeff Ciesielski authored
      
      This is a complete flash driver for the Infineon XMC4xxx family of
      microcontrollers, based on the TMS570 driver by Andrey Yurovsky.
      The driver attempts to discover the particular variant of MCU via a
      combination of the SCU register (to determine if this is indeed an
      XMC4xxx part) and the FLASH0_ID register (to determine the variant).
      If this fails, the driver will not load.
      The driver has been added to the README and documentation.
      
      Tests:
      * Hardware: XMC4500 (XMC4500_relax), XMC4200 (XMC4200 enterprise)
      * SWD + JTAG
      * Binary: 144k, 1M
      
      Note:
      * Flash protect only partly tested. These parts only allow the flash
        protection registers (UCB) to be written 4 times total, and my devkits
        have run out of uses (more on the way)
      
      Future Work:
      * User 1/2(permalock) locking support via custom command
      * In-memory flash loader bootstrap (flashing is rather slow...)
      
      Change-Id: I1d3345d5255d8de8dc4175cf987eb4a037a8cf7f
      Signed-off-by: default avatarJeff Ciesielski <jeffciesielski@gmail.com>
      Signed-off-by: default avatarAndreas Färber <afaerber@suse.de>
      Reviewed-on: http://openocd.zylin.com/2488
      
      
      Tested-by: jenkins
      Reviewed-by: default avatarPaul Fertser <fercerpav@gmail.com>
      33b048d4
  10. Apr 16, 2015
  11. Feb 12, 2015
  12. Feb 11, 2015
  13. Mar 17, 2014
  14. Mar 07, 2014
  15. Feb 24, 2014
  16. Feb 11, 2014
  17. Jan 20, 2014
  18. Sep 26, 2013
  19. Sep 16, 2013
  20. Sep 13, 2013
    • Paul Fertser's avatar
      libusb: require pkg-config support · 191a5736
      Paul Fertser authored
      An alternative approach to show how much cleaner the pure pkg-config
      way is.
      
      This changes the discovery procedures for libusb-1.0 and libusb-0.1,
      making them depend on pkg-config being properly installed and
      configured, including the necessary build host configuration for the
      cross-builds (see
      http://www.flameeyes.eu/autotools-mythbuster/pkgconfig/cross-compiling.html
      
      )
      
      It should make it possible to compile OpenOCD without changes and
      extra effort on GNU/Linux, FreeBSD users would need to supply a .pc
      file for their libusb implementation or add LIBUSB1_LIBS and
      LIBUSB1_CFLAGS to the configure environment.
      
      Change-Id: I826e378dd1e0d101a549a573b2c63212a7e00b64
      Signed-off-by: default avatarPaul Fertser <fercerpav@gmail.com>
      Signed-off-by: default avatarAndreas Fritiofson <andreas.fritiofson@gmail.com>
      Reviewed-on: http://openocd.zylin.com/1467
      
      
      Reviewed-by: default avatarXiaofan <xiaofanc@gmail.com>
      Reviewed-by: default avatarSpencer Oliver <spen@spen-soft.co.uk>
      Tested-by: default avatarSpencer Oliver <spen@spen-soft.co.uk>
      191a5736
    • Paul Fertser's avatar
      README* refactoring · 10df176b
      Paul Fertser authored
      
      This is an attempt to bring the README files in line with the current
      status of the OpenOCD development.
      
      - remove some obsolete information and duplicated instructions
      - reword some statements
      - restructure in a way more appealing to a regular user
      - add a supported hardware list to allow a potential user to determine
        if his/her usecase is covered by a freetext keyword search through
        the document
      - Add OSX notes (courtesy GrizzlyAdams and inca)
      
      Since most ftdi-based adapters are now covered by the ftdi driver, I
      think it's ok to remove some of the libftdi/ftd2xx instructions, the
      few users who still need them should refer to upstream docs instead.
      
      I'm not sure if README.Windows should come with the DOS line endings,
      but i'd expect many windows users to use their silly notepad to view
      it, and notepad ignores LF apparently. (Decided to use LF anyway.)
      
      I understand discussing and reviewing such a massive README change is
      a somewhat demanding task but I feel it's a necessity to move forward
      maintaining proper documentation.
      
      Change-Id: Idfde3014c72dd5c32ad292ee1ab205322e51a138
      Signed-off-by: default avatarPaul Fertser <fercerpav@gmail.com>
      Signed-off-by: default avatarAndreas Fritiofson <andreas.fritiofson@gmail.com>
      Reviewed-on: http://openocd.zylin.com/1503
      
      
      Tested-by: jenkins
      Reviewed-by: default avatarXiaofan <xiaofanc@gmail.com>
      10df176b
  21. Jul 15, 2013
  22. Jun 12, 2013
    • Paul Fertser's avatar
      configure: remove --enable-libusb0 option, rework libusb selection · 6be2a55b
      Paul Fertser authored
      
      This makes libusb handling more consistent: if any driver requires
      libusb, first check for libusb-1 availability, if not found and
      libusb0 is ok for this case, try libusb0.
      
      A user-visible bug fixed by this is that when a user was selecting a
      driver that required libusb-1 but was lacking the necessary dev files
      or libraries, configure didn't complain (but the build was failing of
      course).
      
      --enable-stlink doesn't really require libusb-1 but since it's using the
      same automake symbol HLAADAPTER, ti_icdi is getting built too which needs
      libusb1 unconditionally. Since using libusb-0.1 makes little sense anyway,
      leave that as is.
      
      Signed-off-by: default avatarPaul Fertser <fercerpav@gmail.com>
      Change-Id: I630a4ad9e4583743d45b2233bf5d8f4e5c0aab82
      Reviewed-on: http://openocd.zylin.com/1434
      
      
      Tested-by: jenkins
      Reviewed-by: default avatarSpencer Oliver <spen@spen-soft.co.uk>
      6be2a55b
  23. Apr 20, 2013
  24. Mar 28, 2013
  25. Dec 23, 2012
  26. Oct 07, 2012
  27. May 29, 2012
  28. Mar 13, 2012
  29. Oct 12, 2011
  30. Oct 11, 2011
  31. Jun 26, 2011
  32. Nov 15, 2010
  33. Mar 06, 2010
  34. Feb 21, 2010
Loading