Commit Graph

16 Commits

Author SHA1 Message Date
Inaky Perez-Gonzalez
0518063495 doc: fix "WARNING: Error in type declaration." in callback typedefs
Some function *typedefs* confuse the *Sphynx* / *breathe* parser [see
the patch for full details]. Implement a workaround (defining the name
with @typedef), add workaround documentation and file a bug with the
sphinx/breathe developers.

Change-Id: I7f3dba4a53d0cc73e12f02511a5f85526f357b5f
Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
2016-06-16 13:11:06 -07:00
Inaky Perez-Gonzalez
9752d3d6b6 doc: fix warnings "Error when parsing function declaration." due to __deprecated
Sphinx's parser gets all confused; add a workaround using @fn,
document the workaround in the contribution section; bug filed with
Sphinx for a permanent sollution.

Change-Id: I0200add092da27206b9d006bb13110c4cc37d0e4
Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
2016-06-16 13:11:06 -07:00
Anas Nashif
3da30441f5 gpio: fix typo in function documentation
Change-Id: I24cd9386f05e807c77faa61fea9a4ee4a0efec4f
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-05-01 16:21:52 -04:00
Tomasz Bursztyka
655c268d21 gpio: Deprecate API 1.0 callback function
If one use the old gpio_set_callback() function,
the build will generate deprecation warnings.

Change-Id: I3f008ab3fc46e1b38cb433340d2f97671d04906e
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
2016-04-25 14:58:15 +00:00
Tomasz Bursztyka
fea1c49ba2 gpio: Improve the public API to handle multi callbacks
Many sub-systems might require to set a callback on different pins.
Thus enabling it via changing the API.

It is also possible to retrieve private-data in the callback handler
using CONTAINER_OF() macro (include/misc/util.h).

Former API is still available, and is emulated through the new one.
Using both should not be a problem as it's using new API calls.
However, it's now better to start using the new API.

Change-Id: Id16594202905976cc524775d1cd3592b54a84514
Signed-off-by: Tomasz Bursztyka <tomasz.bursztyka@linux.intel.com>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
2016-04-22 22:15:12 -04:00
Ramesh Thomas
4104bbfb08 power_mgmt: Add device power management support
Added device power management hook infrastructure. Added
DEVICE_INIT_PM and SYS_INIT_PM macros that creates device
structures with the supplied device_ops structure containing
the hooks.

Added example support in gpio_dw driver.  Updated the sample
app and tested using LPS and Device Suspend Only policies.

Change-Id: I2fe347f8d8fd1041d8318e02738990deb8c5d68e
Signed-off-by: Ramesh Thomas <ramesh.thomas@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-03-26 14:35:11 -04:00
Daniel Leung
7096981791 gpio: clarify API doc
() Add brief descriptions for #defines.
() Hides internal only API typedefs and struct.

Change-Id: I452c5d7fe56d57ba05338639986e2fff44a89244
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-18 18:25:50 +00:00
Rodrigo Caballero
7e68a8b934 doc: Edit the GPIO driver APIs
Edit public API details for clarity, grammar, punctuation found
on file gpio.h

Used imperative verbs for all @brief descriptions.

Change-Id: I5c9b7ac39d2b691d98f72b66c67f525ad0409207
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
2016-02-11 01:06:39 +00:00
Daniel Leung
cae35e2460 gpio: allow pins to be enabled/disabled
Some GPIO controllers allow individual pins to be detached
from the controller (i.e. the controller no longer affects
the pin output, or can read its state).

This adds the configuration bits to the API so this feature
can be used by apps.

Change-Id: I355fd5910a5439dcabe01ab40cd887dda30eab72
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-05 20:25:29 -05:00
Anas Nashif
75482aae8a doxygen: define groups for drivers
Change-Id: Ibf6b6d8586086de5b288fee1e3b4fb1101716fe1
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:24:36 -05:00
Javier B Perez Hernandez
f7fffae8aa Change BSD-3 licenses to Apache 2
Change all the Intel and Wind River code license from BSD-3 to Apache 2.

Change-Id: Id8be2c1c161a06ea8a0b9f38e17660e11dbb384b
Signed-off-by: Javier B Perez Hernandez <javier.b.perez.hernandez@linux.intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Benjamin Walsh <benjamin.walsh@windriver.com>
2016-02-05 20:24:29 -05:00
Daniel Leung
add6d78b0a gpio: add polarity and pull up/down config flags
This adds to the configuration flags for GPIO:

() Indicates the polarity of the pin, whether it should be
   normal or inversed.

() Enables pull up/pull down for the pin.

Change-Id: I2b0c57e5a539208aff7aeb4ea53050134ab404fd
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-05 20:24:18 -05:00
Daniel Leung
03066f26d8 gpio: change inline functions to static inline
When compiling with optimization level 0 (-O0), the linker complains
about missing references to uart functions. This is due to compiler
treating this functions as extern, since -O0 disables function inlining,
as described in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=49653

So change the declaration to static inline.

Change-Id: Ifd835bf0e667afb1cbf2e76bb490664af87c382d
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-05 20:15:31 -05:00
Dirk Brandewie
6c9a846eae gpio: Fix function signature for gpio_set_callback()
Change-Id: I66c6630b2eced4e0219b0f36b1bf7b0454770290
Signed-off-by: Dirk Brandewie <dirk.j.brandewie@intel.com>
2016-02-05 20:15:19 -05:00
Anas Nashif
20764a2e8d doxygen: javadoc style
Change all occurances of /*! to /** to match javadoc
style.

Change-Id: I3a759d34e0e928216f61252682266e64c5b875f8
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:14:32 -05:00
Dirk Brandewie
6b177662d7 gpio: Add header for gpio API functions
This header defines the public API for GPIO drivers and the GPIO
driver interface.

Change-Id: Ibd9c1065cda4691c3ab9920fd7a5e2aa178e4f4b
Signed-off-by: Dirk Brandewie <dirk.j.brandewie@intel.com>
2016-02-05 20:14:28 -05:00