summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEduardo Valentin <eduardo.valentin@ti.com>2013-03-15 13:00:04 (GMT)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-03-15 16:02:10 (GMT)
commite555c95648408de12b7278c730764c7644d72b08 (patch)
tree7d0abf0dafc8502b2956e34cdc72be126ef403f0
parent7cf46dbf0a3f0ae98f1e71425e7b50d6478e2457 (diff)
downloadlinux-fsl-qoriq-e555c95648408de12b7278c730764c7644d72b08.tar.xz
staging: omap-thermal: read status only once inside alert IRQ
There is no need to re-read status register. Signed-off-by: Eduardo Valentin <eduardo.valentin@ti.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/staging/omap-thermal/omap-bandgap.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/staging/omap-thermal/omap-bandgap.c b/drivers/staging/omap-thermal/omap-bandgap.c
index 531e853..fce3942 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;