Private
Public Access
2
0
Commit Graph

83 Commits

Author SHA1 Message Date
Brendan Le Foll
2679a916be gpio.c: mraa_gpio_get_* now return -1 in error cases
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2015-04-24 16:07:17 +01:00
Brendan Le Foll
ffcf3d7d07 clang-format: run clang-format on C/C++ code
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2015-03-23 15:15:48 +00:00
Jon Trulson
9d80b12521 gpio.c: change check to allow fd 0
Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2015-02-20 13:36:47 +00:00
Jon Trulson
ee05b49ea2 gpio.c: check fd before attempting to use it
mraa_gpio_wait_interrupt needs to check fd before using it

Signed-off-by: Jon Trulson <jtrulson@ics.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2015-02-20 13:35:34 +00:00
Brendan Le Foll
c1b96680c9 gpio.c: add DEBUG message for owner flag
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2015-02-10 15:40:02 +00:00
Henry Bruce
7b213b6393 gpio.c: fix spelling in comment
Signed-off-by: Henry Bruce <henry.bruce@intel.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2015-02-10 15:40:09 +00:00
Henry Bruce
75138c90ce gpio.c: mraa_gpio_wait_interrupt() now waits for subsequent interrupts
Signed-off-by: Henry Bruce <henry.bruce@intel.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2015-02-10 15:39:21 +00:00
Brendan Le Foll
019b0a5e7e gpio.c: add pin number to export fail message
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2015-01-28 13:00:20 +00:00
Thomas Ingleby
e76d85eade gpio: add behaviour for pin without direction
If a gpio doesnt have a direction, like some muxes do, try and set value
if HIGH or LOW was passed.

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2015-01-22 17:40:16 +00:00
Thomas Ingleby
c3980c217c gpio: add function to get raw gpio number.
Will return the GPIO number used within SYSFS
Closes #63

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2015-01-20 18:33:12 +00:00
Kurt Eckhardt
20d229168b gpio: mraa_gpio_dir allow output to set val
There is an issue that when you take an IO pin that has an external PU
resistor and switch it from INPUT to OUTPUT the state of the pin will go
down before you can set it back high.

Signed-off-by: Kurt Eckhardt <kurte@rockisland.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2015-01-20 10:43:16 +00:00
yoneken
74d172cb6c gpio: Add a function to get a pin number from mraa_gpio_context
Signed-off-by: Kenta Yonekura <yoneken@ieee.org>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-12-21 17:43:31 +00:00
Kurt Eckhardt
455ab6f063 x86/edison: Speed up mraa_gpio_dir
Reasonable speed up in the mraa_gpio_dir on the Edison Arduino board

Signed-off-by: Kurt Eckhardt <kurte@rockisland.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-12-19 14:40:02 +00:00
Kurt Eckhardt
21d88d15eb gpio.c: add advance_func->gpio_close_pre
Signed-off-by: Kurt Eckhardt <kurte@rockisland.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-12-19 14:40:01 +00:00
Brendan Le Foll
4d8b82eedb gpio.c: styling, avoid bracketless if statements
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-12-15 16:23:18 +00:00
Brendan Le Foll
24e52bdbbd gpio.c: cast return value explicitly
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-11-26 13:58:28 +00:00
Brendan Le Foll
51cfc7981d gpio.c: fail early in case of error when reading file
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-11-26 13:56:33 +00:00
Brendan Le Foll
fefe0a24cd gpio.c: check return status of open call
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-11-26 13:56:10 +00:00
Brendan Le Foll
1a1c9c2db2 gpio.c: fix incorrect debug message due to merge
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-11-26 11:43:30 +00:00
Henry Bruce
57540cd86c gpio.c: check that real gpio did initialise correctly
On platforms without muxing perform a little more checking when the 'real'
linux/sysfs gpio is opened. We don't expect this to fail but on platforms where
the linux gpios can be changed depending on pinctrl/bios configuration this
might not always be the case.

Signed-off-by: Henry Bruce <henry.bruce@intel.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-11-20 15:08:31 +00:00
Brendan Le Foll
e84baf6636 gpio.c: free context if we fail to write to export
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-11-19 23:46:25 +00:00
Thomas Ingleby
3865bebe8d mmap: remove implementation of mmap gpio
Instead of trying to have an implementation that covers most platforms
Leave all mmap up to platform definition. Through function pointers.

gpio_mmap_setup sets up the mmap

Within the internal gpio context struct two more function pointers now
exist mmap_read & mmap_write. They exist there so each context can its
own function for handling a write and read.

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-11-17 17:41:47 +00:00
Thomas Ingleby
401f0cfe65 gpio: move gpio setup from core into module
Added syslog lines for easier fault investigation

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-11-17 17:40:48 +00:00
Bernd Barsuhn
428c99f940 gpio: fix identation
Signed-off-by: Bernd Barsuhn <bernd.barsuhn@me.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-11-04 10:13:45 +00:00
Bernd Barsuhn
2a851d7cc7 gpio: make mraa_gpio_isr_exit block until the interrupt handling thread is terminated.
Signed-off-by: Bernd Barsuhn <bernd.barsuhn@me.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-11-04 10:12:34 +00:00
Brendan Le Foll
a6b3d384b2 syslog: unify error msg style
syslog messages should be written as <module>: Message in order to increase
readability and usefulness

Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-10-22 21:09:11 +01:00
Brendan Le Foll
2b5e38b40c coverity: Fix issues found by coverity scan
* Fix a few resource leaks in error conditions
* Makes strtol() calls safer in pwm module
* Make sure buffer is terminated after read() in aio

Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-10-03 22:50:18 +01:00
Brendan Le Foll
6d5a3d796c gpio: add more error checking for mraa_gpio_context
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-10-03 12:00:11 +01:00
Brendan Le Foll
32d8a6f0ca syslog: remove all fprintf calls and use syslog instead
Syslog is now used for all error messages, return values in the code should be
used by programmers to see the status of the library/board and syslog can be
used to see quickly from a debugging perspective what has gone wrong. A few
cosmetics where improved as well as a mraa_set_log_level() call where the
syslog log mask can be set directly from libmraa.

Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-09-25 14:31:04 +01:00
Thomas Ingleby
e602460688 hook: move gpio init post hook
Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-09-09 17:28:43 +01:00
Brendan Le Foll
854585ef49 gpio.c: styling - remove tabs
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-09-09 17:28:28 +01:00
Brendan Le Foll
c977a6d19c gpio.c: close fd in mmap function
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-07-28 16:39:00 +02:00
Thomas Ingleby
b95436c468 gpio: remove printf's, change init-post hook
Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-07-14 18:25:40 +01:00
Thomas Ingleby
ce1fe370c4 intel_galileo_rev_g: remove platform code from core
* Using hook functionality swap_complex is now done in the pre direction
* set area.

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-07-14 17:46:18 +01:00
Thomas Ingleby
fb030b5e9f hook: change structure to pointer
Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-07-14 15:37:55 +01:00
Thomas Ingleby
9bacfcff5f Merge branch 'hook'
Conflicts:
	include/intel_galileo_rev_d.h
	include/intel_galileo_rev_g.h
	include/mraa_adv_func.h
	include/mraa_internal.h
	src/gpio/gpio.c
	src/mraa.c
2014-07-11 11:56:45 +01:00
Thomas Ingleby
1fafd97f5e hook: rename from declared struct to adance_func
* Removed bitfield, now checks if pointer NULL.

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-07-11 09:14:49 +01:00
Thomas Ingleby
0e46b94793 hook: remove hooks, move into branch.
Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-07-01 18:32:38 +01:00
Thomas Ingleby
d0ea43f8d1 mraa: initial implementation of "hooks"
* Should allow for more platform quirks to be handled by mraa without
* massive conditional areas per platform.

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-06-27 15:37:48 +01:00
Thomas Ingleby
88de5b9c35 gpio: remove direction error printing
Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-06-26 18:38:13 +01:00
Thomas Ingleby
6853997a92 mraa: rename from maa to mraa
Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-06-24 17:24:54 +01:00
Thomas Ingleby
f035dcd341 Merge branch 'gen2' 2014-06-20 16:22:27 +01:00
Thomas Ingleby
11486368b1 gpio: no printing to stderr on direction change.
Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-06-20 16:19:59 +01:00
Kiveisha Yevgeniy
6fbe2a7e53 gpio: Added args param to maa_gpio_isr and added documentation
Signed-off-by: Kiveisha Yevgeniy <yevgeniy.kiveisha@intel.com>
2014-06-19 16:23:43 +00:00
Thomas Ingleby
fa4a302398 maa: add support for enabling pins and pulldowns
* Not Complete

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-06-17 20:15:36 +01:00
Thomas Ingleby
7af6a96a13 mmap: added mmap io to gpio
* added function to gpio to use mmap
* changed board definition format around mmap io (fast-gpio)
* Intel Galileo Rev D updated to follow changed definitions

* Example performing mmap io to pin 2 added.

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-05-29 16:30:07 +01:00
Thomas Ingleby
98800a5c76 gpio: made export functions static.
* removed functions from api also

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-05-21 14:55:14 +01:00
Thomas Ingleby
2b8ab38418 maa: hide and rename internal maa functions
Based on feedback received. All check functions renamed to setup.
Update all modules to use new name and header.

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-05-21 13:17:16 +01:00
Thomas Ingleby
7abd8f5529 gpio: add ownership gaurd
* Will not unexport if the context did not export it. Can be forced.
* Checks if pin is already exported.

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-20 14:11:41 +01:00
Thomas Ingleby
e2f72540ef gpio: use open in all function opposed to fopen
Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-20 10:57:15 +01:00