Hi Neil, I love your patch! Perhaps something to improve: [auto build test WARNING on linus/master] [also build test WARNING on v5.5 next-20200207] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system. BTW, we also suggest to use '--base' option to specify the base tree in git format-patch, please see https://stackoverflow.com/a/37406982] url: https://github.com/0day-ci/linux/commits/Neil-Armstrong/drm-bridge-dw-hdmi-implement-bus-format-negotiation-and-YUV420-support/20200209-150729 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git d4f309ca411887cd61ea389c7abfb70c2eb1e532 config: xtensa-allyesconfig (attached as .config) compiler: xtensa-linux-gcc (GCC) 7.5.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree GCC_VERSION=7.5.0 make.cross ARCH=xtensa If you fix the issue, kindly add following tag Reported-by: kbuild test robot All warnings (new ones prefixed by >>): drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2413:13: warning: 'struct drm_bridge_state' declared inside parameter list will not be visible outside of this definition or declaration struct drm_bridge_state *bridge_state, ^~~~~~~~~~~~~~~~ drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2532:13: warning: 'struct drm_bridge_state' declared inside parameter list will not be visible outside of this definition or declaration struct drm_bridge_state *bridge_state, ^~~~~~~~~~~~~~~~ drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2630:19: warning: 'struct drm_bridge_state' declared inside parameter list will not be visible outside of this definition or declaration struct drm_bridge_state *bridge_state, ^~~~~~~~~~~~~~~~ In file included from include/linux/printk.h:331:0, from include/linux/kernel.h:15, from include/linux/clk.h:13, from drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:9: drivers/gpu/drm/bridge/synopsys/dw-hdmi.c: In function 'dw_hdmi_bridge_atomic_check': drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2637:16: error: dereferencing pointer to incomplete type 'struct drm_bridge_state' bridge_state->output_bus_cfg.format); ^ include/linux/dynamic_debug.h:125:15: note: in definition of macro '__dynamic_func_call' func(&id, ##__VA_ARGS__); \ ^~~~~~~~~~~ include/linux/dynamic_debug.h:157:2: note: in expansion of macro '_dynamic_func_call' _dynamic_func_call(fmt,__dynamic_dev_dbg, \ ^~~~~~~~~~~~~~~~~~ include/linux/dev_printk.h:114:2: note: in expansion of macro 'dynamic_dev_dbg' dynamic_dev_dbg(dev, dev_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~~~~~~~ >> drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2636:2: note: in expansion of macro 'dev_dbg' dev_dbg(hdmi->dev, "selected output format %x\n", ^~~~~~~ drivers/gpu/drm/bridge/synopsys/dw-hdmi.c: At top level: drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2757:3: error: 'const struct drm_bridge_funcs' has no member named 'atomic_duplicate_state'; did you mean 'atomic_pre_enable'? .atomic_duplicate_state = drm_atomic_helper_bridge_duplicate_state, ^~~~~~~~~~~~~~~~~~~~~~ atomic_pre_enable drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2757:28: error: 'drm_atomic_helper_bridge_duplicate_state' undeclared here (not in a function); did you mean 'drm_atomic_helper_plane_duplicate_state'? .atomic_duplicate_state = drm_atomic_helper_bridge_duplicate_state, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drm_atomic_helper_plane_duplicate_state drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2758:3: error: 'const struct drm_bridge_funcs' has no member named 'atomic_destroy_state'; did you mean 'atomic_post_disable'? .atomic_destroy_state = drm_atomic_helper_bridge_destroy_state, ^~~~~~~~~~~~~~~~~~~~ atomic_post_disable drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2758:26: error: 'drm_atomic_helper_bridge_destroy_state' undeclared here (not in a function); did you mean 'drm_atomic_helper_plane_destroy_state'? .atomic_destroy_state = drm_atomic_helper_bridge_destroy_state, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drm_atomic_helper_plane_destroy_state drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2759:3: error: 'const struct drm_bridge_funcs' has no member named 'atomic_reset'; did you mean 'atomic_enable'? .atomic_reset = drm_atomic_helper_bridge_reset, ^~~~~~~~~~~~ atomic_enable drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2759:18: error: 'drm_atomic_helper_bridge_reset' undeclared here (not in a function); did you mean 'drm_atomic_helper_plane_reset'? .atomic_reset = drm_atomic_helper_bridge_reset, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drm_atomic_helper_plane_reset drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2762:3: error: 'const struct drm_bridge_funcs' has no member named 'atomic_check'; did you mean 'atomic_enable'? .atomic_check = dw_hdmi_bridge_atomic_check, ^~~~~~~~~~~~ atomic_enable drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2762:18: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] .atomic_check = dw_hdmi_bridge_atomic_check, ^~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2762:18: note: (near initialization for 'dw_hdmi_bridge_funcs.mode_valid') drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2763:3: error: 'const struct drm_bridge_funcs' has no member named 'atomic_get_output_bus_fmts' .atomic_get_output_bus_fmts = dw_hdmi_bridge_atomic_get_output_bus_fmts, ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2763:32: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] .atomic_get_output_bus_fmts = dw_hdmi_bridge_atomic_get_output_bus_fmts, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2763:32: note: (near initialization for 'dw_hdmi_bridge_funcs.mode_fixup') drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2764:3: error: 'const struct drm_bridge_funcs' has no member named 'atomic_get_input_bus_fmts' .atomic_get_input_bus_fmts = dw_hdmi_bridge_atomic_get_input_bus_fmts, ^~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2764:31: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] .atomic_get_input_bus_fmts = dw_hdmi_bridge_atomic_get_input_bus_fmts, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2764:31: note: (near initialization for 'dw_hdmi_bridge_funcs.disable') cc1: some warnings being treated as errors vim +/dev_dbg +2636 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c 2628 2629 static int dw_hdmi_bridge_atomic_check(struct drm_bridge *bridge, 2630 struct drm_bridge_state *bridge_state, 2631 struct drm_crtc_state *crtc_state, 2632 struct drm_connector_state *conn_state) 2633 { 2634 struct dw_hdmi *hdmi = bridge->driver_private; 2635 > 2636 dev_dbg(hdmi->dev, "selected output format %x\n", 2637 bridge_state->output_bus_cfg.format); 2638 2639 hdmi->hdmi_data.enc_out_bus_format = 2640 bridge_state->output_bus_cfg.format; 2641 2642 dev_dbg(hdmi->dev, "selected input format %x\n", 2643 bridge_state->input_bus_cfg.format); 2644 2645 hdmi->hdmi_data.enc_in_bus_format = 2646 bridge_state->input_bus_cfg.format; 2647 2648 return 0; 2649 } 2650 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org