Re: Open-source CableServer for Impact on sourceforge.net
- From: "zcsizmadia@xxxxxxxxx" <zcsizmadia@xxxxxxxxx>
- Date: 6 Sep 2006 06:09:10 -0700
I think I found the problem.
in parport::get_status:
-return ioctl(fd, PPRSTATUS);
+{
+ u8 data = 0;
+ ioctl(fd, PPRSTATUS, &data);
+ return data;
+}
Let me know if it helps!
Zoltan
Uwe Bonnes wrote:
zcsizmadia@xxxxxxxxx <zcsizmadia@xxxxxxxxx> wrote:
Hi All,
Here is a open-source CableServer replacement for Xilinx Impact.
Currently Parallel III and Altera ByteBlaster are supported, but any
3rd party programmer cable can be implemented easily and can be used
from Impact. This open-source implementation can be used as a
Programmer Cable SDK for Impact.
I've tested only Impact 8.2, if anybody has any problem with 7.1,
please let me know!
Impact and Xilinx CableServer communication are very pooly written.
There is no error recovery at all. If server stops, Impact GUI will
crash. To avoid this you must disconnect server from GUI using
Output/Cavble disconnect menu.
http://sourceforge.net/projects/xilprggroup_id=175344&package_id=203209
http://sourceforge.net/project/showfiles.php?\
I am trying to run cblsrv on Linux (Suse10.0) with a dlc5 clone (selfmade).
Impact with windrvr recognizes the chain.
cblsrv -d3 -cdlc5:/dev/parport0 -p 2000 doesn't find the chain.
Obviosly PARPORT_DIRECT needs to get undefined with PARPORT_PPDEV
--- cblsrv-0.1/src/parport.h~ 2006-09-06 07:36:08.000000000 +0200
+++ cblsrv-0.1/src/parport.h 2006-09-06 10:35:16.000000000 +0200
@@ -50,6 +50,7 @@
// Define this if you want to support parport access by /dev/parportX
#if !defined(WIN32) && !defined(__CYGWIN__)
+#undef PARPORT_DIRECT
#define PARPORT_PPDEV
#endif
Running as root with direct io works.
After the patch, running with PARPORT_PPDEV and reading the ID results in a
crash of cblsrc:
Program received signal SIGSEGV, Segmentation fault.
0x0804b478 in parport::shift (this=0x804f008, num_bits=-806384672,
wbuff=0x804f178, rbuff=0x804f168, last=0) at parport.cpp:306
306 tdi_byte = *pw++;
(gdb) p pw
$1 = (u8 *) 0x8070000 <Address 0x8070000 out of bounds>
(gdb) bt
#0 0x0804b478 in parport::shift (this=0x804f008, num_bits=-806384672,
wbuff=0x804f178, rbuff=0x804f168, last=0) at parport.cpp:306
#1 0x0804aedb in cable::write (this=0x804f008, mode=64, wbuff=@0xbf8fea68,
cmp_rbuff=@0xbf8fea50) at cable.cpp:345
#2 0x080499db in do_cmd_write () at cblsrv.cpp:258
#3 0x08049f26 in do_msg_commands () at cblsrv.cpp:447
#4 0x0804a35a in client_connection () at cblsrv.cpp:584
#5 0x0804a53a in main (argc=5, argv=0xbf8feb84) at cblsrv.cpp:800
num-bit seems a little off.
Any ideas? Otherwise I'll try to debug in the next days.
B.t.w.: Do you have some smaller test client. Starting impact and clicking a
zillion time to get to some point in the jtag handling is tedious...
--
Uwe Bonnes bon@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Institut fuer Kernphysik Schlossgartenstrasse 9 64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------
.
- References:
- Open-source CableServer for Impact on sourceforge.net
- From: zcsizmadia@xxxxxxxxx
- Re: Open-source CableServer for Impact on sourceforge.net
- From: Uwe Bonnes
- Open-source CableServer for Impact on sourceforge.net
- Prev by Date: Re: Open-source CableServer for Impact on sourceforge.net
- Next by Date: How to bound a Cores generated output in Modelsim
- Previous by thread: Re: Open-source CableServer for Impact on sourceforge.net
- Next by thread: Packages for ORCAD
- Index(es):
Relevant Pages
|
|