From: Dave Best <arieswar24b@yahoo•de>
To: Linuxppc-embedded@ozlabs•org
Subject: Re: Using Bestcomm API (DMA) on MPC5200b with Linux?
Date: Thu, 4 Dec 2008 10:01:31 +0000 (GMT) [thread overview]
Message-ID: <99808.65832.qm@web25808.mail.ukl.yahoo.com> (raw)
In-Reply-To: <4900FA72.1040201@genesi-usa.com>
I tried to use GenBD.
I looked at "mpc52xx_ac97.c" which seems to be a sound driver which apparen=
tly 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 w=
ith LP as initiator and the LP FiFo address. I called bcom_prepare_next_bu=
ffer 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.=
=20
Frankly, i'm really at a loss on how to proceed.
Dave
--- Matt Sealey <matt@genesi-usa•com> schrieb am Fr, 24.10.2008:
> Von: Matt Sealey <matt@genesi-usa•com>
> Betreff: Re: Using Bestcomm API (DMA) on MPC5200b with Linux?
> An: linuxppc-embedded@ozlabs•org
> CC: arieswar24b@yahoo•de
> 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.
>=20
> 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.
>=20
> 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.
>=20
> 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..
>=20
> -- Matt Sealey <matt@genesi-usa•com>
> Genesi, Manager, Developer Relations
>=20
> 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.
> >=20
> > 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.
> >=20
> > So i tried to include the API in a module to utilize
> its functionality but no luck till now.
> >=20
> > 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.
> >=20
> > Further information is very hard to find for such a
> common task as starting a DMA transfer.
> >=20
> > Dave
> >=20
> >=20
> >=20
> > _______________________________________________
> > Linuxppc-embedded mailing list
> > Linuxppc-embedded@ozlabs•org
> > https://ozlabs.org/mailman/listinfo/linuxppc-embedded=0A=0A=0A
prev parent reply other threads:[~2008-12-04 10:01 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-10-23 13:00 Using Bestcomm API (DMA) on MPC5200b with Linux? Dave Best
2008-10-23 22:28 ` Matt Sealey
2008-10-24 15:14 ` Jon Smirl
2008-10-27 16:18 ` Matt Sealey
2008-12-04 17:04 ` Juergen Beisert
2008-12-04 10:01 ` Dave Best [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=99808.65832.qm@web25808.mail.ukl.yahoo.com \
--to=arieswar24b@yahoo$(echo .)de \
--cc=Linuxppc-embedded@ozlabs$(echo .)org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox