public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
* GPMC setup help
@ 2009-10-27 20:41 Philip Balister
  2009-11-09 22:26 ` Tony Lindgren
  0 siblings, 1 reply; 2+ messages in thread
From: Philip Balister @ 2009-10-27 20:41 UTC (permalink / raw)
  To: linux-omap@vger.kernel.org

I've been going round and round on this for a couple of days. I have a 
logic analyzer (cheap USB, that is why come edges are not quite synced) 
attached to the gpmc pins on a logicpd dev board. The read cycle timings 
are what I expect.

The write cycle seems to do one cycle OK, then thing go into the weeds.

Here are the values I write into the registers:

GPMC_CONFIG1 reg: 1200 

GPMC_CONFIG2 reg: 40400 

GPMC_CONFIG3 reg: 20201 

GPMC_CONFIG4 reg: 4030403 

GPMC_CONFIG5 reg: 1040505 

GPMC_CONFIG6 reg: 4030000

and here is a screen shot of the logic analyzer:

http://balister.dyndns.org:8008/~balister/gpmc-write.png

Philip

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: GPMC setup help
  2009-10-27 20:41 GPMC setup help Philip Balister
@ 2009-11-09 22:26 ` Tony Lindgren
  0 siblings, 0 replies; 2+ messages in thread
From: Tony Lindgren @ 2009-11-09 22:26 UTC (permalink / raw)
  To: Philip Balister; +Cc: linux-omap@vger.kernel.org

Hi,

* Philip Balister <philip@balister.org> [091027 13:41]:
> I've been going round and round on this for a couple of days. I have
> a logic analyzer (cheap USB, that is why come edges are not quite
> synced) attached to the gpmc pins on a logicpd dev board. The read
> cycle timings are what I expect.
> 
> The write cycle seems to do one cycle OK, then thing go into the weeds.
> 
> Here are the values I write into the registers:
> 
> GPMC_CONFIG1 reg: 1200
> 
> GPMC_CONFIG2 reg: 40400
> 
> GPMC_CONFIG3 reg: 20201
> 
> GPMC_CONFIG4 reg: 4030403
> 
> GPMC_CONFIG5 reg: 1040505
> 
> GPMC_CONFIG6 reg: 4030000
> 
> and here is a screen shot of the logic analyzer:
> 
> http://balister.dyndns.org:8008/~balister/gpmc-write.png

This won't help with your current problem probably..

But once you get things working, please take a look the gpmc.c.
The GPMC values should be dynamically calculated depending on
the L3 speed. There are several examples of that in gpmc-onenand.c
and gpmc-smc91x.c.

You should be able to calculate the timings needed from the
external device data sheets. Also, Paul noted earlier that for
some devices you also need to add up the latencies for the level
shifter.

Then while at it, maybe check with your logic analyzer to make
sure the timings set using gpmc.c really are what we're trying
them to? I don't think anybody has ever verified that.

Regards,

Tony

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2009-11-09 22:26 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-27 20:41 GPMC setup help Philip Balister
2009-11-09 22:26 ` Tony Lindgren

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox