2018-05-09 16:42:52

by Larry Finger

[permalink] [raw]
Subject: [PATCH] ssb: Fix regression caused by disabling PCI cores on non-MIPS architecture

Some MPIS-based SoCs use chips driven by b43 for wireless capability.
When ssb is configured as a module, build errors happen on these
platforms as described in the commit 882164a4a928 ("ssb: Prevent build
of PCI host features in module"). Unfortunately that change leads to
the removal of code needed for correct operation on platforms that use
PCI cores on the chip bus. The fix allows ssb to be build as a module
for all architectures other than MIPS. This approach is ad-hoc, but it
is the same as done in commit a9e6d44ddecc ("ssb: Do not disable PCI
host on non-Mips").

This problem was reported and discussed in
https://bugzilla.redhat.com/show_bug.cgi?id=1572349.

Fixes: commit 882164a4a928 ("ssb: Prevent build of PCI host features in module")
Tested-by: Matt Redfearn <[email protected]>
Tested-by: Bruno Wolff III <[email protected]>
Cc: Michael Büsch <[email protected]>
Signed-off-by: Larry Finger <[email protected]>
---

Kalle,

This patch fixes the regression in 4.17 that was discussed on the
wireless mailing list. I'm not really happy about the ad-hoc rejection
of ssb as a module only on MIPS; however, that seems to be a unique
implementation of this hardware.

Larry

Michael,

Although I think your version of the patch is superior, this is the one that
Matt tested, thus I'm submitting this version.

Larry

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

diff --git a/drivers/ssb/Kconfig b/drivers/ssb/Kconfig
index 9371651d8017..3743533c8057 100644
--- a/drivers/ssb/Kconfig
+++ b/drivers/ssb/Kconfig
@@ -117,7 +117,7 @@ config SSB_SERIAL

config SSB_DRIVER_PCICORE_POSSIBLE
bool
- depends on SSB_PCIHOST && SSB = y
+ depends on SSB_PCIHOST && (SSB = y || !MIPS)
default y

config SSB_DRIVER_PCICORE
--
2.16.3


2018-05-10 10:44:43

by Rafał Miłecki

[permalink] [raw]
Subject: Re: [PATCH] ssb: Fix regression caused by disabling PCI cores on non-MIPS architecture

On 9 May 2018 at 18:42, Larry Finger <[email protected]> wrote:
> Some MPIS-based SoCs use chips driven by b43 for wireless capability.
> When ssb is configured as a module, build errors happen on these
> platforms as described in the commit 882164a4a928 ("ssb: Prevent build
> of PCI host features in module"). Unfortunately that change leads to
> the removal of code needed for correct operation on platforms that use
> PCI cores on the chip bus. The fix allows ssb to be build as a module
> for all architectures other than MIPS. This approach is ad-hoc, but it
> is the same as done in commit a9e6d44ddecc ("ssb: Do not disable PCI
> host on non-Mips").
>
> This problem was reported and discussed in
> https://bugzilla.redhat.com/show_bug.cgi?id=3D1572349.
>
> Fixes: commit 882164a4a928 ("ssb: Prevent build of PCI host features in m=
odule")
> Tested-by: Matt Redfearn <[email protected]>
> Tested-by: Bruno Wolff III <[email protected]>
> Cc: Michael B=C3=BCsch <[email protected]>
> Signed-off-by: Larry Finger <[email protected]>
> ---
>
> Kalle,
>
> This patch fixes the regression in 4.17 that was discussed on the
> wireless mailing list. I'm not really happy about the ad-hoc rejection
> of ssb as a module only on MIPS; however, that seems to be a unique
> implementation of this hardware.
>
> Larry
>
> Michael,
>
> Although I think your version of the patch is superior, this is the one t=
hat
> Matt tested, thus I'm submitting this version.
>
> Larry
>
> ---
> drivers/ssb/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/ssb/Kconfig b/drivers/ssb/Kconfig
> index 9371651d8017..3743533c8057 100644
> --- a/drivers/ssb/Kconfig
> +++ b/drivers/ssb/Kconfig
> @@ -117,7 +117,7 @@ config SSB_SERIAL
>
> config SSB_DRIVER_PCICORE_POSSIBLE
> bool
> - depends on SSB_PCIHOST && SSB =3D y
> + depends on SSB_PCIHOST && (SSB =3D y || !MIPS)
> default y
>
> config SSB_DRIVER_PCICORE

I don't like hacking SSB_DRIVER_PCICORE_POSSIBLE while the original
problem seems to be related to the SSB_PCICORE_HOSTMODE.

We should rather revert breaking commit & fix original problem properly.

--=20
Rafa=C5=82

2018-05-09 16:57:09

by Jeff Johnson

[permalink] [raw]
Subject: Re: [PATCH] ssb: Fix regression caused by disabling PCI cores on non-MIPS architecture

On 2018-05-09 09:42, Larry Finger wrote:
> Some MPIS-based SoCs use chips driven by b43 for wireless capability.
typo: MPIS=>MIPS

2018-05-09 21:53:33

by Rafał Miłecki

[permalink] [raw]
Subject: Re: [PATCH] ssb: Fix regression caused by disabling PCI cores on non-MIPS architecture

On 9 May 2018 at 18:42, Larry Finger <[email protected]> wrote:
> Some MPIS-based SoCs use chips driven by b43 for wireless capability.
> When ssb is configured as a module, build errors happen on these
> platforms as described in the commit 882164a4a928 ("ssb: Prevent build
> of PCI host features in module"). Unfortunately that change leads to
> the removal of code needed for correct operation on platforms that use
> PCI cores on the chip bus. The fix allows ssb to be build as a module
> for all architectures other than MIPS. This approach is ad-hoc, but it
> is the same as done in commit a9e6d44ddecc ("ssb: Do not disable PCI
> host on non-Mips").
>
> This problem was reported and discussed in
> https://bugzilla.redhat.com/show_bug.cgi?id=1572349.

I'll try to look at that tomorrow

2018-05-11 10:18:00

by Kalle Valo

[permalink] [raw]
Subject: Re: ssb: Fix regression caused by disabling PCI cores on non-MIPS architecture

Larry Finger <[email protected]> wrote:

> Some MPIS-based SoCs use chips driven by b43 for wireless capability.
> When ssb is configured as a module, build errors happen on these
> platforms as described in the commit 882164a4a928 ("ssb: Prevent build
> of PCI host features in module"). Unfortunately that change leads to
> the removal of code needed for correct operation on platforms that use
> PCI cores on the chip bus. The fix allows ssb to be build as a module
> for all architectures other than MIPS. This approach is ad-hoc, but it
> is the same as done in commit a9e6d44ddecc ("ssb: Do not disable PCI
> host on non-Mips").
>
> This problem was reported and discussed in
> https://bugzilla.redhat.com/show_bug.cgi?id=1572349.
>
> Fixes: commit 882164a4a928 ("ssb: Prevent build of PCI host features in module")
> Tested-by: Matt Redfearn <[email protected]>
> Tested-by: Bruno Wolff III <[email protected]>
> Cc: Michael Büsch <[email protected]>
> Signed-off-by: Larry Finger <[email protected]>

Dropped per Larry's request (on the other thread).

Patch set to Rejected.

--
https://patchwork.kernel.org/patch/10390053/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches

2018-05-09 18:57:36

by Larry Finger

[permalink] [raw]
Subject: Re: [PATCH] ssb: Fix regression caused by disabling PCI cores on non-MIPS architecture

On 05/09/2018 11:57 AM, Jeff Johnson wrote:
> On 2018-05-09 09:42, Larry Finger wrote:
>> Some MPIS-based SoCs use chips driven by b43 for wireless capability.
> typo: MPIS=>MIPS

Jeff,

Thanks. I will fix this with V2.

Larry