lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202112101636.y17bk2Zb-lkp@intel.com>
Date:   Fri, 10 Dec 2021 16:11:43 +0800
From:   kernel test robot <lkp@...el.com>
To:     Neil Armstrong <narmstrong@...libre.com>
Cc:     llvm@...ts.linux.dev, kbuild-all@...ts.01.org,
        linux-kernel@...r.kernel.org
Subject: [superna9999:amlogic/v5.17/g12-dsi 5/7]
 drivers/gpu/drm/meson/meson_encoder_dsi.c:72:2: error: implicit declaration
 of function 'meson_vclk_setup'

tree:   https://github.com/superna9999/linux amlogic/v5.17/g12-dsi
head:   cc44c3ce92a63f2c59a3f0ac03e6defd41542940
commit: e1e87e576f5befbf752a2c7b9c019328f1742d71 [5/7] fixup! WIP: drm/meson: add DSI encoder
config: arm-randconfig-r034-20211210 (https://download.01.org/0day-ci/archive/20211210/202112101636.y17bk2Zb-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 097a1cb1d5ebb3a0ec4bcaed8ba3ff6a8e33c00a)
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
        # install arm cross compiling tool for clang build
        # apt-get install binutils-arm-linux-gnueabi
        # https://github.com/superna9999/linux/commit/e1e87e576f5befbf752a2c7b9c019328f1742d71
        git remote add superna9999 https://github.com/superna9999/linux
        git fetch --no-tags superna9999 amlogic/v5.17/g12-dsi
        git checkout e1e87e576f5befbf752a2c7b9c019328f1742d71
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash drivers/gpu/drm/meson/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>

All errors (new ones prefixed by >>):

>> drivers/gpu/drm/meson/meson_encoder_dsi.c:72:2: error: implicit declaration of function 'meson_vclk_setup' [-Werror,-Wimplicit-function-declaration]
           meson_vclk_setup(priv, MESON_VCLK_TARGET_DSI, mode->clock * 1000, 0, 0, 0, false);
           ^
>> drivers/gpu/drm/meson/meson_encoder_dsi.c:72:25: error: use of undeclared identifier 'MESON_VCLK_TARGET_DSI'
           meson_vclk_setup(priv, MESON_VCLK_TARGET_DSI, mode->clock * 1000, 0, 0, 0, false);
                                  ^
>> drivers/gpu/drm/meson/meson_encoder_dsi.c:74:2: error: implicit declaration of function 'meson_venc_encoder_dsi_mode_set' [-Werror,-Wimplicit-function-declaration]
           meson_venc_encoder_dsi_mode_set(priv, mode);
           ^
   drivers/gpu/drm/meson/meson_encoder_dsi.c:74:2: note: did you mean 'meson_venc_mipi_dsi_mode_set'?
   drivers/gpu/drm/meson/meson_venc.h:70:6: note: 'meson_venc_mipi_dsi_mode_set' declared here
   void meson_venc_mipi_dsi_mode_set(struct meson_drm *priv,
        ^
>> drivers/gpu/drm/meson/meson_encoder_dsi.c:96:18: error: use of undeclared identifier 'meson_encoder_dsi_atomic_check'; did you mean 'meson_encoder_dsi_atomic_enable'?
           .atomic_check   = meson_encoder_dsi_atomic_check,
                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                             meson_encoder_dsi_atomic_enable
   drivers/gpu/drm/meson/meson_encoder_dsi.c:45:13: note: 'meson_encoder_dsi_atomic_enable' declared here
   static void meson_encoder_dsi_atomic_enable(struct drm_bridge *bridge,
               ^
   drivers/gpu/drm/meson/meson_encoder_dsi.c:97:19: error: use of undeclared identifier 'meson_encoder_dsi_atomic_check'; did you mean 'meson_encoder_dsi_atomic_enable'?
           .atomic_enable  = meson_encoder_dsi_atomic_check,
                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                             meson_encoder_dsi_atomic_enable
   drivers/gpu/drm/meson/meson_encoder_dsi.c:45:13: note: 'meson_encoder_dsi_atomic_enable' declared here
   static void meson_encoder_dsi_atomic_enable(struct drm_bridge *bridge,
               ^
   drivers/gpu/drm/meson/meson_encoder_dsi.c:98:20: error: use of undeclared identifier 'meson_encoder_dsi_atomic_check'; did you mean 'meson_encoder_dsi_atomic_enable'?
           .atomic_disable = meson_encoder_dsi_atomic_check,
                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                             meson_encoder_dsi_atomic_enable
   drivers/gpu/drm/meson/meson_encoder_dsi.c:45:13: note: 'meson_encoder_dsi_atomic_enable' declared here
   static void meson_encoder_dsi_atomic_enable(struct drm_bridge *bridge,
               ^
   drivers/gpu/drm/meson/meson_encoder_dsi.c:99:18: error: use of undeclared identifier 'meson_encoder_dsi_atomic_check'; did you mean 'meson_encoder_dsi_atomic_enable'?
           .atomic_check = meson_encoder_dsi_atomic_check,
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                           meson_encoder_dsi_atomic_enable
   drivers/gpu/drm/meson/meson_encoder_dsi.c:45:13: note: 'meson_encoder_dsi_atomic_enable' declared here
   static void meson_encoder_dsi_atomic_enable(struct drm_bridge *bridge,
               ^
>> drivers/gpu/drm/meson/meson_encoder_dsi.c:96:18: error: incompatible function pointer types initializing 'int (*)(struct drm_bridge *, struct drm_bridge_state *, struct drm_crtc_state *, struct drm_connector_state *)' with an expression of type 'void (struct drm_bridge *, struct drm_bridge_state *)' [-Werror,-Wincompatible-function-pointer-types]
           .atomic_check   = meson_encoder_dsi_atomic_check,
                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/meson/meson_encoder_dsi.c:99:18: error: incompatible function pointer types initializing 'int (*)(struct drm_bridge *, struct drm_bridge_state *, struct drm_crtc_state *, struct drm_connector_state *)' with an expression of type 'void (struct drm_bridge *, struct drm_bridge_state *)' [-Werror,-Wincompatible-function-pointer-types]
           .atomic_check = meson_encoder_dsi_atomic_check,
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/meson/meson_encoder_dsi.c:99:18: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides]
           .atomic_check = meson_encoder_dsi_atomic_check,
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/meson/meson_encoder_dsi.c:96:18: note: previous initialization is here
           .atomic_check   = meson_encoder_dsi_atomic_check,
                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   1 warning and 9 errors generated.


vim +/meson_vclk_setup +72 drivers/gpu/drm/meson/meson_encoder_dsi.c

    44	
    45	static void meson_encoder_dsi_atomic_enable(struct drm_bridge *bridge,
    46						     struct drm_bridge_state *bridge_state)
    47	{
    48		struct meson_encoder_dsi *encoder_dsi = bridge_to_meson_encoder_dsi(bridge);
    49		struct drm_atomic_state *state = bridge_state->base.state;
    50		struct meson_drm *priv = encoder_dsi->priv;
    51		struct drm_connector_state *conn_state;
    52		struct drm_crtc_state *crtc_state;
    53		struct drm_connector *connector;
    54		struct drm_display_mode *mode;
    55	
    56		connector = drm_atomic_get_new_connector_for_encoder(state, bridge->encoder);
    57		if (WARN_ON(!connector))
    58			return;
    59	
    60		conn_state = drm_atomic_get_new_connector_state(state, connector);
    61		if (WARN_ON(!conn_state))
    62			return;
    63	
    64		crtc_state = drm_atomic_get_new_crtc_state(state, conn_state->crtc);
    65		if (WARN_ON(!crtc_state))
    66			return;
    67	
    68		mode = &crtc_state->adjusted_mode;
    69		if (WARN_ON(!mode))
    70			return;
    71	
  > 72		meson_vclk_setup(priv, MESON_VCLK_TARGET_DSI, mode->clock * 1000, 0, 0, 0, false);
    73	
  > 74		meson_venc_encoder_dsi_mode_set(priv, mode);
    75	
    76		meson_encl_load_gamma(priv);
    77	
    78		writel_bits_relaxed(BIT(3), BIT(3), priv->io_base + _REG(ENCL_VIDEO_MODE_ADV));
    79		writel_relaxed(0, priv->io_base + _REG(ENCL_TST_EN));
    80	
    81		writel_relaxed(1, priv->io_base + _REG(ENCL_VIDEO_EN));
    82	}
    83	
    84	static void meson_encoder_dsi_atomic_disable(struct drm_bridge *bridge,
    85						      struct drm_bridge_state *bridge_state)
    86	{
    87		struct meson_encoder_dsi *meson_encoder_dsi =
    88						bridge_to_meson_encoder_dsi(bridge);
    89		struct meson_drm *priv = meson_encoder_dsi->priv;
    90	
    91		writel_relaxed(0, priv->io_base + _REG(ENCL_VIDEO_EN));
    92	}
    93	
    94	static const struct drm_bridge_funcs meson_encoder_dsi_bridge_funcs = {
    95		.attach		= meson_encoder_dsi_attach,
  > 96		.atomic_check	= meson_encoder_dsi_atomic_check,
    97		.atomic_enable	= meson_encoder_dsi_atomic_check,
    98		.atomic_disable	= meson_encoder_dsi_atomic_check,
  > 99		.atomic_check = meson_encoder_dsi_atomic_check,
   100		.atomic_duplicate_state = drm_atomic_helper_bridge_duplicate_state,
   101		.atomic_destroy_state = drm_atomic_helper_bridge_destroy_state,
   102		.atomic_reset = drm_atomic_helper_bridge_reset,
   103	};
   104	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ