如何在关机时让 USB 端口保持供电以便为手机充电?

如何在关机时让 USB 端口保持供电以便为手机充电?

我的索尼 VAIO 笔记本电脑有一个功能可以让我在笔记本电脑关机时仍保持一个 USB 端口通电。手册中给出了这里. 可以通过预装 Windows 的 Vaio 软件来打开或关闭它。

过去,当我使用 Windows 双启动时,我可以通过启动 Windows 来启用它,即使使用 Ubuntu 多次后,它也会保持打开状态。由于某种原因,它最近停止工作了。但我不再使用 Windows,想从 Ubuntu 重新启用它。如果我可以从 Linux 手动打开它,那会很有趣。我在谷歌上搜索了很多,尤其是关于我的主板(HannStar J MV-6 94V-0)的信息,并找到了它的越南网站上的示意图。我特别提到了 USB 充电。但我不知道如何使用这些信息。

很多人建议从 BIOS 启用,但我再次检查后发现 BIOS 中没有任何东西。但我还发现 BIOS 的字段很少,这让我怀疑 BIOS 功能可能被隐藏了。我会尝试解锁它们。同时,dmidecode问题末尾附加了 的输出。

我不知道此功能是否需要特殊硬件支持,但无论如何,在我的计算机上是可以实现的。智能手机的电量很快就会耗尽,而你可以随时将其连接到包中的笔记本电脑,并在你上大学或旅行时随时充电。这不仅很酷很方便,而且还能省钱,因为我不必购买移动电源。

以下是收集的数据:

我手动启动到内核 3.18,但问题仍然存在。在 Sneetsher 的指导下,我提交了一份错误报告这里

答案1

最好从其他人使用sony-laptopLinux 内核模块停止的地方开始。

  1. 检查是否已加载

    lsmod | grep sony
    
  2. 如果没有,则加载

    sudo modprobe sony-laptop
    
  3. 检查是否有任何与 USB 充电对应的条目/功能(usb_charge从源获取的属性):

    tree /sys/devices/platform/sony-laptop/
    

    我检查了驱动源,对应的函数如下(可能不是所有型号都有):

    ...
    static int sony_nc_usb_charge_setup(struct platform_device *pd);
    static void sony_nc_usb_charge_cleanup(struct platform_device *pd);
    ...
    

    完整功能定义这里(部分来自sony-laptop.c

    0x0155似乎在你的笔记本电脑上被检测到内核消息. 该模块创建了touchpadbattery_care_limiter、只读handles、只读battery_care_healthSYSFS 属性,但没有创建任何其他属性(包括usb_charge)。

    我检查了 Ubuntu 内核源代码,寻找 USB 充电功能:

    • Ubuntu 14.04 Trusty(尚未添加),内核版本 3.13

      如果您使用此版本,最简单的方法是安装 Utopic 内核:

      sudo apt-get install linux-generic-lts-utopic
      
    • Ubuntu 14.10 Utopic(它在那里),内核版本 3.16

    如果没有的话,只有当您做到以下几点时才会变得困难/有风险:

    Development:
    ------------
    
    If you want to help with the development of this driver (and
    you are not afraid of any side effects doing strange things with
    your ACPI BIOS could have on your laptop), load the driver and
    pass the option 'debug=1'.
    
    REPEAT: DON'T DO THIS IF YOU DON'T LIKE RISKY BUSINESS.
    
    In your kernel logs you will find the list of all ACPI methods
    the SNC device has on your laptop.
    

    自述文件

  4. 由于内核由 OP 升级至 3.16.0-38-generic,因此usb_charge创建了一些其他 SYSFS 属性。

    阅读类似的驱动程序内核文档,sysfs 驱动程序三星笔记本电脑

    What:     /sys/devices/platform/samsung/usb_charge
    Date:     December 1, 2011
    KernelVersion:    3.3
    Contact:  Corentin Chary <[email protected]>
    Description:  Use your USB ports to charge devices, even
          when your laptop is powered off.
          1 means enabled, 0 means disabled.
    

    检查当前状态:

    cat /sys/devices/platform/sony-laptop/usb_charge
    

    要禁用它:

    echo 0 | sudo tee -a /sys/devices/platform/sony-laptop/usb_charge
    

    要启用它:

    echo 1 | sudo tee -a /sys/devices/platform/sony-laptop/usb_charge
    

参考:

相关内容