lkml.org 
[lkml]   [2009]   [Jun]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH 1/9] kernel: export sound/core/pcm_timer.c gcd implementation
    This patch exports the gcd implementation from
    sound/core/pcm_timer.c into include/linux/kernel.h.
    AR7 uses it in its clock routines.

    Signed-off-by: Florian Fainelli <florian@openwrt.org>
    ---
    diff --git a/include/linux/kernel.h b/include/linux/kernel.h
    index 883cd44..878a27a 100644
    --- a/include/linux/kernel.h
    +++ b/include/linux/kernel.h
    @@ -147,6 +147,22 @@ extern int _cond_resched(void);
    (__x < 0) ? -__x : __x; \
    })

    +/* Greatest common divisor */
    +static inline unsigned long gcd(unsigned long a, unsigned long b)
    +{
    + unsigned long r;
    + if (a < b) {
    + r = a;
    + a = b;
    + b = r;
    + }
    + while ((r = a % b) != 0) {
    + a = b;
    + b = r;
    + }
    + return b;
    +}
    +
    #ifdef CONFIG_PROVE_LOCKING
    void might_fault(void);
    #else
    diff --git a/sound/core/pcm_timer.c b/sound/core/pcm_timer.c
    index ca8068b..e9dbf62 100644
    --- a/sound/core/pcm_timer.c
    +++ b/sound/core/pcm_timer.c
    @@ -20,6 +20,7 @@
    */

    #include <linux/time.h>
    +#include <linux/kernel.h>
    #include <sound/core.h>
    #include <sound/pcm.h>
    #include <sound/timer.h>
    @@ -28,22 +29,6 @@
    * Timer functions
    */

    -/* Greatest common divisor */
    -static unsigned long gcd(unsigned long a, unsigned long b)
    -{
    - unsigned long r;
    - if (a < b) {
    - r = a;
    - a = b;
    - b = r;
    - }
    - while ((r = a % b) != 0) {
    - a = b;
    - b = r;
    - }
    - return b;
    -}
    -
    void snd_pcm_timer_resolution_change(struct snd_pcm_substream *substream)
    {
    unsigned long rate, mult, fsize, l, post;

    \
     
     \ /
      Last update: 2009-06-01 13:59    [W:0.021 / U:179.672 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site