lkml.org 
[lkml]   [2006]   [Jul]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch 3/7] Check root chipset no_msi flag instead of all parent busses flags
On Wed, Jul 05, 2006 at 12:38:27AM -0400, Brice Goglin wrote:
> Grant Grundler wrote:
> > I still don't want the generic PCI code to assume a "root"
> > PCI Host bus controller was found after that loop.
>
> If I am not mistaken, we can use the following code to check whether we
> found a root chipset:
> unsigned cap;
> u16 val;
> u8 ext_type;
> cap = pci_find_capability(pdev, PCI_CAP_ID_EXP);

That might work fine on x86 boxen where firmware fakes all devices
to show up in PCI config space. That's not the case on many other
architectures. My whole point was the pdev doesn't exist for
a root chipset on those other arch's.

grant

> if (cap) {
> pci_read_config_word(pdev, cap + PCI_CAP_FLAGS, &val);
> ext_type = (val & PCI_EXP_FLAGS_TYPE) >> 4;
> if (ext_type == PCI_EXP_TYPE_ROOT_PORT)
> <check no_msi flag>
> }
>
> Brice
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-07-06 17:41    [W:0.048 / U:3.716 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site