Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fa28e067c3b8af96c79c060e163b1387c172ae75
Commit:     fa28e067c3b8af96c79c060e163b1387c172ae75
Parent:     36445cf30686b9ea4ddf71f28057e4dd07db0e2d
Author:     Andres Salomon <[EMAIL PROTECTED]>
AuthorDate: Sat Feb 9 23:24:08 2008 +0100
Committer:  Thomas Gleixner <[EMAIL PROTECTED]>
CommitDate: Sat Feb 9 23:24:08 2008 +0100

    x86: GEODE: MFGPT: drop module owner usage from MFGPT API
    
    We had planned to use the 'owner' field for allowing re-allocation of
    MFGPTs; however, doing it by module owner name isn't flexible enough.  So,
    drop this for now.  If it turns out that we need timers in modules, we'll
    need to come up with a scheme that matches the write-once fields of the
    MFGPTx_SETUP register, and drops ponies from the sky.
    
    Signed-off-by: Andres Salomon <[EMAIL PROTECTED]>
    Signed-off-by: Jordan Crouse <[EMAIL PROTECTED]>
    Signed-off-by: Ingo Molnar <[EMAIL PROTECTED]>
    Signed-off-by: Thomas Gleixner <[EMAIL PROTECTED]>
---
 arch/x86/kernel/mfgpt_32.c |   14 +++++---------
 include/asm-x86/geode.h    |    2 +-
 2 files changed, 6 insertions(+), 10 deletions(-)

diff --git a/arch/x86/kernel/mfgpt_32.c b/arch/x86/kernel/mfgpt_32.c
index 5862281..186bd36 100644
--- a/arch/x86/kernel/mfgpt_32.c
+++ b/arch/x86/kernel/mfgpt_32.c
@@ -30,14 +30,12 @@
 
 #include <linux/kernel.h>
 #include <linux/interrupt.h>
-#include <linux/module.h>
 #include <asm/geode.h>
 
 #define F_AVAIL    0x01
 
 static struct mfgpt_timer_t {
        int flags;
-       struct module *owner;
 } mfgpt_timers[MFGPT_MAX_TIMERS];
 
 /* Selected from the table above */
@@ -182,15 +180,14 @@ int geode_mfgpt_set_irq(int timer, int cmp, int irq, int 
enable)
        return 0;
 }
 
-static int mfgpt_get(int timer, struct module *owner)
+static int mfgpt_get(int timer)
 {
        mfgpt_timers[timer].flags &= ~F_AVAIL;
-       mfgpt_timers[timer].owner = owner;
        printk(KERN_INFO "geode-mfgpt:  Registered timer %d\n", timer);
        return timer;
 }
 
-int geode_mfgpt_alloc_timer(int timer, int domain, struct module *owner)
+int geode_mfgpt_alloc_timer(int timer, int domain)
 {
        int i;
 
@@ -203,7 +200,7 @@ int geode_mfgpt_alloc_timer(int timer, int domain, struct 
module *owner)
                /* Try to find an available timer */
                for (i = 0; i < MFGPT_MAX_TIMERS; i++) {
                        if (mfgpt_timers[i].flags & F_AVAIL)
-                               return mfgpt_get(i, owner);
+                               return mfgpt_get(i);
 
                        if (i == 5 && domain == MFGPT_DOMAIN_WORKING)
                                break;
@@ -211,7 +208,7 @@ int geode_mfgpt_alloc_timer(int timer, int domain, struct 
module *owner)
        } else {
                /* If they requested a specific timer, try to honor that */
                if (mfgpt_timers[timer].flags & F_AVAIL)
-                       return mfgpt_get(timer, owner);
+                       return mfgpt_get(timer);
        }
 
        /* No timers available - too bad */
@@ -324,8 +321,7 @@ static int __init mfgpt_timer_setup(void)
        int timer, ret;
        u16 val;
 
-       timer = geode_mfgpt_alloc_timer(MFGPT_TIMER_ANY, MFGPT_DOMAIN_WORKING,
-                       THIS_MODULE);
+       timer = geode_mfgpt_alloc_timer(MFGPT_TIMER_ANY, MFGPT_DOMAIN_WORKING);
        if (timer < 0) {
                printk(KERN_ERR
                       "mfgpt-timer:  Could not allocate a MFPGT timer\n");
diff --git a/include/asm-x86/geode.h b/include/asm-x86/geode.h
index 811fe14..c448275 100644
--- a/include/asm-x86/geode.h
+++ b/include/asm-x86/geode.h
@@ -209,7 +209,7 @@ static inline u16 geode_mfgpt_read(int timer, u16 reg)
 extern int __init geode_mfgpt_detect(void);
 extern int geode_mfgpt_toggle_event(int timer, int cmp, int event, int enable);
 extern int geode_mfgpt_set_irq(int timer, int cmp, int irq, int enable);
-extern int geode_mfgpt_alloc_timer(int timer, int domain, struct module 
*owner);
+extern int geode_mfgpt_alloc_timer(int timer, int domain);
 
 #define geode_mfgpt_setup_irq(t, c, i) geode_mfgpt_set_irq((t), (c), (i), 1)
 #define geode_mfgpt_release_irq(t, c, i) geode_mfgpt_set_irq((t), (c), (i), 0)
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to