Re: [PATCH 2/2] ASoC: atmel-i2s: add driver for the new Atmel I2S controller

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Le 28/09/2015 17:05, Cyrille Pitchen a écrit :
[...]
> +	/* Get audio clocks to generate the I2S Master Clock (I2S_MCK) */
> +	dev->aclk = devm_clk_get(&pdev->dev, "aclk");
> +	dev->gclk = devm_clk_get(&pdev->dev, "gclk");
> +	if (IS_ERR(dev->aclk) && IS_ERR(dev->gclk)) {
> +		/* Master Mode not supported */
> +		dev->aclk = NULL;
> +		dev->gclk = NULL;
> +	} else if (IS_ERR(dev->gclk)) {
> +		err = PTR_ERR(dev->gclk);
> +		dev_err(&pdev->dev,
> +			"failed to get the PMC generated clock: %d\n", err);
> +		return err;
> +	} else if (IS_ERR(dev->aclk)) {
> +		err = PTR_ERR(dev->aclk);
> +		dev_err(&pdev->dev,
> +			"failed to get the PLL audio clock: %d\n", err);
> +		return err;
> +	}
> +
> +	/* Do hardware specific settings to initialize I2S_MCK generator */
> +	if (dev->caps && dev->caps->mck_init) {
> +		err = dev->caps->mck_init(dev, np);
> +		if (err)
> +			return err;
> +	}
> +
> +	/* Enable the peripheral clock. */
> +	err = clk_prepare_enable(dev->pclk);
> +	if (err)
> +		return err;
> +
> +	dev->dev = &pdev->dev;
> +	dev->regmap = regmap;
> +	platform_set_drvdata(pdev, dev);

those last 3 lines should be moved before calling dev->caps->mck_init(),
otherwise dev->dev would not be initialized yet if dev_err() is called by
atmel_i2s_sama5d2_mck_init().

Will be fixed in the next series.
[...]
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux