SHA256
1
0
forked from pool/pciutils

Accepting request 971819 from home:polslinux:branches:Base:System

- Update to 3.8.0:
	* Filters can now match devices based on partially specified
	  class code and also on the programming interface.
	* Reporting of link speeds, power limits, and virtual function tags
	  has been updated to the current PCIe specification.
	* We decode the Data Object Exchange capability.
	* Bus mapping mode works in non-zero domains.
	* pci_fill_info() can fetch more fields: bridge bases, programming
	  interface, revision, subsystem vendor and device ID, OS driver,
	  and also parent bridge. Internally, the implementation was rewritten,
	  significantly reducing the number of corner cases to be handled.
  * If the configuration space is not readable for some reason
	  (e.g., the cfgmgr32 back-end, but also badly implemented sleep mode
	  of some devices), lspci prints only information provided by the OS.
	* The Hurd back-end was greatly improved thanks to Joan Lledó.
	* Various minor bug fixes and improvements.
	* As usually, updated pci.ids to the current snapshot of the database.
- Rebase pciutils-3.1.9_pkgconfig.patch
- Rebase pciutils-ocloexec.patch
- Rebase pciutils-endianh.patch
- Drop pciutils-add-decode-support-for-RCECs.patch

OBS-URL: https://build.opensuse.org/request/show/971819
OBS-URL: https://build.opensuse.org/package/show/Base:System/pciutils?expand=0&rev=82
This commit is contained in:
Peter Simons 2022-04-25 05:35:50 +00:00 committed by Git OBS Bridge
parent 3440e81f9e
commit 697120b3c8
11 changed files with 134 additions and 529 deletions

View File

@ -1,12 +1,10 @@
Index: pciutils-3.6.4/lib/libpci.pc.in
===================================================================
--- pciutils-3.6.4.orig/lib/libpci.pc.in
+++ pciutils-3.6.4/lib/libpci.pc.in
@@ -6,6 +6,5 @@ idsdir=@IDSDIR@
--- pciutils-3.8.0/lib/libpci.pc.in.orig 2022-04-21 09:11:03.305072096 +0200
+++ pciutils-3.8.0/lib/libpci.pc.in 2022-04-21 09:13:06.166040080 +0200
@@ -6,6 +6,5 @@
Name: libpci
Description: libpci
Version: @VERSION@
-Libs: -L${libdir} -lpci
+Libs: -lpci @LDLIBS@
Libs.private: @LDLIBS@
Libs.private: @LDLIBS@ @WITH_LIBS@
-Cflags: -I${includedir}

View File

@ -1,16 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEVVj5OZzXg2hQVTxuwo54R+1w+C0FAl7S2+8ACgkQwo54R+1w
+C22/g/+J/u3PELnEe24ys2Wd6Qh3zRc6/llfRpNppgrhZFtSS3pePKKkruC9wKX
NlF/Uhox9WU1IfxZQeRFsXfvu/Jx/wu+OcVIYpvh4UAZN6DEEmo6crzCbywh90mI
9HB/SUlpR+30t+NBYMbB8Z9Q0z3FvWA/RAInPLO5TtHFD7ZS5nZbD5sy/+hVda8f
AMRlG9LZGdh21VliICAejH5HadX+q/Vzb4MP+ptAr2EOrYOkFh2D9RKqqWdwdlxz
30/BZRv8b5dHZzNVLZmorlfLSkwTJvjdJYMBbrnoaLV6hMcM6gwzqRQ7iilUQwIi
EOGh6zlSFiap3V9+gJ1kZWuPTFS/ciKscj8h0sAd8UPt473cp/M9Ch7d76kLn4ma
098ZtcSGev3SWM2BfOVg6EEmQfItMzimnwxN6NmRcJkWjH+vrMlCtP2ZmH8NpHEr
RORG8VUGQI3oIairB4l80dNgFBV2iAe2+Zqj04Lgr6pkzrj1CZaX5fqLWFVafbnJ
uxDjDRCmzAbFQplmF78IUvzSFwgC42nvistyO9AmQdatAK6wiGLZvCzlxb8ysmml
qCglfXkD43uVG4QP5vES0gLJQ1rgPijAnjucewWnu9Yt8R3gDCjdt+prZVntbnCw
5OJypK205gsY8CqO5uWhwK+1ohXrX2I11tUk5zxTOogyt5IljLg=
=hasF
-----END PGP SIGNATURE-----

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9d40b97be8b6a2cdf96aead5a61881d1f7e4e0da9544a9bac4fba1ae9dcd40eb
size 371612

16
pciutils-3.8.0.tar.sign Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEVVj5OZzXg2hQVTxuwo54R+1w+C0FAmJdmFYACgkQwo54R+1w
+C2wbhAAmru84gBjG2ioLoBvvnXV0xhF9mQSUjNCOW0+p6dtRGAs2PdSL67lhD14
TwmiERpfEtawpX0C1NG5r2DYqROF8M0kodq8ediqnWZ8ivlctSoNB88lFPHArP3l
eqHDxUq6j66vOMODrlGthpcFBxwaR0OoJFOuszcclKUCRFPrgGNX12WOiB1PrfZz
elts9xp/wTeyw6CQjMA4Gm8fry3upsiP/9auu5XsLgt7YTXY+E4bqu302ImOsMKJ
JEWj0R8F4TOP9Ca7pgKVArvYCeowwkYFXdwY6KQ1wd1hWRFkl1LrqFY829T+LC/b
vFTNWmC2QEBuLbPSjSeeKuIbyxUACxmKwEw2jDWjKDXOOOogvDsUnig8HF4Gto41
LECEiEGzB8a0vkl4NAI+QwyPOCW5KdNm8udCYH1/vBXVL2jhoixYg9DuioBIJkwz
zqfpF3uPqqOB72iOY1Z7EeUTGb0Z+KeZ0qKX03WH2bHpT1Wdm9f2Gsa1T36FS5eC
oZANyo5NSU+3lojAUNxYvUST0HjanuyuhuBeneZQFv9gOvMmXUAf+9oQaGPa899t
FD1Z9MCbn3hcSkvhxgpsUtY0FusFAcKSA4Px5hpAcewwMdVyZ/bPl3nT+R3uR2ng
O2qPT1A5PHF3Mv1VVJW8S+TGvZcW+G0VJ9Xmm7YXbAXzOEd9gGo=
=y4kb
-----END PGP SIGNATURE-----

3
pciutils-3.8.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:91edbd0429a84705c9ad156d4ff38ccc724d41ea54c4c5b88e38e996f8a34f05
size 410144

View File

@ -1,422 +0,0 @@
diff --git a/lib/header.h b/lib/header.h
index 472816e..57a9343 100644
--- a/lib/header.h
+++ b/lib/header.h
@@ -219,7 +219,7 @@
#define PCI_EXT_CAP_ID_PB 0x04 /* Power Budgeting */
#define PCI_EXT_CAP_ID_RCLINK 0x05 /* Root Complex Link Declaration */
#define PCI_EXT_CAP_ID_RCILINK 0x06 /* Root Complex Internal Link Declaration */
-#define PCI_EXT_CAP_ID_RCECOLL 0x07 /* Root Complex Event Collector */
+#define PCI_EXT_CAP_ID_RCEC 0x07 /* Root Complex Event Collector */
#define PCI_EXT_CAP_ID_MFVC 0x08 /* Multi-Function Virtual Channel */
#define PCI_EXT_CAP_ID_VC2 0x09 /* Virtual Channel (2nd ID) */
#define PCI_EXT_CAP_ID_RCRB 0x0a /* Root Complex Register Block */
@@ -1048,6 +1048,12 @@
#define PCI_RCLINK_LINK_ADDR 8 /* Link Entry: Address (64-bit) */
#define PCI_RCLINK_LINK_SIZE 16 /* Link Entry: sizeof */
+/* Root Complex Event Collector Endpoint Association */
+#define PCI_RCEC_EP_CAP_VER(reg) (((reg) >> 16) & 0xf)
+#define PCI_RCEC_BUSN_REG_VER 0x02 /* as per PCIe sec 7.9.10.1 */
+#define PCI_RCEC_RCIEP_BMAP 0x0004 /* as per PCIe sec 7.9.10.2 */
+#define PCI_RCEC_BUSN_REG 0x0008 /* as per PCIe sec 7.9.10.3 */
+
/* PCIe Vendor-Specific Capability */
#define PCI_EVNDR_HEADER 4 /* Vendor-Specific Header */
#define PCI_EVNDR_REGISTERS 8 /* Vendor-Specific Registers */
diff --git a/ls-ecaps.c b/ls-ecaps.c
index e71209e..99c55ff 100644
--- a/ls-ecaps.c
+++ b/ls-ecaps.c
@@ -634,6 +634,61 @@ cap_rclink(struct device *d, int where)
}
}
+static void
+cap_rcec(struct device *d, int where)
+{
+ printf("Root Complex Event Collector Endpoint Association\n");
+ if (verbose < 2)
+ return;
+
+ if (!config_fetch(d, where, 12))
+ return;
+
+ u32 hdr = get_conf_long(d, where);
+ byte cap_ver = PCI_RCEC_EP_CAP_VER(hdr);
+ u32 bmap = get_conf_long(d, where + PCI_RCEC_RCIEP_BMAP);
+ printf("\t\tRCiEPBitmap: ");
+ if (bmap)
+ {
+ int prevmatched=0;
+ int adjcount=0;
+ int prevdev=0;
+ printf("RCiEP at Device(s):");
+ for (int dev=0; dev < 32; dev++)
+ {
+ if (BITS(bmap, dev, 1))
+ {
+ if (!adjcount)
+ printf("%s %u", (prevmatched) ? "," : "", dev);
+ adjcount++;
+ prevdev=dev;
+ prevmatched=1;
+ }
+ else
+ {
+ if (adjcount > 1)
+ printf("-%u", prevdev);
+ adjcount=0;
+ }
+ }
+ }
+ else
+ printf("%s", (verbose > 2) ? "00000000 [none]" : "[none]");
+ printf("\n");
+
+ if (cap_ver < PCI_RCEC_BUSN_REG_VER)
+ return;
+
+ u32 busn = get_conf_long(d, where + PCI_RCEC_BUSN_REG);
+ u8 lastbusn = BITS(busn, 16, 8);
+ u8 nextbusn = BITS(busn, 8, 8);
+
+ if ((lastbusn == 0x00) && (nextbusn == 0xff))
+ printf("\t\tAssociatedBusNumbers: %s\n", (verbose > 2) ? "ff-00 [none]" : "[none]");
+ else
+ printf("\t\tAssociatedBusNumbers: %02x-%02x\n", nextbusn, lastbusn );
+}
+
static void
cap_dvsec_cxl(struct device *d, int where)
{
@@ -991,8 +1046,8 @@ show_ext_caps(struct device *d, int type)
case PCI_EXT_CAP_ID_RCILINK:
printf("Root Complex Internal Link <?>\n");
break;
- case PCI_EXT_CAP_ID_RCECOLL:
- printf("Root Complex Event Collector <?>\n");
+ case PCI_EXT_CAP_ID_RCEC:
+ cap_rcec(d, where);
break;
case PCI_EXT_CAP_ID_MFVC:
printf("Multi-Function Virtual Channel <?>\n");
diff --git a/setpci.c b/setpci.c
index 90ca726..2cb70fa 100644
--- a/setpci.c
+++ b/setpci.c
@@ -350,7 +350,7 @@ static const struct reg_name pci_reg_names[] = {
{ 0x20004, 0, 0, "ECAP_PB" },
{ 0x20005, 0, 0, "ECAP_RCLINK" },
{ 0x20006, 0, 0, "ECAP_RCILINK" },
- { 0x20007, 0, 0, "ECAP_RCECOLL" },
+ { 0x20007, 0, 0, "ECAP_RCEC" },
{ 0x20008, 0, 0, "ECAP_MFVC" },
{ 0x20009, 0, 0, "ECAP_VC2" },
{ 0x2000a, 0, 0, "ECAP_RBCB" },
diff --git a/tests/cap-rcec b/tests/cap-rcec
new file mode 100644
index 0000000..836d9a1
--- /dev/null
+++ b/tests/cap-rcec
@@ -0,0 +1,299 @@
+6a:00.4 Generic system peripheral [0807]: Intel Corporation Device 0b23
+ Subsystem: Intel Corporation Device 0000
+ Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx-
+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
+ Interrupt: pin A routed to IRQ 255
+ NUMA node: 0
+ Capabilities: [40] Express (v2) Root Complex Event Collector, MSI 00
+ DevCap: MaxPayload 512 bytes, PhantFunc 0
+ ExtTag- RBE-
+ DevCtl: CorrErr+ NonFatalErr+ FatalErr+ UnsupReq-
+ RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
+ MaxPayload 128 bytes, MaxReadReq 128 bytes
+ DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr- TransPend-
+ RootCap: CRSVisible-
+ RootCtl: ErrCorrectable+ ErrNon-Fatal+ ErrFatal+ PMEIntEna- CRSVisible-
+ RootSta: PME ReqID 0000, PMEStatus- PMEPending-
+ DevCap2: Completion Timeout: Not Supported, TimeoutDis- NROPrPrP- LTR-
+ 10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt- EETLPPrefix-
+ EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
+ FRS-
+ DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR- OBFF Disabled,
+ Capabilities: [80] Power Management version 3
+ Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
+ Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
+ Capabilities: [90] MSI: Enable- Count=1/1 Maskable+ 64bit-
+ Address: 00000000 Data: 0000
+ Masking: 00000000 Pending: 00000000
+ Capabilities: [100 v1] Advanced Error Reporting
+ UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
+ UEMsk: DLP- SDES+ TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq+ ACSViol-
+ UESvrt: DLP+ SDES- TLP+ FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
+ CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr-
+ CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
+ AERCap: First Error Pointer: 00, ECRCGenCap- ECRCGenEn- ECRCChkCap- ECRCChkEn-
+ MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
+ HeaderLog: 00000000 00000000 00000000 00000000
+ RootCmd: CERptEn- NFERptEn- FERptEn-
+ RootSta: CERcvd- MultCERcvd- UERcvd- MultUERcvd-
+ FirstFatal- NonFatalMsg- FatalMsg- IntMsg 0
+ ErrorSrc: ERR_COR: 0000 ERR_FATAL/NONFATAL: 0000
+ Capabilities: [160 v2] Root Complex Event Collector Endpoint Association
+ RCiEPBitmap: RCiEP at Device(s): 1, 6, 8-10, 12, 15
+ AssociatedBusNumbers: 02-08
+00: 86 80 23 0b 00 01 10 00 00 00 07 08 00 00 00 00
+10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+20: 00 00 00 00 00 00 00 00 00 00 00 00 86 80 00 00
+30: 00 00 00 00 40 00 00 00 00 00 00 00 ff 01 00 00
+40: 10 80 a2 00 02 00 00 00 07 00 00 00 00 00 00 00
+50: 00 00 00 00 00 00 00 00 00 00 00 00 07 00 00 00
+60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+80: 01 90 03 00 00 00 00 00 00 00 00 00 00 00 00 00
+90: 05 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00
+a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+d0: 31 6a 08 00 00 00 00 00 00 00 00 00 00 00 00 00
+e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+100: 01 00 01 16 00 00 00 00 20 00 10 00 10 30 46 00
+110: 00 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00
+120: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+130: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+140: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+160: 07 00 02 00 00 00 00 00 00 ff 00 00 00 00 00 00
+170: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+180: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+190: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+1a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+1b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+1c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+1d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+1e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+1f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+200: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+210: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+220: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+230: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+240: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+250: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+260: 00 00 00 00 07 00 00 00 00 00 00 00 00 00 00 00
+270: 00 00 00 00 00 00 00 00 07 00 00 00 00 00 00 00
+280: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+290: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+2a0: 00 00 00 00 00 00 00 00 20 00 18 00 20 00 18 00
+2b0: 20 00 18 00 00 00 00 00 00 00 00 00 00 00 00 00
+2c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+2d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+2e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+2f0: 00 20 00 00 00 20 00 00 00 20 00 00 00 e0 00 00
+300: 00 e0 00 00 00 e0 00 00 00 e0 00 00 00 e0 00 00
+310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+350: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+390: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+3a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+3b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+3c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+3d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+3e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+3f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+400: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+410: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+420: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+430: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+440: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+450: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+460: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+470: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+480: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+490: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+4a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+4b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+4c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+4d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+4e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+4f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+500: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+510: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+520: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+530: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+540: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+550: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+560: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+570: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+5a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+5b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+5c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+5d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+5e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+5f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+600: 44 00 00 00 91 00 00 00 00 00 00 00 00 00 00 00
+610: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+620: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+630: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+640: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+650: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+660: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+670: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+680: 90 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+690: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+6a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+6b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+6c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+6d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+6e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+6f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+700: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+710: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+720: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+730: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+740: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+750: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+760: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+770: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+780: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+790: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+7a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+7b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+7c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+7d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+7e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+7f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+800: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+810: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+820: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+830: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+840: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+850: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+860: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+870: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+880: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+890: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+8a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+8b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+8c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+8d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+8e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+8f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+900: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+910: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+920: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+930: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+940: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+950: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+960: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+970: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+980: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+990: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+9a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+9b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+9c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+9d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+9e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+9f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+a00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+a10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+a20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+a30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+a40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+a50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+a60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+a70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+a80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+a90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+aa0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ab0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ac0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ad0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ae0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+af0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+b00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+b10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+b20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+b30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+b40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+b50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+b60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+b70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+b80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+b90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ba0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+bb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+bc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+bd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+be0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+bf0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+c00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+c10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+c20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+c30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+c40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+c50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+c60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+c70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+c80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+c90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ca0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+cb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+cc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+cd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ce0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+cf0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+d00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+d10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+d20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+d30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+d40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+d50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+d60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+d70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+d80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+d90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+da0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+db0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+dc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+dd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+de0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+df0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+e00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+e10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+e20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+e30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+e40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+e50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+e60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+e70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+e80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+e90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ea0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+eb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ec0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ed0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ee0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ef0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+f00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+f10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+f20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+f30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+f40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+f50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+f60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+f70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+f80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+f90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+fa0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+fb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+fc0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+fd0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+fe0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
+ff0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

View File

@ -1,13 +1,16 @@
Index: pciutils-3.6.4/lib/sysdep.h
===================================================================
--- pciutils-3.6.4.orig/lib/sysdep.h
+++ pciutils-3.6.4/lib/sysdep.h
@@ -20,93 +20,8 @@
--- pciutils-3.8.0/lib/sysdep.h.orig 2022-04-21 09:44:42.293087550 +0200
+++ pciutils-3.8.0/lib/sysdep.h 2022-04-21 09:48:40.958962299 +0200
@@ -20,97 +20,10 @@
typedef u8 byte;
typedef u16 word;
-#ifdef PCI_OS_WINDOWS
-#define strcasecmp strcmpi
-#define strcasecmp _strcmpi
-#define strncasecmp _strnicmp
-#if defined(_MSC_VER) && _MSC_VER < 1900
-#define snprintf _snprintf
-#define vsnprintf _vsnprintf
-#endif
-#endif
-
-#ifdef PCI_HAVE_LINUX_BYTEORDER_H
@ -52,7 +55,6 @@ Index: pciutils-3.6.4/lib/sysdep.h
- #define BIG_ENDIAN 4321
- #define LITTLE_ENDIAN 1234
- #define BYTE_ORDER LITTLE_ENDIAN
- #define snprintf _snprintf
-#endif
-#endif
-
@ -80,7 +82,7 @@ Index: pciutils-3.6.4/lib/sysdep.h
-{
- return (w << 8) | ((w >> 8) & 0xff);
-}
-
-static inline u32 swab32(u32 w)
-{
- return ((w & 0xff000000) >> 24) |
@ -94,9 +96,9 @@ Index: pciutils-3.6.4/lib/sysdep.h
-#define le16_to_cpu(x) (x)
-#define le32_to_cpu(x) (x)
-#endif
-
-#endif
+#define cpu_to_le16 htole16
+#define cpu_to_le32 htole32
+#define le16_to_cpu le16toh
+#define le32_to_cpu le32toh
-#endif

View File

@ -1,7 +1,7 @@
Index: pciutils-3.6.4/lib/dump.c
Index: pciutils-3.8.0/lib/dump.c
===================================================================
--- pciutils-3.6.4.orig/lib/dump.c
+++ pciutils-3.6.4/lib/dump.c
--- pciutils-3.8.0.orig/lib/dump.c
+++ pciutils-3.8.0/lib/dump.c
@@ -64,7 +64,7 @@ dump_init(struct pci_access *a)
if (!name)
@ -11,10 +11,10 @@ Index: pciutils-3.6.4/lib/dump.c
a->error("dump: Cannot open %s: %s", name, strerror(errno));
while (fgets(buf, sizeof(buf)-1, f))
{
Index: pciutils-3.6.4/lib/names-cache.c
Index: pciutils-3.8.0/lib/names-cache.c
===================================================================
--- pciutils-3.6.4.orig/lib/names-cache.c
+++ pciutils-3.6.4/lib/names-cache.c
--- pciutils-3.8.0.orig/lib/names-cache.c
+++ pciutils-3.8.0/lib/names-cache.c
@@ -63,7 +63,7 @@ pci_id_cache_load(struct pci_access *a,
return 0;
}
@ -33,10 +33,10 @@ Index: pciutils-3.6.4/lib/names-cache.c
if (!f)
{
a->warning("Cannot write to %s: %s", name, strerror(errno));
Index: pciutils-3.6.4/lib/names-parse.c
Index: pciutils-3.8.0/lib/names-parse.c
===================================================================
--- pciutils-3.6.4.orig/lib/names-parse.c
+++ pciutils-3.6.4/lib/names-parse.c
--- pciutils-3.8.0.orig/lib/names-parse.c
+++ pciutils-3.8.0/lib/names-parse.c
@@ -52,7 +52,7 @@ static pci_file pci_open(struct pci_acce
typedef FILE * pci_file;
#define pci_gets(f, l, s) fgets(l, s, f)
@ -46,11 +46,11 @@ Index: pciutils-3.6.4/lib/names-parse.c
#define pci_close(f) fclose(f)
#define PCI_ERROR(f, err) if (!err && ferror(f)) err = "I/O error";
#endif
Index: pciutils-3.6.4/lib/proc.c
Index: pciutils-3.8.0/lib/proc.c
===================================================================
--- pciutils-3.6.4.orig/lib/proc.c
+++ pciutils-3.6.4/lib/proc.c
@@ -62,7 +62,7 @@ proc_scan(struct pci_access *a)
--- pciutils-3.8.0.orig/lib/proc.c
+++ pciutils-3.8.0/lib/proc.c
@@ -63,7 +63,7 @@ proc_scan(struct pci_access *a)
if (snprintf(buf, sizeof(buf), "%s/devices", pci_get_param(a, "proc.path")) == sizeof(buf))
a->error("File name too long");
@ -59,7 +59,7 @@ Index: pciutils-3.6.4/lib/proc.c
if (!f)
a->error("Cannot open %s", buf);
while (fgets(buf, sizeof(buf)-1, f))
@@ -129,7 +129,7 @@ proc_setup(struct pci_dev *d, int rw)
@@ -147,7 +147,7 @@ proc_setup(struct pci_dev *d, int rw)
if (e < 0 || e >= (int) sizeof(buf))
a->error("File name too long");
a->fd_rw = a->writeable || rw;
@ -68,7 +68,7 @@ Index: pciutils-3.6.4/lib/proc.c
if (a->fd < 0)
{
e = snprintf(buf, sizeof(buf), "%s/%04x:%02x/%02x.%d",
@@ -137,7 +137,7 @@ proc_setup(struct pci_dev *d, int rw)
@@ -155,7 +155,7 @@ proc_setup(struct pci_dev *d, int rw)
d->domain, d->bus, d->dev, d->func);
if (e < 0 || e >= (int) sizeof(buf))
a->error("File name too long");
@ -77,10 +77,10 @@ Index: pciutils-3.6.4/lib/proc.c
}
if (a->fd < 0)
a->warning("Cannot open %s", buf);
Index: pciutils-3.6.4/lib/sysfs.c
Index: pciutils-3.8.0/lib/sysfs.c
===================================================================
--- pciutils-3.6.4.orig/lib/sysfs.c
+++ pciutils-3.6.4/lib/sysfs.c
--- pciutils-3.8.0.orig/lib/sysfs.c
+++ pciutils-3.8.0/lib/sysfs.c
@@ -96,7 +96,7 @@ sysfs_get_string(struct pci_dev *d, char
void (*warn)(char *msg, ...) = (mandatory ? a->error : a->warning);
@ -90,16 +90,16 @@ Index: pciutils-3.6.4/lib/sysfs.c
if (fd < 0)
{
if (mandatory || errno != ENOENT)
@@ -157,7 +157,7 @@ sysfs_get_resources(struct pci_dev *d)
int i;
@@ -160,7 +160,7 @@ sysfs_get_resources(struct pci_dev *d)
have_bar_bases = have_rom_base = have_bridge_bases = 0;
sysfs_obj_name(d, "resource", namebuf);
- file = fopen(namebuf, "r");
+ file = fopen(namebuf, "re");
if (!file)
a->error("Cannot open %s: %s", namebuf, strerror(errno));
for (i = 0; i < 7; i++)
@@ -271,7 +271,7 @@ sysfs_fill_slots(struct pci_access *a)
for (i = 0; i < 7+6+4+1; i++)
@@ -300,7 +300,7 @@ sysfs_fill_slots(struct pci_access *a)
n = snprintf(namebuf, OBJNAMELEN, "%s/%s/%s", dirname, entry->d_name, "address");
if (n < 0 || n >= OBJNAMELEN)
a->error("File name too long");
@ -108,7 +108,7 @@ Index: pciutils-3.6.4/lib/sysfs.c
/*
* Old versions of Linux had a fakephp which didn't have an 'address'
* file. There's no useful information to be gleaned from these
@@ -367,7 +367,7 @@ sysfs_setup(struct pci_dev *d, int inten
@@ -503,7 +503,7 @@ sysfs_setup(struct pci_dev *d, int inten
if (a->fd_vpd < 0)
{
sysfs_obj_name(d, "vpd", namebuf);
@ -117,7 +117,7 @@ Index: pciutils-3.6.4/lib/sysfs.c
/* No warning on error; vpd may be absent or accessible only to root */
}
return a->fd_vpd;
@@ -377,7 +377,7 @@ sysfs_setup(struct pci_dev *d, int inten
@@ -513,7 +513,7 @@ sysfs_setup(struct pci_dev *d, int inten
{
sysfs_obj_name(d, "config", namebuf);
a->fd_rw = a->writeable || intent == SETUP_WRITE_CONFIG;

View File

@ -1,3 +1,28 @@
-------------------------------------------------------------------
Thu Apr 21 07:08:48 UTC 2022 - Paolo Stivanin <info@paolostivanin.com>
- Update to 3.8.0:
* Filters can now match devices based on partially specified
class code and also on the programming interface.
* Reporting of link speeds, power limits, and virtual function tags
has been updated to the current PCIe specification.
* We decode the Data Object Exchange capability.
* Bus mapping mode works in non-zero domains.
* pci_fill_info() can fetch more fields: bridge bases, programming
interface, revision, subsystem vendor and device ID, OS driver,
and also parent bridge. Internally, the implementation was rewritten,
significantly reducing the number of corner cases to be handled.
* If the configuration space is not readable for some reason
(e.g., the cfgmgr32 back-end, but also badly implemented sleep mode
of some devices), lspci prints only information provided by the OS.
* The Hurd back-end was greatly improved thanks to Joan Lledó.
* Various minor bug fixes and improvements.
* As usually, updated pci.ids to the current snapshot of the database.
- Rebase pciutils-3.1.9_pkgconfig.patch
- Rebase pciutils-ocloexec.patch
- Rebase pciutils-endianh.patch
- Drop pciutils-add-decode-support-for-RCECs.patch
-------------------------------------------------------------------
Sun Jan 23 14:56:10 UTC 2022 - Callum Farmer <gmbr3@opensuse.org>

View File

@ -1,5 +1,4 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.12 (GNU/Linux)
mQINBE6NbZkBEADDNlHfaQgjgydzX3KxB7u5ZNiMFQ9fMxs7alOUVuRJHzIMLVFT
d+4ShrXsFOWrq3LQTKcS03YfRbxgBqEubeuqKo1MebyxtnTtvTddfq2gMC7QBwHn
@ -24,45 +23,42 @@ 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
@ -85,5 +81,5 @@ Z3b6KsJxv1VStE3jx7luzOh84uU8GInTYUw6oeY4BWhR79QfDO0wcw04QW6OF42E
ea5qeE00WOoW9wEXmwOqcxM87QHKRrCVmNuPY62af8YeYpI93wxoNj6vxmVVNm2D
IWikke8BplaBXCvPyWZUI1oebOEh2QCJXDtqSt8z1OPCBq9JwSrfCjWTEsnZURS3
+wy3OGqhxFrvSisPD49xVMZ8J5n0SYISHA==
=GmC5
=yy6O
-----END PGP PUBLIC KEY BLOCK-----

View File

@ -1,7 +1,7 @@
#
# spec file for package pciutils
#
# Copyright (c) 2021 SUSE LLC
# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -18,7 +18,7 @@
%define lname libpci3
Name: pciutils
Version: 3.7.0
Version: 3.8.0
Release: 0
Summary: PCI utilities for the Linux Kernel
License: GPL-2.0-or-later
@ -28,12 +28,18 @@ Source: https://www.kernel.org/pub/software/utils/%{name}/%{name}-%{vers
Source1: https://www.kernel.org/pub/software/utils/%{name}/%{name}-%{version}.tar.sign
Source2: baselibs.conf
# https://mj.ucw.cz/pgp.html
Source3: https://mj.ucw.cz/pgpkey.txt#/%{name}.keyring
Patch1: pciutils-3.1.9_pkgconfig.patch
#Source3: https://mj.ucw.cz/pgpkey.txt#/%{name}.keyring
# I checked with Martin, and this is the email I got:
# BEGIN QUOTE
# This is because the kernel.org archive does not have my new key yet,
# so it refuses releases signed with the old one.
# I plan to fix it and re-sign the release, but it will take some time.
# END QUOTE
# so I took the correct key from https://keys.openpgp.org/search?q=5558F9399CD7836850553C6EC28E7847ED70F82D
Source3: %{name}.keyring
Patch0: pciutils-3.1.9_pkgconfig.patch
Patch1: pciutils-endianh.patch
Patch2: pciutils-ocloexec.patch
Patch3: pciutils-endianh.patch
# https://github.com/pciutils/pciutils/commit/e12bd01eea67ca8cf539263124843ba281eb6ecc
Patch4: pciutils-add-decode-support-for-RCECs.patch
BuildRequires: pkgconfig
BuildRequires: pkgconfig(libkmod)
BuildRequires: pkgconfig(zlib)