Dmitry Antipov <dmantipov@xxxxxxxxx> wrote: > When compiling with clang-18, I've noticed the following: > > drivers/net/wireless/realtek/rtw89/fw.c:389:28: warning: cast to smaller > integer type 'enum rtw89_fw_type' from 'const void *' [-Wvoid-pointer-to-enum-cast] > 389 | enum rtw89_fw_type type = (enum rtw89_fw_type)data; > | ^~~~~~~~~~~~~~~~~~~~~~~~ > drivers/net/wireless/realtek/rtw89/fw.c:569:13: warning: cast to smaller > integer type 'enum rtw89_rf_path' from 'const void *' [-Wvoid-pointer-to-enum-cast] > 569 | rf_path = (enum rtw89_rf_path)data; > | ^~~~~~~~~~~~~~~~~~~~~~~~ > > So avoid brutal everything-to-const-void-and-back casts, introduce > 'union rtw89_fw_element_arg' to pass parameters to element handler > callbacks, and adjust all of the related bits accordingly. Compile > tested only. > > Signed-off-by: Dmitry Antipov <dmantipov@xxxxxxxxx> Patch applied to wireless-next.git, thanks. 7d7b6f2953b3 wifi: rtw89: cleanup firmware elements parsing -- https://patchwork.kernel.org/project/linux-wireless/patch/20231020040940.33154-1-dmantipov@xxxxxxxxx/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches