This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Omap-L137 MMC/SD and EMIFA NAND FLASH multiplexing

Other Parts Discussed in Thread: OMAP-L137, OMAP-L138

   Hi All,

  My question regards the fact that some of the EMIFA port pins are muxed internally

with the MMC/SD pins on omap-l137, in my design I need to implement Nand Flash memory and

a MMC/SD port therefore I have been looking for alternatives to be able to implement both simultaneously.

  I though of connecting the MMC/SD port via SPI but the linux drivers for MMC/SD dont support SPI mode, I

also thought of connecting an SPI nand flash from micron and leave the pins for the MMC/SD port but I´m not sure if

the linux SPI driver will support it?

  Any help on this or any comment someone wants to make is welcome

 

 

 

  • Haroldo,

    The LSP/PSP driver datasheet for OMAPL137 specifies that SPI-Flash is supported.

    -Tommy

  • Hi Tommy,

     Thanks for the quick answer

      But my problem is that the SPI driver supports interfacing with EEPROMS and

    the Flash ROM memories have low capacity 4MB 8Mbit or 16MBit, I require a NAND

    Flash memory (4Gbit) to be connected to the OMAP-L137 and a MMC/SD port both at the same time.

    Any Ideas?

  • Haroldo,

    I can't think of a clean work-around for OMAP-L137 that would not require driver/software modifications or sacrifice some performance.  Keep in mind that I am not a software person so there may be a good work-around, but I just don't know about it.  Would you be able to use another device such as OMAP-L138 that has two MMC/SD ports?

    -Tommy

  • Tommy,

    I have consider it, but right know all my hardware development tools are for the OMAP-L137

    I agree with you that perhaps there could be a software work-around but it surely involves

    linux driver development or tweaking and my goal is to complete the hardware design

    with as little effort as posible.  Now regarding the performance sacrifice I guess that could be an option

    The nand flash memory  is needed to keep the Kernel and filesystem load the kernel to ram on startup and to save some important

    data every once in a while so it could share the EMIFA port with the MMC/SD port  and use multiplexing

    as it is in the OMAP-L137 EVM but there is no option to compile the kernel to support both peripherals at

    the same time or any means of arbitration amongst them.

     

  • It sounds like you would have to create your own custom driver to handle both NAND and MMC/SD.

    From a hardware perspective, I think you can:

    • Enable/Disable NAND by using a _CS signal
    • Disable MMC/SD by issuing an IDLE instruction (You may want to avoid certain NAND addresses or sequences to prevent accidental activation of the MMC/SD [Nevermind...the MMC/SD clock/control signals are MUX'd with the ALE/CLE NAND signals] )

     

  • Hi, I wanna ask a question on whether we can use LCD and Nand Flash at the same time on Omap-L137. I checked the Linux Kernel configuration.

    System Type  --->
        [*] DA830/OMAP-L137 UI (User Interface) board support
            Select DA830/OMAP-L137 UI board peripheral --->
                (X) LCD  ( ) NAND flash


    It seems that only one component can be used  because when LCD is selected, Nand flash is automatically disabled. But from hardware perspective, on the user interface board, LCD and Nand use diffrent part of EMIFA port. How come they can not be enabled together at  Kernel configuration ?

  • Peter,

    The LCD pins are muxed with EMIFA address and data pins so you will not be able to use both at the same time.

    -Tommy

  • Hi Tommy,

    Thanks for your reply. Nand flash use only EMA_D0-7 and EMA_A1-2 while LCD use EMA_BA0,EMA_BA1,EMA_A0,A3-A12,and EMA_D8-15. According to Pin Multiplexing Control register, shouldn't every EMIFA pin has individual mux instead of whole EMIFA muxing with LCD controller?

    Peter

  • Peter,

    You are correct.  You should be able to select PINMUX functions for each individual pin and use both LCD and NAND at the same time.  It's possible that this was overlooked when the software was developed. 

    -Tommy