Commit Graph

15 Commits

Author SHA1 Message Date
Baohong Liu 56e0b53c6e drivers: pwm: re-design pwm API interfaces
Re-design the pwm API interfaces. A RFC was sent and discussed
recently on the re-design of PWM APIs.

APIs like pwm_pin_set_values, pwm_pin_set_period, pwm_pin
_set_duty_cycle will be deprecated and replaced by the new
APIs pwm_pin_set_cycles and pwm_pin_set_usec.

A new API pwm_get_cycles_per_sec will be added to get the
clock rate for pwm pins.

The API pwm_pin_set_phase will be deprecated(it always sets
the phase to zero).

The API pwm_pin_configure will be deprecated since it is not
doing anything for most of the platforms or it can be moved
to device init function for the other platforms.

All the pwm_all_xxx APIs will be deprecated. If necessary,
user or an app can set the pins individually.

Jira: ZEP-745

Change-Id: Ie7095df2a67cff08873b59794812ac64ee00c1c2
Signed-off-by: Baohong Liu <baohong.liu@intel.com>
2016-10-31 20:01:04 +00:00
Marcus Shawcroft 5e1e3edee6 drivers/pwm: Make references to driver_api const
Change-Id: I5f275f1715fab3251bf866f7a311175edc64eac2
Signed-off-by: Marcus Shawcroft <marcus.shawcroft@arm.com>
2016-10-24 22:22:24 +00:00
Baohong Liu 9cfed4940c drivers: pwm_shim: correct api argument inconsistency
Correct the argument definition inconsistency for the set
value API. To be consistent with other pwm sub drivers, the
on and off arguments for the set value api are re-defined.

On: how far (number of timer count) from the beginning of a PWM
    cycle the PWM pin will be asserted.
Off:how far (number of timer count) from the beginning of a PWM
    cycle the PWM pin will be de-asserted.

Jira: ZEP-642

Change-Id: I7b39f98f1935fc3499fb36dd813abed62b86c1e7
Signed-off-by: Baohong Liu <baohong.liu@intel.com>
2016-08-25 14:24:03 -07:00
Iván Briano 20029c8c2d pwm: Remove suspend and resume hooks from pwm_driver_api
Drivers that implement power management should use the preferred
device_pm_ops method instead.

Change-Id: Ice9e0469a1fcb50eb64dcb240dddea56755b6e84
Signed-off-by: Iván Briano <ivan.briano@intel.com>
2016-07-29 23:10:09 +00:00
Sergio Rodriguez 23430bfa83 pwm: Create API to use time units.
This will allow the capable drivers to add arbitrary duration
to the PWM cycles

Jira: ZEP-69
Change-Id: I688b3aa5c1f93e4ed81eab994c13696608ab609a
Signed-off-by: Sergio Rodriguez <sergio.sf.rodriguez@intel.com>
2016-06-29 05:33:48 +00:00
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
Daniel Leung 99778ee7c3 doc: pwm: remove extra function param from comment
The param "pwm" is not in the argument list of pwm_all_set_phase().
So remove it.

Change-Id: I960b5b42de33edc4a6216fb5a65e0f1352bd637d
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-04-15 22:06:41 +00:00
Andre Guedes 245e140da6 drivers: Replace DEV_INVALID_OP by -ENOTSUP
This patch replaces all occurences of the macro DEV_INVALID_OP by
-ENOTSUP at the driver level. So this patch touch the files under
drivers/, include/ and samples/drivers/ when applicable.

This patch is part of the effort to transition from DEV_* codes to
errno.h codes.

Change-Id: I46aec3c65963018c479b01602e4a3eec8650eaff
Signed-off-by: Andre Guedes <andre.guedes@intel.com>
2016-03-16 19:30:04 -04:00
Andre Guedes 024cfe754e drivers: Replace DEV_OK by 0
This patch replaces all occurences of the macro DEV_OK by the actual
value 0 at the driver level. So this patch touch the files under
drivers/, include/ and samples/drivers/.

This patch is part of the effort to transition from DEV_* codes to
errno.h codes.

Change-Id: I69980ecb9755f2fb026de5668ae9c21a4ae62d1e
Signed-off-by: Andre Guedes <andre.guedes@intel.com>
2016-03-16 19:30:04 -04:00
Jeff Blais fa095a6dee pwm: add 'set_phase' API
Phase describes number of clock ticks of delay before the start of the
pulse.

Change-Id: I8e2f5fde423edff09cd5a4a298d911cb7d3cc126
Work-by: Mike Hirst <michael.hirst@windriver.com>
Signed-off-by: Jeff Blais <jeff.blais@windriver.com>
2016-03-09 15:46:58 +00:00
Rodrigo Caballero a7738f49c4 doc: Edit the PWM driver APIs
Edit public API details for clarity, grammar, punctuation found
on file pwm.h

Made consistent use of @retval to document return values.

Used imperative verbs for all @brief descriptions.

Change-Id: I5a0f6290361e499ceb911473338358128f85e25f
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
2016-02-11 01:08:41 +00: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
Anas Nashif 629e69b493 doxygen: fixed typos and parameter references
Change-Id: Ica65e2cd0e49c08b1b8b086614267caef632c891
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:24:23 -05:00
Daniel Leung 56bfe61544 PWM: add public APIs for PWM drivers
This adds the public APIs for PWM drivers. Also, this adds a Kconfig
and an empty makefile for drivers to extend.

Change-Id: I1cc0c908b6f5aeeb678b6368640d5b9a1cc9751d
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2016-02-05 20:24:19 -05:00