From 424e7e9f10fac751c712d2e3e5d15b4e91450909 Mon Sep 17 00:00:00 2001 From: Bin Yang Date: Thu, 6 Oct 2011 16:18:32 +0100 Subject: [PATCH] gpadc: fix logic err of last addr checking it has logic error to check last addr which is used. Change-Id: Ia5ec6610b60a402166349369bf03918ec6e89eb4 Signed-off-by: Bin Yang --- drivers/hwmon/intel_mid_gpadc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/hwmon/intel_mid_gpadc.c b/drivers/hwmon/intel_mid_gpadc.c index 2fab4b4..9582bad 100644 --- a/drivers/hwmon/intel_mid_gpadc.c +++ b/drivers/hwmon/intel_mid_gpadc.c @@ -234,7 +234,7 @@ static int alloc_channel_addr(struct gpadc_info *mgi, int ch) int last = 0; for (i = 0; i < GPADC_CH_MAX; i++) - if (!(mgi->addr_mask & (1 << i))) + if (mgi->addr_mask & (1 << i)) last = i; for (i = 0; i < GPADC_CH_MAX; i++) { @@ -260,7 +260,7 @@ static void free_channel_addr(struct gpadc_info *mgi, int addr) mgi->addr_mask &= ~(1 << addr); for (i = 0; i < GPADC_CH_MAX; i++) - if (!(mgi->addr_mask & (1 << i))) + if (mgi->addr_mask & (1 << i)) last = i; if (addr > last) gpadc_set_bits(ADC1ADDR0+last, MSIC_STOPCH); -- 2.7.4