mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-10 07:59:42 -04:00
iio: adc: palmas: always reset events on unload
This prevents leaving the adc in freerunning mode when removing the driver. Signed-off-by: Patrik Dahlström <risca@dalakolonin.se> Link: https://lore.kernel.org/r/20230408114825.824505-8-risca@dalakolonin.se Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
This commit is contained in:
committed by
Jonathan Cameron
parent
2d48dbdfc7
commit
773597aeee
@@ -498,6 +498,13 @@ static int palmas_gpadc_get_adc_dt_data(struct platform_device *pdev,
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void palmas_gpadc_reset(void *data)
|
||||
{
|
||||
struct palmas_gpadc *adc = data;
|
||||
if (adc->event0.enabled || adc->event1.enabled)
|
||||
palmas_adc_reset_events(adc);
|
||||
}
|
||||
|
||||
static int palmas_gpadc_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct palmas_gpadc *adc;
|
||||
@@ -587,6 +594,10 @@ static int palmas_gpadc_probe(struct platform_device *pdev)
|
||||
palmas_gpadc_calibrate(adc, i);
|
||||
}
|
||||
|
||||
ret = devm_add_action(&pdev->dev, palmas_gpadc_reset, adc);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user