linux-embedded.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Bill Gatliff <bgat@billgatliff.com>
To: linux-kernel@vger.kernel.org, linux-embedded@vger.kernel.org
Cc: Bill Gatliff <bgat@billgatliff.com>
Subject: [PWM v7 0/3] Implement a generic PWM framework
Date: Wed,  9 Mar 2011 14:13:13 -0600	[thread overview]
Message-ID: <1299701596-24665-1-git-send-email-bgat@billgatliff.com> (raw)

This patch series contains the seventh attempt at implementation of
a generic PWM device interface framework.  Think gpiolib, but for
devices and pseudo-devices that generate pulse-wave-modulated outputs.

Compared to the previous version, this patch series:

 * Removes callback functionality
 * Adds sysfs interface documentation
 * Cleans up attribute management
 * Various minor edits and bugfixes

A git tree containing these patches may be found here:

    http://git.billgatliff.com/pwm.git
    git://git.billgatliff.com/pwm.git

Functionally-speaking, this series has regressed somewhat from
previous versions because I am currently focusing my attention on the
API itself.  I include implementations only for GPIO+hrtimer devices
and the Atmel PWMC peripheral as references in this series; I will
post patches for LED drivers, PXA, Samsung, etc. devices once I know
that the API itself is on its way to mainline.  (I believe that the
two reference implementations sufficiently confirm the utility of the
API itself).

Conversion of existing machines and platforms to this API is
relatively straightforward, but must be done in conjunction with the
various users of PWM (LEDs, etc.) because PWM devices will now be
referenced by struct pwm_device structures, rather than integers.
Thus, there is potentially significant effort involved because
platform data structures, etc. must be updated.  I have (re)started
that effort twice already, and I prefer not to do so again until the
target API is stable.

The code in this series is significantly clearer and more
straightforward than previous versions.  Thanks to everyone who helped
me with this refactoring!  I'm pretty convinced that the code you see
here is at last suitable for pulling into mainline.

Finally, the attached code CAN be used to control devices that drive
stepper motors and the like, but doing so is discouraged as I am
anticipating a request to develop an API specifically for such
situations.


Regards,


b.g.

Bill Gatliff (3):
  PWM: Implement a generic PWM framework
  PWM: GPIO+hrtimer device emulation
  PWM: Atmel PWMC driver

 Documentation/pwm.txt    |  289 +++++++++++++++++++++
 MAINTAINERS              |    8 +
 drivers/Kconfig          |    2 +
 drivers/Makefile         |    2 +
 drivers/pwm/Kconfig      |   29 ++
 drivers/pwm/Makefile     |    7 +
 drivers/pwm/atmel-pwmc.c |  449 ++++++++++++++++++++++++++++++++
 drivers/pwm/gpio-pwm.c   |  336 ++++++++++++++++++++++++
 drivers/pwm/pwm.c        |  633 ++++++++++++++++++++++++++++++++++++++++++++++
 include/linux/pwm/pwm.h  |  153 +++++++++++
 10 files changed, 1908 insertions(+), 0 deletions(-)
 create mode 100644 Documentation/pwm.txt
 create mode 100644 drivers/pwm/Kconfig
 create mode 100644 drivers/pwm/Makefile
 create mode 100644 drivers/pwm/atmel-pwmc.c
 create mode 100644 drivers/pwm/gpio-pwm.c
 create mode 100644 drivers/pwm/pwm.c
 create mode 100644 include/linux/pwm/pwm.h

-- 
1.7.2.3

             reply	other threads:[~2011-03-09 20:13 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-09 20:13 Bill Gatliff [this message]
2011-03-09 20:13 ` [PWM v7 1/3] PWM: Implement a generic PWM framework Bill Gatliff
2011-03-10  4:47   ` Lars-Peter Clausen
2011-03-09 20:13 ` [PWM v7 2/3] PWM: GPIO+hrtimer device emulation Bill Gatliff
2011-03-09 20:13 ` [PWM v7 3/3] PWM: Atmel PWMC driver Bill Gatliff
2011-03-10  7:36   ` Alexander Stein
2011-03-10 21:34     ` Bill Gatliff

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1299701596-24665-1-git-send-email-bgat@billgatliff.com \
    --to=bgat@billgatliff.com \
    --cc=linux-embedded@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).