Skip to content
Snippets Groups Projects
  1. Nov 03, 2009
  2. Nov 02, 2009
  3. Nov 01, 2009
  4. Oct 31, 2009
  5. Oct 30, 2009
  6. Oct 29, 2009
    • Michael Roth's avatar
      SVF: fix checking bit pattern against length · a53c72cd
      Michael Roth authored
      
      The code works like follow (N = bit_len):
      
      	N	-1	%4	2<<	-1	~ (binary)
      	--------------------------------------------------
      	1	0	0	2	1	1111 1110
      	2	1	1	4	3	1111 1100
      	3	2	2	8	7	1111 1000
      	4	3	3	16	15	1111 0000
      	5	4	0	2	1	1111 1110
      	6	5	1	4	3	1111 1100
      	7	6	2	8	7	1111 1000
      	8	7	3	16	15	1111 0000
      	...	...	...	...	...	...
      
      Addresses a bug reported by FangfangLi <ffli@syntest.com.cn>.
      
      [dbrownell@users.sourceforge.net: fix spelling bug too]
      
      Signed-off-by: default avatarMichael Roth <mroth@nessie.de>
      Cc: FangfangLi <ffli@syntest.com.cn>
      Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
      a53c72cd
    • David Brownell's avatar
      XSVF: bugfix handling state paths · 0c4d5b8b
      David Brownell authored
      
      Implement XSVF support for detailed state path transitions,
      by collecting sequences of XSTATE transitions into paths
      and then calling pathmove().
      
      It seems that the Xilinx tools want to force state-by-state
      transitions instead of relying on the standardized SVF paths.
      Like maybe there are XSVF tools not implementing SVF paths,
      which are all that we support using svf_statemove().
      
      So from IRPAUSE, instead of just issuing "XSTATE DRPAUSE"
      they will issue XSTATES for each intermediate state: first
      IREXIT2, then IRUPDATE, DRSELECT, DRCAPTURE, DREXIT1, and
      finally DRPAUSE.  This works now.
      
      Handling of paths that go *through* reset is a trifle dodgey,
      but it should be safe.
      
      Tested-by: default avatarWookey <wookey@wookware.org>
      
      Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
      0c4d5b8b
  7. Oct 28, 2009
  8. Oct 27, 2009
  9. Oct 26, 2009
    • David Brownell's avatar
      ARM ADIv5: "dap info" gets more readable · ddade10d
      David Brownell authored
      
      Make the "dap info" output more comprehensible:
      
       - Don't show CIDs unless they're incorrect (only four bits matter)
       - For CoreSight parts, interpret the part type
       - Interpret the part number
       - Show all five PID bytes together
       - Other minor cleanups
      
      Also some whitespace fixes, and shrink a few overlong source lines.
      
      Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
      ddade10d
    • Michael Roth's avatar
      SVF: fix parsing hex strings containing leading '0' characters · 592e0215
      Michael Roth authored
      
      Ignore leading '0' characters on hex strings.  For example a bit
      pattern consisting of 6 bits could be written as 3f, 03f or 003f and
      so on.
      
      Signed-off-by: default avatarMichael Roth <mroth@nessie.de>
      Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
      592e0215
    • David Brownell's avatar
      JTAG: simple autoprobing · 6cb1d10c
      David Brownell authored
      
      This patch adds basic autoprobing support for the JTAG scan chains
      which cooperate.  To use, you can invoke OpenOCD with just:
      
       - interface spec: "-f interface/...cfg"
       - possibly with "-c 'reset_config ...'" for SRST/TRST
       - possibly with "-c 'jtag_khz ...'" for the JTAG clock
      
      Then set up config files matching the reported TAPs.  It doesn't
      declare targets ... just TAPs.  So facilities above the JTAG and
      SVF/XSVF levels won't be available without a real config; this is
      almost purely a way to generate diagnostics.
      
      Autoprobe was successful with most boards I tested, except ones
      incorporating C55x DSPs (which don't cooperate with this scheme
      for IR length autodetection).  Here's what one multi-TAP chip
      reported, with the "Warn:" prefixes removed:
      
       clock speed 500 kHz
       There are no enabled taps.  AUTO PROBING MIGHT NOT WORK!!
       AUTO auto0.tap - use "jtag newtap auto0 tap -expected-id 0x2b900f0f ..."
       AUTO auto1.tap - use "jtag newtap auto1 tap -expected-id 0x07926001 ..."
       AUTO auto2.tap - use "jtag newtap auto2 tap -expected-id 0x0b73b02f ..."
       AUTO auto0.tap - use "... -irlen 4"
       AUTO auto1.tap - use "... -irlen 4"
       AUTO auto2.tap - use "... -irlen 6"
       no gdb ports allocated as no target has been specified
      
      The patch tweaks IR setup a bit, so we can represent TAPs with
      undeclared IR length.
      
      Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
      6cb1d10c
  10. Oct 25, 2009
  11. Oct 23, 2009
  12. Oct 22, 2009
  13. Oct 21, 2009
Loading