fi
set -- $($lspci -n | awk -vclass=$class '$2 == class":" {split($3, p, ":"); printf("0x0000%s 0x0000%s\n", p[1], p[2])}')
- awk -vvendor=$1 -vdevice=$2 '$2 == vendor && $3 == device {print $1}' $pcimap
+
+ local pci_module vendor device subvendor subdevice class class_mask driver_data
+ while read pci_module vendor device subvendor subdevice class class_mask driver_data; do
+ # vendor match is exact
+ [ "$1" = "$vendor" ] || continue
+ # device match is exact
+ [ "$2" = $device ] || continue
+
+ echo "$pci_module"
+ done < $pcimap
}
find_modules_sata() {