|
Revision tags: v3.14.0, v3.13.0 |
|
| #
49efa87f |
| 30-May-2024 |
Kobayashi Daisuke <[email protected]> |
Add display function for cxl1.1 device link status information. (#183)
* Add display function for cxl1.1 device link status information.
* Modifications according to comments. Adding a descriptio
Add display function for cxl1.1 device link status information. (#183)
* Add display function for cxl1.1 device link status information.
* Modifications according to comments. Adding a description, Fix odd indent, and remove unnecessary statement.
show more ...
|
| #
89cb2ae8 |
| 27-May-2024 |
Martin Mares <[email protected]> |
sysfs: Include <libgen.h> for basename()
Otherwise, it fails to build with musl libc.
|
|
Revision tags: v3.12.0 |
|
| #
1660c737 |
| 29-Mar-2024 |
Martin Mares <[email protected]> |
Use C99 named initializers for struct pci_methods
|
| #
9b31027f |
| 12-Mar-2024 |
Martin Mares <[email protected]> |
sysfs: Avoid close() potentially clobbering errno
|
|
Revision tags: v3.11.1, v3.11.0 |
|
| #
30e9f21e |
| 29-Dec-2023 |
Martin Mares <[email protected]> |
Get rid of workarounds for Linux systems without pread/pwrite
Many things have changed since we introduced work-arounds for Linux systems with missing pread/pwrite in 1999 (if you are curious, it wa
Get rid of workarounds for Linux systems without pread/pwrite
Many things have changed since we introduced work-arounds for Linux systems with missing pread/pwrite in 1999 (if you are curious, it was in commit bc6346df8d89ece4814be7dff951ec1a7d259938).
I believe that it is supported by all reasonably recent Linux systems now. After all, pread() was already defined by POSIX.1-2001.
This should also fix problems with musl libc mentioned in GitHub issue #158.
show more ...
|
| #
869a9f66 |
| 14-Nov-2023 |
nsf.cd <[email protected]> |
Fix memory leak when fill flags has PCI_FILL_PARENT.
|
| #
878fea52 |
| 10-Sep-2023 |
Pali Rohár <[email protected]> |
Fix compile warnings about unused variables
sysfs.c: In function 'sysfs_read_vpd': sysfs.c:569:43: warning: unused parameter 'd' [-Wunused-parameter] static int sysfs_read_vpd(struct pci_dev *d, in
Fix compile warnings about unused variables
sysfs.c: In function 'sysfs_read_vpd': sysfs.c:569:43: warning: unused parameter 'd' [-Wunused-parameter] static int sysfs_read_vpd(struct pci_dev *d, int pos, byte *buf, int len) ^ sysfs.c:569:50: warning: unused parameter 'pos' [-Wunused-parameter] static int sysfs_read_vpd(struct pci_dev *d, int pos, byte *buf, int len) ^~~ sysfs.c:569:61: warning: unused parameter 'buf' [-Wunused-parameter] static int sysfs_read_vpd(struct pci_dev *d, int pos, byte *buf, int len) ^~~ sysfs.c:569:70: warning: unused parameter 'len' [-Wunused-parameter] static int sysfs_read_vpd(struct pci_dev *d, int pos, byte *buf, int len) ^~~
show more ...
|
| #
61829219 |
| 18-Jun-2023 |
Martin Mares <[email protected]> |
Update license comments and added SPDX license identifiers
Previously, the only information about the specific version of GPL was present in the README and individual source files mentioned only GPL
Update license comments and added SPDX license identifiers
Previously, the only information about the specific version of GPL was present in the README and individual source files mentioned only GPL alone.
Let us update all copyright comments to explicitly say "GPL v2+" and also include the machine readable SPDX license identifier.
show more ...
|
|
Revision tags: v3.10.0, v3.9.0, v3.8.0 |
|
| #
9b744f76 |
| 27-Dec-2021 |
Pali Rohár <[email protected]> |
libpci: sysfs: Implement support for PCI_FILL_DRIVER
In sysfs is driver name stored as symlink path of "driver" node.
|
| #
e9e7fab1 |
| 28-Dec-2021 |
Pali Rohár <[email protected]> |
libpci: sysfs: Implement support for PCI_FILL_PARENT
|
| #
a936caf6 |
| 27-Dec-2021 |
Pali Rohár <[email protected]> |
libpci: sysfs: Implement CLASS_EXT and SUBSYS support
In sysfs there are optional nodes with this information.
|
| #
119c1376 |
| 20-Nov-2021 |
Pali Rohár <[email protected]> |
libpci: Add support for filling bridge resources
Extend libpci API and ABI to fill bridge resources from sysfs.
|
| #
8e9299e4 |
| 21-Jan-2022 |
Martin Mares <[email protected]> |
Simplified pci_fill_info() and friends
Previously, we kept track of which fields were already filled, which was quite brittle.
Now we keep only the set of already known fields in struct pci_dev. We
Simplified pci_fill_info() and friends
Previously, we kept track of which fields were already filled, which was quite brittle.
Now we keep only the set of already known fields in struct pci_dev. We check if the current field is needed against this information.
Not only this simplifies the whole thing, but it also enables future back-ends to call pci_fill_info() recursively as needed.
show more ...
|
|
Revision tags: v3.7.0 |
|
| #
74b25eca |
| 26-May-2020 |
Martin Mares <[email protected]> |
sysfs: Adjusted handling of PCI_FILL_IOMMU_GROUP to recent flag semantics
|
| #
a5065438 |
| 28-Feb-2020 |
Alex Xu (Hello71) <[email protected]> |
lspci: Print IOMMU groups with -v
|
| #
82c06b47 |
| 25-May-2020 |
Martin Mares <[email protected]> |
Library: Big cleanup of pci_fill_info()
There was a lot of minor issues in the implementation of the fill_info call-back in various back-ends. Most importantly, semantics of pci_dev-> known_fields w
Library: Big cleanup of pci_fill_info()
There was a lot of minor issues in the implementation of the fill_info call-back in various back-ends. Most importantly, semantics of pci_dev-> known_fields was not formally defined and it was implemented inconsistently.
We now define known_fields as the set of fields which were already obtained during the lifetime of the pci_dev. We never consider known fields which are not supported by the back-end. All fields which are unsupported by either the back-end, the OS, or the particular device, are guaranteed to have sensible default values (0 or NULL). Also, bit masks are always unsigned except for the signature of pci_fill_info() which should be preferably kept stable.
All back-ends and the pci_generic_fill_info() function have been changed to follow this semantics.
In the sysfs back-end, we read as few attributes as possible during device initialization, so applications which use pci_get_dev() are not slowed down unnecessarily.
In the Hurd back-end, we also respect the buscentric mode.
show more ...
|
|
Revision tags: v3.6.4, v3.6.3, v3.6.2, v3.6.1 |
|
| #
f15db375 |
| 12-Jul-2018 |
Martin Mares <[email protected]> |
Sysfs: fixed sysfs_deref_link()
The function canonicalize_file_name() is GLIBC-specific, use realpath() instead, which is available also on MUSL libc.
Also, it leaked memory.
|
|
Revision tags: v3.6.0 |
|
| #
62bd0c5c |
| 26-Jun-2018 |
Martin Mares <[email protected]> |
Convert other string properties to the generic mechanism
This removes the need of explicit memory management and fixes PCI_FILL_RESCAN.
To keep backward compatibility, I am keeping the raw pointers
Convert other string properties to the generic mechanism
This removes the need of explicit memory management and fixes PCI_FILL_RESCAN.
To keep backward compatibility, I am keeping the raw pointers in struct pci_dev, but they point inside the pci_property instead of separately allocated memory.
show more ...
|
| #
c02d903c |
| 26-Jun-2018 |
Martin Mares <[email protected]> |
Created a generic interface for device properties
Introduction of device tree node properties broke library ABI.
I gave up on creating new symbol versions whenever we add a new device property, so
Created a generic interface for device properties
Introduction of device tree node properties broke library ABI.
I gave up on creating new symbol versions whenever we add a new device property, so I introduced a generic property interface with which new string properties can be added while keeping ABI compatibility.
show more ...
|
| #
6d701ce3 |
| 15-May-2018 |
Oliver O'Halloran <[email protected]> |
Add device-tree node path to the verbose output
Adds the path of the device-tree node of a PCI device to the lspci -v output, like so:
0021:00:00.0 PCI bridge: IBM Device 03dc (prog-if 00 [Normal d
Add device-tree node path to the verbose output
Adds the path of the device-tree node of a PCI device to the lspci -v output, like so:
0021:00:00.0 PCI bridge: IBM Device 03dc (prog-if 00 [Normal decode]) DT Node: /sys/firmware/devicetree/base/pciex@3fffe41100000/pci@0
This is added as a generic property to struct pci_device and populated by the sysfs backend. Other platforms may find it useful though.
Signed-off-by: Oliver O'Halloran <[email protected]>
show more ...
|
|
Revision tags: v3.5.6, v3.5.5, v3.5.4, v3.5.3, v3.5.2, v3.5.1, v3.5.0 |
|
| #
4186391b |
| 14-May-2016 |
Martin Mares <[email protected]> |
Domains: Legacy 16-bit domain numbers are maintained in generic code
Previously, backward compatibility was kept only with the sysfs back-end.
Also, domains which do not fit in 16 bits are replaced
Domains: Legacy 16-bit domain numbers are maintained in generic code
Previously, backward compatibility was kept only with the sysfs back-end.
Also, domains which do not fit in 16 bits are replaced by 0xffff.
show more ...
|
| #
ab61451d |
| 17-Mar-2016 |
Keith Busch <[email protected]> |
pciutils: Add support for 32-bit PCI domains
This adds support for new host bridges that may create PCI domain number values requiring more than 16 bits. The new domain 32-bit integer is signed to a
pciutils: Add support for 32-bit PCI domains
This adds support for new host bridges that may create PCI domain number values requiring more than 16 bits. The new domain 32-bit integer is signed to allow -1 for "any", and is sufficient as the domain number will never require the full 32-bits.
The domain field is appended at the end of struct pci_dev, and the current location of the 16-bit domain remains for compatibility. The domain number is truncated and copied into the legacy domain location so existing applications linking to the library will continue to work without modification. We accept that these applications may not work correctly on machines with host bridges exporting 32-bit domains.
In order to force new programs to link to the new ABI, the pci_init function call is versioned in this commit.
Signed-off-by: Keith Busch <[email protected]>
show more ...
|
| #
558f736b |
| 12-Feb-2016 |
Sean O. Stalley <[email protected]> |
Add support for enhanced allocation regions
Append [enhanced] to Regions that contain the BEI flag in sysfs. To do this, we need to add the resource flags to the pci_dev struct. This struct is passe
Add support for enhanced allocation regions
Append [enhanced] to Regions that contain the BEI flag in sysfs. To do this, we need to add the resource flags to the pci_dev struct. This struct is passed through the libpci API, so we increment the API version number.
Don't truncate least significant bits of the region size. ex: a 2000 byte region should display [size=2000] instead of [size=1K]
Signed-off-by: Sean O. Stalley <[email protected]>
show more ...
|
|
Revision tags: v3.4.1, v3.4.0 |
|
| #
e5bb28af |
| 14-Sep-2015 |
Martin Mares <[email protected]> |
Sysfs: Read failures of optional attributes are not fatal
Ameya Palande reported that with some kernels, reads of such attributes fail on some hardware. He suggested to ignore read failures complete
Sysfs: Read failures of optional attributes are not fatal
Ameya Palande reported that with some kernels, reads of such attributes fail on some hardware. He suggested to ignore read failures completely, but I decided to turn the errors into warnings in such cases. At least, the user will know that something fishy is going on.
show more ...
|
| #
9c876849 |
| 14-Sep-2015 |
Martin Mares <[email protected]> |
Oops, numa_node should not be a mandatory attribute
|