iio: mxs-lradc: disable only masked channels in mxs_lradc_hw_stop
Disabling of the touchscreen IRQs should be done in mxs_lradc_disable_ts. So disable only the masked virtual channels in mxs_lradc_hw_stop and finally remove the unused function mxs_lradc_irq_en_mask. Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> Reviewed-by: Marek Vasut <marex@denx.de> Tested-by: Marek Vasut <marex@denx.de> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
This commit is contained in:
parent
962ed43a3e
commit
331dd5be97
1 changed files with 3 additions and 8 deletions
|
@ -373,13 +373,6 @@ static u32 mxs_lradc_plate_mask(struct mxs_lradc *lradc)
|
||||||
return LRADC_CTRL0_MX28_PLATE_MASK;
|
return LRADC_CTRL0_MX28_PLATE_MASK;
|
||||||
}
|
}
|
||||||
|
|
||||||
static u32 mxs_lradc_irq_en_mask(struct mxs_lradc *lradc)
|
|
||||||
{
|
|
||||||
if (lradc->soc == IMX23_LRADC)
|
|
||||||
return LRADC_CTRL1_MX23_LRADC_IRQ_EN_MASK;
|
|
||||||
return LRADC_CTRL1_MX28_LRADC_IRQ_EN_MASK;
|
|
||||||
}
|
|
||||||
|
|
||||||
static u32 mxs_lradc_irq_mask(struct mxs_lradc *lradc)
|
static u32 mxs_lradc_irq_mask(struct mxs_lradc *lradc)
|
||||||
{
|
{
|
||||||
if (lradc->soc == IMX23_LRADC)
|
if (lradc->soc == IMX23_LRADC)
|
||||||
|
@ -1496,7 +1489,9 @@ static void mxs_lradc_hw_stop(struct mxs_lradc *lradc)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
mxs_lradc_reg_clear(lradc, mxs_lradc_irq_en_mask(lradc), LRADC_CTRL1);
|
mxs_lradc_reg_clear(lradc,
|
||||||
|
lradc->buffer_vchans << LRADC_CTRL1_LRADC_IRQ_EN_OFFSET,
|
||||||
|
LRADC_CTRL1);
|
||||||
|
|
||||||
for (i = 0; i < LRADC_MAX_DELAY_CHANS; i++)
|
for (i = 0; i < LRADC_MAX_DELAY_CHANS; i++)
|
||||||
mxs_lradc_reg_wrt(lradc, 0, LRADC_DELAY(i));
|
mxs_lradc_reg_wrt(lradc, 0, LRADC_DELAY(i));
|
||||||
|
|
Loading…
Reference in a new issue