All of lore.kernel.org
 help / color / mirror / Atom feed
From: kbuild test robot <fengguang.wu@intel.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: kbuild-all@01.org,
	Linux Memory Management List <linux-mm@kvack.org>,
	mmotm auto import <mm-commits@vger.kernel.org>,
	Johannes Weiner <hannes@cmpxchg.org>
Subject: [mmotm:master 138/210] drivers/gpu/drm/msm/msm_drv.c:781:19: error: 'q' undeclared here (not in a function)
Date: Wed, 3 Aug 2016 10:01:36 +0800	[thread overview]
Message-ID: <201608031019.rRyFjE6p%fengguang.wu@intel.com> (raw)

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

tree:   git://git.cmpxchg.org/linux-mmotm.git master
head:   572b7c98f12bd2213553be42cc5c2cbc5698f5c3
commit: 4cceb4d7a297fcaec3527e355e6881850fc50ed3 [138/210] linux-next-git-rejects
config: arm64-defconfig (attached as .config)
compiler: aarch64-linux-gnu-gcc (Debian 5.4.0-6) 5.4.0 20160609
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout 4cceb4d7a297fcaec3527e355e6881850fc50ed3
        # save the attached .config to linux build tree
        make.cross ARCH=arm64 

All error/warnings (new ones prefixed by >>):

>> drivers/gpu/drm/msm/msm_drv.c:781:19: error: 'q' undeclared here (not in a function)
        DRIVER_PRIME |q
                      ^
   In file included from drivers/gpu/drm/msm/msm_drv.h:37:0,
                    from drivers/gpu/drm/msm/msm_drv.c:18:
>> include/drm/drmP.h:157:25: error: expected '}' before numeric constant
    #define DRIVER_RENDER   0x8000
                            ^
>> drivers/gpu/drm/msm/msm_drv.c:782:5: note: in expansion of macro 'DRIVER_RENDER'
        DRIVER_RENDER |
        ^
   drivers/gpu/drm/msm/msm_drv.c: In function 'add_components_mdp':
>> drivers/gpu/drm/msm/msm_drv.c:933:2: error: 'ret' undeclared (first use in this function)
     ret = add_components_mdp(mdp_dev, matchptr);
     ^
   drivers/gpu/drm/msm/msm_drv.c:933:2: note: each undeclared identifier is reported only once for each function it appears in
>> drivers/gpu/drm/msm/msm_drv.c:935:26: error: 'dev' undeclared (first use in this function)
      of_platform_depopulate(dev);
                             ^
   drivers/gpu/drm/msm/msm_drv.c: At top level:
>> drivers/gpu/drm/msm/msm_drv.c:1020:34: error: redefinition of 'msm_gpu_match'
    static const struct of_device_id msm_gpu_match[] = {
                                     ^
   drivers/gpu/drm/msm/msm_drv.c:945:34: note: previous definition of 'msm_gpu_match' was here
    static const struct of_device_id msm_gpu_match[] = {
                                     ^
>> drivers/gpu/drm/msm/msm_drv.c:1026:12: error: redefinition of 'add_gpu_components'
    static int add_gpu_components(struct device *dev,
               ^
   drivers/gpu/drm/msm/msm_drv.c:951:12: note: previous definition of 'add_gpu_components' was here
    static int add_gpu_components(struct device *dev,
               ^
   drivers/gpu/drm/msm/msm_drv.c:493:12: warning: 'msm_open' defined but not used [-Wunused-function]
    static int msm_open(struct drm_device *dev, struct drm_file *file)
               ^
   drivers/gpu/drm/msm/msm_drv.c:511:13: warning: 'msm_preclose' defined but not used [-Wunused-function]
    static void msm_preclose(struct drm_device *dev, struct drm_file *file)
                ^
   drivers/gpu/drm/msm/msm_drv.c:524:13: warning: 'msm_lastclose' defined but not used [-Wunused-function]
    static void msm_lastclose(struct drm_device *dev)
                ^
   drivers/gpu/drm/msm/msm_drv.c:531:20: warning: 'msm_irq' defined but not used [-Wunused-function]
    static irqreturn_t msm_irq(int irq, void *arg)
                       ^
   drivers/gpu/drm/msm/msm_drv.c:540:13: warning: 'msm_irq_preinstall' defined but not used [-Wunused-function]
    static void msm_irq_preinstall(struct drm_device *dev)
                ^
   drivers/gpu/drm/msm/msm_drv.c:548:12: warning: 'msm_irq_postinstall' defined but not used [-Wunused-function]
    static int msm_irq_postinstall(struct drm_device *dev)
               ^
   drivers/gpu/drm/msm/msm_drv.c:556:13: warning: 'msm_irq_uninstall' defined but not used [-Wunused-function]
    static void msm_irq_uninstall(struct drm_device *dev)
                ^
   drivers/gpu/drm/msm/msm_drv.c:564:12: warning: 'msm_enable_vblank' defined but not used [-Wunused-function]
    static int msm_enable_vblank(struct drm_device *dev, unsigned int pipe)
               ^
   drivers/gpu/drm/msm/msm_drv.c:574:13: warning: 'msm_disable_vblank' defined but not used [-Wunused-function]
    static void msm_disable_vblank(struct drm_device *dev, unsigned int pipe)
                ^
   drivers/gpu/drm/msm/msm_drv.c:951:12: warning: 'add_gpu_components' defined but not used [-Wunused-function]
    static int add_gpu_components(struct device *dev,
               ^
   drivers/gpu/drm/msm/msm_drv.c: In function 'add_components_mdp':
   drivers/gpu/drm/msm/msm_drv.c:938:1: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^

vim +/q +781 drivers/gpu/drm/msm/msm_drv.c

   775		.mmap               = msm_gem_mmap,
   776	};
   777	
   778	static struct drm_driver msm_driver = {
   779		.driver_features    = DRIVER_HAVE_IRQ |
   780					DRIVER_GEM |
 > 781					DRIVER_PRIME |q
 > 782					DRIVER_RENDER |
   783					DRIVER_ATOMIC |
   784					DRIVER_MODESET,
   785		.open               = msm_open,
   786		.preclose           = msm_preclose,
   787		.lastclose          = msm_lastclose,
   788		.irq_handler        = msm_irq,
   789		.irq_preinstall     = msm_irq_preinstall,
   790		.irq_postinstall    = msm_irq_postinstall,
   791		.irq_uninstall      = msm_irq_uninstall,
   792		.get_vblank_counter = drm_vblank_no_hw_counter,
   793		.enable_vblank      = msm_enable_vblank,
   794		.disable_vblank     = msm_disable_vblank,
   795		.gem_free_object    = msm_gem_free_object,
   796		.gem_vm_ops         = &vm_ops,
   797		.dumb_create        = msm_gem_dumb_create,
   798		.dumb_map_offset    = msm_gem_dumb_map_offset,
   799		.dumb_destroy       = drm_gem_dumb_destroy,
   800		.prime_handle_to_fd = drm_gem_prime_handle_to_fd,
   801		.prime_fd_to_handle = drm_gem_prime_fd_to_handle,
   802		.gem_prime_export   = drm_gem_prime_export,
   803		.gem_prime_import   = drm_gem_prime_import,
   804		.gem_prime_pin      = msm_gem_prime_pin,
   805		.gem_prime_unpin    = msm_gem_prime_unpin,
   806		.gem_prime_get_sg_table = msm_gem_prime_get_sg_table,
   807		.gem_prime_import_sg_table = msm_gem_prime_import_sg_table,
   808		.gem_prime_vmap     = msm_gem_prime_vmap,
   809		.gem_prime_vunmap   = msm_gem_prime_vunmap,
   810		.gem_prime_mmap     = msm_gem_prime_mmap,
   811	#ifdef CONFIG_DEBUG_FS
   812		.debugfs_init       = msm_debugfs_init,
   813		.debugfs_cleanup    = msm_debugfs_cleanup,
   814	#endif
   815		.ioctls             = msm_ioctls,
   816		.num_ioctls         = DRM_MSM_NUM_IOCTLS,
   817		.fops               = &fops,
   818		.name               = "msm",
   819		.desc               = "MSM Snapdragon DRM",
   820		.date               = "20130625",
   821		.major              = MSM_VERSION_MAJOR,
   822		.minor              = MSM_VERSION_MINOR,
   823		.patchlevel         = MSM_VERSION_PATCHLEVEL,
   824	};
   825	
   826	#ifdef CONFIG_PM_SLEEP
   827	static int msm_pm_suspend(struct device *dev)
   828	{
   829		struct drm_device *ddev = dev_get_drvdata(dev);
   830	
   831		drm_kms_helper_poll_disable(ddev);
   832	
   833		return 0;
   834	}
   835	
   836	static int msm_pm_resume(struct device *dev)
   837	{
   838		struct drm_device *ddev = dev_get_drvdata(dev);
   839	
   840		drm_kms_helper_poll_enable(ddev);
   841	
   842		return 0;
   843	}
   844	#endif
   845	
   846	static const struct dev_pm_ops msm_pm_ops = {
   847		SET_SYSTEM_SLEEP_PM_OPS(msm_pm_suspend, msm_pm_resume)
   848	};
   849	
   850	/*
   851	 * Componentized driver support:
   852	 */
   853	
   854	/*
   855	 * NOTE: duplication of the same code as exynos or imx (or probably any other).
   856	 * so probably some room for some helpers
   857	 */
   858	static int compare_of(struct device *dev, void *data)
   859	{
   860		return dev->of_node == data;
   861	}
   862	
   863	static void release_of(struct device *dev, void *data)
   864	{
   865		of_node_put(data);
   866	}
   867	
   868	/*
   869	 * Identify what components need to be added by parsing what remote-endpoints
   870	 * our MDP output ports are connected to. In the case of LVDS on MDP4, there
   871	 * is no external component that we need to add since LVDS is within MDP4
   872	 * itself.
   873	 */
   874	static int add_components_mdp(struct device *mdp_dev,
   875				      struct component_match **matchptr)
   876	{
   877		struct device_node *np = mdp_dev->of_node;
   878		struct device_node *ep_node;
   879		struct device *master_dev;
   880	
   881		/*
   882		 * on MDP4 based platforms, the MDP platform device is the component
   883		 * master that adds other display interface components to itself.
   884		 *
   885		 * on MDP5 based platforms, the MDSS platform device is the component
   886		 * master that adds MDP5 and other display interface components to
   887		 * itself.
   888		 */
   889		if (of_device_is_compatible(np, "qcom,mdp4"))
   890			master_dev = mdp_dev;
   891		else
   892			master_dev = mdp_dev->parent;
   893	
   894		for_each_endpoint_of_node(np, ep_node) {
   895			struct device_node *intf;
   896			struct of_endpoint ep;
   897			int ret;
   898	
   899			ret = of_graph_parse_endpoint(ep_node, &ep);
   900			if (ret) {
   901				dev_err(mdp_dev, "unable to parse port endpoint\n");
   902				of_node_put(ep_node);
   903				return ret;
   904			}
   905	
   906			/*
   907			 * The LCDC/LVDS port on MDP4 is a speacial case where the
   908			 * remote-endpoint isn't a component that we need to add
   909			 */
   910			if (of_device_is_compatible(np, "qcom,mdp4") &&
   911			    ep.port == 0) {
   912				of_node_put(ep_node);
   913				continue;
   914			}
   915	
   916			/*
   917			 * It's okay if some of the ports don't have a remote endpoint
   918			 * specified. It just means that the port isn't connected to
   919			 * any external interface.
   920			 */
   921			intf = of_graph_get_remote_port_parent(ep_node);
   922			if (!intf) {
   923				of_node_put(ep_node);
   924				continue;
   925			}
   926	
   927			component_match_add_release(master_dev, matchptr, release_of,
   928						    compare_of, intf);
   929	
   930			of_node_put(ep_node);
   931		}
   932	
 > 933		ret = add_components_mdp(mdp_dev, matchptr);
   934		if (ret)
 > 935			of_platform_depopulate(dev);
   936	
   937		return ret;
   938	}

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

[-- Attachment #2: .config.gz --]
[-- Type: application/octet-stream, Size: 29386 bytes --]

             reply	other threads:[~2016-08-03  2:02 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-03  2:01 kbuild test robot [this message]
2016-08-03  2:09 ` [mmotm:master 138/210] drivers/gpu/drm/msm/msm_drv.c:781:19: error: 'q' undeclared here (not in a function) Andrew Morton
2016-08-03  2:09 ` Andrew Morton

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=201608031019.rRyFjE6p%fengguang.wu@intel.com \
    --to=fengguang.wu@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=hannes@cmpxchg.org \
    --cc=kbuild-all@01.org \
    --cc=linux-mm@kvack.org \
    --cc=mm-commits@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 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.