From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [frank-w-bpi-r2-4.14:5.16-next-hdmi 8/29] drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c:541:16: error: 'struct drm_encoder' has no member named 'port'
Date: Sat, 22 Jan 2022 22:24:36 +0800 [thread overview]
Message-ID: <202201222232.RHlu2zzo-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 5034 bytes --]
tree: https://github.com/frank-w/BPI-R2-4.14 5.16-next-hdmi
head: 2c863ab74e13844664d488782f9f0422bfea0471
commit: 1ced92d05c4d40fc24873af7445ec7c8a430c5ac [8/29] drm/rockchip: dw_hdmi: add rk3568 support
config: m68k-allmodconfig (https://download.01.org/0day-ci/archive/20220122/202201222232.RHlu2zzo-lkp(a)intel.com/config)
compiler: m68k-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/frank-w/BPI-R2-4.14/commit/1ced92d05c4d40fc24873af7445ec7c8a430c5ac
git remote add frank-w-bpi-r2-4.14 https://github.com/frank-w/BPI-R2-4.14
git fetch --no-tags frank-w-bpi-r2-4.14 5.16-next-hdmi
git checkout 1ced92d05c4d40fc24873af7445ec7c8a430c5ac
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=m68k SHELL=/bin/bash drivers/gpu/drm/rockchip/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Note: the frank-w-bpi-r2-4.14/5.16-next-hdmi HEAD 2c863ab74e13844664d488782f9f0422bfea0471 builds fine.
It only hurts bisectability.
All errors (new ones prefixed by >>):
drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c: In function 'dw_hdmi_rockchip_bind':
>> drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c:541:16: error: 'struct drm_encoder' has no member named 'port'
541 | encoder->port = of_graph_get_port_by_id(dev->of_node, 0);
| ^~
vim +541 drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
509
510 static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master,
511 void *data)
512 {
513 struct platform_device *pdev = to_platform_device(dev);
514 struct dw_hdmi_plat_data *plat_data;
515 const struct of_device_id *match;
516 struct drm_device *drm = data;
517 struct drm_encoder *encoder;
518 struct rockchip_hdmi *hdmi;
519 int ret;
520
521 if (!pdev->dev.of_node)
522 return -ENODEV;
523
524 hdmi = devm_kzalloc(&pdev->dev, sizeof(*hdmi), GFP_KERNEL);
525 if (!hdmi)
526 return -ENOMEM;
527
528 match = of_match_node(dw_hdmi_rockchip_dt_ids, pdev->dev.of_node);
529 plat_data = devm_kmemdup(&pdev->dev, match->data,
530 sizeof(*plat_data), GFP_KERNEL);
531 if (!plat_data)
532 return -ENOMEM;
533
534 hdmi->dev = &pdev->dev;
535 hdmi->chip_data = plat_data->phy_data;
536 plat_data->phy_data = hdmi;
537 encoder = &hdmi->encoder;
538
539 encoder->possible_crtcs = drm_of_find_possible_crtcs(drm, dev->of_node);
540
> 541 encoder->port = of_graph_get_port_by_id(dev->of_node, 0);
542
543 /*
544 * If we failed to find the CRTC(s) which this encoder is
545 * supposed to be connected to, it's because the CRTC has
546 * not been registered yet. Defer probing, and hope that
547 * the required CRTC is added later.
548 */
549 if (encoder->possible_crtcs == 0)
550 return -EPROBE_DEFER;
551
552 ret = rockchip_hdmi_parse_dt(hdmi);
553 if (ret) {
554 DRM_DEV_ERROR(hdmi->dev, "Unable to parse OF data\n");
555 return ret;
556 }
557
558 hdmi->phy = devm_phy_optional_get(dev, "hdmi");
559 if (IS_ERR(hdmi->phy)) {
560 ret = PTR_ERR(hdmi->phy);
561 if (ret != -EPROBE_DEFER)
562 DRM_DEV_ERROR(hdmi->dev, "failed to get phy\n");
563 return ret;
564 }
565
566 ret = clk_prepare_enable(hdmi->ref_clk);
567 if (ret) {
568 DRM_DEV_ERROR(hdmi->dev, "Failed to enable HDMI reference clock: %d\n",
569 ret);
570 return ret;
571 }
572
573 if (hdmi->chip_data == &rk3568_chip_data) {
574 regmap_write(hdmi->regmap, RK3568_GRF_VO_CON1,
575 HIWORD_UPDATE(RK3568_HDMI_SDAIN_MSK |
576 RK3568_HDMI_SCLIN_MSK,
577 RK3568_HDMI_SDAIN_MSK |
578 RK3568_HDMI_SCLIN_MSK));
579 }
580
581 drm_encoder_helper_add(encoder, &dw_hdmi_rockchip_encoder_helper_funcs);
582 drm_simple_encoder_init(drm, encoder, DRM_MODE_ENCODER_TMDS);
583
584 platform_set_drvdata(pdev, hdmi);
585
586 hdmi->hdmi = dw_hdmi_bind(pdev, encoder, plat_data);
587
588 /*
589 * If dw_hdmi_bind() fails we'll never call dw_hdmi_unbind(),
590 * which would have called the encoder cleanup. Do it manually.
591 */
592 if (IS_ERR(hdmi->hdmi)) {
593 ret = PTR_ERR(hdmi->hdmi);
594 drm_encoder_cleanup(encoder);
595 clk_disable_unprepare(hdmi->ref_clk);
596 }
597
598 return ret;
599 }
600
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
reply other threads:[~2022-01-22 14:24 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=202201222232.RHlu2zzo-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild-all@lists.01.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.