From b61d777abeecd8b6c76035e11899aae210633534 Mon Sep 17 00:00:00 2001 From: Mario Limonciello Date: Mon, 9 Sep 2019 22:49:35 +0100 Subject: rules: Add automatic suspend udev rules The ChromeOS ecosystem has a large amount of testing, both automated and manual across devices including measurement of power regressions. It's safe to assume that any of these devices will handle USB auto-suspend appropriately. Use the script from ChromeOS https://chromium.googlesource.com/chromiumos/platform2/+/master/power_manager/udev/gen_autosuspend_rules.py to generate udev rules at build time. This script in systemd `tools/chromeos/gen_autosuspend_rules.py` should be kept in sync with the ChromeOS version of the script. Manually added autosuspend devices should be placed in the new template `rules/61-autosuspend-manual.rules` Suggested-by: Hans de Goede Signed-off-by: Mario Limonciello --- tools/make-autosuspend-rules.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100755 tools/make-autosuspend-rules.py (limited to 'tools/make-autosuspend-rules.py') diff --git a/tools/make-autosuspend-rules.py b/tools/make-autosuspend-rules.py new file mode 100755 index 0000000000..732731626d --- /dev/null +++ b/tools/make-autosuspend-rules.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python3 +# SPDX-License-Identifier: LGPL-2.1+ + +# Generate autosuspend rules for devices that have been whitelisted (IE tested) +# by the ChromeOS team. Please keep this script in sync with: +# https://chromium.googlesource.com/chromiumos/platform2/+/master/power_manager/udev/gen_autosuspend_rules.py + +import sys +import chromeos.gen_autosuspend_rules + +if __name__ == '__main__': + if len(sys.argv) > 1: + sys.stdout = open(sys.argv[1], 'w') + chromeos.gen_autosuspend_rules.main() -- cgit v1.2.1