Lines Matching refs:crypto_info

98 static int rk_crypto_register(struct rk_crypto_info *crypto_info)
104 rk_cipher_algs[i]->dev = crypto_info;
140 struct rk_crypto_info *crypto_info = data;
142 reset_control_assert(crypto_info->rst);
154 struct rk_crypto_info *crypto_info;
157 crypto_info = devm_kzalloc(&pdev->dev,
158 sizeof(*crypto_info), GFP_KERNEL);
159 if (!crypto_info) {
164 crypto_info->rst = devm_reset_control_get(dev, "crypto-rst");
165 if (IS_ERR(crypto_info->rst)) {
166 err = PTR_ERR(crypto_info->rst);
170 reset_control_assert(crypto_info->rst);
172 reset_control_deassert(crypto_info->rst);
174 err = devm_add_action_or_reset(dev, rk_crypto_action, crypto_info);
178 crypto_info->reg = devm_platform_ioremap_resource(pdev, 0);
179 if (IS_ERR(crypto_info->reg)) {
180 err = PTR_ERR(crypto_info->reg);
184 crypto_info->aclk = devm_clk_get(&pdev->dev, "aclk");
185 if (IS_ERR(crypto_info->aclk)) {
186 err = PTR_ERR(crypto_info->aclk);
190 crypto_info->hclk = devm_clk_get(&pdev->dev, "hclk");
191 if (IS_ERR(crypto_info->hclk)) {
192 err = PTR_ERR(crypto_info->hclk);
196 crypto_info->sclk = devm_clk_get(&pdev->dev, "sclk");
197 if (IS_ERR(crypto_info->sclk)) {
198 err = PTR_ERR(crypto_info->sclk);
202 crypto_info->dmaclk = devm_clk_get(&pdev->dev, "apb_pclk");
203 if (IS_ERR(crypto_info->dmaclk)) {
204 err = PTR_ERR(crypto_info->dmaclk);
208 crypto_info->irq = platform_get_irq(pdev, 0);
209 if (crypto_info->irq < 0) {
210 dev_warn(crypto_info->dev,
212 err = crypto_info->irq;
216 err = devm_request_irq(&pdev->dev, crypto_info->irq,
221 dev_err(crypto_info->dev, "irq request failed.\n");
225 crypto_info->dev = &pdev->dev;
226 platform_set_drvdata(pdev, crypto_info);
228 crypto_info->engine = crypto_engine_alloc_init(&pdev->dev, true);
229 crypto_engine_start(crypto_info->engine);
230 init_completion(&crypto_info->complete);
232 rk_crypto_enable_clk(crypto_info);
234 err = rk_crypto_register(crypto_info);
244 crypto_engine_exit(crypto_info->engine);