Пример #1
0
static int msm_rng_remove(struct platform_device *pdev)
{
	struct msm_rng *rng = platform_get_drvdata(pdev);

	hwrng_unregister(&rng->hwrng);
	return 0;
}
static void __exit mod_exit(void)
{
	gxio_mica_pka_trng_context_t* rng = 
		(gxio_mica_pka_trng_context_t*)tile_rng.priv;
	hwrng_unregister(&tile_rng);
	kfree(rng);
}
Пример #3
0
static void __exit ixp4xx_rng_exit(void)
{
	void __iomem * rng_base = (void __iomem *)ixp4xx_rng_ops.priv;

	hwrng_unregister(&ixp4xx_rng_ops);
	iounmap(rng_base);
}
Пример #4
0
static void chaoskey_disconnect(struct usb_interface *interface)
{
	struct chaoskey	*dev;

	usb_dbg(interface, "disconnect");
	dev = usb_get_intfdata(interface);
	if (!dev) {
		usb_dbg(interface, "disconnect failed - no dev");
		return;
	}

	if (dev->hwrng_registered)
		hwrng_unregister(&dev->hwrng);

	usb_deregister_dev(interface, &chaoskey_class);

	usb_set_intfdata(interface, NULL);
	mutex_lock(&dev->lock);

	dev->present = 0;
	usb_poison_urb(dev->urb);

	if (!dev->open) {
		mutex_unlock(&dev->lock);
		chaoskey_free(dev);
	} else
		mutex_unlock(&dev->lock);

	usb_dbg(interface, "disconnect done");
}
Пример #5
0
static int __exit tx4939_rng_remove(struct platform_device *dev)
{
	struct tx4939_rng *rngdev = platform_get_drvdata(dev);

	hwrng_unregister(&rngdev->rng);
	return 0;
}
static void __devexit virtrng_remove(struct virtio_device *vdev)
{
	vdev->config->reset(vdev);
	hwrng_unregister(&virtio_hwrng);
	vdev->config->del_vqs(vdev);
	vq = NULL;
}
static void __exit mod_exit(void)
{
	void __iomem *mem = (void __iomem *)geode_rng.priv;

	hwrng_unregister(&geode_rng);
	iounmap(mem);
}
Пример #8
0
static void remove_common(struct virtio_device *vdev)
{
    vdev->config->reset(vdev);
    busy = false;
    hwrng_unregister(&virtio_hwrng);
    vdev->config->del_vqs(vdev);
    vq = NULL;
}
Пример #9
0
static int picoxcell_trng_remove(struct platform_device *pdev)
{
    hwrng_unregister(&picoxcell_trng);
    clk_disable(rng_clk);
    clk_put(rng_clk);

    return 0;
}
Пример #10
0
static int optee_rng_remove(struct device *dev)
{
	hwrng_unregister(&pvt_data.optee_rng);
	tee_client_close_session(pvt_data.ctx, pvt_data.session_id);
	tee_client_close_context(pvt_data.ctx);

	return 0;
}
Пример #11
0
static int __devexit rng_remove(struct platform_device *dev)
{
	void __iomem *rng_regs = (void __iomem *)pasemi_rng.priv;

	hwrng_unregister(&pasemi_rng);
	iounmap(rng_regs);

	return 0;
}
Пример #12
0
static int timeriomem_rng_remove(struct platform_device *pdev)
{
	struct timeriomem_rng_private *priv = platform_get_drvdata(pdev);

	hwrng_unregister(&priv->rng_ops);
	hrtimer_cancel(&priv->timer);

	return 0;
}
Пример #13
0
static int ppc4xx_rng_remove(struct platform_device *dev)
{
	void __iomem *rng_regs = (void __iomem *) ppc4xx_rng.priv;

	hwrng_unregister(&ppc4xx_rng);
	ppc4xx_rng_enable(0);
	iounmap(rng_regs);

	return 0;
}
Пример #14
0
static int st_rng_remove(struct platform_device *pdev)
{
	struct st_rng_data *ddata = dev_get_drvdata(&pdev->dev);

	hwrng_unregister(&ddata->ops);

	clk_disable_unprepare(ddata->clk);

	return 0;
}
static int nmk_rng_remove(struct amba_device *dev)
{
	void __iomem *base = (void __iomem *)nmk_rng.priv;
	hwrng_unregister(&nmk_rng);
	iounmap(base);
	amba_release_regions(dev);
	clk_disable(rng_clk);
	clk_put(rng_clk);
	return 0;
}
Пример #16
0
static int __devexit msm_rng_remove(struct platform_device *pdev)
{
	struct msm_rng_device *msm_rng_dev = platform_get_drvdata(pdev);

	hwrng_unregister(&msm_rng);
	clk_put(msm_rng_dev->prng_clk);
	iounmap(msm_rng_dev->base);
	platform_set_drvdata(pdev, NULL);
	kfree(msm_rng_dev);
	return 0;
}
Пример #17
0
static int mcs814x_rng_remove(struct platform_device *pdev)
{
	struct hwrng *rng = platform_get_drvdata(pdev);
	struct mcs814x_rng_priv *priv = (struct mcs814x_rng_priv *)rng->priv;

	hwrng_unregister(rng);
	kfree(priv);
	kfree(rng);
	platform_set_drvdata(pdev, NULL);

	return 0;
}
static int __devexit timeriomem_rng_remove(struct platform_device *pdev)
{
	struct resource *mem = dev_get_drvdata(&pdev->dev);

	del_timer_sync(&timeriomem_rng_timer);
	hwrng_unregister(&timeriomem_rng_ops);

	iounmap(timeriomem_rng_data->address);
	release_resource(mem);

	return 0;
}
Пример #19
0
static int omap_rng_remove(struct platform_device *pdev)
{
	struct omap_rng_dev *priv = platform_get_drvdata(pdev);

	hwrng_unregister(&omap_rng_ops);

	priv->pdata->cleanup(priv);

	pm_runtime_put_sync(&pdev->dev);
	pm_runtime_disable(&pdev->dev);

	return 0;
}
static int msm_rng_remove(struct platform_device *pdev)
{
	struct msm_rng_device *msm_rng_dev = platform_get_drvdata(pdev);
	unregister_chrdev(QRNG_IOC_MAGIC, DRIVER_NAME);
	hwrng_unregister(&msm_rng);
	clk_put(msm_rng_dev->prng_clk);
	iounmap(msm_rng_dev->base);
	platform_set_drvdata(pdev, NULL);
	if (msm_rng_dev->qrng_perf_client)
		msm_bus_scale_unregister_client(msm_rng_dev->qrng_perf_client);
	kfree(msm_rng_dev);
	return 0;
}
Пример #21
0
static int bcm63xx_rng_remove(struct platform_device *pdev)
{
	struct hwrng *rng = platform_get_drvdata(pdev);
	struct bcm63xx_rng_priv *priv = to_rng_priv(rng);

	hwrng_unregister(rng);
	clk_disable(priv->clk);
	kfree(priv);
	kfree(rng);
	platform_set_drvdata(pdev, NULL);

	return 0;
}
Пример #22
0
static int xgene_rng_remove(struct platform_device *pdev)
{
	struct xgene_rng_dev *ctx = platform_get_drvdata(pdev);
	int rc;

	rc = device_init_wakeup(&pdev->dev, 0);
	if (rc)
		dev_err(&pdev->dev, "RNG init wakeup failed error %d\n", rc);
	if (!IS_ERR(ctx->clk))
		clk_disable_unprepare(ctx->clk);
	hwrng_unregister(&xgene_rng_func);

	return rc;
}
Пример #23
0
static int __exit omap_rng_remove(struct platform_device *pdev)
{
	hwrng_unregister(&omap_rng_ops);

	omap_rng_write_reg(RNG_MASK_REG, 0x0);

	if (cpu_is_omap24xx()) {
		clk_disable(rng_ick);
		clk_put(rng_ick);
	}

	rng_base = NULL;

	return 0;
}
Пример #24
0
static int __exit lpc313x_rng_remove(struct platform_device *pdev)
{
	struct resource *mem = dev_get_drvdata(&pdev->dev);

	hwrng_unregister(&lpc313x_rng);

	iounmap(rng_base);

	lpc313x_rng_endis_bus_clock(0);
	lpc313x_rng_endis_ring_clocks(0);

	release_resource(mem);
	rng_base = NULL;

	return 0;
}
Пример #25
0
static int __exit mxc_rnga_remove(struct platform_device *pdev)
{
	struct resource *res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
	void __iomem *rng_base = (void __iomem *)mxc_rnga.priv;
	struct clk *clk = clk_get(&pdev->dev, "rng");

	hwrng_unregister(&mxc_rnga);

	iounmap(rng_base);

	release_mem_region(res->start, resource_size(res));

	clk_disable(clk);
	clk_put(clk);

	return 0;
}
Пример #26
0
static int __exit omap4_rng_remove(struct platform_device *pdev)
{
	struct resource *res = dev_get_drvdata(&pdev->dev);

	hwrng_unregister(&omap4_rng_ops);

	trng_write(trng_read(CONTROL) & ~RNG_REG_CONTROL_ENABLE_TRNG, CONTROL);

	iounmap(rng_base);

	clk_disable(rng_fck);
	clk_put(rng_fck);
	release_mem_region(res->start, resource_size(res));
	rng_base = NULL;

	return 0;
}
Пример #27
0
static int __exit omap_rng_remove(struct platform_device *pdev)
{
    struct omap_rng_private_data *priv = dev_get_drvdata(&pdev->dev);

    hwrng_unregister(&omap_rng_ops);

    omap_rng_write_reg(priv, RNG_MASK_REG, 0x0);

    pm_runtime_put_sync(&pdev->dev);
    pm_runtime_disable(&pdev->dev);

    release_mem_region(priv->mem_res->start, resource_size(priv->mem_res));

    kfree(priv);

    return 0;
}
Пример #28
0
static int timeriomem_rng_remove(struct platform_device *pdev)
{
	struct timeriomem_rng_private_data *priv = platform_get_drvdata(pdev);
	struct resource *res;

	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);

	hwrng_unregister(&priv->timeriomem_rng_ops);

	del_timer_sync(&priv->timer);
	iounmap(priv->io_base);
	release_mem_region(res->start, resource_size(res));
	platform_set_drvdata(pdev, NULL);
	kfree(priv);

	return 0;
}
Пример #29
0
static int __exit omap_rng_remove(struct platform_device *pdev)
{
	struct resource *mem = dev_get_drvdata(&pdev->dev);

	hwrng_unregister(&omap_rng_ops);

	omap_rng_write_reg(RNG_MASK_REG, 0x0);

	if (cpu_is_omap24xx()) {
		clk_disable(rng_ick);
		clk_put(rng_ick);
	}

	release_resource(mem);
	rng_base = NULL;

	return 0;
}
Пример #30
0
static int __exit pseries_rng_remove(struct vio_dev *dev)
{
	hwrng_unregister(&pseries_rng);
	return 0;
}