Re: [PATCH v2 -next] spi: fix spi-sprd-adi build errors when SPI_SPRD_ADI=y and HWSPINLOCK=m

From: Randy Dunlap
Date: Mon Sep 25 2017 - 13:20:03 EST


On 09/25/17 09:12, Mark Brown wrote:
> On Fri, Sep 22, 2017 at 06:46:46PM -0700, Randy Dunlap wrote:
>> On 09/22/17 02:26, Mark Brown wrote:
>
>>> right thing - if we can use hwspinlocks in a module when they're enabled
>>> I'd expect to be able to build the stubs that way too.
>
>> Sorry, I'm not understanding what you are trying to say on that one.
>
>> HWSPINLOCK SPI_SPRD_ADI
>
>> but this combo is not allowed (with the patch) or causes build errors
>> (without the patch):
>> m y
>
> Why is that not just an || COMPILE_TEST dependency then? The dependency
> you're trying to introduce is weird and confusing, we shouldn't be
> having to do things like that.

It already uses COMPILE_TEST:

config SPI_SPRD_ADI
tristate "Spreadtrum ADI controller"
depends on ARCH_SPRD || COMPILE_TEST
help
ADI driver based on SPI for Spreadtrum SoCs.

but that allows build errors when SPI_SPRD_ADI=y and HWSPINLOCK=y.

As for the dependency that I am adding:
+ depends on HWSPINLOCK || HWSPINLOCK=n

that idiom is used over and over again in Kconfig files to prevent this kind of
build problem in loadable modules.


--
~Randy