dri-devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: kbuild test robot <lkp@intel.com>
Cc: linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org,
	kbuild-all@01.org, Hans Verkuil <hverkuil-cisco@xs4all.nl>,
	Dariusz Marcinkiewicz <darekm@google.com>,
	Cheng-yi Chiang <cychiang@chromium.org>
Subject: Re: [PATCHv8 09/13] dw-hdmi: use cec_notifier_conn_(un)register
Date: Tue, 25 Jun 2019 08:43:58 +0800	[thread overview]
Message-ID: <201906250822.KejPzkro%lkp@intel.com> (raw)
In-Reply-To: <20190624160330.38048-10-hverkuil-cisco@xs4all.nl>

[-- Attachment #1: Type: text/plain, Size: 11323 bytes --]

Hi Hans,

I love your patch! Yet something to improve:

[auto build test ERROR on linuxtv-media/master]
[also build test ERROR on v5.2-rc6 next-20190621]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Hans-Verkuil/cec-improve-notifier-support-add-connector-info/20190625-043917
base:   git://linuxtv.org/media_tree.git master
config: x86_64-randconfig-x014-201925 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   drivers/gpu/drm/bridge/synopsys/dw-hdmi.c: In function 'dw_hdmi_bridge_attach':
>> drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2154:30: error: passing argument 1 of 'cec_fill_conn_info_from_drm' from incompatible pointer type [-Werror=incompatible-pointer-types]
     cec_fill_conn_info_from_drm(&conn_info, connector);
                                 ^
   In file included from include/media/cec-notifier.h:13:0,
                    from drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:36:
   include/media/cec.h:381:1: note: expected 'const struct drm_connector *' but argument is of type 'struct cec_connector_info *'
    cec_fill_conn_info_from_drm(const struct drm_connector *connector,
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:2154:42: error: passing argument 2 of 'cec_fill_conn_info_from_drm' from incompatible pointer type [-Werror=incompatible-pointer-types]
     cec_fill_conn_info_from_drm(&conn_info, connector);
                                             ^~~~~~~~~
   In file included from include/media/cec-notifier.h:13:0,
                    from drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:36:
   include/media/cec.h:381:1: note: expected 'struct cec_connector_info *' but argument is of type 'struct drm_connector *'
    cec_fill_conn_info_from_drm(const struct drm_connector *connector,
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~
   Cyclomatic Complexity 1 include/linux/err.h:ERR_PTR
   Cyclomatic Complexity 1 include/linux/err.h:PTR_ERR
   Cyclomatic Complexity 1 include/linux/spinlock.h:spinlock_check
   Cyclomatic Complexity 1 include/linux/spinlock.h:spin_lock_irq
   Cyclomatic Complexity 1 include/linux/spinlock.h:spin_unlock_irq
   Cyclomatic Complexity 1 include/linux/spinlock.h:spin_unlock_irqrestore
   Cyclomatic Complexity 1 include/linux/completion.h:reinit_completion
   Cyclomatic Complexity 1 include/linux/kobject.h:kobject_name
   Cyclomatic Complexity 1 include/linux/device.h:dev_get_drvdata
   Cyclomatic Complexity 1 include/linux/device.h:dev_set_drvdata
   Cyclomatic Complexity 1 include/linux/i2c.h:i2c_get_adapdata
   Cyclomatic Complexity 1 include/linux/i2c.h:i2c_set_adapdata
   Cyclomatic Complexity 1 include/drm/drm_modeset_helper_vtables.h:drm_connector_helper_add
   Cyclomatic Complexity 1 include/media/cec-notifier.h:cec_notifier_conn_register
   Cyclomatic Complexity 1 include/media/cec-notifier.h:cec_notifier_conn_unregister
   Cyclomatic Complexity 1 include/media/cec-notifier.h:cec_notifier_set_phys_addr
   Cyclomatic Complexity 1 include/media/cec-notifier.h:cec_notifier_set_phys_addr_from_edid
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_i2c_func
   Cyclomatic Complexity 2 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_bus_fmt_is_rgb
   Cyclomatic Complexity 2 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_bus_fmt_is_yuv444
   Cyclomatic Complexity 2 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_bus_fmt_is_yuv422
   Cyclomatic Complexity 2 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_bus_fmt_is_yuv420
   Cyclomatic Complexity 5 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_bus_fmt_color_depth
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:is_color_space_conversion
   Cyclomatic Complexity 6 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:is_color_space_decimation
   Cyclomatic Complexity 6 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:is_color_space_interpolation
   Cyclomatic Complexity 35 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_compute_n
   Cyclomatic Complexity 4 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_audio_enable
   Cyclomatic Complexity 4 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_audio_disable
   Cyclomatic Complexity 23 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_support_scdc
   Cyclomatic Complexity 4 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_poweroff
   Cyclomatic Complexity 4 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_update_phy_mask
   Cyclomatic Complexity 7 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_bridge_mode_valid
   Cyclomatic Complexity 4 include/linux/device.h:dev_name
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_modb
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_mask_writeb
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_phy_gen2_pddq
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_phy_gen2_txpwron
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_phy_enable_tmds
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_phy_enable_powerdown
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_phy_sel_data_en_pol
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_phy_sel_interface_control
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_phy_enable_svsret
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_phy_test_clear
   Cyclomatic Complexity 4 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_tx_hdcp_config
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_writeb
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_set_cts_n
   Cyclomatic Complexity 2 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_set_clk_regenerator
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_set_sample_rate
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_clk_regenerator_update_pixel_clock
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_init_clk_regenerator
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_ahb_audio_disable
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_ahb_audio_enable
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_phy_reset
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_phy_i2c_set_addr
   Cyclomatic Complexity 12 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_phy_update_hpd
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_phy_setup_hpd
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_disable_overflow_interrupts
   Cyclomatic Complexity 5 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_enable_video_path
   Cyclomatic Complexity 4 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_enable_audio_clk
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_i2s_audio_disable
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_i2s_audio_enable
   Cyclomatic Complexity 26 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_video_packetize
   Cyclomatic Complexity 14 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_update_csc_coeffs
   Cyclomatic Complexity 9 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_video_csc
   Cyclomatic Complexity 12 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_video_sample
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_cec_disable
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_cec_enable
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_setup_i2c
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_i2c_init
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_readb
   Cyclomatic Complexity 4 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_phy_wait_i2c_done
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_phy_i2c_write
   Cyclomatic Complexity 24 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_phy_configure_dwc_hdmi_3d_tx
   Cyclomatic Complexity 2 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_phy_read_hpd
   Cyclomatic Complexity 4 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_clear_overflow
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:initialize_hdmi_ih_mutes
   Cyclomatic Complexity 6 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_set_high_tmds_clock_ratio
   Cyclomatic Complexity 1 include/drm/drm_scdc_helper.h:drm_scdc_readb
   Cyclomatic Complexity 1 include/drm/drm_scdc_helper.h:drm_scdc_writeb
   Cyclomatic Complexity 28 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_av_composer
   Cyclomatic Complexity 37 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_config_AVI
   Cyclomatic Complexity 10 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:hdmi_config_vendor_specific_infoframe
   Cyclomatic Complexity 25 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_setup
   Cyclomatic Complexity 1 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c:dw_hdmi_poweron

vim +/cec_fill_conn_info_from_drm +2154 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c

  2136	
  2137	static int dw_hdmi_bridge_attach(struct drm_bridge *bridge)
  2138	{
  2139		struct dw_hdmi *hdmi = bridge->driver_private;
  2140		struct drm_encoder *encoder = bridge->encoder;
  2141		struct drm_connector *connector = &hdmi->connector;
  2142		struct cec_connector_info conn_info;
  2143	
  2144		connector->interlace_allowed = 1;
  2145		connector->polled = DRM_CONNECTOR_POLL_HPD;
  2146	
  2147		drm_connector_helper_add(connector, &dw_hdmi_connector_helper_funcs);
  2148	
  2149		drm_connector_init(bridge->dev, connector, &dw_hdmi_connector_funcs,
  2150				   DRM_MODE_CONNECTOR_HDMIA);
  2151	
  2152		drm_connector_attach_encoder(connector, encoder);
  2153	
> 2154		cec_fill_conn_info_from_drm(&conn_info, connector);
  2155	
  2156		hdmi->cec_notifier = cec_notifier_conn_register(hdmi->dev, NULL,
  2157								&conn_info);
  2158		if (!hdmi->cec_notifier)
  2159			return -ENOMEM;
  2160	
  2161		if (hdmi->cec_configured) {
  2162			struct platform_device_info pdevinfo;
  2163			struct dw_hdmi_cec_data cec;
  2164	
  2165			memset(&pdevinfo, 0, sizeof(pdevinfo));
  2166			pdevinfo.parent = hdmi->dev;
  2167			pdevinfo.id = PLATFORM_DEVID_AUTO;
  2168	
  2169			cec.hdmi = hdmi;
  2170			cec.ops = &dw_hdmi_cec_ops;
  2171			cec.irq = hdmi->irq;
  2172	
  2173			pdevinfo.name = "dw-hdmi-cec";
  2174			pdevinfo.data = &cec;
  2175			pdevinfo.size_data = sizeof(cec);
  2176			pdevinfo.dma_mask = 0;
  2177	
  2178			hdmi->cec = platform_device_register_full(&pdevinfo);
  2179		}
  2180	
  2181		return 0;
  2182	}
  2183	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 33736 bytes --]

[-- Attachment #3: Type: text/plain, Size: 159 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2019-06-25  0:44 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-24 16:03 [PATCHv8 00/13] cec: improve notifier support, add connector info Hans Verkuil
2019-06-24 16:03 ` [PATCHv8 01/13] cec-notifier: rename variable, check kstrdup Hans Verkuil
2019-06-25  7:07   ` [PATCHv8.1 01/13] cec-notifier: rename variables, check kstrdup and n->conn_name Hans Verkuil
2019-06-24 16:03 ` [PATCHv8 02/13] cec: add struct cec_connector_info support Hans Verkuil
2019-06-25  6:28   ` Hans Verkuil
2019-06-25 13:19   ` Dariusz Marcinkiewicz
2019-06-24 16:03 ` [PATCHv8 03/13] cec: add new notifier functions Hans Verkuil
2019-06-25 13:48   ` Dariusz Marcinkiewicz
2019-06-25 14:26     ` Hans Verkuil
2019-06-24 16:03 ` [PATCHv8 04/13] cec: expose the new connector info API Hans Verkuil
2019-06-25 13:59   ` Dariusz Marcinkiewicz
2019-06-25 14:28     ` Hans Verkuil
2019-06-24 16:03 ` [PATCHv8 05/13] cec: document CEC_ADAP_G_CONNECTOR_INFO Hans Verkuil
2019-06-24 16:03 ` [PATCHv8 06/13] drm_dp_cec: add connector info support Hans Verkuil
2019-06-24 16:03 ` [PATCHv8 07/13] drm/i915/intel_hdmi: use cec_notifier_conn_(un)register Hans Verkuil
2019-06-24 16:03 ` [PATCHv8 08/13] dw-hdmi-cec: use cec_notifier_cec_adap_(un)register Hans Verkuil
2019-06-24 16:03 ` [PATCHv8 09/13] dw-hdmi: use cec_notifier_conn_(un)register Hans Verkuil
2019-06-25  0:43   ` kbuild test robot [this message]
2019-06-24 16:03 ` [PATCHv8 10/13] meson/ao-cec: use cec_notifier_cec_adap_(un)register Hans Verkuil
2019-06-24 16:03 ` [PATCHv8 11/13] tda9950: " Hans Verkuil
2019-06-24 16:03 ` [PATCHv8 12/13] tda998x: use cec_notifier_conn_(un)register Hans Verkuil
2019-06-24 22:37   ` kbuild test robot
2019-06-24 16:03 ` [PATCHv8 13/13] drm/vc4/vc4_hdmi: fill in connector info Hans Verkuil

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201906250822.KejPzkro%lkp@intel.com \
    --to=lkp@intel.com \
    --cc=cychiang@chromium.org \
    --cc=darekm@google.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=hverkuil-cisco@xs4all.nl \
    --cc=kbuild-all@01.org \
    --cc=linux-media@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox