| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165 | 
							- From ed4422e98ababf956674da3438ac42b3aa32c66e Mon Sep 17 00:00:00 2001
 
- From: Christian Marangi <[email protected]>
 
- Date: Wed, 10 May 2023 00:41:06 +0200
 
- Subject: [PATCH] Fix compilation warning with 64 bit system
 
- Use %zu and %zd where possible for ssize_t and size_t.
 
- Use PTR_ERR to correctly convert to negative error.
 
- Use universal pointer to support both 32 and 64bit systems.
 
- Fix compilation warning:
 
- /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/fwcmd.c: In function 'mwl_fwcmd_get_fw_core_dump':
 
- /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/fwcmd.c:3608:31: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast]
 
-  3608 |                (const void *)((u32)pcmd +
 
-       |                               ^
 
- In file included from ./include/linux/device.h:15,
 
-                  from /home/ansuel/openwrt-ansuel/openwrt/staging_dir/target-aarch64_cortex-a53_musl/usr/include/mac80211-backport/linux/device.h:3,
 
-                  from ./include/linux/dma-mapping.h:7,
 
-                  from /home/ansuel/openwrt-ansuel/openwrt/staging_dir/target-aarch64_cortex-a53_musl/usr/include/mac80211-backport/linux/dma-mapping.h:3,
 
-                  from ./include/linux/skbuff.h:31,
 
-                  from /home/ansuel/openwrt-ansuel/openwrt/staging_dir/target-aarch64_cortex-a53_musl/usr/include/mac80211-backport/linux/skbuff.h:3,
 
-                  from ./include/linux/if_ether.h:19,
 
-                  from /home/ansuel/openwrt-ansuel/openwrt/staging_dir/target-aarch64_cortex-a53_musl/usr/include/mac80211-backport/linux/if_ether.h:3,
 
-                  from ./include/linux/etherdevice.h:20,
 
-                  from /home/ansuel/openwrt-ansuel/openwrt/staging_dir/target-aarch64_cortex-a53_musl/usr/include/mac80211-backport/linux/etherdevice.h:3,
 
-                  from /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/pcie/tx_ndp.c:20:
 
- /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/pcie/tx_ndp.c: In function 'pcie_tx_init_ndp':
 
- /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/pcie/tx_ndp.c:338:38: error: format '%d' expects argument of type 'int', but argument 3 has type 'long unsigned int' [-Werror=format=]
 
-   338 |                 wiphy_err(hw->wiphy, "driver data is not enough: %d (%d)\n",
 
-       |                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
- ./include/linux/dev_printk.h:110:30: note: in definition of macro 'dev_printk_index_wrap'
 
-   110 |                 _p_func(dev, fmt, ##__VA_ARGS__);                       \
 
-       |                              ^~~
 
- ./include/linux/dev_printk.h:144:56: note: in expansion of macro 'dev_fmt'
 
-   144 |         dev_printk_index_wrap(_dev_err, KERN_ERR, dev, dev_fmt(fmt), ##__VA_ARGS__)
 
-       |                                                        ^~~~~~~
 
- /home/ansuel/openwrt-ansuel/openwrt/staging_dir/target-aarch64_cortex-a53_musl/usr/include/mac80211/net/cfg80211.h:8828:9: note: in expansion of macro 'dev_err'
 
-  8828 |         dev_err(&(wiphy)->dev, format, ##args)
 
-       |         ^~~~~~~
 
- /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/pcie/tx_ndp.c:338:17: note: in expansion of macro 'wiphy_err'
 
-   338 |                 wiphy_err(hw->wiphy, "driver data is not enough: %d (%d)\n",
 
-       |                 ^~~~~~~~~
 
- /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/pcie/tx_ndp.c:338:67: note: format string is defined here
 
-   338 |                 wiphy_err(hw->wiphy, "driver data is not enough: %d (%d)\n",
 
-       |                                                                  ~^
 
-       |                                                                   |
 
-       |                                                                   int
 
-       |                                                                  %ld
 
- /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/pcie/tx_ndp.c:338:38: error: format '%d' expects argument of type 'int', but argument 4 has type 'long unsigned int' [-Werror=format=]
 
-   338 |                 wiphy_err(hw->wiphy, "driver data is not enough: %d (%d)\n",
 
-       |                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
- ./include/linux/dev_printk.h:110:30: note: in definition of macro 'dev_printk_index_wrap'
 
-   110 |                 _p_func(dev, fmt, ##__VA_ARGS__);                       \
 
-       |                              ^~~
 
- ./include/linux/dev_printk.h:144:56: note: in expansion of macro 'dev_fmt'
 
-   144 |         dev_printk_index_wrap(_dev_err, KERN_ERR, dev, dev_fmt(fmt), ##__VA_ARGS__)
 
-       |                                                        ^~~~~~~
 
- /home/ansuel/openwrt-ansuel/openwrt/staging_dir/target-aarch64_cortex-a53_musl/usr/include/mac80211/net/cfg80211.h:8828:9: note: in expansion of macro 'dev_err'
 
-  8828 |         dev_err(&(wiphy)->dev, format, ##args)
 
-       |         ^~~~~~~
 
- /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/pcie/tx_ndp.c:338:17: note: in expansion of macro 'wiphy_err'
 
-   338 |                 wiphy_err(hw->wiphy, "driver data is not enough: %d (%d)\n",
 
-       |                 ^~~~~~~~~
 
- /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/pcie/tx_ndp.c:338:71: note: format string is defined here
 
-   338 |                 wiphy_err(hw->wiphy, "driver data is not enough: %d (%d)\n",
 
-       |                                                                      ~^
 
-       |                                                                       |
 
-       |                                                                       int
 
-       |                                                                      %ld
 
-   CC [M]  /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/debugfs.o
 
- In file included from ./include/linux/device.h:15,
 
-                  from /home/ansuel/openwrt-ansuel/openwrt/staging_dir/target-aarch64_cortex-a53_musl/usr/include/mac80211-backport/linux/device.h:3,
 
-                  from ./include/linux/dma-mapping.h:7,
 
-                  from /home/ansuel/openwrt-ansuel/openwrt/staging_dir/target-aarch64_cortex-a53_musl/usr/include/mac80211-backport/linux/dma-mapping.h:3,
 
-                  from ./include/linux/skbuff.h:31,
 
-                  from /home/ansuel/openwrt-ansuel/openwrt/staging_dir/target-aarch64_cortex-a53_musl/usr/include/mac80211-backport/linux/skbuff.h:3,
 
-                  from ./include/linux/if_ether.h:19,
 
-                  from /home/ansuel/openwrt-ansuel/openwrt/staging_dir/target-aarch64_cortex-a53_musl/usr/include/mac80211-backport/linux/if_ether.h:3,
 
-                  from ./include/linux/etherdevice.h:20,
 
-                  from /home/ansuel/openwrt-ansuel/openwrt/staging_dir/target-aarch64_cortex-a53_musl/usr/include/mac80211-backport/linux/etherdevice.h:3,
 
-                  from /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/pcie/pcie.c:19:
 
- /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/pcie/pcie.c: In function 'pcie_bf_mimo_ctrl_decode':
 
- /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/pcie/pcie.c:1325:37: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast]
 
-  1325 |                           filename, (unsigned int)fp_data);
 
-       |                                     ^
 
- ./include/linux/dev_printk.h:110:37: note: in definition of macro 'dev_printk_index_wrap'
 
-   110 |                 _p_func(dev, fmt, ##__VA_ARGS__);                       \
 
-       |                                     ^~~~~~~~~~~
 
- /home/ansuel/openwrt-ansuel/openwrt/staging_dir/target-aarch64_cortex-a53_musl/usr/include/mac80211/net/cfg80211.h:8828:9: note: in expansion of macro 'dev_err'
 
-  8828 |         dev_err(&(wiphy)->dev, format, ##args)
 
-       |         ^~~~~~~
 
- /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/pcie/pcie.c:1324:17: note: in expansion of macro 'wiphy_err'
 
-  1324 |                 wiphy_err(priv->hw->wiphy, "Error opening %s! %x\n",
 
-       |                 ^~~~~~~~~
 
- cc1: all warnings being treated as errors
 
- make[4]: *** [scripts/Makefile.build:289: /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/pcie/tx_ndp.o] Error 1
 
- make[4]: *** Waiting for unfinished jobs....
 
- cc1: all warnings being treated as errors
 
- make[4]: *** [scripts/Makefile.build:289: /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/hif/pcie/pcie.o] Error 1
 
- /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/debugfs.c: In function 'mwl_debugfs_regrdwr_read':
 
- /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-aarch64_cortex-a53_musl/linux-ipq807x_generic/mwlwifi-2023-04-29-6a436714/debugfs.c:1335:43: error: format '%d' expects argument of type 'int', but argument 4 has type 'ssize_t' {aka 'long int'} [-Werror=format=]
 
-  1335 |                                  "error: %d(%u 0x%08x 0x%08x)\n",
 
-       |                                          ~^
 
-       |                                           |
 
-       |                                           int
 
-       |                                          %ld
 
-  1336 |                                  ret, priv->reg_type, priv->reg_offset,
 
-       |                                  ~~~
 
-       |                                  |
 
-       |                                  ssize_t {aka long int}
 
- cc1: all warnings being treated as errors
 
- Signed-off-by: Christian Marangi <[email protected]>
 
- ---
 
-  debugfs.c              | 2 +-
 
-  hif/fwcmd.c            | 2 +-
 
-  hif/pcie/8964/tx_ndp.c | 2 +-
 
-  hif/pcie/pcie.c        | 4 ++--
 
-  4 files changed, 5 insertions(+), 5 deletions(-)
 
- --- a/debugfs.c
 
- +++ b/debugfs.c
 
- @@ -1342,7 +1342,7 @@ done:
 
-  				 priv->reg_value);
 
-  	else
 
-  		len += scnprintf(p + len, size - len,
 
- -				 "error: %d(%u 0x%08x 0x%08x)\n",
 
- +				 "error: %zd(%u 0x%08x 0x%08x)\n",
 
-  				 ret, priv->reg_type, priv->reg_offset,
 
-  				 priv->reg_value);
 
-  
 
- --- a/hif/fwcmd.c
 
- +++ b/hif/fwcmd.c
 
- @@ -3623,7 +3623,7 @@ int mwl_fwcmd_get_fw_core_dump(struct ie
 
-  	core_dump->size_kb = pcmd->cmd_data.coredump.size_kb;
 
-  	core_dump->flags = pcmd->cmd_data.coredump.flags;
 
-  	memcpy(buff,
 
- -	       (const void *)((u32)pcmd +
 
- +	       (const void *)((uintptr_t)pcmd +
 
-  	       sizeof(struct hostcmd_cmd_get_fw_core_dump) -
 
-  	       sizeof(struct hostcmd_cmd_get_fw_core_dump_)),
 
-  	       MAX_CORE_DUMP_BUFFER);
 
- --- a/hif/pcie/8964/tx_ndp.c
 
- +++ b/hif/pcie/8964/tx_ndp.c
 
- @@ -336,7 +336,7 @@ int pcie_tx_init_ndp(struct ieee80211_hw
 
-  
 
-  	if (sizeof(struct pcie_tx_ctrl_ndp) >
 
-  	    sizeof(tx_info->driver_data)) {
 
- -		wiphy_err(hw->wiphy, "driver data is not enough: %d (%d)\n",
 
- +		wiphy_err(hw->wiphy, "driver data is not enough: %zu (%zu)\n",
 
-  			  sizeof(struct pcie_tx_ctrl_ndp),
 
-  			  sizeof(tx_info->driver_data));
 
-  		return -ENOMEM;
 
- --- a/hif/pcie/pcie.c
 
- +++ b/hif/pcie/pcie.c
 
- @@ -1466,8 +1466,8 @@ static void pcie_bf_mimo_ctrl_decode(struct mwl_priv *priv,
 
-  			       &fp_data->f_pos);
 
-  		filp_close(fp_data, current->files);
 
-  	} else {
 
- -		wiphy_err(priv->hw->wiphy, "Error opening %s! %x\n",
 
- -			  filename, (unsigned int)fp_data);
 
- +		wiphy_err(priv->hw->wiphy, "Error opening %s! %ld\n",
 
- +			  filename, PTR_ERR(fp_data));
 
-  	}
 
-  
 
-  #if LINUX_VERSION_CODE < KERNEL_VERSION(5,10,0)
 
 
  |