Lines Matching refs:info
61 void (*init)(struct uio_info *info);
62 void (*shutdown)(struct uio_info *info, bool init_err);
63 irqreturn_t (*irq_handler)(int irq, struct uio_info *info);
84 struct uio_info *info = dev_get_drvdata(dev);
85 struct fsl_elbc_gpcm *priv = info->priv;
103 struct uio_info *info = dev_get_drvdata(dev);
104 struct fsl_elbc_gpcm *priv = info->priv;
156 static irqreturn_t netx5152_irq_handler(int irq, struct uio_info *info)
158 void __iomem *reg_int_en = info->mem[0].internal_addr +
161 void __iomem *reg_int_stat = info->mem[0].internal_addr +
177 static void netx5152_init(struct uio_info *info)
180 struct fsl_elbc_gpcm *priv = info->priv;
190 iowrite32(0, info->mem[0].internal_addr + win0_offset +
194 static void netx5152_shutdown(struct uio_info *info, bool init_err)
200 iowrite32(0, info->mem[0].internal_addr + DPM_HOST_WIN0_OFFSET +
313 struct uio_info *info;
340 info = kzalloc(sizeof(*info), GFP_KERNEL);
341 if (!info) {
382 info->mem[0].internal_addr = ioremap(res.start, resource_size(&res));
383 if (!info->mem[0].internal_addr) {
390 info->mem[0].name = kasprintf(GFP_KERNEL, "%pOFn", node);
391 info->mem[0].addr = res.start;
392 info->mem[0].size = resource_size(&res);
393 info->mem[0].memtype = UIO_MEM_PHYS;
394 info->priv = priv;
395 info->name = uio_name;
396 info->version = "0.0.1";
399 info->irq = irq;
400 info->irq_flags = IRQF_SHARED;
401 info->handler = priv->irq_handler;
409 priv->init(info);
412 if (uio_register_device(priv->dev, info) != 0) {
419 platform_set_drvdata(pdev, info);
429 priv->shutdown(info, true);
430 iounmap(info->mem[0].internal_addr);
432 kfree(info->mem[0].name);
433 kfree(info);
442 struct uio_info *info = platform_get_drvdata(pdev);
443 struct fsl_elbc_gpcm *priv = info->priv;
446 uio_unregister_device(info);
448 priv->shutdown(info, false);
449 iounmap(info->mem[0].internal_addr);
450 kfree(info->mem[0].name);
451 kfree(info->name);
452 kfree(info);