Update FTDI C232HM cfg, and add two new cfgs from cable modem research
[fw/openocd] / tcl / interface / ftdi / c232hm.cfg
index 387abbb0562345b7ef59954355a85930be59e642..4f623e0f88a40515844f14f7908f05750ad82717 100644 (file)
@@ -1,4 +1,3 @@
-#
 # FTDI USB Hi-Speed to MPSSE Cable
 #
 # http://www.ftdichip.com/Products/Cables/USBMPSSE.htm
@@ -6,10 +5,52 @@
 # C232HM-DDHSL-0 and C232HM-EDSL-0 provide 3.3V and 5V on pin 1 (Red),
 # respectively.
 #
+# Adapter: http://www.ftdichip.com/Support/Documents/DataSheets/Cables/DS_C232HM_MPSSE_CABLE.PDF
+# Chip: http://www.ftdichip.com/Support/Documents/DataSheets/ICs/DS_FT232H.pdf
+# See pinout/colors at end of this file.
+#
+# Tech notes:
+# http://www.ftdichip.com/Support/Documents/AppNotes/AN_135_MPSSE_Basics.pdf
+# http://www.ftdichip.com/Support/Documents/AppNotes/AN_129_FTDI_Hi_Speed_USB_To_JTAG_Example.pdf
 
 interface ftdi
 #ftdi_device_desc "C232HM-DDHSL-0"
 #ftdi_device_desc "C232HM-EDHSL-0"
+
+# Common PID for FT232H
 ftdi_vid_pid 0x0403 0x6014
 
-ftdi_layout_init 0x0008 0x000b
+# Layout
+# High data byte 0x40 configures red LED on ACBUS6 initially high (unlit, since active-low)
+# Low data byte 0x08 configures TMS on ACBUS3 initially high (asserted); TCK, TDI low
+# High direction byte 0x40 configures red LED on ACBUS6 as high (output)
+# Low direction byte 0x0b configures TDO on ACBUS2 as low (input)
+ftdi_layout_init 0x4008 0x400b
+
+# ---A*BUS-------CCCCCCCC|DDDDDDDD
+# --------\______76543210|76543210
+# LED  0x4000 = 01000000|00000000 = ACBUS6
+#GPIOL0        0x0010 = 00000000|00010000 = ADBUS4
+#GPIOL1        0x0020 = 00000000|00100000 = ADBUS5
+#GPIOL2        0x0040 = 00000000|01000000 = ADBUS6
+#GPIOL3        0x0080 = 00000000|10000000 = ADBUS7
+# -ndata treats the LED as active-low for expected behavior (toggle when transferring)
+ftdi_layout_signal LED -ndata 0x4000
+# Available for aliasing as desired
+ftdi_layout_signal GPIOL0 -data 0x0010 -oe 0x0010
+ftdi_layout_signal GPIOL1 -data 0x0020 -oe 0x0020
+ftdi_layout_signal GPIOL2 -data 0x0040 -oe 0x0040
+ftdi_layout_signal GPIOL3 -data 0x0080 -oe 0x0080
+
+# C232HM               FT232H  JTAG/Other
+# Num  Color   Name    Func
+# 1            Red             VCC             Optionally, can power the board if it is not using its own power supply.
+# 2            Orange  ADBUS0  TCK
+# 3            Yellow  ADBUS1  TDI
+# 4            Green   ADBUS2  TDO
+# 5            Brown   ADBUS3  TMS
+# 6            Grey    ADBUS4  GPIOL0
+# 7            Purple  ADBUS5  GPIOL1
+# 8            White   ADBUS6  GPIOL2
+# 9            Blue    ADBUS7  GPIOL3
+# 10   Black   GND             Connect to ground