On Wed, May 10, 2023 at 2:39 PM Simon Horman <horms@xxxxxxxxxx> wrote: > > Rather than casting mmc_free_host to an incompatible function type, > provide a trivial wrapper with the correct signature for the use-case. > > Reported by clang-16 with W=1: > > .../meson-mx-sdhc-mmc.c:791:38: error: cast from 'void (*)(struct mmc_host *)' to 'void (*)(void *)' converts to incompatible function type [-Werror,-Wcast-function-type-strict] > ret = devm_add_action_or_reset(dev, (void(*)(void *))mmc_free_host, > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ./include/linux/device.h:265:38: note: expanded from macro 'devm_add_action_or_reset' > __devm_add_action_or_reset(release, action, data, #action) > ^~~~~~ > > The same approach is taken in litex_mmc.c with the function > litex_mmc_free_host_wrapper(). There may be scope for consolidation. > > No functional change intended. > Compile tested only. > > Signed-off-by: Simon Horman <horms@xxxxxxxxxx> Reviewed-by: Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx>