Hi, I have recently been using the IO Muxing tool probided by freescale to try and sort out the pin muxing scheme.
My question is the following.
In our design we would like to use as many GPIO pins as possible but we still need a SDRAM, a Nand Flash, a USB Host and OTG ports, a SDHC channel, and some others. In the IO Muxing utility I get warnings telling me tat not al GPIOX pins are operated at the same voltage strength (the tools says "Check power settings for CRM, EIM, JTAG, LCDC, MISC") and I can see that some of the pins that I am using as GPIO are beeing operated and 1.8V and some others at 3.3V.
My question is how can I fix this problem? I mean, it is not like I can change the supply for the EIM modules from 1.8V to 3.3V and be done right? wouldn't that damage the SDRAM?
I know I must sound pretty stupid but the truth is that i don't really understand the problem to begin with, I have been looking at the chapter on IO muxing from the reference guide over and over and I still don't get it.
I mean, I understand that some pads can not be operated at different voltages and must all use the same one but why is that really a problem? I mean, If i know this, and i place the right logic translation circuitry in my board will I have any problems?
One of the things that I don't understand from the reference guide is for example what is said on page 4-11 when talking about the SW_PAD_CTL_GRP_DVS. The last words on the first paragraph are "DVS control is only valid for GPIO pins." but then if you look at table 4-7 where you have a description of all the grups that allow DVS configuration you see all sorts of modules!!! not only GPIO pins....
I would really appreciate if someone could shine some light over this....
Original Attachment has been moved to: 640-IOMuxing.xml
Hi Matt, thanks for your reply.
From what you are telling me I understand that I have no easy way around this issue because I see that some modules only support 3.3V operation and the EIM in my case needs 1.8V right? I mean, I am always going to have some pins at 3.3V and others at 1.8V i guess...
However, this is not a big issue for me I think. We are trying to use the mx25 to gather the data from various ADC converters so I guess i can arrange the schematic so that the 1.8V pins would be used as inputs to the i.mx25 (with maybe some resistive divisor to adapt the voltage levels). I just wanted to ask you, do you think this is a valid approch? or am I going about it all wrong? I mean, what would you do?
I will be very gratefull to any other people who can also share their experience/opinion.
The IOMux tool just prints a warning if it detects different voltages within a functional group (i.e. - within GPIO2, GPIO3, etc...). It's just a warning for you to double check this is what you intended and isn't an issue. If you select "Signal Comments" in the view menu you'll see the voltage each pin will operate at, depending on how you set the I/O voltages in the "Power" tab.
Check Table 6 in the datasheet for the acceptable ranges for each I/O supply. Some can operate at either 1.8v or 3.3v nominal (NANDF, CSI, SDIO), while some can operate at just 3.3v nominal (CRM, LCDC, JTAG, MISC).
The EIM I/O voltage needs to be at 1.8v nominal (assuming you're using DDR2 or mDDR).