infineon danube/twinpass mtd support

john at john at
Sat Mar 7 07:30:31 EST 2009

Hi all,

we rewrote the infineon danube/twinpass support a while back and  
bumped the original vendor code to 2.6. we are currently looking into  
some left over details, before sending the patches upstream.

1 open issue is the mtd map. the danube has a EBU (External Bus Unit)  
which connects pci and mtd to the mips core. for PCI to work, the EBU  
needs to endiness swap in-/ex-gress DMA data. however, due to a design  
issue(?!) the EBU only swaps MTD one way. hence we needed to add some  
complex mappings.

there is 1 really ugly hack, we needed to add to make it work. the  
patch can be found here ->

and the map driver here -->

i would appreciate to get some input, whether this is the correct  
solution. i think the mtd subsystem is missing a generic way to handle  
this kind of situation. but correct me if i am worng please.


John Crispin
hacking, coding, etc
blogic on irc

    _______                     ________        __
   |       |.-----.-----.-----.|  |  |  |.----.|  |_
   |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
   |_______||   __|_____|__|__||________||__|  |____|
            |__| W I R E L E S S   F R E E D O M
   KAMIKAZE (bleeding edge) -----------------------
    * 10 oz Vodka       Shake well with ice and strain
    * 10 oz Triple sec  mixture into 10 shot glasses.
    * 10 oz lime juice  Salute!

More information about the linux-mtd mailing list