* Using Bestcomm API (DMA) on MPC5200b with Linux?
@ 2008-10-23 13:00 Dave Best
2008-10-23 22:28 ` Matt Sealey
0 siblings, 1 reply; 6+ messages in thread
From: Dave Best @ 2008-10-23 13:00 UTC (permalink / raw)
To: linuxppc-embedded
I am trying to connect a FPGA/FIFO with my MPC5200b on a phytec PCM 030 boa=
rd 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-power=
pc/sysdev/bestcomm path) I tried to make use of it but i've run into some p=
roblems.
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
=0A=0A=0A
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Using Bestcomm API (DMA) on MPC5200b with Linux?
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-12-04 10:01 ` Dave Best
0 siblings, 2 replies; 6+ messages in thread
From: Matt Sealey @ 2008-10-23 22:28 UTC (permalink / raw)
To: linuxppc-embedded; +Cc: arieswar24b
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 <matt@genesi-usa.com>
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
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Using Bestcomm API (DMA) on MPC5200b with Linux?
2008-10-23 22:28 ` Matt Sealey
@ 2008-10-24 15:14 ` Jon Smirl
2008-10-27 16:18 ` Matt Sealey
2008-12-04 10:01 ` Dave Best
1 sibling, 1 reply; 6+ messages in thread
From: Jon Smirl @ 2008-10-24 15:14 UTC (permalink / raw)
To: Matt Sealey; +Cc: arieswar24b, linuxppc-embedded
Was the new BestComm support in the 2.6.23.1 kernel he is using?
On Thu, Oct 23, 2008 at 6:28 PM, Matt Sealey <matt@genesi-usa.com> wrote:
> 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 <matt@genesi-usa.com>
> 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
>
--
Jon Smirl
jonsmirl@gmail.com
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Using Bestcomm API (DMA) on MPC5200b with Linux?
2008-10-24 15:14 ` Jon Smirl
@ 2008-10-27 16:18 ` Matt Sealey
2008-12-04 17:04 ` Juergen Beisert
0 siblings, 1 reply; 6+ messages in thread
From: Matt Sealey @ 2008-10-27 16:18 UTC (permalink / raw)
To: Jon Smirl; +Cc: arieswar24b, linuxppc-embedded
You know, Sylvain posted his patch the week after 2.6.23 was released
so I guess it's a big fat no.
However the original patchset or it (http://ozlabs.org/pipermail/linuxppc-dev/2007-October/044301.html)
should patch very easily.
The last thing you'd want is to code a driver using BestComm right now,
and then move to a new kernel later on in development and have to rewrite
it from scratch. The Freescale API really is dead as a dodo.
--
Matt Sealey <matt@genesi-usa.com>
Genesi, Manager, Developer Relations
Jon Smirl wrote:
> Was the new BestComm support in the 2.6.23.1 kernel he is using?
>
> On Thu, Oct 23, 2008 at 6:28 PM, Matt Sealey <matt@genesi-usa.com> wrote:
>> 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 <matt@genesi-usa.com>
>> 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
>>
>
>
>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Using Bestcomm API (DMA) on MPC5200b with Linux?
2008-10-23 22:28 ` Matt Sealey
2008-10-24 15:14 ` Jon Smirl
@ 2008-12-04 10:01 ` Dave Best
1 sibling, 0 replies; 6+ messages in thread
From: Dave Best @ 2008-12-04 10:01 UTC (permalink / raw)
To: Linuxppc-embedded
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
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Using Bestcomm API (DMA) on MPC5200b with Linux?
2008-10-27 16:18 ` Matt Sealey
@ 2008-12-04 17:04 ` Juergen Beisert
0 siblings, 0 replies; 6+ messages in thread
From: Juergen Beisert @ 2008-12-04 17:04 UTC (permalink / raw)
To: linuxppc-embedded; +Cc: arieswar24b
On Montag, 27. Oktober 2008, Matt Sealey wrote:
> You know, Sylvain posted his patch the week after 2.6.23 was released
> so I guess it's a big fat no.
I guess: Yes. He uses this patch series as he uses our board support package.
And I took this patch series and included it in our BSP release.
Juergen Beisert
--
Dipl.-Ing. Juergen Beisert | http://www.pengutronix.de
Pengutronix - Linux Solutions for Science and Industry
Handelsregister: Amtsgericht Hildesheim, HRA 2686
Vertretung Sued/Muenchen, Germany
Phone: +49-8766-939 228 | Fax: +49-5121-206917-5555
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2008-12-04 17:05 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
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 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).