My previous suggestion to implement SWJ is based on least modification. But if OpenOCD is planed to support a interface configuration, it will be another scene. Actually, vsprog(CLI tool of Versaloon) has support multiple interfaces including GPIO(for reset, trst control), SPI(for AVR8, SPI_Flash), IIC, JTAG, SWJ and even some vendor-specific interfaces like PSOC_ISSP, C8051F_C2 and so on. And all these interfaces can be used in one USB command. For example, AVR8_ISP need a SPI interface for data and command and a GPIO interface to control reset signal, and even accurate delay control. But strategy of vsprog is different from OpenOCD.
For multiple interfaces, there will be a multiplexing strategy. But it's dependent on the dongle. For Versaloon, the 20PIN interface is: 1. VREF/ADC 2. VCC // they should be connect together 3. JTAG_TRST/IIC_SCL/GPIO/ISSP_XRST/ICP_XRES 4. GND 5. JTAG_TDI/SPI_MOSI/GPO 6. GND 7. JTAG_TMS/SWJ_SWDIO/GPIO 8. GND 9. JTAG_TCK/SWJ_SWCLK/GPO/ISSP_SCLK/C2_C2CK/ICP_SCLK 10. GND 11. JTAG_RTCK/GPI 12. GND 13. JTAG_TDO/GPI 14. GND 15. JTAG_SRST/IIC_SDA/GPIO/ISSP_SDATA/C2_C2D/ICP_SDATA 16. GND 17. UART_TXD/GPO 18. GND 19. UART_RXD/GPI 20. GND JTAG_XXXX is for JTAG interface, SWJ_XXXX is for SWJ interface, ISSP_XXX is for PSoC_ISSP interface, C2_XXX is for C8051F_C2 interface, ICP_XXX is for LPCICP interface, SPI_XXX is for SPI interface, IIC_XXX is for IIC interface, UART_XXX is for UART interface, and so on. As my point of view, SWJ is the name of interface (Serial Wire JTAG), while SWD is the name of the debug protocol(Serial Wire Debug). I'm not fimilar with GIT, I'll first try it. 2009/10/26 Zach Welch <z...@superlucidity.net> > On Sun, 2009-10-25 at 18:47 +0100, Øyvind Harboe wrote: > > Adding a new hardware interface to OpenOCD is pretty > > huge: swj, GPIO, zero wire debug interface, i2c, etc. > > > > I think here it would be a Bad Idea to add piecemeal patches > > to add something like that... > > > > A good plan is definitely called for if you want to attract > > developers(to a separate development git repository)? > > > > There has been swj discussions and even patches in the > > past on the list. > > I want to encourage this work, but David has shown that it needs to be > treated as a major feature. I suggest starting to develop in your own > local branch, with a series of patches. > > You create a fork of the repository on repo.or.cz: > > http://repo.or.cz/m/regproj.cgi?name=openocd/ > > This requires the following steps: > 1) Create a user account: upload a SSH key. > 2) Make sure the name is 'openocd/simon-qian' or similar. > 3) You must edit the project and give your user account permissions. > > In your local repository, you can commit your current patches to a > branch and push it there: > 1) git checkout -b sq/swj && git commit -m 'Some changes...' ... > 2) git remote add mirror git://repo.or.cz/openocd/simon-qian.git > 3) git push mirror +sq/swj > > Then, anyone can pull your changes in one step (after config): > 1) git remote sq add mirror git://repo.or.cz/openocd/simon-qian.git > 2) git pull sq +sq/swj > > Cheers, > > Zach > -- Best Regards, SimonQian http://www.SimonQian.com
_______________________________________________ Openocd-development mailing list Openocd-development@lists.berlios.de https://lists.berlios.de/mailman/listinfo/openocd-development