X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Finput%2Fserio%2Fambakmi.c;h=3df5eedf8f31fe06a4347a37dcdff8c1f2e9ad6c;hb=43bc926fffd92024b46cafaf7350d669ba9ca884;hp=4b3b5135f5c1881dc1b0d582f981f68b7efbd86f;hpb=c7b5ebbddf7bcd3651947760f423e3783bbe6573;p=linux-2.6.git diff --git a/drivers/input/serio/ambakmi.c b/drivers/input/serio/ambakmi.c index 4b3b5135f..3df5eedf8 100644 --- a/drivers/input/serio/ambakmi.c +++ b/drivers/input/serio/ambakmi.c @@ -19,19 +19,19 @@ #include #include #include +#include +#include +#include #include #include -#include -#include -#include #define KMI_BASE (kmi->base) struct amba_kmi_port { struct serio *io; struct clk *clk; - unsigned char *base; + void __iomem *base; unsigned int irq; unsigned int divisor; unsigned int open; @@ -72,13 +72,9 @@ static int amba_kmi_open(struct serio *io) unsigned int divisor; int ret; - ret = clk_use(kmi->clk); - if (ret) - goto out; - ret = clk_enable(kmi->clk); if (ret) - goto clk_unuse; + goto out; divisor = clk_get_rate(kmi->clk) / 8000000 - 1; writeb(divisor, KMICLKDIV); @@ -97,8 +93,6 @@ static int amba_kmi_open(struct serio *io) clk_disable: clk_disable(kmi->clk); - clk_unuse: - clk_unuse(kmi->clk); out: return ret; } @@ -111,7 +105,6 @@ static void amba_kmi_close(struct serio *io) free_irq(kmi->irq, kmi); clk_disable(kmi->clk); - clk_unuse(kmi->clk); } static int amba_kmi_probe(struct amba_device *dev, void *id) @@ -134,7 +127,7 @@ static int amba_kmi_probe(struct amba_device *dev, void *id) memset(kmi, 0, sizeof(struct amba_kmi_port)); memset(io, 0, sizeof(struct serio)); - io->type = SERIO_8042; + io->id.type = SERIO_8042; io->write = amba_kmi_write; io->open = amba_kmi_open; io->close = amba_kmi_close;