Message ID | 1525686177-49276-1-git-send-email-ley.foon.tan@intel.com |
---|---|
State | Accepted |
Commit | 6c353674bd5219b1129e29d16484eb540e0d3925 |
Delegated to: | Jagannadha Sutradharudu Teki |
Headers | show |
Series | [U-Boot] spi: cadence_qspi: Change to use devfdt_get_addr_index() | expand |
On Mon, May 7, 2018 at 3:12 PM, Ley Foon Tan <ley.foon.tan@intel.com> wrote: > Change to use devfdt_get_addr_index() function to get fdt address. > > Original code has compilation warning below: > > drivers/spi/cadence_qspi.c: In function ‘cadence_spi_ofdata_to_platdata’: > drivers/spi/cadence_qspi.c:297:18: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > plat->regbase = (void *)data[0]; > ^ > drivers/spi/cadence_qspi.c:298:18: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > plat->ahbbase = (void *)data[2]; was this a coverage-tool check, I didn't see any warning with arm compiler? make socfpga_arria5_defconfig && make
On Wed, May 16, 2018 at 9:33 PM, Jagan Teki <jagannadh.teki@gmail.com> wrote: > On Mon, May 7, 2018 at 3:12 PM, Ley Foon Tan <ley.foon.tan@intel.com> wrote: >> Change to use devfdt_get_addr_index() function to get fdt address. >> >> Original code has compilation warning below: >> >> drivers/spi/cadence_qspi.c: In function ‘cadence_spi_ofdata_to_platdata’: >> drivers/spi/cadence_qspi.c:297:18: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] >> plat->regbase = (void *)data[0]; >> ^ >> drivers/spi/cadence_qspi.c:298:18: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] >> plat->ahbbase = (void *)data[2]; > > was this a coverage-tool check, I didn't see any warning with arm > compiler? make socfpga_arria5_defconfig && make This error came up if compile with ARM 64bit (aarch64-linux-gnu-). Regards Ley Foon
On 05/07/2018 11:42 AM, Ley Foon Tan wrote: > Change to use devfdt_get_addr_index() function to get fdt address. > > Original code has compilation warning below: > > drivers/spi/cadence_qspi.c: In function ‘cadence_spi_ofdata_to_platdata’: > drivers/spi/cadence_qspi.c:297:18: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > plat->regbase = (void *)data[0]; > ^ > drivers/spi/cadence_qspi.c:298:18: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > plat->ahbbase = (void *)data[2]; > ^ > Signed-off-by: Ley Foon Tan <ley.foon.tan@intel.com> Acked-by: Marek Vasut <marex@denx.de> > --- > drivers/spi/cadence_qspi.c | 13 ++----------- > 1 files changed, 2 insertions(+), 11 deletions(-) > > diff --git a/drivers/spi/cadence_qspi.c b/drivers/spi/cadence_qspi.c > index 7b312f8..f80d073 100644 > --- a/drivers/spi/cadence_qspi.c > +++ b/drivers/spi/cadence_qspi.c > @@ -284,18 +284,9 @@ static int cadence_spi_ofdata_to_platdata(struct udevice *bus) > const void *blob = gd->fdt_blob; > int node = dev_of_offset(bus); > int subnode; > - u32 data[4]; > - int ret; > > - /* 2 base addresses are needed, lets get them from the DT */ > - ret = fdtdec_get_int_array(blob, node, "reg", data, ARRAY_SIZE(data)); > - if (ret) { > - printf("Error: Can't get base addresses (ret=%d)!\n", ret); > - return -ENODEV; > - } > - > - plat->regbase = (void *)data[0]; > - plat->ahbbase = (void *)data[2]; > + plat->regbase = (void *)devfdt_get_addr_index(bus, 0); > + plat->ahbbase = (void *)devfdt_get_addr_index(bus, 1); > plat->is_decoded_cs = fdtdec_get_bool(blob, node, "cdns,is-decoded-cs"); > plat->fifo_depth = fdtdec_get_uint(blob, node, "cdns,fifo-depth", 128); > plat->fifo_width = fdtdec_get_uint(blob, node, "cdns,fifo-width", 4); >
On Mon, May 7, 2018 at 3:12 PM, Ley Foon Tan <ley.foon.tan@intel.com> wrote: > Change to use devfdt_get_addr_index() function to get fdt address. > > Original code has compilation warning below: > > drivers/spi/cadence_qspi.c: In function ‘cadence_spi_ofdata_to_platdata’: > drivers/spi/cadence_qspi.c:297:18: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > plat->regbase = (void *)data[0]; > ^ > drivers/spi/cadence_qspi.c:298:18: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > plat->ahbbase = (void *)data[2]; > ^ > Signed-off-by: Ley Foon Tan <ley.foon.tan@intel.com> > --- Reviewed-by: Jagan Teki <jagan@openedev.com> Applied to u-boot-spi/master
diff --git a/drivers/spi/cadence_qspi.c b/drivers/spi/cadence_qspi.c index 7b312f8..f80d073 100644 --- a/drivers/spi/cadence_qspi.c +++ b/drivers/spi/cadence_qspi.c @@ -284,18 +284,9 @@ static int cadence_spi_ofdata_to_platdata(struct udevice *bus) const void *blob = gd->fdt_blob; int node = dev_of_offset(bus); int subnode; - u32 data[4]; - int ret; - /* 2 base addresses are needed, lets get them from the DT */ - ret = fdtdec_get_int_array(blob, node, "reg", data, ARRAY_SIZE(data)); - if (ret) { - printf("Error: Can't get base addresses (ret=%d)!\n", ret); - return -ENODEV; - } - - plat->regbase = (void *)data[0]; - plat->ahbbase = (void *)data[2]; + plat->regbase = (void *)devfdt_get_addr_index(bus, 0); + plat->ahbbase = (void *)devfdt_get_addr_index(bus, 1); plat->is_decoded_cs = fdtdec_get_bool(blob, node, "cdns,is-decoded-cs"); plat->fifo_depth = fdtdec_get_uint(blob, node, "cdns,fifo-depth", 128); plat->fifo_width = fdtdec_get_uint(blob, node, "cdns,fifo-width", 4);
Change to use devfdt_get_addr_index() function to get fdt address. Original code has compilation warning below: drivers/spi/cadence_qspi.c: In function ‘cadence_spi_ofdata_to_platdata’: drivers/spi/cadence_qspi.c:297:18: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] plat->regbase = (void *)data[0]; ^ drivers/spi/cadence_qspi.c:298:18: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] plat->ahbbase = (void *)data[2]; ^ Signed-off-by: Ley Foon Tan <ley.foon.tan@intel.com> --- drivers/spi/cadence_qspi.c | 13 ++----------- 1 files changed, 2 insertions(+), 11 deletions(-)