aboutsummaryrefslogtreecommitdiff
path: root/lib/gpio.c
AgeCommit message (Collapse)Author
2010-03-05gpio: Fix some issues with gpio_set_mode().Uwe Hermann
This patch, a slightly modified version of a patch from Thomas Otto, should fix the following two issues: - It generally sets the submited config to the mentioned GPIO pins but kills configs for other pins on the same GPIO port. So if we want to set PB6 and PB7 to push-pull and I2C2 SDA and SCL (PB10 and PB11) to open drain it's simply impossible, because the second config try kills the first. - The floating-bit thing isn't working correctly. If we enable a config for PB6 for instance, the same config will also apply to all following pins of that port (i.e. PB7-PB15). That's because the shifting isn't only done if a pin isn't to configure, if you are hitting a matching bit the shiftig is missing. I think shifting isn't nessessary for a separate variable. We have the counting index from the for statement. Both issues should now be fixed.
2010-03-04Use direct #includes instead of libopenstm32.h.Uwe Hermann
2009-07-20Changed all includes to use <foo.h> notation.Piotr Esden-Tempski
2009-07-18Add gpio_get() API function.Uwe Hermann
2009-07-18Switch the license to GPL, version 3 or later.Uwe Hermann
2009-07-18Add initial GPIO API implementation.Uwe Hermann
This currently includes a number of basic functions. Example usage: gpio_set_mode(GPIOC, GPIO_MODE_OUTPUT_2_MHZ, GPIO_CNF_OUTPUT_PUSHPULL, GPIO12); gpio_set(GPIOB, GPIO4); gpio_clear(GPIOG, GPIO2 | GPIO9); gpio_toggle(GPIOA, GPIO7); reg16 = gpio_port_read(GPIOD); gpio_port_write(GPIOF, 0xc8fe);
2009-07-16Make gpio number argument 'unsigned int', there are no negative GPIOs.Uwe Hermann
2009-07-16Add dummy gpio.c implementation and final Makefile.Uwe Hermann
The whole lib should now build and install fine. It's not yet tested on hardware, though.