Thread (58 messages) 58 messages, 3 authors, 2012-06-11

Re: [PATCH 01/18] brcmsmac: remove PCIE() makro

From: Hauke Mehrtens <hauke@hauke-m.de>
Date: 2012-06-11 21:36:24

On 06/11/2012 09:51 AM, Arend van Spriel wrote:
On 06/10/2012 03:28 PM, Hauke Mehrtens wrote:
quoted
On 06/07/2012 10:05 PM, Arend van Spriel wrote:
quoted
On 06/06/2012 01:07 AM, Hauke Mehrtens wrote:
quoted
Instead of checking if there is a PCIe core on the bus, better check if
hosttype is PCIe.
I was under the impression that the macro was used for code needed when
the chip has a PCIe core instead of a PCI core. Maybe BCMA only supports
chips with PCIe core and in the respect checking the hosttype is
essentially the same, but I would not necessarily call it better.
The code from the initial submission to staging looked like this:

#define PCIE(si) ((BUSTYPE((si)->pub.bustype) == PCI_BUS) &&	\
		  ((si)->pub.buscoretype == PCIE_CORE_ID))

I have never seen a device using the AI bus (bcma) and a PCI core and
not a PCIe core and I do not think bcma will work with a PCI device or
core. The bustype in your old code is the same as the hosttype in bcma,
so under the assumption that all device are using PCIe that are coming
to this code the code now does the same as in the initial submission to
staging.
If bcma does not work with a PCI core, maybe we could/should add a
WARN_ON() in host_pci.c when it has no PCIe core.

Gr. AvS
That sounds good, for now bcma displays this warning if it detects a PCI
and not a PCIe card: "PCI card detected, report problems." adding a
warning looks better to me. bcma_core_pci_init() is just run for PCIE
cores and not for PCI cores, so I do not think PCI cores will work with
the current code.

Hauke
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help