summaryrefslogtreecommitdiffstats
path: root/core/modules/nvidia-common
diff options
context:
space:
mode:
Diffstat (limited to 'core/modules/nvidia-common')
-rw-r--r--core/modules/nvidia-common/module.build8
1 files changed, 5 insertions, 3 deletions
diff --git a/core/modules/nvidia-common/module.build b/core/modules/nvidia-common/module.build
index 2dbb6a36..0ae2ee64 100644
--- a/core/modules/nvidia-common/module.build
+++ b/core/modules/nvidia-common/module.build
@@ -105,6 +105,7 @@ build() {
else
local mode line name dev version
pinfo "Creating drm.cfg"
+ local regex='^<td[^>]*>([0-9A-F]{4})(\s+[0-9A-F]{4}\s+[0-9A-F]{4})?<'
mode=0
while read -r line; do
if [[ "$line" =~ '<a name="legacy_' ]]; then
@@ -113,10 +114,11 @@ build() {
mode=1
elif [[ "$mode" = 1 ]] && [[ "$line" =~ ^'<td' ]]; then
mode=2
- name=$(echo "$line" | sed -r 's/^.*<td[^>]*>([^<]+)<.*$/\1/')
- elif [[ "$mode" = 2 ]] && [[ "$line" =~ ^'<td'[^'>']*'>'[0-9A-F]{4}'<' ]]; then
+ #name=$(echo "$line" | sed -r 's/^.*<td[^>]*>([^<]+)<.*$/\1/')
+ elif [[ "$mode" = 2 ]] && [[ "$line" =~ $regex ]]; then
mode=0
- dev=$(echo "$line" | sed -r 's/^.*<td[^>]*>([0-9A-Fa-f]{4})<.*$/\1/' | tr 'A-Z' 'a-z')
+ dev="${BASH_REMATCH[1]}"
+ dev="${dev~~}"
if [ -n "${pciids[$dev]}" ]; then
pdebug "$dev already handled"
else