web-dev-qa-db-fra.com

Comment laisser un port USB alimenté pendant l'arrêt pour charger le mobile?

Mon Sony VAIO Laptop dispose d'une fonctionnalité qui me permet de garder un port USB alimenté même lorsque mon ordinateur portable est éteint. Il est donné dans le manuel ici . Il peut être activé ou désactivé à partir du logiciel Vaio fourni avec Windows préinstallé.

Dans le passé, lorsque je réalisais un double démarrage avec Windows, je pouvais l'activer en démarrant sous Windows, et il restait activé même après plusieurs utilisations d'Ubuntu. Pour une raison quelconque, il a cessé de fonctionner récemment. Mais je n'ai plus Windows et je voudrais le réactiver depuis Ubuntu. Ce serait amusant si je pouvais l’activer manuellement sous Linux. J'ai beaucoup fouillé sur google, en particulier pour obtenir des informations sur ma carte mère (HannStar J MV-6 94V-0), et j'ai mis au point ses schémas sur un site vietnamien . Je mentionne spécifiquement le chargement USB. Mais je ne sais pas comment utiliser ces informations.

Beaucoup de gens suggèrent qu'il peut être activé à partir du BIOS , mais j'ai vérifié à nouveau et je ne vois rien dans le BIOS. Mais j’ai également constaté que le BIOS ne contient que très peu de champs, ce qui me laisse penser que certaines de ses fonctionnalités pourraient être masquées. Je vais essayer de les déverrouiller. Dans l'intervalle, la sortie de dmidecode est ajoutée vers la fin de la question.

Je ne sais pas si cette fonctionnalité nécessite un support matériel spécial, mais de toute façon, cela est possible sur ma machine. Les téléphones intelligents ont tendance à manquer rapidement de batterie et vous pouvez toujours le connecter à l'ordinateur portable dans votre sac et le charger en déplacement lorsque vous êtes au collège ou en voyage. Ce ne serait pas seulement pratique et pratique, mais je ferais aussi des économies car je n'aurais pas à acheter une banque d'alimentation.

Voici les données collectées:

J'ai démarré manuellement dans le noyau 3.18, mais le problème est toujours là. Selon les directives de Sneetsher, j'ai déposé un rapport de bogue ici .

15
daltonfury42

Il est préférable de commencer là où d'autres se sont arrêtés avec le module de noyau sony-laptop Linux.

  1. Vérifiez si c'est chargé

    lsmod | grep sony
    
  2. Sinon, chargez-le

    Sudo modprobe sony-laptop
    
  3. Vérifiez s'il existe une entrée/fonction correspondante pour le chargement USB (attribut usb_charge obtenu de la source):

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

    Lorsque je vérifie la source du pilote, voici les fonctions correspondantes (peut-être pas pour tous les modèles):

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

    Définition complète des fonctions ici (portion de sony-laptop.c )

    0x0155 semble être détecté sur votre ordinateur portable à partir de messages du noya . Le module a créé touchpadname__, battery_care_limiter, en lecture seule handlesname__, en lecture seule battery_care_health attributs SYSFS mais rien d'autre (y compris usb_charge).

    J'ai vérifié la source du noyau Ubuntu à la recherche de la fonction de charge USB:

    • Ubuntu 14.04 Trusty (pas encore ajouté), version du noyau 3.13

      Si vous utilisez cette version, le moyen le plus simple consiste à installer le noyau Utopic:

      Sudo apt-get install linux-generic-lts-utopic
      
    • Ubuntu 14.10 Utopic (c'est là), version du noyau 3.16

    Si ce n'est pas là, c'est dur/risqué que si vous êtes en mesure de:

    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.
    

    Voir fichier Lisez-moi .

  4. Lors de la mise à niveau du noyau par OP vers la version 3.16.0-38-generic, usb_charge est créé avec certains autres attributs SYSFS.

    Lecture de documents de noyau de pilotes similaires, sysfs-driver-samsung-laptop :

    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.
    

    Pour vérifier l'état actuel:

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

    Pour le désactiver:

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

    Pour l'activer:

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

Références:

7
user.dz