From: Eduardo Valentin Date: Fri, 15 Mar 2013 13:00:04 +0000 (-0400) Subject: staging: omap-thermal: read status only once inside alert IRQ X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=e555c95648408de12b7278c730764c7644d72b08;p=openwrt%2Fstaging%2Fblogic.git staging: omap-thermal: read status only once inside alert IRQ There is no need to re-read status register. Signed-off-by: Eduardo Valentin Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/omap-thermal/omap-bandgap.c b/drivers/staging/omap-thermal/omap-bandgap.c index 531e853c1480..fce394224bc7 100644 --- a/drivers/staging/omap-thermal/omap-bandgap.c +++ b/drivers/staging/omap-thermal/omap-bandgap.c @@ -164,15 +164,15 @@ static irqreturn_t omap_bandgap_talert_irq_handler(int irq, void *data) u32 t_hot = 0, t_cold = 0, ctrl; int i; - /* Read the status of t_hot */ for (i = 0; i < bg_ptr->conf->sensor_count; i++) { tsr = bg_ptr->conf->sensors[i].registers; - t_hot = omap_bandgap_readl(bg_ptr, tsr->bgap_status); - t_hot &= tsr->status_hot_mask; + ctrl = omap_bandgap_readl(bg_ptr, tsr->bgap_status); + + /* Read the status of t_hot */ + t_hot = ctrl & tsr->status_hot_mask; /* Read the status of t_cold */ - t_cold = omap_bandgap_readl(bg_ptr, tsr->bgap_status); - t_cold &= tsr->status_cold_mask; + t_cold = ctrl & tsr->status_cold_mask; if (!t_cold && !t_hot) continue;