Bläddra i källkod

kernel: ltq-vmmc: fix compilation warning/error

Fix compilation warning enum-int-mismatch which results in failure to
build kmod-ltq-vmmc in case CONFIG_KERNEL_WERROR is set.
.../build_dir/target-mips_24kc_musl/linux-lantiq_xrx200/drv_vmmc-1.9.0/src/mps/drv_mps_vmmc_common.c:392:14: error: conflicting types for 'ifx_mps_fastbuf_init' due to enum/integer mismatch; have 'IFX_return_t(void)' [-Werror=enum-int-mismatch]
  392 | IFX_return_t ifx_mps_fastbuf_init (IFX_void_t)
      |              ^~~~~~~~~~~~~~~~~~~~
.../build_dir/target-mips_24kc_musl/linux-lantiq_xrx200/drv_vmmc-1.9.0/src/mps/drv_mps_vmmc_common.c:120:13: note: previous declaration of 'ifx_mps_fastbuf_init' with type 'IFX_int32_t(void)' {aka 'int(void)'}
  120 | IFX_int32_t ifx_mps_fastbuf_init (IFX_void_t);
      |             ^~~~~~~~~~~~~~~~~~~~
.../build_dir/target-mips_24kc_musl/linux-lantiq_xrx200/drv_vmmc-1.9.0/src/mps/drv_mps_vmmc_common.c:420:14: error: conflicting types for 'ifx_mps_fastbuf_close' due to enum/integer mismatch; have 'IFX_return_t(void)' [-Werror=enum-int-mismatch]
  420 | IFX_return_t ifx_mps_fastbuf_close (IFX_void_t)
      |              ^~~~~~~~~~~~~~~~~~~~~
.../build_dir/target-mips_24kc_musl/linux-lantiq_xrx200/drv_vmmc-1.9.0/src/mps/drv_mps_vmmc_common.c:121:13: note: previous declaration of 'ifx_mps_fastbuf_close' with type 'IFX_int32_t(void)' {aka 'int(void)'}
  121 | IFX_int32_t ifx_mps_fastbuf_close (IFX_void_t);
      |             ^~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors

Refresh patches and bump PKG_RELEASE while at it.

Signed-off-by: Daniel Golle <[email protected]>
Daniel Golle 1 år sedan
förälder
incheckning
000d25c312

+ 1 - 1
package/kernel/lantiq/ltq-vmmc/Makefile

@@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=drv_vmmc
 PKG_VERSION:=1.9.0
-PKG_RELEASE:=4
+PKG_RELEASE:=5
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_HASH:=707f515eb727c032418c4da67d7e86884bb56cdc2a606e8f6ded6057d8767e57

+ 1 - 1
package/kernel/lantiq/ltq-vmmc/patches/600-fix-compilation-warning-fallthrough.patch

@@ -1,6 +1,6 @@
 --- a/src/drv_vmmc_bbd.c
 +++ b/src/drv_vmmc_bbd.c
-@@ -1025,6 +1025,7 @@ static IFX_int32_t vmmc_BBD_WhiteListedCmdWr(VMMC_CHANNEL *pCh,
+@@ -1025,6 +1025,7 @@ static IFX_int32_t vmmc_BBD_WhiteListedC
                 }
              }
           }

+ 26 - 0
package/kernel/lantiq/ltq-vmmc/patches/602-fix-compilation-warning-int-conversion.patch

@@ -0,0 +1,26 @@
+--- a/src/mps/drv_mps_vmmc_common.c
++++ b/src/mps/drv_mps_vmmc_common.c
+@@ -117,8 +117,8 @@ IFX_void_t ifx_mps_mbx_event_upstream (I
+ #endif /* CONFIG_MPS_EVENT_MBX */
+ IFX_void_t *ifx_mps_fastbuf_malloc (IFX_size_t size, IFX_int32_t priority);
+ IFX_void_t ifx_mps_fastbuf_free (const IFX_void_t * ptr);
+-IFX_int32_t ifx_mps_fastbuf_init (IFX_void_t);
+-IFX_int32_t ifx_mps_fastbuf_close (IFX_void_t);
++IFX_return_t ifx_mps_fastbuf_init (IFX_void_t);
++IFX_return_t ifx_mps_fastbuf_close (IFX_void_t);
+ IFX_uint32_t ifx_mps_reset_structures (mps_comm_dev * pDev);
+ IFX_boolean_t ifx_mps_ext_bufman (IFX_void_t);
+ extern IFX_uint32_t danube_get_cpu_ver (IFX_void_t);
+--- a/src/mps/drv_mps_vmmc_device.h
++++ b/src/mps/drv_mps_vmmc_device.h
+@@ -216,8 +216,8 @@ typedef struct /**< mps buffer monitorin
+    mps_buffer_state_e buf_state;
+    IFX_void_t *(*malloc) (IFX_size_t size, IFX_int32_t priority); /**< Buffer alloc function (def. kmalloc) */
+    IFX_void_t (*free) (const IFX_void_t *ptr);  /**< Buffer free  function (def. kfree) */
+-   IFX_int32_t (*init) (IFX_void_t); /** Manager init function */
+-   IFX_int32_t (*close) (IFX_void_t); /** Manager shutdown function */
++   IFX_return_t (*init) (IFX_void_t); /** Manager init function */
++   IFX_return_t (*close) (IFX_void_t); /** Manager shutdown function */
+ } mps_buf_mng_t;
+ 
+ typedef IFX_uint32_t *mem_seg_t[MPS_MAX_PROVISION_SEGMENTS_PER_MSG];