lspci.ipxe.j2 736 B

1234567891011121314151617181920212223242526272829303132333435
  1. #!ipxe
  2. # gather pci devices and list them
  3. clear addr
  4. pciscan addr && goto pciscan_found ||
  5. echo No PCI devices found...
  6. sleep 5
  7. exit
  8. :pciscan_found
  9. set spaces2:hex 20:20
  10. set spaces4:hex 20:20:20:20
  11. imgfetch pciids.ipxe
  12. iseq ${sigs_enabled} true && goto verify_sigs || goto skip_verify
  13. :verify_sigs
  14. imgverify pciids.ipxe ${sigs}pciids.ipxe.sig ||
  15. :skip_verify
  16. clear addr
  17. menu PCI device list
  18. :scan pciscan addr || goto scan_done
  19. clear ven
  20. clear dev
  21. set vendor ${pci/${addr}.0.2}
  22. set device ${pci/${addr}.2.2}
  23. chain pciids.ipxe
  24. item --gap ${addr:busdevfn} ${spaces4:string} ${ven}
  25. item b${addr:busdevfn} ${spaces2:string} ${vendor}:${device} ${dev}
  26. goto scan
  27. :scan_done
  28. choose press_enter ||
  29. imgfree pciids.ipxe
  30. exit