From: Frenzel, T. <Tor...@en...> - 2010-09-08 07:46:19
|
The MUX syntax is actually quite simple, and it is explained at the top of the header file (at least it is in the U-Boot I use...). (IDIS | PTD | DIS | M4) for example means: IDIS: Input disabled PTD: Pull-type down DIS: Pull disabled M4: Multiplexing mode 4 To understand the multiplexing modes, you should look at TI's documentation for the OMAP3530. Try http://www.ti.com/lit/gpn/omap3530 it should be the link to the datasheet where everything is explained. Regards, Torben Frenzel -----Ursprüngliche Nachricht----- Von: Markus Svilans [mailto:msv...@ae...] Gesendet: Mittwoch, 8. September 2010 06:19 An: General mailing list for gumstix users. Betreff: [Gumstix-users] GPIO question Dear gumstix-users, For an application, I would like to re-purpose some GPIOs on the Gumstix Overo Air. The Overo Air will be mounted on a custom expansion board, similar to a Tobi. I've researched the GPIO documentation here: http://www.gumstix.net/wiki/index.php?title=GPIO I have located the files overo.h and mux.h in the U-Boot code. Based on the code, such as overo.h line 124, I gather that manually controlled GPIO lines have M4, whatever that is, and lines used by system peripherals all seem to have M0 or M1. 124: MUX_VAL(CP(GPMC_NCS3), (IEN | PTU | EN | M4)) /*GPIO_54*/\ (What are M0, M1 and M4? I can see they are defined in mux.h, but there is no explanation on what they mean.) Altogether, I'm a bit lost, and don't know where to begin. Essentially I would like to have manual control over the following GPIO lines, using the command line method outlined on the Gumstix Wiki: GPIO18_MMC3_D0 output GPIO19_MMC3_D1 output GPIO20_MMC3_D2 input GPIO17_MMC3_D3 input GPIO150_MMC3_WP input GPIO14_MMC3_DAT4 output GPIO23_MMC3_DAT5 output GPIO12_MMC3_CLK output GPIO22_MMC3_DAT6 output GPIO114_SPI1_NIRQ output GPIO175_SPI1_CS1 input Can someone help me get started in the right direction? Sample code or some kind of recipe would be great. Perhaps there are other GPIO lines, more suited to manual control? Many thanks, Markus. ---------------------------------------------------------------------------- -- This SF.net Dev2Dev email is sponsored by: Show off your parallel programming skills. Enter the Intel(R) Threading Challenge 2010. http://p.sf.net/sfu/intel-thread-sfd _______________________________________________ gumstix-users mailing list gum...@li... https://lists.sourceforge.net/lists/listinfo/gumstix-users |
From: Markus S. <msv...@ae...> - 2010-09-08 17:01:21
|
Hi Torben, On 2010.09.08 3:45, Frenzel, Torben wrote: > The MUX syntax is actually quite simple, and it is explained at the top of > the header file (at least it is in the U-Boot I use...). > > (IDIS | PTD | DIS | M4) for example means: > > IDIS: Input disabled > PTD: Pull-type down > DIS: Pull disabled > M4: Multiplexing mode 4 > > To understand the multiplexing modes, you should look at TI's documentation > for the OMAP3530. Try http://www.ti.com/lit/gpn/omap3530 it should be the > link to the datasheet where everything is explained. Thanks for the link to this document. I looked at section 2.4, and things immediately became much clearer. Best regards, Markus. |
From: Søren S. C. <li...@ss...> - 2010-09-08 19:45:27
|
Hi Markus, > GPIO114_SPI1_NIRQ output Please take care - This ball doesn't have any output buffer (can only be used as an input) => Even though you can set it high/low in the register the ball won't react to the change. You can make it drive signals high/low through enabling of the pull-up or pull-down resistors, but you won't be able to drive any much current from it, at it won't make you software nicer either :-). I would therefore strongly recommend reconfiguring something to use this ball as an input and one of the currently set inputs as output instead... The rest of your list is OK :-) Best regards - Good luck Søren --- SSC Solutions ApS - Denmark - www.ssc-solutions.dk |
From: Markus S. <msv...@ae...> - 2010-09-08 19:54:41
|
Thanks, Søren! That is very useful info. I'll see about choosing a different pin for the output. Best regards, Markus. On 2010.09.08 15:45, Søren Steen Christensen wrote: > Hi Markus, > >> GPIO114_SPI1_NIRQ output > Please take care - This ball doesn't have any output buffer (can only be > used as an input) => Even though you can set it high/low in the register the > ball won't react to the change. You can make it drive signals high/low > through enabling of the pull-up or pull-down resistors, but you won't be > able to drive any much current from it, at it won't make you software nicer > either :-). I would therefore strongly recommend reconfiguring something to > use this ball as an input and one of the currently set inputs as output > instead... > > The rest of your list is OK :-) > > Best regards - Good luck > Søren > > --- > SSC Solutions ApS - Denmark - www.ssc-solutions.dk > > > ------------------------------------------------------------------------------ > This SF.net Dev2Dev email is sponsored by: > > Show off your parallel programming skills. > Enter the Intel(R) Threading Challenge 2010. > http://p.sf.net/sfu/intel-thread-sfd > _______________________________________________ > gumstix-users mailing list > gum...@li... > https://lists.sourceforge.net/lists/listinfo/gumstix-users |
From: Markus S. <msv...@ae...> - 2010-09-09 14:37:49
|
Hi Søren, I tried GPIO 114 as an output (measuring with an oscilloscope) and exactly as you had indicated, the state of the pin did not change no matter what value it was set to from the command line. I tried changing various a parameters in the U-Boot overo.h file, and I'm about 75% sure that the power-on state of the pin seemed to be set by the pull-up or pull-down resistors (can't remember 100%, as I was doing other things at the same time). Do you know if there is document that describes which pins are suitable for input-only or output-only? This would be good to know for future modifications. Best regards, and thanks again Markus. On 2010.09.08 15:45, Søren Steen Christensen wrote: > Hi Markus, > >> GPIO114_SPI1_NIRQ output > Please take care - This ball doesn't have any output buffer (can only be > used as an input) => Even though you can set it high/low in the register the > ball won't react to the change. You can make it drive signals high/low > through enabling of the pull-up or pull-down resistors, but you won't be > able to drive any much current from it, at it won't make you software nicer > either :-). I would therefore strongly recommend reconfiguring something to > use this ball as an input and one of the currently set inputs as output > instead... > > The rest of your list is OK :-) > > Best regards - Good luck > Søren > > --- > SSC Solutions ApS - Denmark - www.ssc-solutions.dk > > > ------------------------------------------------------------------------------ > This SF.net Dev2Dev email is sponsored by: > > Show off your parallel programming skills. > Enter the Intel(R) Threading Challenge 2010. > http://p.sf.net/sfu/intel-thread-sfd > _______________________________________________ > gumstix-users mailing list > gum...@li... > https://lists.sourceforge.net/lists/listinfo/gumstix-users |
From: Søren S. C. <li...@ss...> - 2010-09-09 15:04:29
|
Hi Markus, You observations are 100% correct. The state is set by the internal pull up/down (although you can't pull much current from it in this setup, but having a buffer afterward you can actually use it as output - changing the pull type - in case you want :-) But as said I don't recommend this approach since it isn't really clean seen from a SW point of view... You can find the input only pins in the omap3530.pdf datasheet together with the pin-muxing information. See i.e. table "Table 2-24. General-Purpose IOs Signals Description(1)". You will see an IO (input/output) type for most pins, but a few are only I (input). AFAIR gpio_114 is the only one with this "feature" on the two 70 pin connectors on Overo, but in case you want to use the camera connector you should be away of another couple of similar pins AFAIR. AFAIK all pins can be used as input... Hope this helps Søren --- SSC Solutions ApS - Denmark - www.ssc-solutions.dk -----Original Message----- From: Markus Svilans [mailto:msv...@ae...] Sent: Thursday, September 09, 2010 4:38 PM To: gum...@li... Subject: Re: [Gumstix-users] GPIO question Hi Søren, I tried GPIO 114 as an output (measuring with an oscilloscope) and exactly as you had indicated, the state of the pin did not change no matter what value it was set to from the command line. I tried changing various a parameters in the U-Boot overo.h file, and I'm about 75% sure that the power-on state of the pin seemed to be set by the pull-up or pull-down resistors (can't remember 100%, as I was doing other things at the same time). Do you know if there is document that describes which pins are suitable for input-only or output-only? This would be good to know for future modifications. Best regards, and thanks again Markus. On 2010.09.08 15:45, Søren Steen Christensen wrote: > Hi Markus, > >> GPIO114_SPI1_NIRQ output > Please take care - This ball doesn't have any output buffer (can only be > used as an input) => Even though you can set it high/low in the register the > ball won't react to the change. You can make it drive signals high/low > through enabling of the pull-up or pull-down resistors, but you won't be > able to drive any much current from it, at it won't make you software nicer > either :-). I would therefore strongly recommend reconfiguring something to > use this ball as an input and one of the currently set inputs as output > instead... > > The rest of your list is OK :-) > > Best regards - Good luck > Søren > > --- > SSC Solutions ApS - Denmark - www.ssc-solutions.dk > > > ---------------------------------------------------------------------------- -- > This SF.net Dev2Dev email is sponsored by: > > Show off your parallel programming skills. > Enter the Intel(R) Threading Challenge 2010. > http://p.sf.net/sfu/intel-thread-sfd > _______________________________________________ > gumstix-users mailing list > gum...@li... > https://lists.sourceforge.net/lists/listinfo/gumstix-users ---------------------------------------------------------------------------- -- This SF.net Dev2Dev email is sponsored by: Show off your parallel programming skills. Enter the Intel(R) Threading Challenge 2010. http://p.sf.net/sfu/intel-thread-sfd _______________________________________________ gumstix-users mailing list gum...@li... https://lists.sourceforge.net/lists/listinfo/gumstix-users |
From: Florian V. <flo...@ep...> - 2010-09-09 15:10:08
|
Hi Markus, Markus Svilans a écrit : > Hi Søren, > > Do you know if there is document that describes which pins are suitable > for input-only or output-only? This would be good to know for future > modifications. > You can refer to the Excel sheet I sent in my previous post, column "Type" :-) I agree, in the current state it's not really self-explaining, but I will try to improve it. IO: Input / Output I: Input only O: Output only Otherwise you can scroll through all the TI documentation. > Best regards, and thanks again > Markus. > > > On 2010.09.08 15:45, Søren Steen Christensen wrote: > >> Hi Markus, >> >> >>> GPIO114_SPI1_NIRQ output >>> >> Please take care - This ball doesn't have any output buffer (can only be >> used as an input) => Even though you can set it high/low in the register the >> ball won't react to the change. You can make it drive signals high/low >> through enabling of the pull-up or pull-down resistors, but you won't be >> able to drive any much current from it, at it won't make you software nicer >> either :-). I would therefore strongly recommend reconfiguring something to >> use this ball as an input and one of the currently set inputs as output >> instead... >> >> The rest of your list is OK :-) >> >> Best regards - Good luck >> Søren >> >> --- >> SSC Solutions ApS - Denmark - www.ssc-solutions.dk >> >> >> ------------------------------------------------------------------------------ >> This SF.net Dev2Dev email is sponsored by: >> >> Show off your parallel programming skills. >> Enter the Intel(R) Threading Challenge 2010. >> http://p.sf.net/sfu/intel-thread-sfd >> _______________________________________________ >> gumstix-users mailing list >> gum...@li... >> https://lists.sourceforge.net/lists/listinfo/gumstix-users >> > > ------------------------------------------------------------------------------ > This SF.net Dev2Dev email is sponsored by: > > Show off your parallel programming skills. > Enter the Intel(R) Threading Challenge 2010. > http://p.sf.net/sfu/intel-thread-sfd > _______________________________________________ > gumstix-users mailing list > gum...@li... > https://lists.sourceforge.net/lists/listinfo/gumstix-users > . > > Best regards, Florian |