D-D*_*ᴙum 5 linux power-management usb-device
我有一台安装了 Ubuntu 16.04 的 HP Envy 笔记本电脑。该型号的笔记本电脑安装了“滑动指纹传感器”,lsusb
报告:
Bus 002 Device 004: ID 138a:0050 Validity Sensors, Inc. Swipe
Fingerprint Sensor Couldn't open device, some information will be missing.
Device Descriptor:
bLength: 18
bDescriptorType: 1
bcdUSB: 1.10
bDeviceClass: 255 Vendor Specific Class
bDeviceSubClass: 16
bDeviceProtocol: 255
bMaxPacketSize0: 8
idVendor: 0x138a Validity Sensors, Inc.
idProduct: 0x0050 Swipe Fingerprint Sensor
bcdDevice: 0.60
iManufacturer: 0
iProduct: 0
iSerial: 1
bNumConfigurations: 1
Run Code Online (Sandbox Code Playgroud)
对此 USB 设备的支持非常有限,但因为我不想使用它,所以这无关紧要。但是,当我powertop
用来监控电源使用情况时,我发现该设备在未使用的情况下仍在使用 4.6 到 5 瓦的连续功率。
我也使用 Debian 'usb-devices' 来发现此设备正在使用什么驱动程序,但似乎没有加载:
T: Bus=02 Lev=01 Prnt=01 Port=13 Cnt=01 Dev#= 4 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=ff(vend.) Sub=10 Prot=ff MxPS= 8 #Cfgs= 1
P: Vendor=138a ProdID=0050 Rev=00.60
S: SerialNumber=941442215a3a
C: \#Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 4 Cls=ff(vend.) Sub=00 Prot=00 Driver=(none)
Run Code Online (Sandbox Code Playgroud)
所以我的问题是,无论如何我可以禁用此设备以将其功耗降低到零瓦吗?有一个Autosuspend for unknown USB device 2-14 (138a:0050)
inpowertop
的可调选项,但这与报告的功耗没有区别。
powertop
报告:
Power est. Usage Events/s Category Description
5.86 W 0.0 pkts/s Device Network interface: eno1 (r8169)
5.15 W 100.0% Device USB device: usb-device-138a-0050
4.17 W 100.0% Device Radio device: btusb
Run Code Online (Sandbox Code Playgroud)
没有 Linux 驱动程序的 USB 设备是 不会自动置于自动挂起状态,因为它会导致太多损坏。(这是您在 powertop 中看到的默认设置,对吧?)
但是,一旦您在未使用的设备上启用自动挂起,它就会在几秒钟后生效。
您可以在 中查看设置/sysfs/bus/usb/.../power
。要启用自动挂起,power/control
请设置为auto
。并非所有文件都有记录,但我有runtime_status
(suspended
对于暂停的设备)。为了说明为什么设备被视为活动设备,我还有runtime_usage
和runtime_active_kids
(子设备,例如连接到集线器的活动设备)。
对于没有驱动程序的设备,非零值runtime_usage
应指示用户空间的访问。
您至少可以找到使用 访问设备的进程sudo lsof /dev /sys
。
我本以为访问指纹读取器的唯一进程是fprintd
. 您可以尝试使用 / 禁用它systemctl mask --now fprintd
,看看它如何runtime_status
变化runtime_usage
。
powertop 没有任何单个设备功率的实际数据。这都是猜测(“估计”),并且在某个地方出了可笑的错误。
您闲置的以太网芯片的功耗不是 5 瓦。
您的 USB 蓝牙收音机的功耗不是 5 瓦。蓝牙的最大发射功率似乎为 100mW。
5 瓦是 iPad 级设备上 SoC 功耗的最大“TDP”。闲置的指纹扫描仪不会向无线电或外部线路驱动 5W 功率。原则上我猜它可能正在忙循环 5W ARM cpu...但是说真的。无论从经济上还是从其他方面来说,这都没有意义。
这三个设备的功耗均不超过 15W。我使用的是真正的笔记本电脑,但用途并不多。听起来您的笔记本电脑的使用率似乎更高,但即便如此。
我认为 powertop 甚至无法查找 CPU 和集成 GPU 的 TDP,以便计算出剩下的内容。假设,这些估计值是在与我的类似的笔记本电脑上进行校准的(例如 Linux 开发人员似乎喜欢的 12 英寸 Thinkpad X 系列),而较大笔记本电脑的缩放最终会得到这些奇怪的数字。
你现在让我很好奇,这些具有较高 TDP 的笔记本电脑上的冷却系统是什么样子的……必须有一些通风口。