[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [microblaze-uclinux] uClinux support for FSL devices



Hi John and friends,

Excellent job!
by having this generic driver the user can plug his own peripheral in 
some hours inluding the HDL coding of the peripheral.

John Williams wrote:

> Hi folks,
>
> I'm releasing some of my research drivers into the public CVS. I think 
> (hope?) that it's interesting work, and may be useful in broadening 
> awareness of what Microblaze uClinux can do.

Sure it will.

>
> On a more philsophical level, I think that the best validation of 
> research is for it to find use in the wider community.  If this proves 
> useful to someone, I'd love to hear about it.

100% usefull for me.

>
> First cab off the rank is a generic FSL FIFO driver.  FSL is one of 
> the bus architectures supported by Microblaze, that provides register 
> mapped streaming IO.  An FSL bus is essentially a hardware FIFO, with 
> simple handshaking signals.  Interfacing to FSL is so easy it's almost 
> trivial, particularly if you have an example to follow.  Read all 
> about it in the Microblaze HW reference.
>
> This driver create a linux device abstraction over the top of an FSL 
> channel, providing software buffering and read/write/ioctl operations. 
> If you have an  FSL-enabled core, you can simply cat (or write() ) 
> data to the device node, and it is automagically buffered and streamed 
> to the  FSL channel.  IOCTL calls are used to reset the buffers, send 
> and read control words, that sort of thing.  I chose the misc device 
> major number (10), with minor numbers 192-199.  If this is a horrible 
> clash with some existing device let me know and we'll pick a different 
> number.
>
> The driver lives in linux-2.4.x/drivers/misc/fslfifo - and is 
> available in CVS right now.
>
On the same subject I have a MMC memory card bootloader (in SPI mode) 
 it's a dumb one which reads the image.bin fron the FAT fs from card it 
dumps the file where the  SDRAM  begins and starts. After that I have 
(almost) a driver which mounts the card as dosfs file system partition 
(128 MB of flash) it's still experimental but it works now and it stores 
my own sw for my system, I need another ~2 weeks to polish it and test 
it on different hw platforms. I will publish the driver after I'm 
convinced it works as it should.

>
> Regards,
>
> John
>
> PS If you are writing your own FSL-enabled device drivers or user 
> code, but don't need this driver, then you may still find the file 
> /include/asm-microblaze/fsl.h useful.  It's a bunch of support macros 
> for getting and putting to/from FSL channels, and interpreting the 
> status results and so on.
>
> PPS For those who know about FSL - my personal policy in uClinux is 
> that blocking FSL ops are strictly verboten...  Nothing locks 
> microblaze harder than a blocking get on a non-existent FSL port!  Not 
> even an NMI will save you - it's reset-city... 

Agree, who wants blocking FSL is shooting in his leg.

Keep up the good working,

Aurash

>
> ___________________________
> microblaze-uclinux mailing list
> microblaze-uclinux@itee.uq.edu.au
> Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
> Mailing List Archive : 
> http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/
>
>


___________________________
microblaze-uclinux mailing list
microblaze-uclinux@itee.uq.edu.au
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/