[ELDK] new developer for kilauea PPC405EX, EBC device?

Michael Walton mike at farsouthnet.com
Wed Mar 19 07:39:48 CET 2008


Hi John

Not to contradict Wolfgang's response in any way, but I do have an
additional comment:

We use the user-space driver paradigm extensively for our custom drivers,
and to very good effect. We find that it simplifies debugging and also
improves integration since the driver is not confined to standard system
APIs (sockets, etc) and can therefore have an application-specific upper
API.

The basic methodology is as follows:
* develop a very lightweight kernel driver stub that gives user space
applications access to the device register space via mmap()
* the same kernel driver stub also hands off interrupts to a waiting
(possibly real-time) thread in the user space application
* all register access and interrupt handling is done by the main driver in
user space

There are of course some finer points of address translation, latency,
interrupt acknowledgement and the like to take care of, but overall this
approach is both possible and highly effective. No doubt there are many
reasons NOT to do it this way, but it works for us!

Mike

> -----Original Message-----
> From: eldk-bounces at lists.denx.de [mailto:eldk-bounces at lists.denx.de] On
> Behalf Of Wolfgang Denk
> Sent: Wednesday, March 19, 2008 1:51 AM
> To: Price, John @ SDS
> Cc: eldk at lists.denx.de
> Subject: Re: [ELDK] new developer for kilauea PPC405EX, EBC device?
> 
> Dear John,
> 
> in message
> <B9639434CFA424438117913649CDB78704C52A5D at MA_EXCHANGE.corp.sds.l-3com.com>
> you wrote:
> >
> > Hi I am a new to this list and have just started development on a
> > project that will use the PPC405EX device.  Looking at the kilauea405EX
> > user manual I see the EBC is mapped at 0x8000 0000.

...

> > Is it possible to do this through a user program or is this
> > functionality only possible through a device driver?
> 
> You cannot access the necessary registers from user  space,  and  you
> cannot process interrupts in user space. You will have to implement a
> real device driver for this.
> 
> Best regards,
> 
> Wolfgang Denk
> 
> --
> DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
> "I can call spirits from the vasty deep."
> "Why so can I, or so can any man; but will they come when you do call
> for them?"          - Shakespeare, 1 King Henry IV, Act III, Scene I.
> _______________________________________________
> eldk mailing list
> eldk at lists.denx.de
> http://lists.denx.de/mailman/listinfo/eldk



More information about the eldk mailing list