mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 19:21:31 -04:00
Merge 4.16-rc3 into staging-next
We want the IIO/Staging fixes in here, and to resolve a merge problem with the move of the fsl-mc code. Signed-off-by: Greg Kroah-Hartman <[email protected]>
This commit is contained in:
commit
36e9f7203e
680 changed files with 6929 additions and 4271 deletions
|
|
@ -243,7 +243,7 @@ static int aspeed_adc_probe(struct platform_device *pdev)
|
|||
ASPEED_ADC_INIT_POLLING_TIME,
|
||||
ASPEED_ADC_INIT_TIMEOUT);
|
||||
if (ret)
|
||||
goto scaler_error;
|
||||
goto poll_timeout_error;
|
||||
}
|
||||
|
||||
/* Start all channels in normal mode. */
|
||||
|
|
@ -274,9 +274,10 @@ iio_register_error:
|
|||
writel(ASPEED_OPERATION_MODE_POWER_DOWN,
|
||||
data->base + ASPEED_REG_ENGINE_CONTROL);
|
||||
clk_disable_unprepare(data->clk_scaler->clk);
|
||||
reset_error:
|
||||
reset_control_assert(data->rst);
|
||||
clk_enable_error:
|
||||
poll_timeout_error:
|
||||
reset_control_assert(data->rst);
|
||||
reset_error:
|
||||
clk_hw_unregister_divider(data->clk_scaler);
|
||||
scaler_error:
|
||||
clk_hw_unregister_divider(data->clk_prescaler);
|
||||
|
|
|
|||
|
|
@ -722,8 +722,6 @@ static int stm32h7_adc_enable(struct stm32_adc *adc)
|
|||
int ret;
|
||||
u32 val;
|
||||
|
||||
/* Clear ADRDY by writing one, then enable ADC */
|
||||
stm32_adc_set_bits(adc, STM32H7_ADC_ISR, STM32H7_ADRDY);
|
||||
stm32_adc_set_bits(adc, STM32H7_ADC_CR, STM32H7_ADEN);
|
||||
|
||||
/* Poll for ADRDY to be set (after adc startup time) */
|
||||
|
|
@ -731,8 +729,11 @@ static int stm32h7_adc_enable(struct stm32_adc *adc)
|
|||
val & STM32H7_ADRDY,
|
||||
100, STM32_ADC_TIMEOUT_US);
|
||||
if (ret) {
|
||||
stm32_adc_clr_bits(adc, STM32H7_ADC_CR, STM32H7_ADEN);
|
||||
stm32_adc_set_bits(adc, STM32H7_ADC_CR, STM32H7_ADDIS);
|
||||
dev_err(&indio_dev->dev, "Failed to enable ADC\n");
|
||||
} else {
|
||||
/* Clear ADRDY by writing one */
|
||||
stm32_adc_set_bits(adc, STM32H7_ADC_ISR, STM32H7_ADRDY);
|
||||
}
|
||||
|
||||
return ret;
|
||||
|
|
|
|||
|
|
@ -46,6 +46,10 @@ int adis_probe_trigger(struct adis *adis, struct iio_dev *indio_dev)
|
|||
if (adis->trig == NULL)
|
||||
return -ENOMEM;
|
||||
|
||||
adis->trig->dev.parent = &adis->spi->dev;
|
||||
adis->trig->ops = &adis_trigger_ops;
|
||||
iio_trigger_set_drvdata(adis->trig, adis);
|
||||
|
||||
ret = request_irq(adis->spi->irq,
|
||||
&iio_trigger_generic_data_rdy_poll,
|
||||
IRQF_TRIGGER_RISING,
|
||||
|
|
@ -54,9 +58,6 @@ int adis_probe_trigger(struct adis *adis, struct iio_dev *indio_dev)
|
|||
if (ret)
|
||||
goto error_free_trig;
|
||||
|
||||
adis->trig->dev.parent = &adis->spi->dev;
|
||||
adis->trig->ops = &adis_trigger_ops;
|
||||
iio_trigger_set_drvdata(adis->trig, adis);
|
||||
ret = iio_trigger_register(adis->trig);
|
||||
|
||||
indio_dev->trig = iio_trigger_get(adis->trig);
|
||||
|
|
|
|||
|
|
@ -175,7 +175,7 @@ __poll_t iio_buffer_poll(struct file *filp,
|
|||
struct iio_dev *indio_dev = filp->private_data;
|
||||
struct iio_buffer *rb = indio_dev->buffer;
|
||||
|
||||
if (!indio_dev->info)
|
||||
if (!indio_dev->info || rb == NULL)
|
||||
return 0;
|
||||
|
||||
poll_wait(filp, &rb->pollq, wait);
|
||||
|
|
|
|||
|
|
@ -68,6 +68,8 @@ config SX9500
|
|||
|
||||
config SRF08
|
||||
tristate "Devantech SRF02/SRF08/SRF10 ultrasonic ranger sensor"
|
||||
select IIO_BUFFER
|
||||
select IIO_TRIGGERED_BUFFER
|
||||
depends on I2C
|
||||
help
|
||||
Say Y here to build a driver for Devantech SRF02/SRF08/SRF10
|
||||
|
|
|
|||
Loading…
Reference in a new issue