Re: [PATCH v2 3/3] iio: adc: meson_saradc: Use temporary variable for struct device

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

 



On 6/2/22 13:42, Andy Shevchenko wrote:
return -ENOMEM;
@@ -690,7 +687,7 @@ static int meson_sar_adc_clk_init(struct iio_dev *indio_dev,
  	priv->clk_gate.bit_idx = __ffs(MESON_SAR_ADC_REG3_CLK_EN);
  	priv->clk_gate.hw.init = &init;
- priv->adc_clk = devm_clk_register(&indio_dev->dev, &priv->clk_gate.hw);
+	priv->adc_clk = devm_clk_register(idev, &priv->clk_gate.hw);

You are not changing anything here. But we shouldn't be devm'ing on the IIO device. It will get freed eventually, but only when the last reference to the iio device has been dropped, which might be long after the platform device has been removed. devm'ing should happen on the platform_device's device. Might be worth fixing.

  	if (WARN_ON(IS_ERR(priv->adc_clk)))
  		return PTR_ERR(priv->adc_clk);
@@ -706,8 +703,7 @@ static int meson_sar_adc_temp_sensor_init(struct iio_dev *indio_dev)
  	size_t read_len;
  	




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux