2023-10-07 18:47:41

by Randy Dunlap

[permalink] [raw]
Subject: [RFC PATCH] ssb: relax SSB_EMBEDDED dependencies

This is a kconfig warning in a randconfig when CONFIG_PCI is not set:

WARNING: unmet direct dependencies detected for SSB_EMBEDDED
Depends on [n]: SSB [=y] && SSB_DRIVER_MIPS [=y] && SSB_PCICORE_HOSTMODE [=n]
Selected by [y]:
- BCM47XX_SSB [=y] && BCM47XX [=y]

This is caused by arch/mips/bcm47xx/Kconfig's symbol BCM47XX_SSB
selecting SSB_EMBEDDED when CONFIG_PCI is not set.

This warning can be prevented by having SSB_EMBEDDED not depend on
SSB_PCICORE_HOSTMODE, although some parts of SSB use PCI.

Signed-off-by: Randy Dunlap <[email protected]>
Cc: Michael Buesch <[email protected]>
Cc: [email protected]
---
Comments, thoughts?

I also tried changing arch/mips/bcm47xx/Kconfig's BCM47XX_SSB to
select SSB_EMBEDDED if PCI
but that results in build errors.

drivers/ssb/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff -- a/drivers/ssb/Kconfig b/drivers/ssb/Kconfig
--- a/drivers/ssb/Kconfig
+++ b/drivers/ssb/Kconfig
@@ -134,7 +134,7 @@ config SSB_SFLASH
# Assumption: We are on embedded, if we compile the MIPS core.
config SSB_EMBEDDED
bool
- depends on SSB_DRIVER_MIPS && SSB_PCICORE_HOSTMODE
+ depends on SSB_DRIVER_MIPS
default y

config SSB_DRIVER_EXTIF


2023-10-08 07:55:03

by Michael Büsch

[permalink] [raw]
Subject: Re: [RFC PATCH] ssb: relax SSB_EMBEDDED dependencies

Hi Randy,

thanks for the patch.

On Sat, 7 Oct 2023 11:24:43 -0700
Randy Dunlap <[email protected]> wrote:

> This is a kconfig warning in a randconfig when CONFIG_PCI is not set:
>
> WARNING: unmet direct dependencies detected for SSB_EMBEDDED
> Depends on [n]: SSB [=y] && SSB_DRIVER_MIPS [=y] &&
> SSB_PCICORE_HOSTMODE [=n] Selected by [y]:
> - BCM47XX_SSB [=y] && BCM47XX [=y]
>
> This is caused by arch/mips/bcm47xx/Kconfig's symbol BCM47XX_SSB
> selecting SSB_EMBEDDED when CONFIG_PCI is not set.
>
> This warning can be prevented by having SSB_EMBEDDED not depend on
> SSB_PCICORE_HOSTMODE, although some parts of SSB use PCI.

> diff -- a/drivers/ssb/Kconfig b/drivers/ssb/Kconfig
> --- a/drivers/ssb/Kconfig
> +++ b/drivers/ssb/Kconfig
> @@ -134,7 +134,7 @@ config SSB_SFLASH
> # Assumption: We are on embedded, if we compile the MIPS core.
> config SSB_EMBEDDED
> bool
> - depends on SSB_DRIVER_MIPS && SSB_PCICORE_HOSTMODE
> + depends on SSB_DRIVER_MIPS
> default y
>
> config SSB_DRIVER_EXTIF

Could we instead make SSB_EMBEDDED depend on SSB_PCICORE_HOSTMODE if
PCI!=n. Wouldn't that also solve the problem?

I don't fully remember how all this ssb config stuff works, but to
me adding a PCICORE->PCI dependency sounds safer against build
regressions in some other configurations.

What do you think?

--
Michael Büsch
https://bues.ch/


Attachments:
(No filename) (849.00 B)
OpenPGP digital signature

2023-10-08 14:09:02

by Randy Dunlap

[permalink] [raw]
Subject: Re: [RFC PATCH] ssb: relax SSB_EMBEDDED dependencies



On 10/8/23 00:35, Michael Büsch wrote:
> Hi Randy,
>
> thanks for the patch.
>
> On Sat, 7 Oct 2023 11:24:43 -0700
> Randy Dunlap <[email protected]> wrote:
>
>> This is a kconfig warning in a randconfig when CONFIG_PCI is not set:
>>
>> WARNING: unmet direct dependencies detected for SSB_EMBEDDED
>> Depends on [n]: SSB [=y] && SSB_DRIVER_MIPS [=y] &&
>> SSB_PCICORE_HOSTMODE [=n] Selected by [y]:
>> - BCM47XX_SSB [=y] && BCM47XX [=y]
>>
>> This is caused by arch/mips/bcm47xx/Kconfig's symbol BCM47XX_SSB
>> selecting SSB_EMBEDDED when CONFIG_PCI is not set.
>>
>> This warning can be prevented by having SSB_EMBEDDED not depend on
>> SSB_PCICORE_HOSTMODE, although some parts of SSB use PCI.
>
>> diff -- a/drivers/ssb/Kconfig b/drivers/ssb/Kconfig
>> --- a/drivers/ssb/Kconfig
>> +++ b/drivers/ssb/Kconfig
>> @@ -134,7 +134,7 @@ config SSB_SFLASH
>> # Assumption: We are on embedded, if we compile the MIPS core.
>> config SSB_EMBEDDED
>> bool
>> - depends on SSB_DRIVER_MIPS && SSB_PCICORE_HOSTMODE
>> + depends on SSB_DRIVER_MIPS
>> default y
>>
>> config SSB_DRIVER_EXTIF
>
> Could we instead make SSB_EMBEDDED depend on SSB_PCICORE_HOSTMODE if
> PCI!=n. Wouldn't that also solve the problem?
>
> I don't fully remember how all this ssb config stuff works, but to
> me adding a PCICORE->PCI dependency sounds safer against build
> regressions in some other configurations.
>
> What do you think?

I'll test it some and see how it works out.
Thanks.

--
~Randy

2023-10-09 06:13:23

by Randy Dunlap

[permalink] [raw]
Subject: Re: [RFC PATCH] ssb: relax SSB_EMBEDDED dependencies

Hi Michael,

On 10/8/23 07:08, Randy Dunlap wrote:
>
>
> On 10/8/23 00:35, Michael Büsch wrote:
>> Hi Randy,
>>
>> thanks for the patch.
>>
>> On Sat, 7 Oct 2023 11:24:43 -0700
>> Randy Dunlap <[email protected]> wrote:
>>
>>> This is a kconfig warning in a randconfig when CONFIG_PCI is not set:
>>>
>>> WARNING: unmet direct dependencies detected for SSB_EMBEDDED
>>> Depends on [n]: SSB [=y] && SSB_DRIVER_MIPS [=y] &&
>>> SSB_PCICORE_HOSTMODE [=n] Selected by [y]:
>>> - BCM47XX_SSB [=y] && BCM47XX [=y]
>>>
>>> This is caused by arch/mips/bcm47xx/Kconfig's symbol BCM47XX_SSB
>>> selecting SSB_EMBEDDED when CONFIG_PCI is not set.
>>>
>>> This warning can be prevented by having SSB_EMBEDDED not depend on
>>> SSB_PCICORE_HOSTMODE, although some parts of SSB use PCI.
>>
>>> diff -- a/drivers/ssb/Kconfig b/drivers/ssb/Kconfig
>>> --- a/drivers/ssb/Kconfig
>>> +++ b/drivers/ssb/Kconfig
>>> @@ -134,7 +134,7 @@ config SSB_SFLASH
>>> # Assumption: We are on embedded, if we compile the MIPS core.
>>> config SSB_EMBEDDED
>>> bool
>>> - depends on SSB_DRIVER_MIPS && SSB_PCICORE_HOSTMODE
>>> + depends on SSB_DRIVER_MIPS
>>> default y
>>>
>>> config SSB_DRIVER_EXTIF
>>
>> Could we instead make SSB_EMBEDDED depend on SSB_PCICORE_HOSTMODE if
>> PCI!=n. Wouldn't that also solve the problem?
>>
>> I don't fully remember how all this ssb config stuff works, but to
>> me adding a PCICORE->PCI dependency sounds safer against build
>> regressions in some other configurations.
>>
>> What do you think?
>
> I'll test it some and see how it works out.
> Thanks.

The following change seems to work and passes some testing.
Is this what you had in mind?
Thanks.

---
---
drivers/ssb/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff -- a/drivers/ssb/Kconfig b/drivers/ssb/Kconfig
--- a/drivers/ssb/Kconfig
+++ b/drivers/ssb/Kconfig
@@ -134,7 +134,7 @@ config SSB_SFLASH
# Assumption: We are on embedded, if we compile the MIPS core.
config SSB_EMBEDDED
bool
- depends on SSB_DRIVER_MIPS && SSB_PCICORE_HOSTMODE
+ depends on PCI=n || SSB_PCICORE_HOSTMODE
default y

config SSB_DRIVER_EXTIF

2023-10-10 18:45:59

by Michael Büsch

[permalink] [raw]
Subject: Re: [RFC PATCH] ssb: relax SSB_EMBEDDED dependencies

On Sun, 8 Oct 2023 23:12:49 -0700
Randy Dunlap <[email protected]> wrote:

> - depends on SSB_DRIVER_MIPS && SSB_PCICORE_HOSTMODE
> + depends on PCI=n || SSB_PCICORE_HOSTMODE

I thought about something like this:

depends on (SSB_DRIVER_MIPS && PCI=n) || (SSB_DRIVER_MIPS && SSB_PCICORE_HOSTMODE)

Would that solve the warning?

--
Michael Büsch
https://bues.ch/


Attachments:
(No filename) (849.00 B)
OpenPGP digital signature

2023-10-12 03:44:58

by Randy Dunlap

[permalink] [raw]
Subject: Re: [RFC PATCH] ssb: relax SSB_EMBEDDED dependencies

Hi Michael,

On 10/10/23 11:43, Michael Büsch wrote:
> On Sun, 8 Oct 2023 23:12:49 -0700
> Randy Dunlap <[email protected]> wrote:
>
>> - depends on SSB_DRIVER_MIPS && SSB_PCICORE_HOSTMODE
>> + depends on PCI=n || SSB_PCICORE_HOSTMODE
>
> I thought about something like this:
>
> depends on (SSB_DRIVER_MIPS && PCI=n) || (SSB_DRIVER_MIPS && SSB_PCICORE_HOSTMODE)
>
> Would that solve the warning?

Yes, that works as well, although I prefer to express it like this:

config SSB_EMBEDDED
bool
- depends on SSB_DRIVER_MIPS && SSB_PCICORE_HOSTMODE
+ depends on SSB_DRIVER_MIPS
+ depends on PCI=n || SSB_PCICORE_HOSTMODE
default y

although if you prefer the way that you have it above,
I'm OK with that also.

Thanks for your help.

--
~Randy

2023-10-12 17:40:48

by Michael Büsch

[permalink] [raw]
Subject: Re: [RFC PATCH] ssb: relax SSB_EMBEDDED dependencies

On Wed, 11 Oct 2023 20:44:49 -0700
Randy Dunlap <[email protected]> wrote:

> > I thought about something like this:
> >
> > depends on (SSB_DRIVER_MIPS && PCI=n) || (SSB_DRIVER_MIPS &&
> > SSB_PCICORE_HOSTMODE)
> >
> > Would that solve the warning?
>
> Yes, that works as well, although I prefer to express it like this:
>
> config SSB_EMBEDDED
> bool
> - depends on SSB_DRIVER_MIPS && SSB_PCICORE_HOSTMODE
> + depends on SSB_DRIVER_MIPS
> + depends on PCI=n || SSB_PCICORE_HOSTMODE
> default y

Acked-by: Michael Büsch <[email protected]>


--
Michael Büsch
https://bues.ch/


Attachments:
(No filename) (849.00 B)
OpenPGP digital signature