Lines Matching defs:aes_dd

423 	struct atmel_aes_dev *aes_dd = NULL;
429 aes_dd = tmp;
432 ctx->dd = aes_dd;
434 aes_dd = ctx->dd;
439 return aes_dd;
2320 struct atmel_aes_dev *aes_dd = dev_id;
2323 reg = atmel_aes_read(aes_dd, AES_ISR);
2324 if (reg & atmel_aes_read(aes_dd, AES_IMR)) {
2325 atmel_aes_write(aes_dd, AES_IDR, reg);
2326 if (AES_FLAGS_BUSY & aes_dd->flags)
2327 tasklet_schedule(&aes_dd->done_task);
2329 dev_warn(aes_dd->dev, "AES interrupt when no active requests.\n");
2486 struct atmel_aes_dev *aes_dd;
2491 aes_dd = devm_kzalloc(&pdev->dev, sizeof(*aes_dd), GFP_KERNEL);
2492 if (!aes_dd)
2495 aes_dd->dev = dev;
2497 platform_set_drvdata(pdev, aes_dd);
2499 INIT_LIST_HEAD(&aes_dd->list);
2500 spin_lock_init(&aes_dd->lock);
2502 tasklet_init(&aes_dd->done_task, atmel_aes_done_task,
2503 (unsigned long)aes_dd);
2504 tasklet_init(&aes_dd->queue_task, atmel_aes_queue_task,
2505 (unsigned long)aes_dd);
2507 crypto_init_queue(&aes_dd->queue, ATMEL_AES_QUEUE_LENGTH);
2516 aes_dd->phys_base = aes_res->start;
2519 aes_dd->irq = platform_get_irq(pdev, 0);
2520 if (aes_dd->irq < 0) {
2521 err = aes_dd->irq;
2525 err = devm_request_irq(&pdev->dev, aes_dd->irq, atmel_aes_irq,
2526 IRQF_SHARED, "atmel-aes", aes_dd);
2533 aes_dd->iclk = devm_clk_get(&pdev->dev, "aes_clk");
2534 if (IS_ERR(aes_dd->iclk)) {
2536 err = PTR_ERR(aes_dd->iclk);
2540 aes_dd->io_base = devm_ioremap_resource(&pdev->dev, aes_res);
2541 if (IS_ERR(aes_dd->io_base)) {
2543 err = PTR_ERR(aes_dd->io_base);
2547 err = clk_prepare(aes_dd->iclk);
2551 err = atmel_aes_hw_version_init(aes_dd);
2555 atmel_aes_get_cap(aes_dd);
2558 if (aes_dd->caps.has_authenc && !atmel_sha_authenc_is_ready()) {
2564 err = atmel_aes_buff_init(aes_dd);
2568 err = atmel_aes_dma_init(aes_dd);
2573 list_add_tail(&aes_dd->list, &atmel_aes.dev_list);
2576 err = atmel_aes_register_algs(aes_dd);
2581 dma_chan_name(aes_dd->src.chan),
2582 dma_chan_name(aes_dd->dst.chan));
2588 list_del(&aes_dd->list);
2590 atmel_aes_dma_cleanup(aes_dd);
2592 atmel_aes_buff_cleanup(aes_dd);
2594 clk_unprepare(aes_dd->iclk);
2596 tasklet_kill(&aes_dd->done_task);
2597 tasklet_kill(&aes_dd->queue_task);
2604 struct atmel_aes_dev *aes_dd;
2606 aes_dd = platform_get_drvdata(pdev);
2607 if (!aes_dd)
2610 list_del(&aes_dd->list);
2613 atmel_aes_unregister_algs(aes_dd);
2615 tasklet_kill(&aes_dd->done_task);
2616 tasklet_kill(&aes_dd->queue_task);
2618 atmel_aes_dma_cleanup(aes_dd);
2619 atmel_aes_buff_cleanup(aes_dd);
2621 clk_unprepare(aes_dd->iclk);