Hi Sakari/Bingbu, Em Thu, 13 Dec 2018 14:03:40 +0200 sakari.ailus@xxxxxx escreveu: > Hi Mauro, > > Here's the ipu3 staging driver plus the META_OUTPUT buffer type needed to > pass the parameters for the device. If you think this there's still time to > get this to 4.21, then please pull. The non-staging patches have been > around for more than half a year and they're relatively simple. I'm now getting a lot of new warnings when building it: drivers/staging/media/ipu3/ipu3-dmamap.c:drivers/staging/media/ipu3/ipu3-dmamap.c:97:6: warning: symbol 'ipu3_dmamap_alloc' was not declared. Should it be static? drivers/staging/media/ipu3/ipu3-dmamap.c:drivers/staging/media/ipu3/ipu3-dmamap.c:166:6: warning: symbol 'ipu3_dmamap_unmap' was not declared. Should it be static? drivers/staging/media/ipu3/ipu3-dmamap.c:drivers/staging/media/ipu3/ipu3-dmamap.c:184:6: warning: symbol 'ipu3_dmamap_free' was not declared. Should it be static? drivers/staging/media/ipu3/ipu3-dmamap.c:drivers/staging/media/ipu3/ipu3-dmamap.c:204:5: warning: symbol 'ipu3_dmamap_map_sg' was not declared. Should it be static? drivers/staging/media/ipu3/ipu3-dmamap.c:drivers/staging/media/ipu3/ipu3-dmamap.c:251:5: warning: symbol 'ipu3_dmamap_init' was not declared. Should it be static? drivers/staging/media/ipu3/ipu3-dmamap.c:drivers/staging/media/ipu3/ipu3-dmamap.c:266:6: warning: symbol 'ipu3_dmamap_exit' was not declared. Should it be static? In file included from drivers/staging/media/ipu3/ipu3-abi.h:7, from drivers/staging/media/ipu3/ipu3-css.h:10, from drivers/staging/media/ipu3/ipu3.h:14, from drivers/staging/media/ipu3/ipu3-css-pool.c:6: drivers/staging/media/ipu3/include/intel-ipu3.h:2481:35: warning: 'awb_fr' offset 36756 in 'struct ipu3_uapi_acc_param' isn't aligned to 32 [-Wpacked-not-aligned] struct ipu3_uapi_awb_fr_config_s awb_fr; ^~~~~~ In file included from drivers/staging/media/ipu3/ipu3-css.h:10, from drivers/staging/media/ipu3/ipu3.h:14, from drivers/staging/media/ipu3/ipu3-css-pool.c:6: drivers/staging/media/ipu3/ipu3-abi.h:1250:1: warning: alignment 1 of 'struct imgu_abi_awb_fr_config' is less than 32 [-Wpacked-not-aligned] } __packed; ^ drivers/staging/media/ipu3/ipu3-mmu.c:247: warning: Function parameter or member 'pgsize_bitmap' not described in 'ipu3_mmu_pgsize' drivers/staging/media/ipu3/ipu3-mmu.c:247: warning: Function parameter or member 'addr_merge' not described in 'ipu3_mmu_pgsize' drivers/staging/media/ipu3/ipu3-mmu.c:247: warning: Function parameter or member 'size' not described in 'ipu3_mmu_pgsize' drivers/staging/media/ipu3/ipu3-mmu.c:452: warning: Function parameter or member 'parent' not described in 'ipu3_mmu_init' drivers/staging/media/ipu3/ipu3-mmu.c:528: warning: Function parameter or member 'info' not described in 'ipu3_mmu_exit' drivers/staging/media/ipu3/ipu3-mmu.c:528: warning: Excess function parameter 'mmu' description in 'ipu3_mmu_exit' In file included from drivers/staging/media/ipu3/ipu3-abi.h:7, from drivers/staging/media/ipu3/ipu3-css.h:10, from drivers/staging/media/ipu3/ipu3-css-fw.c:9: drivers/staging/media/ipu3/include/intel-ipu3.h:2481:35: warning: 'awb_fr' offset 36756 in 'struct ipu3_uapi_acc_param' isn't aligned to 32 [-Wpacked-not-aligned] struct ipu3_uapi_awb_fr_config_s awb_fr; ^~~~~~ In file included from drivers/staging/media/ipu3/ipu3-css.h:10, from drivers/staging/media/ipu3/ipu3-css-fw.c:9: drivers/staging/media/ipu3/ipu3-abi.h:1250:1: warning: alignment 1 of 'struct imgu_abi_awb_fr_config' is less than 32 [-Wpacked-not-aligned] } __packed; ^ drivers/staging/media/ipu3/ipu3-css-fw.c: In function 'ipu3_css_fw_init': drivers/staging/media/ipu3/ipu3-css-fw.c:203:39: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits] if (bi->info.isp.output_formats[j] < 0 || ^ drivers/staging/media/ipu3/ipu3-css-fw.c:208:35: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits] if (bi->info.isp.vf_formats[j] < 0 || ^ drivers/staging/media/ipu3/ipu3-css.c: drivers/staging/media/ipu3/ipu3-css.c:1831 ipu3_css_fmt_try() warn: unsigned 'css->pipes[pipe].bindex' is never less than zero. In file included from drivers/staging/media/ipu3/ipu3-abi.h:7, from drivers/staging/media/ipu3/ipu3-css.h:10, from drivers/staging/media/ipu3/ipu3.h:14, from drivers/staging/media/ipu3/ipu3-dmamap.c:12: drivers/staging/media/ipu3/include/intel-ipu3.h:2481:35: warning: 'awb_fr' offset 36756 in 'struct ipu3_uapi_acc_param' isn't aligned to 32 [-Wpacked-not-aligned] struct ipu3_uapi_awb_fr_config_s awb_fr; ^~~~~~ In file included from drivers/staging/media/ipu3/ipu3-css.h:10, from drivers/staging/media/ipu3/ipu3.h:14, from drivers/staging/media/ipu3/ipu3-dmamap.c:12: drivers/staging/media/ipu3/ipu3-abi.h:1250:1: warning: alignment 1 of 'struct imgu_abi_awb_fr_config' is less than 32 [-Wpacked-not-aligned] } __packed; ^ drivers/staging/media/ipu3/ipu3-dmamap.c:97:7: warning: no previous prototype for 'ipu3_dmamap_alloc' [-Wmissing-prototypes] void *ipu3_dmamap_alloc(struct imgu_device *imgu, struct ipu3_css_map *map, ^~~~~~~~~~~~~~~~~ drivers/staging/media/ipu3/ipu3-dmamap.c:166:6: warning: no previous prototype for 'ipu3_dmamap_unmap' [-Wmissing-prototypes] void ipu3_dmamap_unmap(struct imgu_device *imgu, struct ipu3_css_map *map) ^~~~~~~~~~~~~~~~~ drivers/staging/media/ipu3/ipu3-dmamap.c:184:6: warning: no previous prototype for 'ipu3_dmamap_free' [-Wmissing-prototypes] void ipu3_dmamap_free(struct imgu_device *imgu, struct ipu3_css_map *map) ^~~~~~~~~~~~~~~~ drivers/staging/media/ipu3/ipu3-dmamap.c:204:5: warning: no previous prototype for 'ipu3_dmamap_map_sg' [-Wmissing-prototypes] int ipu3_dmamap_map_sg(struct imgu_device *imgu, struct scatterlist *sglist, ^~~~~~~~~~~~~~~~~~ drivers/staging/media/ipu3/ipu3-dmamap.c:251:5: warning: no previous prototype for 'ipu3_dmamap_init' [-Wmissing-prototypes] int ipu3_dmamap_init(struct imgu_device *imgu) ^~~~~~~~~~~~~~~~ drivers/staging/media/ipu3/ipu3-dmamap.c:266:6: warning: no previous prototype for 'ipu3_dmamap_exit' [-Wmissing-prototypes] void ipu3_dmamap_exit(struct imgu_device *imgu) ^~~~~~~~~~~~~~~~ In file included from drivers/staging/media/ipu3/ipu3-abi.h:7, from drivers/staging/media/ipu3/ipu3-css.h:10, from drivers/staging/media/ipu3/ipu3-css.c:7: drivers/staging/media/ipu3/include/intel-ipu3.h:2481:35: warning: 'awb_fr' offset 36756 in 'struct ipu3_uapi_acc_param' isn't aligned to 32 [-Wpacked-not-aligned] struct ipu3_uapi_awb_fr_config_s awb_fr; ^~~~~~ In file included from drivers/staging/media/ipu3/ipu3-css.h:10, from drivers/staging/media/ipu3/ipu3-css.c:7: drivers/staging/media/ipu3/ipu3-abi.h:1250:1: warning: alignment 1 of 'struct imgu_abi_awb_fr_config' is less than 32 [-Wpacked-not-aligned] } __packed; ^ drivers/staging/media/ipu3/ipu3-css.c: In function 'ipu3_css_fmt_try': drivers/staging/media/ipu3/ipu3-css.c:1831:30: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits] if (css->pipes[pipe].bindex < 0) { ^ In file included from drivers/staging/media/ipu3/ipu3-abi.h:7, from drivers/staging/media/ipu3/ipu3-css.h:10, from drivers/staging/media/ipu3/ipu3.h:14, from drivers/staging/media/ipu3/ipu3.c:15: drivers/staging/media/ipu3/include/intel-ipu3.h:2481:35: warning: 'awb_fr' offset 36756 in 'struct ipu3_uapi_acc_param' isn't aligned to 32 [-Wpacked-not-aligned] struct ipu3_uapi_awb_fr_config_s awb_fr; ^~~~~~ In file included from drivers/staging/media/ipu3/ipu3-css.h:10, from drivers/staging/media/ipu3/ipu3.h:14, from drivers/staging/media/ipu3/ipu3.c:15: drivers/staging/media/ipu3/ipu3-abi.h:1250:1: warning: alignment 1 of 'struct imgu_abi_awb_fr_config' is less than 32 [-Wpacked-not-aligned] } __packed; ^ In file included from drivers/staging/media/ipu3/ipu3-abi.h:7, from drivers/staging/media/ipu3/ipu3-css.h:10, from drivers/staging/media/ipu3/ipu3.h:14, from drivers/staging/media/ipu3/ipu3-v4l2.c:10: drivers/staging/media/ipu3/include/intel-ipu3.h:2481:35: warning: 'awb_fr' offset 36756 in 'struct ipu3_uapi_acc_param' isn't aligned to 32 [-Wpacked-not-aligned] struct ipu3_uapi_awb_fr_config_s awb_fr; ^~~~~~ In file included from drivers/staging/media/ipu3/ipu3-css.h:10, from drivers/staging/media/ipu3/ipu3.h:14, from drivers/staging/media/ipu3/ipu3-v4l2.c:10: drivers/staging/media/ipu3/ipu3-abi.h:1250:1: warning: alignment 1 of 'struct imgu_abi_awb_fr_config' is less than 32 [-Wpacked-not-aligned] } __packed; ^ drivers/staging/media/ipu3/ipu3-css-params.c:drivers/staging/media/ipu3/ipu3-css-params.c:1947:5: warning: symbol 'ipu3_css_cfg_acc' was not declared. Should it be static? drivers/staging/media/ipu3/ipu3-css-params.c:drivers/staging/media/ipu3/ipu3-css-params.c:2725:5: warning: symbol 'ipu3_css_cfg_vmem0' was not declared. Should it be static? drivers/staging/media/ipu3/ipu3-css-params.c:drivers/staging/media/ipu3/ipu3-css-params.c:2804:5: warning: symbol 'ipu3_css_cfg_dmem0' was not declared. Should it be static? drivers/staging/media/ipu3/ipu3-css-params.c:drivers/staging/media/ipu3/ipu3-css-params.c:2856:6: warning: symbol 'ipu3_css_cfg_gdc_table' was not declared. Should it be static? In file included from drivers/staging/media/ipu3/ipu3-abi.h:7, from drivers/staging/media/ipu3/ipu3-css.h:10, from drivers/staging/media/ipu3/ipu3-css-params.c:6: drivers/staging/media/ipu3/include/intel-ipu3.h:2481:35: warning: 'awb_fr' offset 36756 in 'struct ipu3_uapi_acc_param' isn't aligned to 32 [-Wpacked-not-aligned] struct ipu3_uapi_awb_fr_config_s awb_fr; ^~~~~~ In file included from drivers/staging/media/ipu3/ipu3-css.h:10, from drivers/staging/media/ipu3/ipu3-css-params.c:6: drivers/staging/media/ipu3/ipu3-abi.h:1250:1: warning: alignment 1 of 'struct imgu_abi_awb_fr_config' is less than 32 [-Wpacked-not-aligned] } __packed; ^ drivers/staging/media/ipu3/ipu3-css-params.c:1947:5: warning: no previous prototype for 'ipu3_css_cfg_acc' [-Wmissing-prototypes] int ipu3_css_cfg_acc(struct ipu3_css *css, unsigned int pipe, ^~~~~~~~~~~~~~~~ drivers/staging/media/ipu3/ipu3-css-params.c:2725:5: warning: no previous prototype for 'ipu3_css_cfg_vmem0' [-Wmissing-prototypes] int ipu3_css_cfg_vmem0(struct ipu3_css *css, unsigned int pipe, ^~~~~~~~~~~~~~~~~~ drivers/staging/media/ipu3/ipu3-css-params.c:2804:5: warning: no previous prototype for 'ipu3_css_cfg_dmem0' [-Wmissing-prototypes] int ipu3_css_cfg_dmem0(struct ipu3_css *css, unsigned int pipe, ^~~~~~~~~~~~~~~~~~ drivers/staging/media/ipu3/ipu3-css-params.c:2856:6: warning: no previous prototype for 'ipu3_css_cfg_gdc_table' [-Wmissing-prototypes] void ipu3_css_cfg_gdc_table(struct imgu_abi_gdc_warp_param *gdc, ^~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/staging/media/ipu3/ipu3-abi.h:7, from drivers/staging/media/ipu3/ipu3-tables.h:7, from drivers/staging/media/ipu3/ipu3-tables.c:4: drivers/staging/media/ipu3/include/intel-ipu3.h:2481:35: warning: 'awb_fr' offset 36756 in 'struct ipu3_uapi_acc_param' isn't aligned to 32 [-Wpacked-not-aligned] struct ipu3_uapi_awb_fr_config_s awb_fr; ^~~~~~ In file included from drivers/staging/media/ipu3/ipu3-tables.h:7, from drivers/staging/media/ipu3/ipu3-tables.c:4: drivers/staging/media/ipu3/ipu3-abi.h:1250:1: warning: alignment 1 of 'struct imgu_abi_awb_fr_config' is less than 32 [-Wpacked-not-aligned] } __packed; ^ Could you please send ASAP a patch series fixing them? Thanks, Mauro