]> sigrok.org Git - sigrok-dumps.git/commitdiff
swd: Add dumps for some common openocd/swd interactions
authorAngus Gratton <redacted>
Sun, 12 Oct 2014 02:16:10 +0000 (13:16 +1100)
committerUwe Hermann <redacted>
Sun, 12 Oct 2014 16:53:39 +0000 (18:53 +0200)
swd/README [new file with mode: 0644]
swd/ftdi_openocd/init.sr [new file with mode: 0644]
swd/ftdi_openocd/init_noreply.sr [new file with mode: 0644]
swd/ftdi_openocd/init_wait_fault.sr [new file with mode: 0644]
swd/ftdi_openocd/init_write_0xabbabeeb.sr [new file with mode: 0644]
swd/stlink_openocd/init.sr [new file with mode: 0644]
swd/stlink_openocd/init_write_0xabbabeeb.sr [new file with mode: 0644]
swd/stlink_openocd/wait_retry.sr [new file with mode: 0644]

diff --git a/swd/README b/swd/README
new file mode 100644 (file)
index 0000000..572bfd9
--- /dev/null
@@ -0,0 +1,87 @@
+-------------------------------------------------------------------------------
+SWD
+-------------------------------------------------------------------------------
+
+This is a set of example captures of the ARM SWD (version 1) protocol.
+
+Details:
+http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ihi0031c/index.html
+(Registration required)
+
+
+Logic analyzer setup
+--------------------
+
+  Probe       SWD
+  ---------------
+  0           swclk
+  1           swdio
+
+
+Data
+----
+
+Different SWD sessions showing different types of behaviour:
+
+* ftdi_openocd/
+
+Using an FTDI-based adapter via "openocd ftdi resistor hack". OpenOCD
+0.9.0 development version. Device under test is a Nordic nRF51822.
+
+Command line:
+
+  $ openocd -f interface/ftdi/olimex-arm-usb-tiny-h.cfg \
+            -f interface/ftdi/swd-resistor-hack.cfg \
+            -f target/nrf51.cfg
+
+** ftdi_openocd/init.sr
+   Initialising device, IDCODE read, etc.
+   OpenOCD args: -c "init; exit"
+
+** ftdi_openocd/init_noreply.sr
+   Initialising when no device is connected (i.e. all responses are 1s.)
+   OpenOCD args: -c "init; exit"
+
+** ftdi_openocd/init_write_0xabbabeeb.sr
+   Initialise, write 20 bytes of 0xabbabeeb at start of RAM.
+   OpenOCD args: -c "init; halt; mww 0x20000000 0xabbabeeb 20; exit"
+
+** ftdi_openocd/init_wait_fault.sr
+   Initialise, attempt to write flash fill of 0xabbabeeb via async loader.
+   This causes SWD WAIT states in "overrun" mode, so the first WAIT causes all
+   subsequent responses to be FAULT until OpenOCD clears the sticky error bit.
+
+   For this capture OpenOCD was patched with this change (known to induce
+   SWD WAITs): http://openocd.zylin.com/#/c/2204/
+
+   OpenOCD args: -c "init; reset halt; flash fillw 0 0xabbabeeb 2048; exit"
+
+
+* stlink_openocd/
+
+Using an STLINK-V2 adapter via OpenOCD 0.9.0 development
+version. Device under test is a Nordic nRF51822.
+
+Command line:
+
+  $ openocd -f interface/stlink-v2.cfg -c 'transport select hla_swd' \
+            -f target/nrf51.cfg
+
+** stlink_openocd/init.sr
+   Intiliasing device, IDCODE read, etc.
+   OpenOCD args: -c "init; exit"
+
+** stlink_openocd/init_write_0xabbabeeb.sr
+   Initialise, write 20 bytes of 0xabbabeeb at start of RAM.
+   OpenOCD args: -c "init; halt; mww 0x20000000 0xabbabeeb 20; exit"
+
+** stlink_openocd/wait_retry.sr
+   Capture showing an SWD WAIT with overrun mode not enabled (in contrast to
+   ftdi_openocd/wait_retry.sr), adapter immediately retries and gets an OK
+   response.
+
+   For this capture OpenOCD was patched with this change (known to induce
+   SWD WAITs): http://openocd.zylin.com/#/c/2204/
+
+   OpenOCD args: -c "init; reset halt; flash fillw 0 0xabbabeeb 2048; exit"
+
diff --git a/swd/ftdi_openocd/init.sr b/swd/ftdi_openocd/init.sr
new file mode 100644 (file)
index 0000000..be7073f
Binary files /dev/null and b/swd/ftdi_openocd/init.sr differ
diff --git a/swd/ftdi_openocd/init_noreply.sr b/swd/ftdi_openocd/init_noreply.sr
new file mode 100644 (file)
index 0000000..d540852
Binary files /dev/null and b/swd/ftdi_openocd/init_noreply.sr differ
diff --git a/swd/ftdi_openocd/init_wait_fault.sr b/swd/ftdi_openocd/init_wait_fault.sr
new file mode 100644 (file)
index 0000000..abf1090
Binary files /dev/null and b/swd/ftdi_openocd/init_wait_fault.sr differ
diff --git a/swd/ftdi_openocd/init_write_0xabbabeeb.sr b/swd/ftdi_openocd/init_write_0xabbabeeb.sr
new file mode 100644 (file)
index 0000000..8052e7e
Binary files /dev/null and b/swd/ftdi_openocd/init_write_0xabbabeeb.sr differ
diff --git a/swd/stlink_openocd/init.sr b/swd/stlink_openocd/init.sr
new file mode 100644 (file)
index 0000000..092ac3d
Binary files /dev/null and b/swd/stlink_openocd/init.sr differ
diff --git a/swd/stlink_openocd/init_write_0xabbabeeb.sr b/swd/stlink_openocd/init_write_0xabbabeeb.sr
new file mode 100644 (file)
index 0000000..f83c309
Binary files /dev/null and b/swd/stlink_openocd/init_write_0xabbabeeb.sr differ
diff --git a/swd/stlink_openocd/wait_retry.sr b/swd/stlink_openocd/wait_retry.sr
new file mode 100644 (file)
index 0000000..da114bb
Binary files /dev/null and b/swd/stlink_openocd/wait_retry.sr differ