From: Philip Balister <address@hidden>
To: Sameh Yassin <address@hidden>
Cc: GNURADIO <address@hidden>
Sent: Wednesday, May 2, 2012 3:02 PM
Subject: Re: Using Sysfs to set a GPIO in Overo
On 05/02/2012 08:16 AM, Sameh Yassin wrote:
> Dear P. Balister,
> I found that tutorial which explains very well how to create a GPIO folder and set its direction
> http://www.avrfreaks.net/wiki/index.php/Documentation:Linux/GPIO#gpio-sysfs
>
>
> I searched for the misc GPIOs to make sure they are free and I'm pretty sure that over_gpio0 and overo_gpio170 are free. the are not used at all inside the code. I connected them to debug led0 and debug_led1 and used echo 1> /sys/class/gpio/gpio0/value after setting the direction but nothing at all, the two debug leds are off.
>
What version of the e100 image are you using. Can you start by making
sure you are using the latest?
http://code.ettus.com/redmine/ettus/projects/usrpe1xx/wiki/FAQ#How-do-I-create-re-create-E1xx-SD-Card-Images
I think earler images will not have access to gpio0 due to some pinmux
stuff in u-boot. I need to
double check 170 pinmuxing also. there should
be some free gpios in the 20's with the current image.
> Another question, what is the difference between gpio0 and gpiochip0 found at /sys/class/gpio
I think the gpiochip entries represent the various banks of gpios.
Philip
>
>
> Regards,
> S. Yassin
> HW Engineer
> DLECS
>
>
> ________________________________
> From: Philip Balister <
address@hidden>
> To: Sameh Yassin <
address@hidden>
> Cc: GNURADIO <
address@hidden>
> Sent: Wednesday, May 2, 2012 1:33 PM
> Subject: Re:
[Discuss-gnuradio] E100 - Interface between OMAP3 and FPGA
>
> On 05/01/2012 04:28 AM, Sameh Yassin wrote:
>> Hello Dear ,
>>
>> I used the first link to use overo GPIOs on the E100 to communicate with the SPARTN3AN FPGA.
>>
>> I'm doing the following:
>> 1- I chose an empty GPIO input to the FPGA (for example overo_gpio22).
>> 2- I modified the FPGA image so that debug_led1 = over_gpio220
>> 3- I'll set and clear overo GPIO using the bash shell as I read in the first link that u recommended.
>>
>> The problem:
>> Although the following gpios are free on the FPGA. There are other gpios valid on the overo. Srictly speaking
>>
>> The free GPIOs on the overo
>> $ address@hidden:/sys/class/gpio# ls
>>
>> exportgpio16 gpio168 gpiochip128 gpiochip192
gpiochip64 unexport
>> gpio15gpio164 gpiochip0 gpiochip160 gpiochip32 gpiochip96
>
> It looks like you are running an older version of uhd, which suggests an
> older kernel version. The older driver claimed a few extra gpio's for
> testing purposes.
>
> I see:
>
> address@hidden:~# ls /sys/class/gpio/
> export gpio16@ gpio173@ gpiochip128@ gpiochip32@ unexport
> gpio114@ gpio164@ gpio175@ gpiochip160@ gpiochip64@
> gpio15@ gpio168@ gpiochip0@ gpiochip192@ gpiochip96@
>
> Note the extra gpio's exposed to user space. These are used by uhd for
> signaling and configuring the clock generator.
>
> Philip
>
>>
>>
>> The free gpios at the FPGA found at u1e.v
>> input overo_gpio0,
input overo_gpio14, input overo_gpio21, input overo_gpio22, // Misc GPIO
>>
>> input overo_gpio23, input overo_gpio64, input overo_gpio127, // Misc GPIO
>> input overo_gpio176, input overo_gpio163, input overo_gpio170, // Misc GPIO
>>
>> Is that normal of I did something wrong at the kernel at the overo?
>>
>> Regards,
>> S. Yassin
>> HW Engineer
>> DLECS
>>
>>
>> ________________________________
>> From: Philip Balister <
address@hidden>
>> To: Sameh Yassin <
address@hidden>
>> Cc: "
address@hidden" <
address@hidden>
>> Sent: Saturday, April 28, 2012 2:18 PM
>> Subject: Re: [Discuss-gnuradio] E100 - Interface between OMAP3 and FPGA
>>
>> On 04/28/2012 08:07 AM, Sameh Yassin wrote:
>>> Dear all,
>>>
>>> I need to send data from the OMAP3 to the Spartan3an FPGA. As I understand ,from the wiki and presentations, there are two ways to communicate namely; using setting_reg and GPIO. The second way seems easier so I'll try it first.
>>>
>>> I intend to set or clear the free GPIOS on the Spartan FPGA such as over_gpio_22. I added the following code to the example tx_waveforms.cpp.
>>>
>>> static struct gpio gpio_test = { 22, GPIOF_OUT_INIT_LOW, "OVERO_GPIO_22" };
>>>
gpio_set_value(22,1);
>>> //set gpio22 which is connected to pin IO_L30N_0
>>>
>>>
>>> I tried to compile then I got the error that can't find GPIO.h.
>>>
>>> My question: did I use the correct high level function or I used a "lower level" that is used to implement the function?
>>
>> This is the easiest way to toggle gpio's from userspace.
>>
>>
http://wiki.gumstix.org/index.php?title=GPIO#Accessing_GPIO.27s_from_userland>>
>> Also:
>>
>>
http://elinux.org/GPIO>>
>> The kernel on the e100 already supports the sysfs entries for gpio's.
>> (UHD uses it)
>>
>> Philip
>>
>>>
>>>
>>>
>>> Regards,
>>> S. Yassin
>>>
>>>
>>>
>>> _______________________________________________
>>> Discuss-gnuradio mailing list
>>>
address@hidden>>>
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio