kmi 24 drivers/input/serio/ambakmi.c #define KMI_BASE (kmi->base) kmi 37 drivers/input/serio/ambakmi.c struct amba_kmi_port *kmi = dev_id; kmi 42 drivers/input/serio/ambakmi.c serio_interrupt(kmi->io, readb(KMIDATA), 0); kmi 52 drivers/input/serio/ambakmi.c struct amba_kmi_port *kmi = io->port_data; kmi 66 drivers/input/serio/ambakmi.c struct amba_kmi_port *kmi = io->port_data; kmi 70 drivers/input/serio/ambakmi.c ret = clk_prepare_enable(kmi->clk); kmi 74 drivers/input/serio/ambakmi.c divisor = clk_get_rate(kmi->clk) / 8000000 - 1; kmi 78 drivers/input/serio/ambakmi.c ret = request_irq(kmi->irq, amba_kmi_int, IRQF_SHARED, "kmi-pl050", kmi 79 drivers/input/serio/ambakmi.c kmi); kmi 81 drivers/input/serio/ambakmi.c printk(KERN_ERR "kmi: failed to claim IRQ%d\n", kmi->irq); kmi 91 drivers/input/serio/ambakmi.c clk_disable_unprepare(kmi->clk); kmi 98 drivers/input/serio/ambakmi.c struct amba_kmi_port *kmi = io->port_data; kmi 102 drivers/input/serio/ambakmi.c free_irq(kmi->irq, kmi); kmi 103 drivers/input/serio/ambakmi.c clk_disable_unprepare(kmi->clk); kmi 109 drivers/input/serio/ambakmi.c struct amba_kmi_port *kmi; kmi 117 drivers/input/serio/ambakmi.c kmi = kzalloc(sizeof(struct amba_kmi_port), GFP_KERNEL); kmi 119 drivers/input/serio/ambakmi.c if (!kmi || !io) { kmi 131 drivers/input/serio/ambakmi.c io->port_data = kmi; kmi 134 drivers/input/serio/ambakmi.c kmi->io = io; kmi 135 drivers/input/serio/ambakmi.c kmi->base = ioremap(dev->res.start, resource_size(&dev->res)); kmi 136 drivers/input/serio/ambakmi.c if (!kmi->base) { kmi 141 drivers/input/serio/ambakmi.c kmi->clk = clk_get(&dev->dev, "KMIREFCLK"); kmi 142 drivers/input/serio/ambakmi.c if (IS_ERR(kmi->clk)) { kmi 143 drivers/input/serio/ambakmi.c ret = PTR_ERR(kmi->clk); kmi 147 drivers/input/serio/ambakmi.c kmi->irq = dev->irq[0]; kmi 148 drivers/input/serio/ambakmi.c amba_set_drvdata(dev, kmi); kmi 150 drivers/input/serio/ambakmi.c serio_register_port(kmi->io); kmi 154 drivers/input/serio/ambakmi.c iounmap(kmi->base); kmi 156 drivers/input/serio/ambakmi.c kfree(kmi); kmi 164 drivers/input/serio/ambakmi.c struct amba_kmi_port *kmi = amba_get_drvdata(dev); kmi 166 drivers/input/serio/ambakmi.c serio_unregister_port(kmi->io); kmi 167 drivers/input/serio/ambakmi.c clk_put(kmi->clk); kmi 168 drivers/input/serio/ambakmi.c iounmap(kmi->base); kmi 169 drivers/input/serio/ambakmi.c kfree(kmi); kmi 176 drivers/input/serio/ambakmi.c struct amba_kmi_port *kmi = dev_get_drvdata(dev); kmi 179 drivers/input/serio/ambakmi.c serio_reconnect(kmi->io);