]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
hwdb: generate a hwdb file instead of rules for autosuspend
authorLennart Poettering <lennart@poettering.net>
Tue, 9 Jun 2020 15:00:56 +0000 (17:00 +0200)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Sat, 13 Jun 2020 18:00:23 +0000 (20:00 +0200)
hwdb.d/meson.build
rules.d/meson.build
tools/make-autosuspend-rules.py

index 4df6dabf89f6ef94f11b214d08d20487c26f59fb..e5ac23a8ffb478bf4c8626abb5afb1184570b156 100644 (file)
@@ -52,3 +52,11 @@ run_target(
 run_target(
         'autosuspend-update',
         command : [autosuspend_update_sh, project_source_root + '/tools/chromiumos'])
+
+auto_suspend_rules = custom_target(
+        '60-autosuspend-chromiumos.hwdb',
+        output : '60-autosuspend-chromiumos.hwdb',
+        command : make_autosuspend_rules_py,
+        capture : true,
+        install : true,
+        install_dir: udevhwdbdir)
index 13d1d330cf5e2c67d43479b59aacb782101a2306..b4684486c27627c02d18ca8afa290c98fffab435 100644 (file)
@@ -45,11 +45,3 @@ foreach file : rules_in
                      install_dir : udevrulesdir)
         all_rules += gen
 endforeach
-
-auto_suspend_rules = custom_target(
-        '60-autosuspend-chromiumos.rules',
-        output : '60-autosuspend-chromiumos.rules',
-        command : make_autosuspend_rules_py,
-        capture : true,
-        install : true,
-        install_dir: [udevrulesdir])
index 25b261ea0d4a09b0e78543b404089b693211c31b..3faf5f4d711a81f963b8b34ea84905aa071b0bb9 100755 (executable)
@@ -8,7 +8,26 @@
 import sys
 import chromiumos.gen_autosuspend_rules
 
+HWDB_FILE = """\
+%(usb_entries)s\
+%(pci_entries)s\
+"""
+
 if __name__ == '__main__':
     if len(sys.argv) > 1:
         sys.stdout = open(sys.argv[1], 'w')
-    chromiumos.gen_autosuspend_rules.main()
+
+    pci_entries = ''
+    for dev_ids in chromiumos.gen_autosuspend_rules.PCI_IDS:
+        vendor, device = dev_ids.split(':')
+
+        pci_entries += ('usb:v%sp%s*\n'
+                        ' ID_AUTOSUSPEND=1\n' % (vendor, device))
+    usb_entries = ''
+    for dev_ids in chromiumos.gen_autosuspend_rules.USB_IDS:
+        vendor, device = dev_ids.split(':')
+
+        usb_entries += ('pci:v%sp%s*\n'
+                        ' ID_AUTOSUSPEND=1\n' % (vendor, device))
+
+    print(HWDB_FILE % {'pci_entries' : pci_entries, 'usb_entries': usb_entries})