From 99ef5a4feec440fe13fa67a267e38671a4520d45 Mon Sep 17 00:00:00 2001
From: Sebastian Krzyszkowiak <sebastian.krzyszkowiak@puri.sm>
Date: Tue, 21 Feb 2023 20:43:29 +0100
Subject: [PATCH] defaults: librem5-pm: Set devices to suspend after 1.5s and
 hub after 0.5s

This appears to reduce frequency of BM818's USB resets.
---
 debian/librem5-base-defaults.librem5-pm.udev | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

diff --git a/debian/librem5-base-defaults.librem5-pm.udev b/debian/librem5-base-defaults.librem5-pm.udev
index f398181..ce026c3 100644
--- a/debian/librem5-base-defaults.librem5-pm.udev
+++ b/debian/librem5-base-defaults.librem5-pm.udev
@@ -9,22 +9,26 @@ DEVPATH=="/devices/platform/soc@0/38100000.usb", TEST=="power/control", ATTR{pow
 ### Enable power management for internal USB devices:
 
 # Broadmobi BM818
-SUBSYSTEM=="usb", ATTRS{idVendor}=="2020", ATTR{idProduct}=="2060", TEST=="power/control", ATTR{power/control}="auto"
-SUBSYSTEM=="usb", ATTRS{idVendor}=="2020", ATTR{idProduct}=="2060", TEST=="power/autosuspend_delay_ms", ATTR{power/autosuspend_delay_ms}="2000"
+SUBSYSTEM=="usb", ATTR{idVendor}=="2020", ATTR{idProduct}=="2060", TEST=="power/control", ATTR{power/control}="auto"
+SUBSYSTEM=="usb", ATTR{idVendor}=="2020", ATTR{idProduct}=="2060", TEST=="power/autosuspend_delay_ms", ATTR{power/autosuspend_delay_ms}="1500"
 
 # Cinterion PLS8
-SUBSYSTEM=="usb", ATTRS{idVendor}=="1e2d", ATTR{idProduct}=="0061", TEST=="power/control", ATTR{power/control}="auto"
-SUBSYSTEM=="usb", ATTRS{idVendor}=="1e2d", ATTR{idProduct}=="0061", TEST=="power/autosuspend_delay_ms", ATTR{power/autosuspend_delay_ms}="2000"
+SUBSYSTEM=="usb", ATTR{idVendor}=="1e2d", ATTR{idProduct}=="0061", TEST=="power/control", ATTR{power/control}="auto"
+SUBSYSTEM=="usb", ATTR{idVendor}=="1e2d", ATTR{idProduct}=="0061", TEST=="power/autosuspend_delay_ms", ATTR{power/autosuspend_delay_ms}="1500"
+
 
 # Microchip USB2642
-SUBSYSTEM=="usb", ATTRS{idVendor}=="0424", ATTR{idProduct}=="4041", TEST=="power/control", ATTR{power/control}="auto"
-SUBSYSTEM=="usb", ATTRS{idVendor}=="0424", ATTR{idProduct}=="4041", TEST=="power/autosuspend_delay_ms", ATTR{power/autosuspend_delay_ms}="2000"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0424", ATTR{idProduct}=="2640", TEST=="power/control", ATTR{power/control}="auto"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0424", ATTR{idProduct}=="2640", TEST=="power/autosuspend_delay_ms", ATTR{power/autosuspend_delay_ms}="500"
 
 # SD card reader
 # enable runtime pm
 SUBSYSTEM=="module", KERNEL=="block", TEST=="parameters/events_dfl_poll_msecs", ATTR{parameters/events_dfl_poll_msecs}="0"
 SUBSYSTEM=="scsi", DRIVER=="sd", TEST=="power/control", ATTR{power/control}="auto"
-SUBSYSTEM=="scsi", DRIVER=="sd", TEST=="power/autosuspend_delay_ms", ATTR{power/autosuspend_delay_ms}="1000"
+SUBSYSTEM=="scsi", DRIVER=="sd", TEST=="power/autosuspend_delay_ms", ATTR{power/autosuspend_delay_ms}="1500"
+
+SUBSYSTEM=="usb", ATTR{idVendor}=="0424", ATTR{idProduct}=="4041", TEST=="power/control", ATTR{power/control}="auto"
+SUBSYSTEM=="usb", ATTR{idVendor}=="0424", ATTR{idProduct}=="4041", TEST=="power/autosuspend_delay_ms", ATTR{power/autosuspend_delay_ms}="0"
 # set readahead to 4M
 DEVPATH=="/devices/platform/soc@0/38200000.usb/xhci-hcd.4.auto/usb1/1-1/1-1.1/1-1.1:1.0/host0/target0:0:0/0:0:0:0/block/sda", TEST=="queue/read_ahead_kb", ATTR{queue/read_ahead_kb}="4096"
 
-- 
GitLab