Lines Matching refs:p
349 struct uctrl_driver *p; in uctrl_probe() local
352 p = kzalloc(sizeof(*p), GFP_KERNEL); in uctrl_probe()
353 if (!p) { in uctrl_probe()
358 p->regs = of_ioremap(&op->resource[0], 0, in uctrl_probe()
361 if (!p->regs) { in uctrl_probe()
366 p->irq = op->archdata.irqs[0]; in uctrl_probe()
367 err = request_irq(p->irq, uctrl_interrupt, 0, "uctrl", p); in uctrl_probe()
379 sbus_writel(UCTRL_INTR_RXNE_REQ|UCTRL_INTR_RXNE_MSK, &p->regs->uctrl_intr); in uctrl_probe()
381 op->dev.of_node, p->regs, p->irq); in uctrl_probe()
382 uctrl_get_event_status(p); in uctrl_probe()
383 uctrl_get_external_status(p); in uctrl_probe()
385 dev_set_drvdata(&op->dev, p); in uctrl_probe()
386 global_driver = p; in uctrl_probe()
392 free_irq(p->irq, p); in uctrl_probe()
395 of_iounmap(&op->resource[0], p->regs, resource_size(&op->resource[0])); in uctrl_probe()
398 kfree(p); in uctrl_probe()
404 struct uctrl_driver *p = dev_get_drvdata(&op->dev); in uctrl_remove() local
406 if (p) { in uctrl_remove()
408 free_irq(p->irq, p); in uctrl_remove()
409 of_iounmap(&op->resource[0], p->regs, resource_size(&op->resource[0])); in uctrl_remove()
410 kfree(p); in uctrl_remove()