Ejemplo n.º 1
0
static int __devinit snappercl15_probe(struct platform_device *pdev)
{
	struct snd_soc_card *card = &snd_soc_snappercl15;
	int ret;

	ret = ep93xx_i2s_acquire();
	if (ret)
		return ret;

	card->dev = &pdev->dev;

	ret = snd_soc_register_card(card);
	if (ret) {
		dev_err(&pdev->dev, "snd_soc_register_card() failed: %d\n",
			ret);
		ep93xx_i2s_release();
	}

	return ret;
}
Ejemplo n.º 2
0
static int __devinit edb93xx_probe(struct platform_device *pdev)
{
    struct snd_soc_card *card = &snd_soc_edb93xx;
    int ret;

    ret = ep93xx_i2s_acquire(EP93XX_SYSCON_DEVCFG_I2SONAC97,
                             EP93XX_SYSCON_I2SCLKDIV_ORIDE |
                             EP93XX_SYSCON_I2SCLKDIV_SPOL);
    if (ret)
        return ret;

    card->dev = &pdev->dev;

    ret = snd_soc_register_card(card);
    if (ret) {
        dev_err(&pdev->dev, "snd_soc_register_card() failed: %d\n",
                ret);
        ep93xx_i2s_release();
    }

    return ret;
}
Ejemplo n.º 3
0
static int __init snappercl15_init(void)
{
	int ret;

	if (!machine_is_snapper_cl15())
		return -ENODEV;

	ret = ep93xx_i2s_acquire(EP93XX_SYSCON_DEVCFG_I2SONAC97,
				 EP93XX_SYSCON_I2SCLKDIV_ORIDE |
				 EP93XX_SYSCON_I2SCLKDIV_SPOL);
	if (ret)
		return ret;

	snappercl15_snd_device = platform_device_alloc("soc-audio", -1);
	if (!snappercl15_snd_device)
		return -ENOMEM;
	
	platform_set_drvdata(snappercl15_snd_device, &snd_soc_snappercl15);
	ret = platform_device_add(snappercl15_snd_device);
	if (ret)
		platform_device_put(snappercl15_snd_device);

	return ret;
}