dm: core: Add dev_get_addr_ptr() to return a pointer to the reg address
authorStefan Roese <sr@denx.de>
Thu, 21 Apr 2016 05:11:34 +0000 (07:11 +0200)
committerHeiko Schocher <hs@denx.de>
Mon, 25 Apr 2016 05:30:16 +0000 (07:30 +0200)
commit28027521be95d27fcb83669e09ce3563bb4dd977
treea44443906fe48409bf8ad117d04ea33b273c2484
parent65341967ce9ef2656c61dcd3126536e8865c349d
dm: core: Add dev_get_addr_ptr() to return a pointer to the reg address

On some platforms (e.g. x86), the return value of dev_get_addr() can't
be assigned to a pointer type variable directly. As there might be a
difference between the size of fdt_addr_t and the pointer type. On
x86 for example, "fdt_addr_t" is 64bit but "void *" only 32bit. So
assigning the register base directly in dev_get_addr() results in this
compilation warning:
  warning: cast to pointer from integer of different size

This patch introduces the new function dev_get_addr_ptr() that
returns a pointer to the 'reg' address that can be used by drivers
in this case.

Signed-off-by: Stefan Roese <sr@denx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
drivers/core/device.c
include/dm/device.h