lkml.org 
[lkml]   [2006]   [May]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: searching for pci busses
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Jon Smirl napsal(a):
> On 5/30/06, Greg KH <gregkh@suse.de> wrote:
>> On Mon, May 29, 2006 at 05:59:39PM -0400, Jeff Garzik wrote:
>> > Greg KH wrote:
>> > >On Sun, May 28, 2006 at 01:12:26AM +0159, Jiri Slaby wrote:
>> > >>Hello,
>> > >>
>> > >>I want to ask, if there is any function to call (as we debated with
>> > >>Jeff), which
>> > >>does something like this:
>> > >>1) I have some vendor/device ids in table
>> > >>2) I want to traverse raws of the table and compare to system
>> devices,
>> > >>and if
>> > >>found, stop and return pci_dev struct (or raw in the table).
>> > >
>> > >What's wrong with pci_match_id()?
>> > >
>> > >Or just using the pci_register_driver() function properly, which
>> handles
>> > >all of this logic for you?
>> >
>> > These aren't PCI devices proper. These are embedded non-PCI devices,
>> > which must search for an unrelated PCI device to figure out what
>> type of
>> > platform they are on.
>>
>> Ok, then use pci_match_id() or pci_get_device().
>
> This is how DRM does it...
>
> for (i = 0; driver->pci_driver.id_table[i].vendor != 0; i++) {
> pid = (struct pci_device_id
> *)&driver->pci_driver.id_table[i];
>
> pdev = NULL;
> /* pass back in pdev to account for multiple identical
> cards */
> while ((pdev =
> pci_get_subsys(pid->vendor, pid->device,
> pid->subvendor,
> pid->subdevice, pdev)) != NULL) {
> /* stealth mode requires a manual probe */
> pci_dev_get(pdev);
> drm_get_dev(pdev, pid, driver);
> }
> }
> return 0;
>
>
It's similar to code in my root post, so thanks for replies, it's maybe the best
way.

thanks,
- --
Jiri Slaby www.fi.muni.cz/~xslaby
~\-/~ jirislaby@gmail.com ~\-/~
B67499670407CE62ACC8 22A032CC55C339D47A7E
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org
iD8DBQFEfHqnMsxVwznUen4RAkQKAKCTZqlxtJwKTjlDP07ZAes9Jk5KOACgkSzt
zxyv1TitUGpv6rnppOiPyEI=
=3pfI
-----END PGP SIGNATURE-----
-
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-05-30 19:04    [from the cache]
©2003-2011 Jasper Spaans