[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Discuss-gnuradio] FX2 setup / interrupts / genral comms
From: |
Eric Blossom |
Subject: |
Re: [Discuss-gnuradio] FX2 setup / interrupts / genral comms |
Date: |
Tue, 23 May 2006 05:31:12 -0700 |
User-agent: |
Mutt/1.5.9i |
On Tue, May 23, 2006 at 08:53:12AM +0100, Kalen Watermeyer wrote:
> Hello again,
>
> I'm battling to talk to my FX2 (custom board), under
> windows. I use the CyAPI interface to the generic USB
> driver supplied by Cypress. I can set LED's on my
> board and so on, so I know that my firmware is being
> downloaded.
>
> I started out trying to make use of pre-written
> Cypress C files (fx2regs.h, fx2.h etc), and have found
> a couple bugs in their code.
No kidding ;)
I guess my basic question is why are you using their tools, their
include files, library files, etc, and then asking questions here?
> I have a couple of questions on setting this up (or,
> adapting the USRP/SSRP firmware to work)
If you used the tools we're using, you'd be a lot closer to having
something that worked. [Not to say that there isn't a path to get it
working using their tools, but I haven't used them.]
> 1) I don't have an eeprom on my board to store
> PID/VID, so I am bound to the standard interface
> settings - will this be a problem?
Is this a "one off" board, or is this something that you plan to build
more than one of? Any particular reason you're not spending the $0.45
that it takes to allow the board to have it's own PID/VID?
Also, the standard interface settings have nothing to do with the
PID/VID. After you download code into the FX2, it can look like
pretty much anything.
> i.e. provided I set
> up my EP2 to IN, and EP6 to OUT (matching the standard
> settings wrt buffering etc), can I then just change
> the device's alternative interface setting to the
> appropriate one and access these endpoints?
Uhh, you're trying to get this working under windows, right?
Don't know how they do it there, but in general, this sounds right.
> 2) I am trying to set up my firmware responses to
> CONTROL requests over EP0. Looking at the USRP code, I
> see that USB interrupts are in autovector mode, with a
> fair bit of code written in assembler.
Basically just the glue for the interrupt vectors is in assembler.
The handlers (if used) are in C.
> I need to translate this into a form that my Keil uVision compiler
> will understand, but once I have done this, with the assembler
> directives (eg isr.asm), the appropriate include and source files,
> will I need to set anything else up? (I have commented out all gpif
> or fpga-specific functionality)
I'm sure the non-free Keil tools have some way to handle this.
If not, you really are getting a raw deal ;)
> 3) Also, do I need to explicitly clear HSNAK and
> perform other house-keeping in the CONTROL ISR's?
No.
> 4) Finally, the next step after sorting out the EP0
> responses will be to make a simple loop-back whereby
> the FX2 intercepts all OUT packets and sends them back
> to the host, so that I can be sure that my firmware is
> ok. Can I simply use ISR's hooked into the endpoint
> interupts to achieve this?
Beats me. I haven't tried using endpoint interrupts.
Eric