Преглед изворни кода

dm: omap_timer: Fix conversion of address to a pointer

OMAP timer driver directly typecasts fdt_addr_t to a pointer. This is
not strictly correct, as it gives a build warning when fdt_addr_t is u64.
So, use map_physmem for a proper typecasts.

This is inspired by commit 167efe01bc5a9 ("dm: ns16550: Use an address
instead of a pointer for the uart base")

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Lokesh Vutla пре 9 година
родитељ
комит
871ca263ab
1 измењених фајлова са 2 додато и 1 уклоњено
  1. 2 1
      drivers/timer/omap-timer.c

+ 2 - 1
drivers/timer/omap-timer.c

@@ -79,7 +79,8 @@ static int omap_timer_ofdata_to_platdata(struct udevice *dev)
 {
 	struct omap_timer_priv *priv = dev_get_priv(dev);
 
-	priv->regs = (struct omap_gptimer_regs *)dev_get_addr(dev);
+	priv->regs = map_physmem(dev_get_addr(dev),
+				 sizeof(struct omap_gptimer_regs), MAP_NOCACHE);
 
 	return 0;
 }