Lines Matching refs:fsl_lbc_ctrl_dev
34 struct fsl_lbc_ctrl *fsl_lbc_ctrl_dev; variable
35 EXPORT_SYMBOL(fsl_lbc_ctrl_dev);
48 struct device_node *np = fsl_lbc_ctrl_dev->dev->of_node; in fsl_lbc_addr()
72 if (!fsl_lbc_ctrl_dev || !fsl_lbc_ctrl_dev->regs) in fsl_lbc_find()
75 lbc = fsl_lbc_ctrl_dev->regs; in fsl_lbc_find()
107 if (!fsl_lbc_ctrl_dev || !fsl_lbc_ctrl_dev->regs) in fsl_upm_find()
110 lbc = fsl_lbc_ctrl_dev->regs; in fsl_upm_find()
160 if (!fsl_lbc_ctrl_dev || !fsl_lbc_ctrl_dev->regs) in fsl_upm_run_pattern()
165 out_be32(&fsl_lbc_ctrl_dev->regs->mar, mar); in fsl_upm_run_pattern()
290 fsl_lbc_ctrl_dev = kzalloc(sizeof(*fsl_lbc_ctrl_dev), GFP_KERNEL); in fsl_lbc_ctrl_probe()
291 if (!fsl_lbc_ctrl_dev) in fsl_lbc_ctrl_probe()
294 dev_set_drvdata(&dev->dev, fsl_lbc_ctrl_dev); in fsl_lbc_ctrl_probe()
296 spin_lock_init(&fsl_lbc_ctrl_dev->lock); in fsl_lbc_ctrl_probe()
297 init_waitqueue_head(&fsl_lbc_ctrl_dev->irq_wait); in fsl_lbc_ctrl_probe()
299 fsl_lbc_ctrl_dev->regs = of_iomap(dev->dev.of_node, 0); in fsl_lbc_ctrl_probe()
300 if (!fsl_lbc_ctrl_dev->regs) { in fsl_lbc_ctrl_probe()
306 fsl_lbc_ctrl_dev->irq[0] = irq_of_parse_and_map(dev->dev.of_node, 0); in fsl_lbc_ctrl_probe()
307 if (!fsl_lbc_ctrl_dev->irq[0]) { in fsl_lbc_ctrl_probe()
313 fsl_lbc_ctrl_dev->dev = &dev->dev; in fsl_lbc_ctrl_probe()
315 ret = fsl_lbc_ctrl_init(fsl_lbc_ctrl_dev, dev->dev.of_node); in fsl_lbc_ctrl_probe()
319 ret = request_irq(fsl_lbc_ctrl_dev->irq[0], fsl_lbc_ctrl_irq, 0, in fsl_lbc_ctrl_probe()
320 "fsl-lbc", fsl_lbc_ctrl_dev); in fsl_lbc_ctrl_probe()
323 fsl_lbc_ctrl_dev->irq[0]); in fsl_lbc_ctrl_probe()
324 ret = fsl_lbc_ctrl_dev->irq[0]; in fsl_lbc_ctrl_probe()
328 fsl_lbc_ctrl_dev->irq[1] = irq_of_parse_and_map(dev->dev.of_node, 1); in fsl_lbc_ctrl_probe()
329 if (fsl_lbc_ctrl_dev->irq[1]) { in fsl_lbc_ctrl_probe()
330 ret = request_irq(fsl_lbc_ctrl_dev->irq[1], fsl_lbc_ctrl_irq, in fsl_lbc_ctrl_probe()
331 IRQF_SHARED, "fsl-lbc-err", fsl_lbc_ctrl_dev); in fsl_lbc_ctrl_probe()
334 fsl_lbc_ctrl_dev->irq[1]); in fsl_lbc_ctrl_probe()
335 ret = fsl_lbc_ctrl_dev->irq[1]; in fsl_lbc_ctrl_probe()
341 out_be32(&fsl_lbc_ctrl_dev->regs->lteir, LTEIR_ENABLE); in fsl_lbc_ctrl_probe()
346 free_irq(fsl_lbc_ctrl_dev->irq[0], fsl_lbc_ctrl_dev); in fsl_lbc_ctrl_probe()
348 iounmap(fsl_lbc_ctrl_dev->regs); in fsl_lbc_ctrl_probe()
349 kfree(fsl_lbc_ctrl_dev); in fsl_lbc_ctrl_probe()
350 fsl_lbc_ctrl_dev = NULL; in fsl_lbc_ctrl_probe()