linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Kees Cook <keescook@chromium.org>
Cc: kbuild-all@lists.01.org,
	Linux Memory Management List <linux-mm@kvack.org>,
	Arnd Bergmann <arnd@arndb.de>,
	Nathan Chancellor <nathan@kernel.org>,
	Nick Desaulniers <ndesaulniers@google.com>,
	Masahiro Yamada <masahiroy@kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: [linux-next:master 2450/2855] drivers/input/keyboard/samsung-keypad.c:361: undefined reference to `devm_ioremap'
Date: Fri, 28 Jan 2022 22:13:06 +0800	[thread overview]
Message-ID: <202201282217.feGQWIFA-lkp@intel.com> (raw)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   b605fdc54c2b28c30ef06d9db99282d8a32ae4be
commit: 880f694bd1cef484e92065ea4e736850abce5352 [2450/2855] Kconfig.debug: make DEBUG_INFO selectable from a choice
config: s390-randconfig-r032-20220124 (https://download.01.org/0day-ci/archive/20220128/202201282217.feGQWIFA-lkp@intel.com/config)
compiler: s390-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://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=880f694bd1cef484e92065ea4e736850abce5352
        git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
        git fetch --no-tags linux-next master
        git checkout 880f694bd1cef484e92065ea4e736850abce5352
        # 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=s390 SHELL=/bin/bash

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

All errors (new ones prefixed by >>):

   s390-linux-ld: drivers/input/keyboard/samsung-keypad.o: in function `samsung_keypad_probe':
>> drivers/input/keyboard/samsung-keypad.c:361: undefined reference to `devm_ioremap'
   s390-linux-ld: drivers/clocksource/timer-of.o: in function `timer_of_base_init':
>> drivers/clocksource/timer-of.c:159: undefined reference to `of_iomap'
   s390-linux-ld: drivers/clocksource/timer-of.o: in function `timer_of_base_exit':
>> drivers/clocksource/timer-of.c:151: undefined reference to `iounmap'
>> s390-linux-ld: drivers/clocksource/timer-of.c:151: undefined reference to `iounmap'
   s390-linux-ld: drivers/clocksource/timer-microchip-pit64b.o: in function `mchp_pit64b_dt_init_timer':
>> drivers/clocksource/timer-microchip-pit64b.c:436: undefined reference to `of_iomap'
>> s390-linux-ld: drivers/clocksource/timer-microchip-pit64b.c:486: undefined reference to `iounmap'


vim +361 drivers/input/keyboard/samsung-keypad.c

b3d6ac3e5f9374 Thomas Abraham  2011-11-02  313  
5298cc4cc753bb Bill Pemberton  2012-11-23  314  static int samsung_keypad_probe(struct platform_device *pdev)
0fffed27f92d9d Joonyoung Shim  2010-07-21  315  {
0fffed27f92d9d Joonyoung Shim  2010-07-21  316  	const struct samsung_keypad_platdata *pdata;
0fffed27f92d9d Joonyoung Shim  2010-07-21  317  	const struct matrix_keymap_data *keymap_data;
0fffed27f92d9d Joonyoung Shim  2010-07-21  318  	struct samsung_keypad *keypad;
0fffed27f92d9d Joonyoung Shim  2010-07-21  319  	struct resource *res;
0fffed27f92d9d Joonyoung Shim  2010-07-21  320  	struct input_dev *input_dev;
0fffed27f92d9d Joonyoung Shim  2010-07-21  321  	unsigned int row_shift;
0fffed27f92d9d Joonyoung Shim  2010-07-21  322  	unsigned int keymap_size;
0fffed27f92d9d Joonyoung Shim  2010-07-21  323  	int error;
0fffed27f92d9d Joonyoung Shim  2010-07-21  324  
c838cb3d477f79 Jingoo Han      2013-12-05  325  	pdata = dev_get_platdata(&pdev->dev);
0fffed27f92d9d Joonyoung Shim  2010-07-21  326  	if (!pdata) {
670d20725e4f70 Dmitry Torokhov 2012-11-03  327  		pdata = samsung_keypad_parse_dt(&pdev->dev);
670d20725e4f70 Dmitry Torokhov 2012-11-03  328  		if (IS_ERR(pdata))
670d20725e4f70 Dmitry Torokhov 2012-11-03  329  			return PTR_ERR(pdata);
0fffed27f92d9d Joonyoung Shim  2010-07-21  330  	}
0fffed27f92d9d Joonyoung Shim  2010-07-21  331  
0fffed27f92d9d Joonyoung Shim  2010-07-21  332  	keymap_data = pdata->keymap_data;
0fffed27f92d9d Joonyoung Shim  2010-07-21  333  	if (!keymap_data) {
0fffed27f92d9d Joonyoung Shim  2010-07-21  334  		dev_err(&pdev->dev, "no keymap data defined\n");
0fffed27f92d9d Joonyoung Shim  2010-07-21  335  		return -EINVAL;
0fffed27f92d9d Joonyoung Shim  2010-07-21  336  	}
0fffed27f92d9d Joonyoung Shim  2010-07-21  337  
0fffed27f92d9d Joonyoung Shim  2010-07-21  338  	if (!pdata->rows || pdata->rows > SAMSUNG_MAX_ROWS)
0fffed27f92d9d Joonyoung Shim  2010-07-21  339  		return -EINVAL;
0fffed27f92d9d Joonyoung Shim  2010-07-21  340  
0fffed27f92d9d Joonyoung Shim  2010-07-21  341  	if (!pdata->cols || pdata->cols > SAMSUNG_MAX_COLS)
0fffed27f92d9d Joonyoung Shim  2010-07-21  342  		return -EINVAL;
0fffed27f92d9d Joonyoung Shim  2010-07-21  343  
0fffed27f92d9d Joonyoung Shim  2010-07-21  344  	/* initialize the gpio */
0fffed27f92d9d Joonyoung Shim  2010-07-21  345  	if (pdata->cfg_gpio)
0fffed27f92d9d Joonyoung Shim  2010-07-21  346  		pdata->cfg_gpio(pdata->rows, pdata->cols);
0fffed27f92d9d Joonyoung Shim  2010-07-21  347  
0fffed27f92d9d Joonyoung Shim  2010-07-21  348  	row_shift = get_count_order(pdata->cols);
0fffed27f92d9d Joonyoung Shim  2010-07-21  349  	keymap_size = (pdata->rows << row_shift) * sizeof(keypad->keycodes[0]);
0fffed27f92d9d Joonyoung Shim  2010-07-21  350  
a57da34795452b Sachin Kamat    2012-11-27  351  	keypad = devm_kzalloc(&pdev->dev, sizeof(*keypad) + keymap_size,
a57da34795452b Sachin Kamat    2012-11-27  352  			      GFP_KERNEL);
a57da34795452b Sachin Kamat    2012-11-27  353  	input_dev = devm_input_allocate_device(&pdev->dev);
a57da34795452b Sachin Kamat    2012-11-27  354  	if (!keypad || !input_dev)
a57da34795452b Sachin Kamat    2012-11-27  355  		return -ENOMEM;
0fffed27f92d9d Joonyoung Shim  2010-07-21  356  
0fffed27f92d9d Joonyoung Shim  2010-07-21  357  	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
a57da34795452b Sachin Kamat    2012-11-27  358  	if (!res)
a57da34795452b Sachin Kamat    2012-11-27  359  		return -ENODEV;
0fffed27f92d9d Joonyoung Shim  2010-07-21  360  
a57da34795452b Sachin Kamat    2012-11-27 @361  	keypad->base = devm_ioremap(&pdev->dev, res->start, resource_size(res));
a57da34795452b Sachin Kamat    2012-11-27  362  	if (!keypad->base)
a57da34795452b Sachin Kamat    2012-11-27  363  		return -EBUSY;
0fffed27f92d9d Joonyoung Shim  2010-07-21  364  
a57da34795452b Sachin Kamat    2012-11-27  365  	keypad->clk = devm_clk_get(&pdev->dev, "keypad");
0fffed27f92d9d Joonyoung Shim  2010-07-21  366  	if (IS_ERR(keypad->clk)) {
0fffed27f92d9d Joonyoung Shim  2010-07-21  367  		dev_err(&pdev->dev, "failed to get keypad clk\n");
a57da34795452b Sachin Kamat    2012-11-27  368  		return PTR_ERR(keypad->clk);
0fffed27f92d9d Joonyoung Shim  2010-07-21  369  	}
0fffed27f92d9d Joonyoung Shim  2010-07-21  370  
aba828cee24f48 Thomas Abraham  2012-10-04  371  	error = clk_prepare(keypad->clk);
aba828cee24f48 Thomas Abraham  2012-10-04  372  	if (error) {
aba828cee24f48 Thomas Abraham  2012-10-04  373  		dev_err(&pdev->dev, "keypad clock prepare failed\n");
a57da34795452b Sachin Kamat    2012-11-27  374  		return error;
aba828cee24f48 Thomas Abraham  2012-10-04  375  	}
aba828cee24f48 Thomas Abraham  2012-10-04  376  
0fffed27f92d9d Joonyoung Shim  2010-07-21  377  	keypad->input_dev = input_dev;
48c98b1bb85a09 Mark Brown      2011-12-29  378  	keypad->pdev = pdev;
0fffed27f92d9d Joonyoung Shim  2010-07-21  379  	keypad->row_shift = row_shift;
0fffed27f92d9d Joonyoung Shim  2010-07-21  380  	keypad->rows = pdata->rows;
0fffed27f92d9d Joonyoung Shim  2010-07-21  381  	keypad->cols = pdata->cols;
48c98b1bb85a09 Mark Brown      2011-12-29  382  	keypad->stopped = true;
0fffed27f92d9d Joonyoung Shim  2010-07-21  383  	init_waitqueue_head(&keypad->wait);
0fffed27f92d9d Joonyoung Shim  2010-07-21  384  
41cc2aaf802ee2 Thomas Abraham  2013-06-25  385  	if (pdev->dev.of_node)
b3d6ac3e5f9374 Thomas Abraham  2011-11-02  386  		keypad->type = of_device_is_compatible(pdev->dev.of_node,
b3d6ac3e5f9374 Thomas Abraham  2011-11-02  387  					"samsung,s5pv210-keypad");
41cc2aaf802ee2 Thomas Abraham  2013-06-25  388  	else
b3d6ac3e5f9374 Thomas Abraham  2011-11-02  389  		keypad->type = platform_get_device_id(pdev)->driver_data;
b3d6ac3e5f9374 Thomas Abraham  2011-11-02  390  
0fffed27f92d9d Joonyoung Shim  2010-07-21  391  	input_dev->name = pdev->name;
0fffed27f92d9d Joonyoung Shim  2010-07-21  392  	input_dev->id.bustype = BUS_HOST;
0fffed27f92d9d Joonyoung Shim  2010-07-21  393  	input_dev->dev.parent = &pdev->dev;
0fffed27f92d9d Joonyoung Shim  2010-07-21  394  
0fffed27f92d9d Joonyoung Shim  2010-07-21  395  	input_dev->open = samsung_keypad_open;
0fffed27f92d9d Joonyoung Shim  2010-07-21  396  	input_dev->close = samsung_keypad_close;
0fffed27f92d9d Joonyoung Shim  2010-07-21  397  
1932811f426fee Dmitry Torokhov 2012-05-10  398  	error = matrix_keypad_build_keymap(keymap_data, NULL,
1932811f426fee Dmitry Torokhov 2012-05-10  399  					   pdata->rows, pdata->cols,
1932811f426fee Dmitry Torokhov 2012-05-10  400  					   keypad->keycodes, input_dev);
1932811f426fee Dmitry Torokhov 2012-05-10  401  	if (error) {
1932811f426fee Dmitry Torokhov 2012-05-10  402  		dev_err(&pdev->dev, "failed to build keymap\n");
aba828cee24f48 Thomas Abraham  2012-10-04  403  		goto err_unprepare_clk;
1932811f426fee Dmitry Torokhov 2012-05-10  404  	}
0fffed27f92d9d Joonyoung Shim  2010-07-21  405  
0fffed27f92d9d Joonyoung Shim  2010-07-21  406  	input_set_capability(input_dev, EV_MSC, MSC_SCAN);
1932811f426fee Dmitry Torokhov 2012-05-10  407  	if (!pdata->no_autorepeat)
1932811f426fee Dmitry Torokhov 2012-05-10  408  		__set_bit(EV_REP, input_dev->evbit);
0fffed27f92d9d Joonyoung Shim  2010-07-21  409  
1932811f426fee Dmitry Torokhov 2012-05-10  410  	input_set_drvdata(input_dev, keypad);
0fffed27f92d9d Joonyoung Shim  2010-07-21  411  
0fffed27f92d9d Joonyoung Shim  2010-07-21  412  	keypad->irq = platform_get_irq(pdev, 0);
0fffed27f92d9d Joonyoung Shim  2010-07-21  413  	if (keypad->irq < 0) {
0fffed27f92d9d Joonyoung Shim  2010-07-21  414  		error = keypad->irq;
a57da34795452b Sachin Kamat    2012-11-27  415  		goto err_unprepare_clk;
0fffed27f92d9d Joonyoung Shim  2010-07-21  416  	}
0fffed27f92d9d Joonyoung Shim  2010-07-21  417  
a57da34795452b Sachin Kamat    2012-11-27  418  	error = devm_request_threaded_irq(&pdev->dev, keypad->irq, NULL,
a57da34795452b Sachin Kamat    2012-11-27  419  					  samsung_keypad_irq, IRQF_ONESHOT,
a57da34795452b Sachin Kamat    2012-11-27  420  					  dev_name(&pdev->dev), keypad);
0fffed27f92d9d Joonyoung Shim  2010-07-21  421  	if (error) {
0fffed27f92d9d Joonyoung Shim  2010-07-21  422  		dev_err(&pdev->dev, "failed to register keypad interrupt\n");
a57da34795452b Sachin Kamat    2012-11-27  423  		goto err_unprepare_clk;
0fffed27f92d9d Joonyoung Shim  2010-07-21  424  	}
0fffed27f92d9d Joonyoung Shim  2010-07-21  425  
48c98b1bb85a09 Mark Brown      2011-12-29  426  	device_init_wakeup(&pdev->dev, pdata->wakeup);
48c98b1bb85a09 Mark Brown      2011-12-29  427  	platform_set_drvdata(pdev, keypad);
48c98b1bb85a09 Mark Brown      2011-12-29  428  	pm_runtime_enable(&pdev->dev);
48c98b1bb85a09 Mark Brown      2011-12-29  429  
0fffed27f92d9d Joonyoung Shim  2010-07-21  430  	error = input_register_device(keypad->input_dev);
0fffed27f92d9d Joonyoung Shim  2010-07-21  431  	if (error)
a57da34795452b Sachin Kamat    2012-11-27  432  		goto err_disable_runtime_pm;
0fffed27f92d9d Joonyoung Shim  2010-07-21  433  
b3d6ac3e5f9374 Thomas Abraham  2011-11-02  434  	if (pdev->dev.of_node) {
b3d6ac3e5f9374 Thomas Abraham  2011-11-02  435  		devm_kfree(&pdev->dev, (void *)pdata->keymap_data->keymap);
b3d6ac3e5f9374 Thomas Abraham  2011-11-02  436  		devm_kfree(&pdev->dev, (void *)pdata->keymap_data);
b3d6ac3e5f9374 Thomas Abraham  2011-11-02  437  		devm_kfree(&pdev->dev, (void *)pdata);
b3d6ac3e5f9374 Thomas Abraham  2011-11-02  438  	}
0fffed27f92d9d Joonyoung Shim  2010-07-21  439  	return 0;
0fffed27f92d9d Joonyoung Shim  2010-07-21  440  
a57da34795452b Sachin Kamat    2012-11-27  441  err_disable_runtime_pm:
48c98b1bb85a09 Mark Brown      2011-12-29  442  	pm_runtime_disable(&pdev->dev);
aba828cee24f48 Thomas Abraham  2012-10-04  443  err_unprepare_clk:
aba828cee24f48 Thomas Abraham  2012-10-04  444  	clk_unprepare(keypad->clk);
0fffed27f92d9d Joonyoung Shim  2010-07-21  445  	return error;
0fffed27f92d9d Joonyoung Shim  2010-07-21  446  }
0fffed27f92d9d Joonyoung Shim  2010-07-21  447  

:::::: The code at line 361 was first introduced by commit
:::::: a57da34795452bbe44b55e2b69c3ab6b117cc4b4 Input: samsung-keypad - switch to using managed resources

:::::: TO: Sachin Kamat <sachin.kamat@linaro.org>
:::::: CC: Dmitry Torokhov <dmitry.torokhov@gmail.com>

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


                 reply	other threads:[~2022-01-28 14:13 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=202201282217.feGQWIFA-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=kbuild-all@lists.01.org \
    --cc=keescook@chromium.org \
    --cc=linux-mm@kvack.org \
    --cc=masahiroy@kernel.org \
    --cc=nathan@kernel.org \
    --cc=ndesaulniers@google.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;
as well as URLs for NNTP newsgroup(s).