GHlavenkaNew Member Posts:
19 Oct 2005 02:31 PM |
|
I have the feeling this is really a simple question, but it's a hurdle I have to get over...
We've bought a couple of the Logic eval kits (FireEngine/ITX) to do development on. I want to hang a bytewide parallel device onto a CF processor; for the sake of discussion let's say it's a Hitachi character LCD.
Looking at the ITX board schematics, I see that the PC104 connectors have FlexBus signals on them, including 3 FBCS lines. I decide I want to generate FBCS3 for my LCD.
I cleaned the solder out of the PC104 holes and put a scope probe on pin C6 of J21; this is labeled "FB_CS3#". Next, I boot into dBUG, start losh, and type this:
>> losh> w 0x10000524 0x04000000
>> losh> w 0x10000528 0
>> losh> w 0x1000052c 0x00000040
This should set the processor up to generate a strobe on FBCS3 whenever I access the address 0x04000000. So next I type:
>> losh> w 0x04000000 0xff
And I get nothing -- not even a losh prompt. I also don't get a strobe on FBCS3.
(FWIW I get the same result if I write to 0x04000000 without setting up the FB registers first)
What am I missing?
I suspect there are more registers that need to be set up before I do this, but I dunno.
|
|
|
|
kurtl@logicpd.comNew Member Posts:
19 Oct 2005 03:43 PM |
|
GHlavenka,
The CPU won't assert the external chip select until the V bit is set in the CSMR3 register. Also, you should set the ASET = 0x01, AA, and PS bits in the CSCR3 register. You should set the PAR_FBCS register as well.
Let us know if this helps.
-Kurt
|
|
|
|
GHlavenkaNew Member Posts:
02 Nov 2005 12:38 PM |
|
OK, here's what I've got so far:
w 0x10000524 0x04000000
w 0x1000052c 0x00000140
w /b 0x10000a42 0x80
w 0x10000528 0x00000001
As I understand it, these commands should set up FBCS3 to fire at base address 0x04000000, which is just above the DDR but otherwise unallocated. I've set bytewide transfers and autoacknowledge. The pin is enabled in PAR_FBCS.
So, I type
w /b 0x04000000 0xff
and I expect to see a pulse on FBCS3 but I don't. What's missing?
|
|
|
|
kurtl@logicpd.comNew Member Posts:
02 Nov 2005 12:59 PM |
|
Try:
w /w 0x10000524 0x04000000
w /w 0x1000052c 0x00100140
w /b 0x10000A42 0x3E (by writing 0x80 you had disabled FBCS3)
w /w 0x10000528 0x00000001
then write to
w /b 0x04000000 0xff
-Kurt
|
|
|
|
GHlavenkaNew Member Posts:
02 Nov 2005 01:22 PM |
|
Thanks, it's working now.
|
|
|
|