On Mon, 21 Sep 2015 11:04:19 +0200
Rafał Miłecki <zaj...@gmail.com> wrote:

> ssb bus can be found on various "host" devices like PCI/PCMCIA/SDIO.
> Every ssb bus contains cores AKA devices.
> The main idea is to have ssb driver scan/initialize bus and register
> ready-to-use cores. This way ssb drivers can operate on a single core
> mostly ignoring underlaying details.
> 
> For some reason PCMCIA support was split between ssb and b43. We got
> PCMCIA host device probing in b43, then bus scanning in ssb and then
> wireless core probing back in b43. The truth is it's very unlikely we
> will ever see PCMCIA ssb device with no 802.11 core but I still don't
> see any advantage of the current architecture.

The idea basically was that b43 is the only user of that code. So the
code was put there.

> With proposed change we get the same functionality with a simpler
> architecture, less Kconfig symbols, one killed EXPORT and hopefully
> cleaner b43. Since b43 supports both: ssb & bcma I prefer to keep ssb
> specific code in ssb driver.

I agree that this makes the architecture a bit cleaner. So this
basically looks good. I currently can't test it, because I don't have
that device here right now. In two weeks or so I'll probably be able to
test it, though.


> @@ -1464,6 +1463,12 @@ static int __init ssb_modinit(void)
>               /* don't fail SSB init because of this */
>               err = 0;
>       }
> +     err = ssb_host_pcmcia_init();
> +     if (err) {
> +             ssb_err("PCMCIA host initialization failed\n");
> +             /* don't fail SSB init because of this */

Why not? What's the point of not failing here?

> +             err = 0;
> +     }


> +static const struct pcmcia_device_id ssb_host_pcmcia_tbl[] = {
> +     PCMCIA_DEVICE_MANF_CARD(0x2D0, 0x448),
> +     PCMCIA_DEVICE_MANF_CARD(0x2D0, 0x476),
> +     PCMCIA_DEVICE_NULL,
> +};

This doesn't belong into ssb'c pcmcia.c, IMO.
It should be in a new file called b43_pcmcia_bridge.c, just like we have
b43_pci_bridge.c.
The bridge code technically (also for pci) doesn't belong into ssb. But
it makes kconfig simpler.

-- 
Michael

Attachment: pgpUissozXCJo.pgp
Description: OpenPGP digital signature

Reply via email to