linux_dsm_epyc7002/drivers/soc/fsl
Arnd Bergmann 0666e3c481 soc: fsl: dpio: fix incorrect pointer conversions
Building dpio for 32 bit shows a new compiler warning from converting
a pointer to a u64:

drivers/soc/fsl/dpio/qbman-portal.c: In function 'qbman_swp_enqueue_multiple_desc_direct':
drivers/soc/fsl/dpio/qbman-portal.c:870:14: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
  870 |  addr_cena = (uint64_t)s->addr_cena;

The variable is not used anywhere, so removing the assignment seems
to be the correct workaround. After spotting what seemed to be
some confusion about address spaces, I ran the file through sparse,
which showed more warnings:

drivers/soc/fsl/dpio/qbman-portal.c:756:42: warning: incorrect type in argument 1 (different address spaces)
drivers/soc/fsl/dpio/qbman-portal.c:756:42:    expected void const volatile [noderef] <asn:2> *addr
drivers/soc/fsl/dpio/qbman-portal.c:756:42:    got unsigned int [usertype] *[assigned] p
drivers/soc/fsl/dpio/qbman-portal.c:902:42: warning: incorrect type in argument 1 (different address spaces)
drivers/soc/fsl/dpio/qbman-portal.c:902:42:    expected void const volatile [noderef] <asn:2> *addr
drivers/soc/fsl/dpio/qbman-portal.c:902:42:    got unsigned int [usertype] *[assigned] p

Here, the problem is passing a token from memremap() into __raw_readl(),
which is only defined to work on MMIO addresses but not RAM. Turning
this into a simple pointer dereference avoids this warning as well.

Link: https://lore.kernel.org/r/20200408185904.460563-1-arnd@arndb.de
Fixes: 3b2abda7d2 ("soc: fsl: dpio: Replace QMAN array mode with ring mode enqueue")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2020-04-17 16:34:01 +02:00
..
dpio soc: fsl: dpio: fix incorrect pointer conversions 2020-04-17 16:34:01 +02:00
qbman dpaa_eth: register a device link for the qman portal used 2019-10-31 12:13:34 -07:00
qe soc: fsl: qe: fix sparse warnings for ucc_slow.c 2020-03-24 19:09:40 -05:00
dpaa2-console.c soc: fsl: fix spelling mistake "Firmaware" -> "Firmware" 2019-05-29 15:52:10 -05:00
guts.c soc: fsl: guts: Add definition for LS1028A 2019-08-15 16:43:59 -05:00
Kconfig soc: fsl: add RCPM driver 2019-11-12 15:26:05 -06:00
Makefile soc: fsl: add RCPM driver 2019-11-12 15:26:05 -06:00
rcpm.c soc: fsl: add RCPM driver 2019-11-12 15:26:05 -06:00