Private
Public Access
2
0
Commit Graph

111 Commits

Author SHA1 Message Date
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
Brendan Le Foll
3d10fc1c0d gpio.c: PyEval_Call now casts void* to PyObject* before call, fixing warning
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-19 10:35:29 +01:00
Brendan Le Foll
045b704063 gpio: fix use of memset sizeof param
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-16 14:44:04 +01:00
Brendan Le Foll
058084cd88 gpio.hpp: Add C++ wrapper around Gpio
* maa_gpio_context bcomes an opaque pointer
* C++ wrapper class Gpio created
* swig now uses C++ wrapper Gpio to generate API

Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-16 14:31:37 +01:00
Brendan Le Foll
6dc1500f5a gpio: make isr_exit function use pthread_cancel and treat error cases more cleanly
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-15 14:42:44 +01:00
Brendan Le Foll
6811fe4a24 gpio: add signal type to pthread_kill
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-13 22:18:46 +00:00
Brendan Le Foll
b7d38a22e8 gpio: fix compiler warning with blank return
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-13 21:57:28 +00:00
Brendan Le Foll
ef225dbe26 swig: fix usage of SWIGPYTHON for python specific code
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-13 20:55:08 +00:00
Brendan Le Foll
f7169cc5c5 swig: Add support for isr/callbacks from python
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-13 20:47:50 +00:00
Brendan Le Foll
126b1314b0 gpio: rework of gpio - using open() for value_fp
* fixes maa_gpio_read by using simple posix file io
* fixes blink sample to have much more error checking
* blink sample now takes an argument

Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-13 15:35:27 +01:00
Brendan Le Foll
356c7afacd gpio: don't do a pthread_kill if thread id is 0
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-07 17:45:02 +01:00
Brendan Le Foll
37b5d9f0cc gpio: initial implementation of interupt handling on gpio
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-07 14:48:21 +01:00
Brendan Le Foll
ecc2c92027 gpio: only call ferror in free() case as dev has already been free'd by swig code
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-06 18:12:53 +01:00
Brendan Le Foll
8c9650caa3 gpio: reworking of gpio IO calls
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-06 09:32:07 +01:00
Brendan Le Foll
60c90be693 gpio: use strtol instead of atoi
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-02 16:33:36 +01:00
Brendan Le Foll
09cec0931b swig: add unexport() calls to be used by destructors in object api
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-05-02 16:33:36 +01:00
Thomas Ingleby
e96df16f75 pinmap: GPIO pin map added.
* maa_gpio_init can take the IO number read physically off the board.
* maa_check_gpio will also set up mutiplexers if needed
* Intel Galileo Rev D board data added

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-05-01 16:55:23 +01:00
Thomas Ingleby
0c0633e724 gpio: Add support for setting GPIO ouput drive.
*Supports all exposed to sysfs

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-04-29 16:55:54 +01:00
Thomas Ingleby
226c6bcb66 gpio: Matured the GPIO API.
* Greater use of return values.
* Uses defined enum instead of char arrays

Signed-off-by: Thomas Ingleby <thomas.c.ingleby@intel.com>
2014-04-29 16:46:10 +01:00
Brendan Le Foll
f280b3c0f6 maa: change struct names to be more unique and fix allocs
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-04-28 11:31:53 +01:00
Brendan Le Foll
ed0a1f6085 maa: change the linking of maa and make gpio functions match maa_ spec
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-04-27 23:11:31 +01:00
Brendan Le Foll
04017cd5d9 gpio.c: fix styling of functions
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-04-23 09:30:27 +01:00
Brendan Le Foll
173b81c206 gpio.c: simplify gpio_get_valfp and make static
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
2014-04-23 09:28:04 +01:00