ioremap() fails for 64 MB

2006-08-23 Thread Phil Nitschke
On Tue, 2006-08-22 at 09:22 -0500, Matt Porter wrote: On Tue, Aug 22, 2006 at 05:11:09PM +0930, Phil Nitschke wrote: Hi all, I have 2 GB memory on a 7448 processor, and want to reserve a huge chunk of it at boot-time, then ioremap() it into the kernel space inside a device driver. So

ioremap() fails for 64 MB

2006-08-22 Thread Phil Nitschke
Hi all, I have 2 GB memory on a 7448 processor, and want to reserve a huge chunk of it at boot-time, then ioremap() it into the kernel space inside a device driver. So far I've succeeded with 64 MB, but can't go any higher, as mm/vmalloc.c tells me: allocation failed: out of vmalloc space - use

DMA buffer synchronisation with ioremap()

2006-07-31 Thread Phil Nitschke
(I go no replies last week, so I'll try again, with less explanation...) If I master a DMA from a PCI device into a main memory buffer allocated with dma_alloc_noncoherent(), I need to synchronise the destination buffer using dma_sync_single_range_for_xxx() before and after the DMA. But if the

DMA buffer synchronisation

2006-07-25 Thread Phil Nitschke
Hi, I'm transferring data using DMA from a custom PCI device memory into RAM. Can someone advise me on the correct buffer synchronisation strategy for the following 3 scenarios: Assuming I have three buffers, buf_A, and buf_B, both created using dma_alloc_noncoherent(NULL, 32 * PAGE_SIZE, ...),

mv64x60 DMA controller

2006-06-13 Thread Phil Nitschke
Hi guys, I've written a DMA controller driver for the Marvell Discovery series (particularly the MV64360, MV64460). It is still a work-in-progress and comes with many caveats, but I'm happy to share it should anyone be interested. Some of the caveats include: - does not support scatter-gather

pmppc7448/mv64x60 DMA from PCI to memory

2006-05-25 Thread Phil Nitschke
On Wed, 2006-05-24 at 13:52 -0700, Mark A. Greer wrote: On Wed, May 24, 2006 at 11:53:54AM +0930, Phil Nitschke wrote: On Tue, 2006-05-23 at 16:54 -0700, Mark A. Greer wrote: You say that you don't see any PCI traffic. Does that mean you have a PCI analyzer and that you are sure

pmppc7448/mv64x60 DMA from PCI to memory

2006-05-24 Thread Phil Nitschke
Hi, I'm working on a project using this processor: http://www.artesyncp.com/products/PmPPC7448.html on a custom VME carrier, as shown below. We're wanting to suck large amounts of data from a PCI device which _cannot_ perform bus-mastered DMA (it is a PCI Target only). The Marvell Chip used by

pmppc7448/mv64x60 DMA from PCI to memory

2006-05-24 Thread Phil Nitschke
On Tue, 2006-05-23 at 16:54 -0700, Mark A. Greer wrote: You say that you don't see any PCI traffic. Does that mean you have a PCI analyzer and that you are sure that its set up correctly? I don't have a PCI analyzer, however the JTAG used to program the PCI device has been configured to

Memory mapping PCI memory region to user space

2006-03-29 Thread Phil Nitschke
On Mon, 2006-03-27 at 10:18 -0600, Kumar Gala wrote: On Mar 27, 2006, at 2:02 AM, Phil Nitschke wrote: On Thu, 2006-03-23 at 09:44 -0600, Kumar Gala wrote: On Mar 23, 2006, at 8:21 AM, Wyse, Chris wrote: Hi, I'm trying to map a PCI memory region 1 into user space from my driver

Memory mapping PCI memory region to user space

2006-03-28 Thread Phil Nitschke
2.6.16 kernel.org kernel built for PPC. I used the ELDK4 NFS filesystem.) -- Phil Nitschke Phil.Nitschke at avalon.com.au Avalon Systems Pty Ltd Linux 2.6.16-pmppc744x (arty5) (13:01 on Tuesday, 28 March 2006) login: root Last login: Tue Mar 28 13:00:32 from 192.168.1.14 bash-3.00# mount /dev

Memory mapping PCI memory region to user space

2006-03-28 Thread Phil Nitschke
as far as the mmap() goes, because mine is broken and yours isn't! -- Phil Nitschke Phil.Nitschke at avalon.com.au Avalon Systems Pty Ltd

Memory mapping PCI memory region to user space

2006-03-27 Thread Phil Nitschke
On Thu, 2006-03-23 at 09:44 -0600, Kumar Gala wrote: On Mar 23, 2006, at 8:21 AM, Wyse, Chris wrote: Hi, I'm trying to map a PCI memory region 1 into user space from my driver (PPC440GX, Linux 2.6.10). Here's the mmap routine of the driver that I'm using: Why don't use the

linux DMA capabilities in MV64460

2006-03-09 Thread Phil Nitschke
BW == Brian Waite brian at waitefamily.us writes: I'm now looking seriously (and reluctantly!) at writing a DMA Controller Driver to supplement these functions, and I've started the process of getting an NDA from Marvell, so I can get their User Manual (and errata!). BW You won't

linux DMA capabilities in MV64460

2006-03-09 Thread Phil Nitschke
On Wed, 2006-03-08 at 22:36 +, Adrian Cox wrote: On Mon, 2006-03-06 at 14:39 +1030, Phil Nitschke wrote: How is a DMA controlled (from a device driver writer's perspective) when a third-party (i.e. in the bridge) DMA controller needs to do the work to get the data from a PCI Target

linux DMA capabilities in MV64460

2006-03-06 Thread Phil Nitschke
MAG == Mark A Greer mgreer at mvista.com writes: MAG On Tue, Dec 20, 2005 at 10:49:58AM +1030, Phil Nitschke wrote: ... if I wanted to suck the data into main memory using the mv64460 IDMA controller (assuming the device couldn't initiate its own burst writes), is there a standard

scatter/gather DMA and cache coherency

2006-02-17 Thread Phil Nitschke
ES == Eugene Surovegin ebs at ebshome.net writes: ES On Thu, Feb 16, 2006 at 05:51:20PM +1030, Phil Nitschke wrote: Hi, I've been using a PCI device driver developed by a third party company. It uses a scatter/gather DMA I/O to transfer data from the PCI device into user

scatter/gather DMA and cache coherency

2006-02-17 Thread Phil Nitschke
GB == Buhler, Greg greg.buhler at viasat.com writes: GB Phil, If the third party DMA driver is not proprietary send it GB over and I'd be happy to take a look at it for you. I don't think I can, due to this in the code:

scatter/gather DMA and cache coherency

2006-02-17 Thread Phil Nitschke
MAG == Mark A Greer mgreer at mvista.com writes: MAG On Thu, Feb 16, 2006 at 05:51:20PM +1030, Phil Nitschke wrote: The problem is, that sometimes the data is corrupt (usually on the first transfer). We've concluded that the problem is related to cache coherency. The Artesyn 2.6.10

scatter/gather DMA and cache coherency

2006-02-16 Thread Phil Nitschke
Hi, I've been using a PCI device driver developed by a third party company. It uses a scatter/gather DMA I/O to transfer data from the PCI device into user memory. When using a buffer size of about 1 MB, the driver achieves a transfer bandwidth of about 60 MB/s, on a 66 MHz, 32-bit bus. The

linux DMA capabilities in MV64460

2005-12-22 Thread Phil Nitschke
MAG == Mark A Greer mgreer at mvista.com writes: MAG Hi Phil, MAG [Note: I'm cc'ing linuxppc-embedded for others to reference and to MAG add their thoughts.] OK, I've just subscribed... MAG On Tue, Dec 20, 2005 at 10:49:58AM +1030, Phil Nitschke wrote: Hi Mark, I'm developing