Skip to main content
Topic: Help needed with BBv2 + MIPS target (Read 4836 times) previous topic - next topic

Help needed with BBv2 + MIPS target

Hallo all,

i'm a linux kernel developer but absolute beginner with jtag and BB.
I wont connect one of my old access points (for experementing) with BBv2. Currently i did fallwoing steps:
- found jtag interface on AP and connected it with BB.
- started AP, BB and urjtag
- programmed BBs CPLD
Code: [Select]
cable ft2232 pid=0x6010 vid=0x403 interface=1
bsdl path /home/lex/Work/jtag/bsdl/
detect
svf /home/lex/Work/jtag/svf/BBv2-JTAGkey-v1.4-VHDL.svf progress stop
- if i understand correctly, next step is to run ar2312 script.
Here i got fallwoing problems. This parts fail:
Code: [Select]
register BSR 1       (this registr used by BBs script for xc2c32a-vq44)
register DIR 32      (and this registr used by BBs script for xc2c32a-vq44)
instruction length 5 (xc2c32a-vq44 set lenght to 8 so i can't overwrite it to 5)

sinse lenght is not 5 all fallwoing instruction will fail too:
Code: [Select]
instruction     BYPASS          11111   BR
instruction    SAMPLE/PRELOAD  00010  BSR
instruction    IDCODE          00001  DIR
instruction    EJTAG_IMPCODE  00011  EJIMPCODE
instruction    EJTAG_ADDRESS  01000  EJADDRESS
instruction    EJTAG_DATA      01001  EJDATA
instruction    EJTAG_CONTROL  01010  EJCONTROL
instruction    EJTAG_ALL      01011  EJALL
instruction    EJTAGBOOT      01100  BR
instruction    NORMALBOOT      01101  BR
instruction    EJTAG_FASTDATA  01110  EJFASTDATA

I need your help how to solve this problems. Or it is just inpossible to use BBv2 with mips? Or i need to use JP1 instead and avoid CPLD?

Re: Help needed with BBv2 + MIPS target

Reply #1
I think i found solution. I use PicoTAP logic

Re: Help needed with BBv2 + MIPS target

Reply #2
Quote
- if i understand correctly, next step is to run ar2312 script.

Is that something you're doing for the ar2312 script, or is it a problem programming the Bus Blaster? If the ar2312 causes an issue I'm not sure why the error mentions the XC2C32A.
Got a question? Please ask in the forum for the fastest answers.

Re: Help needed with BBv2 + MIPS target

Reply #3
It is not really about error - probably more about me. Since i do not have any experience with jtag and BB, i trying to gather as match info as possible... and make it work.
My target is atheros SoC ar2313 (mips). I wont to be able to read nand flash connected with this chip.
At the beginning i assumed that programming Bus Blaster and communication with target (atheros) are done over same interfaces on ftdi chip. Now after more digging i see that programming is done over interface=1, but communication is done over interface=0. It depends on logich i use... for example PicoTap. Is it correct?

I had this errors because i tried to progam Bus Blaster and talk to SoC over same interface.
Currently i use this steps to connect with ar2313:
Code: [Select]
# switch to b-bus of ftdi chip to programm the logic
cable ft2232 pid=0x6010 vid=0x403 interface=1
bsdl path /home/lex/Work/jtag/bsdl/
# detect XC2C32A and initiate it
detect
# programm XC2C32A. Pass most jtag pins directly to ftdi a-bus
svf /home/lex/Work/jtag/svf/BBv2-PicoTap.svf progress stop
# switch to a-bus.
cable ft2232 pid=0x6010 vid=0x403 interface=0
# prepare SoC
frequancy 200000
detect
include atheros/ar2312/ar2312
With this sequence i'm able to talk with ar2313 (... actually i got other problems, but it will be my next question).
I wont to know if this was correct way, or may be there are some other, may be better ways.

Re: Help needed with BBv2 + MIPS target

Reply #4
Glad you got it going!

The XC2C32A on the programmer is ALWAYS going to be interface=1, the pass-through to the target will ALWAYS be interface=0.

The script above looks great, but you don't need to program the CPLD each time. The CPLD is static. Once it is programmed there's no reason to program it again unless you want to swap in a new buffer.
Got a question? Please ask in the forum for the fastest answers.

Re: Help needed with BBv2 + MIPS target

Reply #5
Thx for your response.
mow more thinsgs make sense for me.
I tryed one more time other logics, but i can't make them work. Do miss some thing?
I tested BBv2-JTAGkey-v1.4-VHDL.svf and BBv2-JTAGkey-v1.4-verilog.svf. On detect i get:
warning: TDO seems to be stuck at 0

and only with BBv2-PicoTAP-v1.0.svf i get real response from device:
jtag> detect
IR length: 5
Chain length: 1
Device Id: 00000000000000000000000000000001 (0x00000001)
  Unknown manufacturer! (00000000000) (/usr/share/urjtag/MANUFACTURERS)

if i understand correctly BBv2-PicoTAP is comparable with BusBlaster without CPLD?

Re: Help needed with BBv2 + MIPS target

Reply #6
Hi ian,
seems like PicoTap perfectly fit to MIPS platforms with EJTAG. I have only one whish - Is it possible to add one more wire to BBv2-PicoTAP? I need nSRST.
I think some thing like ADBUS5 -> TSRST will be just perfect.

Re: Help needed with BBv2 + MIPS target

Reply #7
Hi fishor,

Thanks for the update, glad you got it going. Yes, as I recall the PicoTAP is basically a FT2232 without a CPLD in the most common programming configuration.

Should be no problem to make a new buffer but it might be later in the week until I can get to it.
Got a question? Please ask in the forum for the fastest answers.