linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* ERROR: modpost: "gpmc_omap_get_nand_ops" [drivers/mtd/nand/raw/omap2_nand.ko] undefined!
@ 2022-01-17 10:51 kernel test robot
  2022-01-17 12:35 ` Roger Quadros
  0 siblings, 1 reply; 5+ messages in thread
From: kernel test robot @ 2022-01-17 10:51 UTC (permalink / raw)
  To: Roger Quadros; +Cc: llvm, kbuild-all, linux-kernel, Krzysztof Kozlowski

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   0c947b893d69231a9add855939da7c66237ab44f
commit: dbcb124acebd8148e9e858a231f1798956dd3ca6 mtd: rawnand: omap2: Select GPMC device driver for ARCH_K3
date:   4 weeks ago
config: arm64-randconfig-r001-20220117 (https://download.01.org/0day-ci/archive/20220117/202201171805.5HeoR4rS-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 5f782d25a742302d25ef3c8b84b54f7483c2deb9)
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 arm64 cross compiling tool for clang build
        # apt-get install binutils-aarch64-linux-gnu
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=dbcb124acebd8148e9e858a231f1798956dd3ca6
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout dbcb124acebd8148e9e858a231f1798956dd3ca6
        # 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=arm64 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 >>, old ones prefixed by <<):

>> ERROR: modpost: "gpmc_omap_get_nand_ops" [drivers/mtd/nand/raw/omap2_nand.ko] undefined!

Kconfig warnings: (for reference only)
   WARNING: unmet direct dependencies detected for OMAP_GPMC
   Depends on MEMORY && OF_ADDRESS
   Selected by
   - MTD_NAND_OMAP2 && MTD && MTD_RAW_NAND && (ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST && HAS_IOMEM && ARCH_K3

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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: ERROR: modpost: "gpmc_omap_get_nand_ops" [drivers/mtd/nand/raw/omap2_nand.ko] undefined!
  2022-01-17 10:51 ERROR: modpost: "gpmc_omap_get_nand_ops" [drivers/mtd/nand/raw/omap2_nand.ko] undefined! kernel test robot
@ 2022-01-17 12:35 ` Roger Quadros
  2022-01-17 13:08   ` Krzysztof Kozlowski
  0 siblings, 1 reply; 5+ messages in thread
From: Roger Quadros @ 2022-01-17 12:35 UTC (permalink / raw)
  To: kernel test robot, Krzysztof Kozlowski
  Cc: llvm, kbuild-all, linux-kernel, Krzysztof Kozlowski

Hi,

On 17/01/2022 12:51, kernel test robot wrote:
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head:   0c947b893d69231a9add855939da7c66237ab44f
> commit: dbcb124acebd8148e9e858a231f1798956dd3ca6 mtd: rawnand: omap2: Select GPMC device driver for ARCH_K3
> date:   4 weeks ago
> config: arm64-randconfig-r001-20220117 (https://download.01.org/0day-ci/archive/20220117/202201171805.5HeoR4rS-lkp@intel.com/config)
> compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 5f782d25a742302d25ef3c8b84b54f7483c2deb9)
> 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 arm64 cross compiling tool for clang build
>         # apt-get install binutils-aarch64-linux-gnu
>         # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=dbcb124acebd8148e9e858a231f1798956dd3ca6
>         git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>         git fetch --no-tags linus master
>         git checkout dbcb124acebd8148e9e858a231f1798956dd3ca6
>         # 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=arm64 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 >>, old ones prefixed by <<):
> 
>>> ERROR: modpost: "gpmc_omap_get_nand_ops" [drivers/mtd/nand/raw/omap2_nand.ko] undefined!

The issue is that CONFIG_MEMORY is not set so OMAP_GPMC driver is not built causing the above undefined symbol error.

> 
> Kconfig warnings: (for reference only)
>    WARNING: unmet direct dependencies detected for OMAP_GPMC
>    Depends on MEMORY && OF_ADDRESS
>    Selected by
>    - MTD_NAND_OMAP2 && MTD && MTD_RAW_NAND && (ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST && HAS_IOMEM && ARCH_K3
> 

A possible fix would be to select MEMORY along with OMAP_GPMC at the below location

config MTD_NAND_OMAP2
        tristate "OMAP2, OMAP3, OMAP4 and Keystone NAND controller"
        depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || ARCH_K3 || COMPILE_TEST
        depends on HAS_IOMEM
	select MEMORY
^^
        select OMAP_GPMC if ARCH_K3 
        help
          Support for NAND flash on Texas Instruments OMAP2, OMAP3, OMAP4
          and Keystone platforms.


Is this OK?

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

cheers,
-roger

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: ERROR: modpost: "gpmc_omap_get_nand_ops" [drivers/mtd/nand/raw/omap2_nand.ko] undefined!
  2022-01-17 12:35 ` Roger Quadros
@ 2022-01-17 13:08   ` Krzysztof Kozlowski
  2022-01-18 11:51     ` Roger Quadros
  0 siblings, 1 reply; 5+ messages in thread
From: Krzysztof Kozlowski @ 2022-01-17 13:08 UTC (permalink / raw)
  To: Roger Quadros, kernel test robot; +Cc: llvm, kbuild-all, linux-kernel

On 17/01/2022 13:35, Roger Quadros wrote:
> Hi,
> 
> On 17/01/2022 12:51, kernel test robot wrote:
>> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
>> head:   0c947b893d69231a9add855939da7c66237ab44f
>> commit: dbcb124acebd8148e9e858a231f1798956dd3ca6 mtd: rawnand: omap2: Select GPMC device driver for ARCH_K3
>> date:   4 weeks ago
>> config: arm64-randconfig-r001-20220117 (https://download.01.org/0day-ci/archive/20220117/202201171805.5HeoR4rS-lkp@intel.com/config)
>> compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 5f782d25a742302d25ef3c8b84b54f7483c2deb9)
>> 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 arm64 cross compiling tool for clang build
>>         # apt-get install binutils-aarch64-linux-gnu
>>         # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=dbcb124acebd8148e9e858a231f1798956dd3ca6
>>         git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>>         git fetch --no-tags linus master
>>         git checkout dbcb124acebd8148e9e858a231f1798956dd3ca6
>>         # 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=arm64 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 >>, old ones prefixed by <<):
>>
>>>> ERROR: modpost: "gpmc_omap_get_nand_ops" [drivers/mtd/nand/raw/omap2_nand.ko] undefined!
> 
> The issue is that CONFIG_MEMORY is not set so OMAP_GPMC driver is not built causing the above undefined symbol error.
> 
>>
>> Kconfig warnings: (for reference only)
>>    WARNING: unmet direct dependencies detected for OMAP_GPMC
>>    Depends on MEMORY && OF_ADDRESS
>>    Selected by
>>    - MTD_NAND_OMAP2 && MTD && MTD_RAW_NAND && (ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST && HAS_IOMEM && ARCH_K3
>>
> 
> A possible fix would be to select MEMORY along with OMAP_GPMC at the below location
> 
> config MTD_NAND_OMAP2
>         tristate "OMAP2, OMAP3, OMAP4 and Keystone NAND controller"
>         depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || ARCH_K3 || COMPILE_TEST
>         depends on HAS_IOMEM
> 	select MEMORY
> ^^
>         select OMAP_GPMC if ARCH_K3 
>         help
>           Support for NAND flash on Texas Instruments OMAP2, OMAP3, OMAP4
>           and Keystone platforms.
> 
> 
> Is this OK?

Instead rather "select MEMORY if ARCH_K3"?

However I had impression that selecting a user-visible options is
discouraged, especially from within the drivers. What I would expect is
to select it from the machine/architecture code like you did before [1]
but was rejected by Nishanth.

https://lore.kernel.org/linux-devicetree/20211217161417.q2qwwlki7oieqzjd@headlock/

In such case, your choice (with if ARCH...?) seems sensible.
MTD_NAND_FSL_IFC already does it.

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: ERROR: modpost: "gpmc_omap_get_nand_ops" [drivers/mtd/nand/raw/omap2_nand.ko] undefined!
  2022-01-17 13:08   ` Krzysztof Kozlowski
@ 2022-01-18 11:51     ` Roger Quadros
  2022-01-18 12:01       ` Krzysztof Kozlowski
  0 siblings, 1 reply; 5+ messages in thread
From: Roger Quadros @ 2022-01-18 11:51 UTC (permalink / raw)
  To: Krzysztof Kozlowski, kernel test robot; +Cc: llvm, kbuild-all, linux-kernel

Hi Krzysztof,

On 17/01/2022 15:08, Krzysztof Kozlowski wrote:
> On 17/01/2022 13:35, Roger Quadros wrote:
>> Hi,
>>
>> On 17/01/2022 12:51, kernel test robot wrote:
>>> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
>>> head:   0c947b893d69231a9add855939da7c66237ab44f
>>> commit: dbcb124acebd8148e9e858a231f1798956dd3ca6 mtd: rawnand: omap2: Select GPMC device driver for ARCH_K3
>>> date:   4 weeks ago
>>> config: arm64-randconfig-r001-20220117 (https://download.01.org/0day-ci/archive/20220117/202201171805.5HeoR4rS-lkp@intel.com/config)
>>> compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 5f782d25a742302d25ef3c8b84b54f7483c2deb9)
>>> 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 arm64 cross compiling tool for clang build
>>>         # apt-get install binutils-aarch64-linux-gnu
>>>         # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=dbcb124acebd8148e9e858a231f1798956dd3ca6
>>>         git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>>>         git fetch --no-tags linus master
>>>         git checkout dbcb124acebd8148e9e858a231f1798956dd3ca6
>>>         # 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=arm64 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 >>, old ones prefixed by <<):
>>>
>>>>> ERROR: modpost: "gpmc_omap_get_nand_ops" [drivers/mtd/nand/raw/omap2_nand.ko] undefined!
>>
>> The issue is that CONFIG_MEMORY is not set so OMAP_GPMC driver is not built causing the above undefined symbol error.
>>
>>>
>>> Kconfig warnings: (for reference only)
>>>    WARNING: unmet direct dependencies detected for OMAP_GPMC
>>>    Depends on MEMORY && OF_ADDRESS
>>>    Selected by
>>>    - MTD_NAND_OMAP2 && MTD && MTD_RAW_NAND && (ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST && HAS_IOMEM && ARCH_K3
>>>
>>
>> A possible fix would be to select MEMORY along with OMAP_GPMC at the below location
>>
>> config MTD_NAND_OMAP2
>>         tristate "OMAP2, OMAP3, OMAP4 and Keystone NAND controller"
>>         depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || ARCH_K3 || COMPILE_TEST
>>         depends on HAS_IOMEM
>> 	select MEMORY
>> ^^
>>         select OMAP_GPMC if ARCH_K3 
>>         help
>>           Support for NAND flash on Texas Instruments OMAP2, OMAP3, OMAP4
>>           and Keystone platforms.
>>
>>
>> Is this OK?
> 
> Instead rather "select MEMORY if ARCH_K3"?

I think we should drop "if ARCH_K3" for both for simplicity as the driver is using gpmc_omap_get_nand_ops() from that driver.

> 
> However I had impression that selecting a user-visible options is
> discouraged, especially from within the drivers. What I would expect is
> to select it from the machine/architecture code like you did before [1]
> but was rejected by Nishanth.
> 
> https://lore.kernel.org/linux-devicetree/20211217161417.q2qwwlki7oieqzjd@headlock/

OMAP_GPMC option is not user visible. Else I would have just made MTD_NAND_OMAP2 depend on it.

> 
> In such case, your choice (with if ARCH...?) seems sensible.
> MTD_NAND_FSL_IFC already does it.
> 

cheers,
-roger

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: ERROR: modpost: "gpmc_omap_get_nand_ops" [drivers/mtd/nand/raw/omap2_nand.ko] undefined!
  2022-01-18 11:51     ` Roger Quadros
@ 2022-01-18 12:01       ` Krzysztof Kozlowski
  0 siblings, 0 replies; 5+ messages in thread
From: Krzysztof Kozlowski @ 2022-01-18 12:01 UTC (permalink / raw)
  To: Roger Quadros, kernel test robot; +Cc: llvm, kbuild-all, linux-kernel

On 18/01/2022 12:51, Roger Quadros wrote:
> Hi Krzysztof,
> 
> On 17/01/2022 15:08, Krzysztof Kozlowski wrote:
>> On 17/01/2022 13:35, Roger Quadros wrote:
>>> Hi,
>>>
>>> On 17/01/2022 12:51, kernel test robot wrote:
>>>> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
>>>> head:   0c947b893d69231a9add855939da7c66237ab44f
>>>> commit: dbcb124acebd8148e9e858a231f1798956dd3ca6 mtd: rawnand: omap2: Select GPMC device driver for ARCH_K3
>>>> date:   4 weeks ago
>>>> config: arm64-randconfig-r001-20220117 (https://download.01.org/0day-ci/archive/20220117/202201171805.5HeoR4rS-lkp@intel.com/config)
>>>> compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 5f782d25a742302d25ef3c8b84b54f7483c2deb9)
>>>> 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 arm64 cross compiling tool for clang build
>>>>         # apt-get install binutils-aarch64-linux-gnu
>>>>         # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=dbcb124acebd8148e9e858a231f1798956dd3ca6
>>>>         git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>>>>         git fetch --no-tags linus master
>>>>         git checkout dbcb124acebd8148e9e858a231f1798956dd3ca6
>>>>         # 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=arm64 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 >>, old ones prefixed by <<):
>>>>
>>>>>> ERROR: modpost: "gpmc_omap_get_nand_ops" [drivers/mtd/nand/raw/omap2_nand.ko] undefined!
>>>
>>> The issue is that CONFIG_MEMORY is not set so OMAP_GPMC driver is not built causing the above undefined symbol error.
>>>
>>>>
>>>> Kconfig warnings: (for reference only)
>>>>    WARNING: unmet direct dependencies detected for OMAP_GPMC
>>>>    Depends on MEMORY && OF_ADDRESS
>>>>    Selected by
>>>>    - MTD_NAND_OMAP2 && MTD && MTD_RAW_NAND && (ARCH_OMAP2PLUS || ARCH_KEYSTONE || COMPILE_TEST && HAS_IOMEM && ARCH_K3
>>>>
>>>
>>> A possible fix would be to select MEMORY along with OMAP_GPMC at the below location
>>>
>>> config MTD_NAND_OMAP2
>>>         tristate "OMAP2, OMAP3, OMAP4 and Keystone NAND controller"
>>>         depends on ARCH_OMAP2PLUS || ARCH_KEYSTONE || ARCH_K3 || COMPILE_TEST
>>>         depends on HAS_IOMEM
>>> 	select MEMORY
>>> ^^
>>>         select OMAP_GPMC if ARCH_K3 
>>>         help
>>>           Support for NAND flash on Texas Instruments OMAP2, OMAP3, OMAP4
>>>           and Keystone platforms.
>>>
>>>
>>> Is this OK?
>>
>> Instead rather "select MEMORY if ARCH_K3"?
> 
> I think we should drop "if ARCH_K3" for both for simplicity as the driver is using gpmc_omap_get_nand_ops() from that driver.
> 

Then it's fine.


Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-01-18 12:02 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-17 10:51 ERROR: modpost: "gpmc_omap_get_nand_ops" [drivers/mtd/nand/raw/omap2_nand.ko] undefined! kernel test robot
2022-01-17 12:35 ` Roger Quadros
2022-01-17 13:08   ` Krzysztof Kozlowski
2022-01-18 11:51     ` Roger Quadros
2022-01-18 12:01       ` Krzysztof Kozlowski

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).