I tried to use GenBD. I looked at "mpc52xx_ac97.c" which seems to be a sound driver which apparently uses the GenBD tasks, if only the tx ones and the buffers.
As i connected my FPGA/FiFo to the LocalPlus i called bcom_gen_bd_rx_init with LP as initiator and the LP FiFo address. I called bcom_prepare_next_buffer and then bcom_submit_next_buffer and enabled my task. In advance i prepared the LP registers to my intended transfers and to use CS1. But the task doesn't seem to call any chip select to fill its buffers. Frankly, i'm really at a loss on how to proceed. Dave --- Matt Sealey <[EMAIL PROTECTED]> schrieb am Fr, 24.10.2008: > Von: Matt Sealey <[EMAIL PROTECTED]> > Betreff: Re: Using Bestcomm API (DMA) on MPC5200b with Linux? > An: linuxppc-embedded@ozlabs.org > CC: [EMAIL PROTECTED] > Datum: Freitag, 24. Oktober 2008, 0:28 > You need to write a task that does the DMA operation you > want; GenBD is actually pretty generic and lets you just > copy from one place to another. > > The API is pretty simple; make sure genbd is compiled in, > get the task structure using bcom_gen_bd_[tr]x_init, and > then.. uhh.. this is where I always forget. > > There is a way to submit a buffer descriptor and have the > engine basically perform that transfer. I think it's > bcom_prepare_next_buffer and then bcom_submit_next_buffer. > > Actually I can't even FIND those functions in the Linux > tree right now, but they have to be in there because the FEC > driver uses them.. > > -- Matt Sealey <[EMAIL PROTECTED]> > Genesi, Manager, Developer Relations > > Dave Best wrote: > > I am trying to connect a FPGA/FIFO with my MPC5200b on > a phytec PCM 030 board while running a 2.6.23.1 Linux. > > > > The Linux Kernel source contains an implementation for > the Bestcomm API in the form of a driver for ethernet (fec) > and ATA.(situated in the arch-powerpc/sysdev/bestcomm path) > I tried to make use of it but i've run into some > problems. > > > > So i tried to include the API in a module to utilize > its functionality but no luck till now. > > > > Freescale supports the Bestcomm DMA API not on an OS > level. So the problem is adopting this API into a Linux > environment, which distinguishes between kernel space and > user space while writing to the appropriate registers. > > > > Further information is very hard to find for such a > common task as starting a DMA transfer. > > > > Dave > > > > > > > > _______________________________________________ > > Linuxppc-embedded mailing list > > Linuxppc-embedded@ozlabs.org > > https://ozlabs.org/mailman/listinfo/linuxppc-embedded _______________________________________________ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded