Re: [Openocd-development] [PATCH] ft2232: Set PWR_RST and LOOPBACK for xds100v2

2011-10-25 Thread Mathias K.
Hello Kyle,

the patch works with the TMS570 eval. board. You should use gerrit to submit 
the patch.

Short instruction that works for me:

1.) register at http://openocd.zylin.com/ with a OPENID (you need a google or 
yahoo account (or other))
2.) create a ssl certificate and set it in your profile at gerrit and make it 
available to your
local ssh client
3.) choose a USERNAME
4.) clone the current openocd git git clone 
git://openocd.git.sourceforge.net/gitroot/openocd/openocd
5.) change the email and name in the git repo (local or global) to your 
registration set at 1.
6.) execute: git remote add review 
ssh://usern...@openocd.zylin.com:29418/openocd.git (USERNAME is
your registration USERNAME)
7.) execute: git config remote.review.push HEAD:refs/for/master
8.) execute: scp -p -P 29418 usern...@openocd.zylin.com:hooks/commit-msg 
.git/hooks/ (USERNAME is
your registration USERNAME)
9.) apply your changes again
10.) push the changes to review

Hope that i don't miss anything.


Regards,

Mathias


Am 24.10.2011 19:42, schrieb Kyle Manna:
 The CPLD on the xds100v2 expects to see a rising edge on PWR_RST to
 enable the outputs.  This patch creates that transition correctly by
 fixing the direction register for PWR_RST.
 
 THe CPLD will also loop back the data if the LOOPBACK signal is
 asserted.  Set this signal to an output and keep it clear.
 
 This was tested with a TI DM3730 Beagleboard xM.
 
 Signed-off-by: Kyle Manna kyle.ma...@fuel7.com
 ---
  src/jtag/drivers/ft2232.c |   53 
 +
  1 files changed, 39 insertions(+), 14 deletions(-)
 
 diff --git a/src/jtag/drivers/ft2232.c b/src/jtag/drivers/ft2232.c
 index 3cca26d..ceb3c0b 100644
 --- a/src/jtag/drivers/ft2232.c
 +++ b/src/jtag/drivers/ft2232.c
 @@ -3175,40 +3175,65 @@ static int flossjtag_init(void)
   return ftx232_dbus_write();
  }
  
 +/*
 + * The reference schematic from TI for the XDS100v2 has a CPLD on which opens
 + * the door for a number of different configurations
 + *
 + * Known Implementations:
 + * 
 http://processors.wiki.ti.com/images/9/93/TMS570LS20216_USB_STICK_Schematic.pdf
 + *
 + * http://processors.wiki.ti.com/index.php/XDS100 (rev2)
 + *   * CLPD logic: Rising edge to enable outputs (XDS100_PWR_RST)
 + *   * ACBUS3 to transition 0-1 (OE rising edge)
 + *   * CPLD logic: Put the EMU0/1 pins in Hi-Z:
 + *   * ADBUS5/GPIOL1 = EMU_EN = 1
 + *   * ADBUS6/GPIOL2 = EMU0 = 0
 + *   * ACBUS4/SPARE0 = EMU1 = 0
 + *   * CPLD logic: Disable loopback
 + *   * ACBUS6/SPARE2 = LOOPBACK = 0
 + */
 +#define XDS100_nEMU_EN   (15)
 +#define XDS100_nEMU0 (16)
 +
 +#define XDS100_PWR_RST   (13)
 +#define XDS100_nEMU1 (14)
 +#define XDS100_LOOPBACK  (16)
  static int xds100v2_init(void)
  {
 - low_output= 0x3A;
 - low_direction = 0x7B;
 + /* These are in the lower byte */
 + nTRST= 0x10;
 + nTRSTnOE = 0x10;
 +
 + /* These aren't actually used on 14 pin connectors */
 + /* These are in the upper byte */
 + nSRST= 0x01;
 + nSRSTnOE = 0x01;
 +
 + low_output= 0x08 | nTRST | XDS100_nEMU_EN;
 + low_direction = 0x0b | nTRSTnOE | XDS100_nEMU_EN | XDS100_nEMU0;
  
 - /* initialize low byte for jtag */
   if (ft2232_set_data_bits_low_byte(low_output,low_direction) != ERROR_OK)
   {
   LOG_ERROR(couldn't initialize FT2232 with 'xds100v2' layout);
   return ERROR_JTAG_INIT_FAILED;
   }
  
 - nTRST= 0x10;
 - nTRSTnOE = 0x0; /* not output enable for nTRST */
 - nSRST= 0x00;/* TODO: SRST is not supported yet */
 - nSRSTnOE = 0x00;/* no output enable for nSRST */
 -
 - high_output= 0x00;
 - high_direction = 0x59;
 + high_output = 0;
 + high_direction = nSRSTnOE | XDS100_LOOPBACK | XDS100_PWR_RST | 
 XDS100_nEMU1;
  
   /* initialize high byte for jtag */
   if (ft2232_set_data_bits_high_byte(high_output,high_direction) != 
 ERROR_OK)
   {
 - LOG_ERROR(couldn't initialize FT2232 with 'xds100v2' layout);
 + LOG_ERROR(couldn't put CPLD in to reset with 'xds100v2' 
 layout);
   return ERROR_JTAG_INIT_FAILED;
   }
  
 - high_output= 0x86;
 - high_direction = 0x59;
 + high_output |= XDS100_PWR_RST;
  
   /* initialize high byte for jtag */
   if (ft2232_set_data_bits_high_byte(high_output,high_direction) != 
 ERROR_OK)
   {
 - LOG_ERROR(couldn't initialize FT2232 with 'xds100v2' layout);
 + LOG_ERROR(couldn't bring CPLD out of reset with 'xds100v2' 
 layout);
   return ERROR_JTAG_INIT_FAILED;
   }
  
 -- 1.7.5.4

___
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development


Re: [Openocd-development] [PATCH] ft2232: Set PWR_RST and LOOPBACK for xds100v2

2011-10-25 Thread Peter Stuge
Mathias K. wrote:
 2.) create a ssl certificate
 and set it in your profile at gerrit and make it available to your local ssh 
 client

SSH private key - not an SSL certificate.

See also
http://openocd.zylin.com/gitweb/?p=openocd.git;a=blob;f=HACKING


//Peter
___
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development


Re: [Openocd-development] [PATCH] ft2232: Set PWR_RST and LOOPBACK for xds100v2

2011-10-25 Thread Mathias K.
Ups,

sorry, this is our guideline:

http://openocd.sourceforge.net/doc/doxygen/html/index.html


Regards,

Mathias


Am 25.10.2011 22:44, schrieb Mathias K.:
 Hello,
 
 you should update 
 http://openocd.sourceforge.net/doc/doxygen/html/patchguide.html or remove this
 ugly Developer's Guide.
 
 
 Regards,
 
 Mathias
 
 
 Am 25.10.2011 22:32, schrieb Peter Stuge:
 Mathias K. wrote:
 2.) create a ssl certificate
 and set it in your profile at gerrit and make it available to your local 
 ssh client

 SSH private key - not an SSL certificate.

 See also
 http://openocd.zylin.com/gitweb/?p=openocd.git;a=blob;f=HACKING


 //Peter
 ___
 Openocd-development mailing list
 Openocd-development@lists.berlios.de
 https://lists.berlios.de/mailman/listinfo/openocd-development
 
 ___
 Openocd-development mailing list
 Openocd-development@lists.berlios.de
 https://lists.berlios.de/mailman/listinfo/openocd-development

___
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development