mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: kbuild test robot <lkp@intel.com>
To: John Stultz <john.stultz@linaro.org>
Cc: kbuild-all@01.org, lkml <linux-kernel@vger.kernel.org>,
	Jorge Ramirez-Ortiz <jorge.ramirez-ortiz@linaro.org>,
	Dmitry Torokhov <dmitry.torokhov@gmail.com>,
	Rob Herring <robh+dt@kernel.org>,
	Lee Jones <lee.jones@linaro.org>,
	Feng Chen <puck.chen@hisilicon.com>,
	Wei Xu <xuwei5@hisilicon.com>, Guodong Xu <guodong.xu@linaro.org>,
	John Stultz <john.stultz@linaro.org>
Subject: Re: [PATCH 1/3] drivers: input: powerkey for HISI 65xx SoC
Date: Fri, 10 Jun 2016 14:44:54 +0800	[thread overview]
Message-ID: <201606101452.yH3kUYBO%fengguang.wu@intel.com> (raw)
In-Reply-To: <1465536877-18452-2-git-send-email-john.stultz@linaro.org>

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

Hi,

[auto build test ERROR on ljones-mfd/for-mfd-next]
[also build test ERROR on v4.7-rc2 next-20160609]
[cannot apply to input/next]
[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/John-Stultz/Hi655x-powerkey-support-for-HiKey-v3/20160610-133804
base:   https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git for-mfd-next
config: i386-allmodconfig (attached as .config)
compiler: gcc-6 (Debian 6.1.1-1) 6.1.1 20160430
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

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

   In file included from drivers/input/misc/hisi_powerkey.c:21:0:
>> drivers/input/misc/hisi_powerkey.c:135:25: error: 'hi65xx_powerkey_of_match' undeclared here (not in a function)
    MODULE_DEVICE_TABLE(of, hi65xx_powerkey_of_match);
                            ^
   include/linux/module.h:223:21: note: in definition of macro 'MODULE_DEVICE_TABLE'
    extern const typeof(name) __mod_##type##__##name##_device_table  \
                        ^~~~
>> include/linux/module.h:223:27: error: '__mod_of__hi65xx_powerkey_of_match_device_table' aliased to undefined symbol 'hi65xx_powerkey_of_match'
    extern const typeof(name) __mod_##type##__##name##_device_table  \
                              ^
>> drivers/input/misc/hisi_powerkey.c:135:1: note: in expansion of macro 'MODULE_DEVICE_TABLE'
    MODULE_DEVICE_TABLE(of, hi65xx_powerkey_of_match);
    ^~~~~~~~~~~~~~~~~~~

vim +/hi65xx_powerkey_of_match +135 drivers/input/misc/hisi_powerkey.c

    15	 */
    16	
    17	#include <linux/platform_device.h>
    18	#include <linux/interrupt.h>
    19	#include <linux/reboot.h>
    20	#include <linux/kernel.h>
  > 21	#include <linux/module.h>
    22	#include <linux/of_irq.h>
    23	#include <linux/input.h>
    24	#include <linux/slab.h>
    25	
    26	/* the held interrupt will trigger after 4 seconds */
    27	#define MAX_HELD_TIME	(4 * MSEC_PER_SEC)
    28	
    29	
    30	enum id_action { ID_PRESSED, ID_RELEASED, ID_HELD, ID_LAST };
    31	const char *const irq_names[ID_LAST] = {"down", "up", "hold 4s"};
    32	
    33	struct hi65xx_priv {
    34		struct input_dev *input;
    35	};
    36	
    37	static irqreturn_t hi65xx_power_press_isr(int irq, void *q)
    38	{
    39		struct hi65xx_priv *p = q;
    40	
    41		pm_wakeup_event(p->input->dev.parent, MAX_HELD_TIME);
    42		input_report_key(p->input, KEY_POWER, 1);
    43		input_sync(p->input);
    44	
    45		return IRQ_HANDLED;
    46	}
    47	
    48	static irqreturn_t hi65xx_power_release_isr(int irq, void *q)
    49	{
    50		struct hi65xx_priv *p = q;
    51	
    52		pm_wakeup_event(p->input->dev.parent, MAX_HELD_TIME);
    53		input_report_key(p->input, KEY_POWER, 0);
    54		input_sync(p->input);
    55	
    56		return IRQ_HANDLED;
    57	}
    58	
    59	static irqreturn_t hi65xx_restart_toggle_isr(int irq, void *q)
    60	{
    61		struct hi65xx_priv *p = q;
    62		int value = test_bit(KEY_RESTART, p->input->key);
    63	
    64		pm_wakeup_event(p->input->dev.parent, MAX_HELD_TIME);
    65		input_report_key(p->input, KEY_RESTART, !value);
    66		input_sync(p->input);
    67	
    68		return IRQ_HANDLED;
    69	}
    70	
    71	irqreturn_t (*irq_handlers[ID_LAST])(int irq, void *q) = {
    72		hi65xx_power_press_isr,
    73		hi65xx_power_release_isr,
    74		hi65xx_restart_toggle_isr,
    75	};
    76	
    77	static int hi65xx_powerkey_probe(struct platform_device *pdev)
    78	{
    79		struct device *dev = &pdev->dev;
    80		struct hi65xx_priv *priv;
    81		int irq, i, ret;
    82	
    83		priv = devm_kzalloc(dev, sizeof(struct hi65xx_priv), GFP_KERNEL);
    84		if (!priv)
    85			return -ENOMEM;
    86	
    87		priv->input = devm_input_allocate_device(&pdev->dev);
    88		if (!priv->input) {
    89			dev_err(&pdev->dev, "failed to allocate input device\n");
    90			return -ENOMEM;
    91		}
    92	
    93		priv->input->phys = "hisi_on/input0";
    94		priv->input->name = "HISI 65xx PowerOn Key";
    95	
    96		input_set_capability(priv->input, EV_KEY, KEY_POWER);
    97		input_set_capability(priv->input, EV_KEY, KEY_RESTART);
    98	
    99		for (i = 0; i < ID_LAST; i++) {
   100	
   101			irq = platform_get_irq_byname(pdev, irq_names[i]);
   102			if (irq < 0) {
   103				dev_err(dev, "couldn't get irq %s\n", irq_names[i]);
   104				return irq;
   105			}
   106	
   107			ret = devm_request_any_context_irq(dev, irq,
   108						irq_handlers[i], IRQF_ONESHOT,
   109						irq_names[i], priv);
   110			if (ret < 0) {
   111				dev_err(dev, "couldn't get irq %s\n", irq_names[i]);
   112				return ret;
   113			}
   114		}
   115	
   116		ret = input_register_device(priv->input);
   117		if (ret) {
   118			dev_err(&pdev->dev, "failed to register input device: %d\n",
   119				ret);
   120			return ret;
   121		}
   122	
   123		platform_set_drvdata(pdev, priv);
   124		device_init_wakeup(&pdev->dev, 1);
   125	
   126		return 0;
   127	}
   128	
   129	static int hi65xx_powerkey_remove(struct platform_device *pdev)
   130	{
   131		device_init_wakeup(&pdev->dev, 0);
   132		return 0;
   133	}
   134	
 > 135	MODULE_DEVICE_TABLE(of, hi65xx_powerkey_of_match);
   136	
   137	static struct platform_driver hi65xx_powerkey_driver = {
   138		.driver = {

---
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: 54457 bytes --]

  reply	other threads:[~2016-06-10  7:00 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-10  5:34 [PATCH 0/3] Hi655x powerkey support for HiKey (v3) John Stultz
2016-06-10  5:34 ` [PATCH 1/3] drivers: input: powerkey for HISI 65xx SoC John Stultz
2016-06-10  6:44   ` kbuild test robot [this message]
2016-06-10  7:09     ` John Stultz
2016-06-10  9:35   ` kbuild test robot
2016-06-10  5:34 ` [PATCH 2/3] mfd: hi655x-pmic: Fixup issue with un-acked interrupts John Stultz
2016-06-10  5:34 ` [PATCH 3/3] mfd: hi655x-pmic: Add powerkey device to hi655x PMIC driver John Stultz
2016-06-10  7:32   ` Lee Jones
2016-06-10  7:36     ` John Stultz

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=201606101452.yH3kUYBO%fengguang.wu@intel.com \
    --to=lkp@intel.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=guodong.xu@linaro.org \
    --cc=john.stultz@linaro.org \
    --cc=jorge.ramirez-ortiz@linaro.org \
    --cc=kbuild-all@01.org \
    --cc=lee.jones@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=puck.chen@hisilicon.com \
    --cc=robh+dt@kernel.org \
    --cc=xuwei5@hisilicon.com \
    /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

all inboxes | Powered by JetHome®