Messages in this thread | | | Date | Wed, 18 Jan 2023 12:38:53 +0100 | Subject | Re: [PATCH] staging: vchiq_arm: fix enum vchiq_status return types | From | Stefan Wahren <> |
| |
Hi Arnd,
Am 17.01.23 um 17:39 schrieb Arnd Bergmann: > From: Arnd Bergmann <arnd@arndb.de> > > gcc-13 notices a type mismatch between function declaration > and definition for a few functions that have been converted > from returning vchiq specific status values to regular error > codes: > > drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c:662:5: error: conflicting types for 'vchiq_initialise' due to enum/integer mismatch; have 'int(struct vchiq_instance **)' [-Werror=enum-int-mismatch] > drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c:1411:1: error: conflicting types for 'vchiq_use_internal' due to enum/integer mismatch; have 'int(struct vchiq_state *, struct vchiq_service *, enum USE_TYPE_E)' [-Werror=enum-int-mismatch] > drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c:1468:1: error: conflicting types for 'vchiq_release_internal' due to enum/integer mismatch; have 'int(struct vchiq_state *, struct vchiq_service *)' [-Werror=enum-int-mismatch] > > Change the declarations to match the actual function definition. > > Fixes: a9fbd828be7f ("staging: vchiq_arm: drop enum vchiq_status from vchiq_*_internal") > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
thanks for fixing this.
Greg applied a series [1] from Umang which completely removes this enum completely. This series has been applied to today and will likely cause a conflict tomorrow in linux-next.
[1] - https://lore.kernel.org/linux-arm-kernel/ba52e6b4-33ec-622e-00b6-1b098f529a90@ideasonboard.com/T/
> --- > .../staging/vc04_services/include/linux/raspberrypi/vchiq.h | 2 +- > drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.h | 4 ++-- > 2 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/staging/vc04_services/include/linux/raspberrypi/vchiq.h b/drivers/staging/vc04_services/include/linux/raspberrypi/vchiq.h > index db1441c0cc66..690ab7165b2c 100644 > --- a/drivers/staging/vc04_services/include/linux/raspberrypi/vchiq.h > +++ b/drivers/staging/vc04_services/include/linux/raspberrypi/vchiq.h > @@ -86,7 +86,7 @@ struct vchiq_service_params_kernel { > > struct vchiq_instance; > > -extern enum vchiq_status vchiq_initialise(struct vchiq_instance **pinstance); > +extern int vchiq_initialise(struct vchiq_instance **pinstance); > extern enum vchiq_status vchiq_shutdown(struct vchiq_instance *instance); > extern enum vchiq_status vchiq_connect(struct vchiq_instance *instance); > extern enum vchiq_status vchiq_open_service(struct vchiq_instance *instance, > diff --git a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.h b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.h > index 2851ef6b9cd0..cd20eb18f275 100644 > --- a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.h > +++ b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.h > @@ -100,10 +100,10 @@ vchiq_dump_platform_use_state(struct vchiq_state *state); > extern void > vchiq_dump_service_use_state(struct vchiq_state *state); > > -extern enum vchiq_status > +extern int > vchiq_use_internal(struct vchiq_state *state, struct vchiq_service *service, > enum USE_TYPE_E use_type); > -extern enum vchiq_status > +extern int > vchiq_release_internal(struct vchiq_state *state, > struct vchiq_service *service); >
| |