Lines Matching refs:uioinfo
35 struct uio_info *uioinfo; member
53 uiomem = &priv->uioinfo->mem[priv->dmem_region_start]; in uio_dmem_genirq_open()
56 while (!priv->refcnt && uiomem < &priv->uioinfo->mem[MAX_UIO_MAPS]) { in uio_dmem_genirq_open()
86 uiomem = &priv->uioinfo->mem[priv->dmem_region_start]; in uio_dmem_genirq_release()
91 while (!priv->refcnt && uiomem < &priv->uioinfo->mem[MAX_UIO_MAPS]) { in uio_dmem_genirq_release()
150 struct uio_info *uioinfo = &pdata->uioinfo; in uio_dmem_genirq_probe() local
160 uioinfo = kzalloc(sizeof(*uioinfo), GFP_KERNEL); in uio_dmem_genirq_probe()
161 if (!uioinfo) { in uio_dmem_genirq_probe()
166 uioinfo->name = pdev->dev.of_node->name; in uio_dmem_genirq_probe()
167 uioinfo->version = "devicetree"; in uio_dmem_genirq_probe()
172 uioinfo->irq = UIO_IRQ_NONE; in uio_dmem_genirq_probe()
174 uioinfo->irq = irq; in uio_dmem_genirq_probe()
177 if (!uioinfo || !uioinfo->name || !uioinfo->version) { in uio_dmem_genirq_probe()
182 if (uioinfo->handler || uioinfo->irqcontrol || in uio_dmem_genirq_probe()
183 uioinfo->irq_flags & IRQF_SHARED) { in uio_dmem_genirq_probe()
197 priv->uioinfo = uioinfo; in uio_dmem_genirq_probe()
203 if (!uioinfo->irq) { in uio_dmem_genirq_probe()
209 uioinfo->irq = ret; in uio_dmem_genirq_probe()
211 uiomem = &uioinfo->mem[0]; in uio_dmem_genirq_probe()
219 if (uiomem >= &uioinfo->mem[MAX_UIO_MAPS]) { in uio_dmem_genirq_probe()
236 if (uiomem >= &uioinfo->mem[MAX_UIO_MAPS]) { in uio_dmem_genirq_probe()
248 while (uiomem < &uioinfo->mem[MAX_UIO_MAPS]) { in uio_dmem_genirq_probe()
262 uioinfo->handler = uio_dmem_genirq_handler; in uio_dmem_genirq_probe()
263 uioinfo->irqcontrol = uio_dmem_genirq_irqcontrol; in uio_dmem_genirq_probe()
264 uioinfo->open = uio_dmem_genirq_open; in uio_dmem_genirq_probe()
265 uioinfo->release = uio_dmem_genirq_release; in uio_dmem_genirq_probe()
266 uioinfo->priv = priv; in uio_dmem_genirq_probe()
275 ret = uio_register_device(&pdev->dev, priv->uioinfo); in uio_dmem_genirq_probe()
289 kfree(uioinfo); in uio_dmem_genirq_probe()
298 uio_unregister_device(priv->uioinfo); in uio_dmem_genirq_remove()
301 priv->uioinfo->handler = NULL; in uio_dmem_genirq_remove()
302 priv->uioinfo->irqcontrol = NULL; in uio_dmem_genirq_remove()
306 kfree(priv->uioinfo); in uio_dmem_genirq_remove()