Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 6 Jul 2013 10:19:40 -0300
From:      "Dr. Rolf Jansen" <rj@cyclaero.com>
To:        "Cedric GROSS" <cg@cgross.info>
Cc:        freebsd-drivers@freebsd.org
Subject:   Re: PCI Subdevice ID
Message-ID:  <67773F40-53B0-4572-8357-ADE11941C09B@cyclaero.com>
In-Reply-To: <001a01ce7a38$6ce642b0$46b2c810$@info>
References:  <000c01ce7a34$ebd49a30$c37dce90$@info> <8982B63C-525E-4B3E-9DA1-F2535AFE4A22@cyclaero.com> <001a01ce7a38$6ce642b0$46b2c810$@info>

next in thread | previous in thread | raw e-mail | index | archive | help
Am 06.07.2013 um 08:03 schrieb "Cedric GROSS" <cg@cgross.info>:

> ... I'm looking for a kernel function like 'pci_get_device' but for =
subdevice

The pci_get_*** macros are defined in /usr/src/sys/dev/pci/pcivar.h =
below line 220.

The expanded macro for getting the sub-device number is:

static __inline uint16_t pci_get_subdevice(device_t dev)
{
	uintptr_t v;
	BUS_READ_IVAR(device_get_parent(dev), dev, PCI_IVAR_SUBDEVICE, =
&v);
	return ((uint16_t) v);
}

Best regards

Rolf=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?67773F40-53B0-4572-8357-ADE11941C09B>