Lines Matching refs:jrpriv

31 static void register_algs(struct caam_drv_private_jr *jrpriv,  in register_algs()  argument
42 jrpriv->hwrng = !caam_rng_init(dev); in register_algs()
70 struct caam_drv_private_jr *jrpriv = dev_get_drvdata(jrdev); in caam_jr_crypto_engine_exit() local
73 crypto_engine_exit(jrpriv->engine); in caam_jr_crypto_engine_exit()
187 struct caam_drv_private_jr *jrpriv; in caam_jr_remove() local
190 jrpriv = dev_get_drvdata(jrdev); in caam_jr_remove()
192 if (jrpriv->hwrng) in caam_jr_remove()
201 if (atomic_read(&jrpriv->tfm_count)) { in caam_jr_remove()
211 list_del(&jrpriv->list_node); in caam_jr_remove()
350 struct caam_drv_private_jr *jrpriv, *min_jrpriv = NULL; in caam_jr_alloc() local
362 list_for_each_entry(jrpriv, &driver_data.jr_list, list_node) { in caam_jr_alloc()
363 tfm_cnt = atomic_read(&jrpriv->tfm_count); in caam_jr_alloc()
366 min_jrpriv = jrpriv; in caam_jr_alloc()
389 struct caam_drv_private_jr *jrpriv = dev_get_drvdata(rdev); in caam_jr_free() local
391 atomic_dec(&jrpriv->tfm_count); in caam_jr_free()
592 struct caam_drv_private_jr *jrpriv; in caam_jr_probe() local
598 jrpriv = devm_kzalloc(jrdev, sizeof(*jrpriv), GFP_KERNEL); in caam_jr_probe()
599 if (!jrpriv) in caam_jr_probe()
602 dev_set_drvdata(jrdev, jrpriv); in caam_jr_probe()
605 jrpriv->ridx = total_jobrs++; in caam_jr_probe()
622 jrpriv->rregs = (struct caam_job_ring __iomem __force *)ctrl; in caam_jr_probe()
632 jrpriv->engine = crypto_engine_alloc_init_and_set(jrdev, true, NULL, in caam_jr_probe()
635 if (!jrpriv->engine) { in caam_jr_probe()
646 error = crypto_engine_start(jrpriv->engine); in caam_jr_probe()
653 jrpriv->irq = irq_of_parse_and_map(nprop, 0); in caam_jr_probe()
654 if (!jrpriv->irq) { in caam_jr_probe()
660 (void *)(unsigned long)jrpriv->irq); in caam_jr_probe()
669 jrpriv->dev = jrdev; in caam_jr_probe()
671 list_add_tail(&jrpriv->list_node, &driver_data.jr_list); in caam_jr_probe()
674 atomic_set(&jrpriv->tfm_count, 0); in caam_jr_probe()
679 register_algs(jrpriv, jrdev->parent); in caam_jr_probe()
695 struct caam_drv_private_jr *jrpriv = platform_get_drvdata(pdev); in caam_jr_suspend() local
704 list_del(&jrpriv->list_node); in caam_jr_suspend()
707 if (jrpriv->hwrng) in caam_jr_suspend()
713 tasklet_disable(&jrpriv->irqtask); in caam_jr_suspend()
716 clrsetbits_32(&jrpriv->rregs->rconfig_lo, 0, JRCFG_IMSK); in caam_jr_suspend()
731 enable_irq_wake(jrpriv->irq); in caam_jr_suspend()
740 struct caam_drv_private_jr *jrpriv = platform_get_drvdata(pdev); in caam_jr_resume() local
751 inp_addr = rd_reg64(&jrpriv->rregs->inpring_base); in caam_jr_resume()
754 if (inp_addr == jrpriv->state.inpbusaddr) { in caam_jr_resume()
763 tasklet_enable(&jrpriv->irqtask); in caam_jr_resume()
765 clrsetbits_32(&jrpriv->rregs->rconfig_lo, in caam_jr_resume()
782 caam_jr_reset_index(jrpriv); in caam_jr_resume()
783 caam_jr_init_hw(dev, jrpriv->state.inpbusaddr, in caam_jr_resume()
784 jrpriv->state.outbusaddr); in caam_jr_resume()
786 tasklet_enable(&jrpriv->irqtask); in caam_jr_resume()
788 disable_irq_wake(jrpriv->irq); in caam_jr_resume()
793 list_add_tail(&jrpriv->list_node, &driver_data.jr_list); in caam_jr_resume()
796 if (jrpriv->hwrng) in caam_jr_resume()
797 jrpriv->hwrng = !caam_rng_init(dev->parent); in caam_jr_resume()