linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* LPC bus in a geode sc1200
@ 2006-05-09  9:11 Carlos Ojea Castro
  2006-05-09 14:28 ` Lennart Sorensen
  0 siblings, 1 reply; 5+ messages in thread
From: Carlos Ojea Castro @ 2006-05-09  9:11 UTC (permalink / raw)
  To: linux-kernel

Hello:

I wrote a driver to use LPC bus in a geode sc1200. For now I am able
to transmit an read or write "I/O cycle" to the LPC.
What I want to do now is to read or write to the LPC using a "Memory cycle".

Anyone knows how can I archieve this?
is there another list more suitable for my question?

Thanks,
Carlos

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

* Re: LPC bus in a geode sc1200
  2006-05-09  9:11 LPC bus in a geode sc1200 Carlos Ojea Castro
@ 2006-05-09 14:28 ` Lennart Sorensen
  2006-05-10  7:55   ` Carlos Ojea Castro
  0 siblings, 1 reply; 5+ messages in thread
From: Lennart Sorensen @ 2006-05-09 14:28 UTC (permalink / raw)
  To: Carlos Ojea Castro; +Cc: linux-kernel

On Tue, May 09, 2006 at 11:11:17AM +0200, Carlos Ojea Castro wrote:
> I wrote a driver to use LPC bus in a geode sc1200. For now I am able
> to transmit an read or write "I/O cycle" to the LPC.
> What I want to do now is to read or write to the LPC using a "Memory cycle".
> 
> Anyone knows how can I archieve this?
> is there another list more suitable for my question?

The LPC bus is the same as ISA as far as software is concerned.  You
just read and write to it, or do DMA or whatever you want.

I have an FPGA on port 0x500 on the LPC bus of an sc1200, and I just
read and write the registers there the same as any other hardware.

Len Sorensen

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

* Re: LPC bus in a geode sc1200
  2006-05-09 14:28 ` Lennart Sorensen
@ 2006-05-10  7:55   ` Carlos Ojea Castro
  2006-05-10 15:39     ` Lennart Sorensen
  0 siblings, 1 reply; 5+ messages in thread
From: Carlos Ojea Castro @ 2006-05-10  7:55 UTC (permalink / raw)
  To: Lennart Sorensen; +Cc: linux-kernel

> > I wrote a driver to use LPC bus in a geode sc1200. For now I am able
> > to transmit an read or write "I/O cycle" to the LPC.
> > What I want to do now is to read or write to the LPC using a "Memory
> cycle".
> >
> > Anyone knows how can I archieve this?
> > is there another list more suitable for my question?
>
> The LPC bus is the same as ISA as far as software is concerned.  You
> just read and write to it, or do DMA or whatever you want.
>
> I have an FPGA on port 0x500 on the LPC bus of an sc1200, and I just
> read and write the registers there the same as any other hardware.
>
> Len Sorensen

Thank you very much for your reply, Len.
I will also have an FPGA (I think it will be on port 0x1400 or so). I
am writing to LPC using 'outb' like this: outb (data, port);
So I see an I/O write on the LPC bus, that is: 2 bytes for address and
1 byte for data (it tooks one microsecond per transfer).

To speed up things, I wish to transmit more than 1 byte for data in
each transfer (if possible).
Accordingly with page 194 of the sc1200 processor data book, it is
also possible to do a "Bus Master Memory Write" to transmit 1,2 or 4
bytes.
Do you know how can I make a "Bus Master Memory Write" to the LPC?

Thank you very much, regards!
Carlos

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

* Re: LPC bus in a geode sc1200
  2006-05-10  7:55   ` Carlos Ojea Castro
@ 2006-05-10 15:39     ` Lennart Sorensen
  2006-05-11 13:15       ` Carlos Ojea Castro
  0 siblings, 1 reply; 5+ messages in thread
From: Lennart Sorensen @ 2006-05-10 15:39 UTC (permalink / raw)
  To: Carlos Ojea Castro; +Cc: linux-kernel

On Wed, May 10, 2006 at 09:55:47AM +0200, Carlos Ojea Castro wrote:
> Thank you very much for your reply, Len.
> I will also have an FPGA (I think it will be on port 0x1400 or so). I
> am writing to LPC using 'outb' like this: outb (data, port);
> So I see an I/O write on the LPC bus, that is: 2 bytes for address and
> 1 byte for data (it tooks one microsecond per transfer).
> 
> To speed up things, I wish to transmit more than 1 byte for data in
> each transfer (if possible).
> Accordingly with page 194 of the sc1200 processor data book, it is
> also possible to do a "Bus Master Memory Write" to transmit 1,2 or 4
> bytes.
> Do you know how can I make a "Bus Master Memory Write" to the LPC?

Well I know we don't do that.  We have very little data, just board
status information from various places on the board.  LPC does support
doing DMA, which I believe is done in the same way it was done on ISA at
least as far as the software is concerned.  How to implement DMA for LPC
in the FPGA I have no idea.  The LPC specifications would probably tell
you.  I imagine it involves setting up a DMA buffer in RAM (in the first
16MB probably) and then sending a command to the FPGA telling it to do a
DMA transfer from that memory location using the LPC DMA commands.

Len Sorensen

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

* Re: LPC bus in a geode sc1200
  2006-05-10 15:39     ` Lennart Sorensen
@ 2006-05-11 13:15       ` Carlos Ojea Castro
  0 siblings, 0 replies; 5+ messages in thread
From: Carlos Ojea Castro @ 2006-05-11 13:15 UTC (permalink / raw)
  To: Lennart Sorensen; +Cc: linux-kernel

On 5/10/06, Lennart Sorensen <lsorense@csclub.uwaterloo.ca> wrote:
> On Wed, May 10, 2006 at 09:55:47AM +0200, Carlos Ojea Castro wrote:
> > Thank you very much for your reply, Len.
> > I will also have an FPGA (I think it will be on port 0x1400 or so). I
> > am writing to LPC using 'outb' like this: outb (data, port);
> > So I see an I/O write on the LPC bus, that is: 2 bytes for address and
> > 1 byte for data (it tooks one microsecond per transfer).
> >
> > To speed up things, I wish to transmit more than 1 byte for data in
> > each transfer (if possible).
> > Accordingly with page 194 of the sc1200 processor data book, it is
> > also possible to do a "Bus Master Memory Write" to transmit 1,2 or 4
> > bytes.
> > Do you know how can I make a "Bus Master Memory Write" to the LPC?
>
> Well I know we don't do that.  We have very little data, just board
> status information from various places on the board.  LPC does support
> doing DMA, which I believe is done in the same way it was done on ISA at
> least as far as the software is concerned.  How to implement DMA for LPC
> in the FPGA I have no idea.  The LPC specifications would probably tell
> you.  I imagine it involves setting up a DMA buffer in RAM (in the first
> 16MB probably) and then sending a command to the FPGA telling it to do a
> DMA transfer from that memory location using the LPC DMA commands.
>
> Len Sorensen

Well at this moment, using the low address byte to transmit data, I
can transmit 100.000 bytes in about 63 milliseconds, maybe it is
enough. Will try DMA anyway...
Thank you very much!

Regards,
Carlos

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

end of thread, other threads:[~2006-05-11 13:15 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-05-09  9:11 LPC bus in a geode sc1200 Carlos Ojea Castro
2006-05-09 14:28 ` Lennart Sorensen
2006-05-10  7:55   ` Carlos Ojea Castro
2006-05-10 15:39     ` Lennart Sorensen
2006-05-11 13:15       ` Carlos Ojea Castro

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).