I am starting to get concerned...

Guys, if you take care of the code quality, why OpenOCD internals is a
mess? Why noone cleaned it up so far? Take a look at UrJTAG as good
example of your approach but it was implemented in reality :-)

I have started working on LibSWD when there was no MPSSE driver, this
is why I use ft2232. I had two choices back then - first cleanup the
code, second make swd working. I have chosen second option as more
important for me, its working, maybe its not perfect yet but it can be
tested, now its time to clean up the code, and improve efficiency
after that. The work on SWD can be tested, co I sent the commits.

You want me to create layouts for obsolete driver first. You want me
to write mpsse driver first. This will not put SWD into OpenOCD today.
It will make people wait even longer for those changes. Code will
still remain dirty.

I dont agree that Bitbang is a bad idea - this is a must have for an
interface. This is implemented in UrJTAG and this is why it took me
month or two to make things work, not year to first create basic
functionality in OpenOCD. This allows virtually all protocols
implementation at the TCL level, this allows to be more indepenent of
hardcoding stuff. USB is a bottle neck, how do you want to overcome
this? USB will always bring delay, but we can agree with this simple
fact, or have no support for USB devices that work this way at all.

Commits may be too granular, but you asked and still asking for this.
If you want to change anything, you are free to do so - commits are on
the gerrit :-)

If you dont agree on this design right now, what would happen when I
start changing more important things? You will halt all commits and
force your way of thinking? These commits are not only important
because they bring some new functionality, but also show how you react
on a change... There were only one or two remarks about the code,
other comments are about editorial stuff.

I think Spen not fully understand the problem. There are three
variables with the current design: interface, layout, transport. You
have one configuration file for an interface-layout pair (the
transport was JTAG by default). I made a solution that makes it
possible to reuse existing configurations and introduce third variable
- transport. Still you can use old configuration for JTAG transport.
But you need to create new configuation for a new interface, because
this IS a new interface, with new layout and new transport. How do you
want to initialize interface in a different manner using old interface
and old layout? Spen, how do you want to use old config to initialize
new layout and new transport? Please suggest better solution and say
why it is better than mine. You can prove it with the code. To see
what is the problem, change layout to ft2232_swd on a JTAG interface,
and see that it want to work on a nonexistent data. Initialization
flow needs to be fixed. What is the initialization flow? Where are
configuration information stored? Any contex? One place? Bunch of
global variables? How to backtrace the function call? What do
functions work on? Void?

Best regards,
Tomek

-- 
CeDeROM, SQ7MHZ, http://www.tomek.cedro.info

------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. ON SALE this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122712
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to