Skip to contentSkip to conversation

dm: ti_qspi: Fix conversion of address to a pointer

PATCH New Lokesh Vutla 4 participants 4 messages Mar 5, 2016 – Mar 8, 2016 SPI

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 dm: ti_qspi: Fix conversion of address to a pointer

TI QSPI 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")

---
 drivers/spi/ti_qspi.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)
drivers/spi/ti_qspi.c +7 -3
index 409a5c4..e69ec0d 100644
@@ -534,11 +534,15 @@ static int ti_qspi_ofdata_to_platdata(struct udevice *bus)
 	const void *blob = gd->fdt_blob;
 	int node = bus->of_offset;
 	fdt_addr_t addr;
+	void *mmap;
 
-	priv->base = (struct ti_qspi_regs *)dev_get_addr(bus);
-	priv->memory_map = (void *)dev_get_addr_index(bus, 1);
+	priv->base = map_physmem(dev_get_addr(bus), sizeof(struct ti_qspi_regs),
+				 MAP_NOCACHE);
+	priv->memory_map = map_physmem(dev_get_addr_index(bus, 1), 0,
+				       MAP_NOCACHE);
 	addr = dev_get_addr_index(bus, 2);
-	priv->ctrl_mod_mmap = (addr == FDT_ADDR_T_NONE) ? NULL : (void *)addr;
+	mmap = map_physmem(dev_get_addr_index(bus, 2), 0, MAP_NOCACHE);
+	priv->ctrl_mod_mmap = (addr == FDT_ADDR_T_NONE) ? NULL : mmap;
 
 	priv->max_hz = fdtdec_get_int(blob, node, "spi-max-frequency", -1);
 	if (priv->max_hz < 0) {
Signature · 1 line
2.1.4
#1 lore raw

PATCH 1/1 dm: ti_qspi: Fix conversion of address to a pointer

Quoted 8 lines · Lokesh Vutla

TI QSPI 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")

thanks!
--
Jagan.

#2 lore raw

PATCH 1/1 dm: ti_qspi: Fix conversion of address to a pointer

In reply to Lokesh Vutla
Quoted 8 lines · Lokesh Vutla

TI QSPI 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")

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20160307/463cfac2/attachment.sig>
#3 lore raw

PATCH 1/1 dm: ti_qspi: Fix conversion of address to a pointer

In reply to Lokesh Vutla
Quoted 8 lines · Lokesh Vutla

TI QSPI 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")

Regards
Mugunthan V N