PCI_FIND_EXT_CAPABIL(9) Hardware Interfaces PCI_FIND_EXT_CAPABIL(9)NAME
pci_find_ext_capability - Find an extended capability
SYNOPSIS
int pci_find_ext_capability(struct pci_dev * dev, int cap);
ARGUMENTS
dev
PCI device to query
cap
capability code
DESCRIPTION
Returns the address of the requested extended capability structure within the device's PCI configuration space or 0 if the device does not
support it. Possible values for cap:
PCI_EXT_CAP_ID_ERR Advanced Error Reporting PCI_EXT_CAP_ID_VC Virtual Channel PCI_EXT_CAP_ID_DSN Device Serial Number PCI_EXT_CAP_ID_PWR
Power Budgeting
COPYRIGHT Kernel Hackers Manual 3.10 June 2014 PCI_FIND_EXT_CAPABIL(9)
Check Out this Related Man Page
tran_getcap(9E) Driver Entry Points tran_getcap(9E)NAME
tran_getcap, tran_setcap - get/set SCSI transport capability
SYNOPSIS
#include <sys/scsi/scsi.h>
int prefixtran_getcap(struct scsi_address *ap, char *cap, int whom);
int prefixtran_setcap(struct scsi_address *ap, char *cap, int value,
int whom);
INTERFACE LEVEL
Solaris architecture specific (Solaris DDI).
PARAMETERS
ap Pointer to the scsi_address(9S) structure.
cap Pointer to the string capability identifier.
value Defines the new state of the capability.
whom Specifies whether all targets or only the specified target is affected.
DESCRIPTION
The tran_getcap() and tran_setcap() vectors in the scsi_hba_tran(9S) structure must be initialized during the HBA driver's attach(9E) to
point to HBA entry points to be called when a target driver calls scsi_ifgetcap(9F) and scsi_ifsetcap(9F).
tran_getcap() is called to get the current value of a capability specific to features provided by the HBA hardware or driver. The name of
the capability cap is the NULL terminated capability string.
If whom is non-zero, the request is for the current value of the capability defined for the target specified by the scsi_address(9S)
structure pointed to by ap; if whom is 0, all targets are affected; else, the target specified by the scsi_address structure pointed to by
ap is affected.
tran_setcap() is called to set the value of the capability cap to the value of value. If whom is non-zero, the capability should be set for
the target specified by the scsi_address(9S) structure pointed to by ap; if whom is 0, all targets are affected; else, the target specified
by the scsi_address structure pointed to by ap is affected. It is recommended that HBA drivers do not support setting capabilities for all
targets, that is, whom is 0.
A device may support only a subset of the defined capabilities.
Refer to scsi_ifgetcap(9F) for the list of defined capabilities.
HBA drivers should use scsi_hba_lookup_capstr(9F) to match cap against the canonical capability strings.
RETURN VALUES
tran_setcap() must return 1 if the capability was successfully set to the new value, 0 if the HBA driver does not support changing the
capability, and -1 if the capability was not defined.
tran_getcap() must return the current value of a capability or -1 if the capability was not defined.
SEE ALSO attach(9E), scsi_hba_attach(9F), scsi_hba_lookup_capstr(9F), scsi_ifgetcap(9F), scsi_address(9S), scsi_hba_tran(9S)
Writing Device Drivers
SunOS 5.11 30 Aug 1995 tran_getcap(9E)