Je suis très nouveau pour les pilotes de périphériques Linux et travaille actuellement sur le pilote USB actuellement. J'ai besoin de faire des pilotes liés à l'USB en tant que modules chargeables et de les retirer/réinsérer sur volonté. Mais je suis confronté à certains problèmes. Je travaille sur Dragonboard 820 basé sur le processeur Qualcomm Snapdragon 820 (APQ8096).Pilote USB se bloque lors de la réinsertion
Linux Kernel Version: 3.18.20
Android Version: 6,0
insertion des conducteurs Les premiers travaux time.Here est l'ordre d'insertion.
dbm.ko insmod insmod dbm-1_4.ko
insmod dbm-1_5.ko
dwc3.ko insmod insmod dwc3-msm.ko
insmod dwc3-pci.ko
insmod ehci -hcd.ko
insmod ehci-pci.ko
insmod xHCI-hcd.ko
insmod xHCI-pci.ko
insmod xHCI-plat-hcd.ko
insmod phy-msm-ssusb-qmp.ko
insmod phy-msm-qusb.ko
insmod USB-storage.ko
« lsmod 'donne la sortie suivante;
[email protected]:/system/lib/modules # lsmod Module Size Used by usb_storage 55391 0 phy_msm_qusb 18820 4 phy_msm_ssusb_qmp 17033 2 xhci_plat_hcd 6509 0 xhci_pci 4916 0 xhci_hcd 158558 2 xhci_plat_hcd,xhci_pci,[permanent] ehci_pci 4594 0 ehci_hcd 69125 1 ehci_pci dwc3_pci 2890 0 dwc3_msm 50671 0 dwc3 237561 1 dwc3_msm dbm_1_5 6526 0 dbm_1_4 6197 0 dbm 2119 3 dwc3_msm,dbm_1_5,dbm_1_4
USB fonctionne bien après insertion.However tout en essayant de supprimer les pilotes (dans l'ordre inverse), trois pilotes -phy_msm_qusb, phy_msm_ssusb_qmp et xhci_hcd ne sont pas supprimés et la réinsertion des autres conducteurs plantages (lors de la réinsertion de xhci_plat_hcd). Si je fais un retrait forcé de ces pilotes, il est très instable et se bloque lors de la suppression des pilotes restants ou lors de la réinsertion. Donc, si quelqu'un a quelque chose à dire à ce sujet, c'est très apprécié.
Merci pour la réponse Ralf. 'xhci_hcd' est affiché permanent car il manque une fonction de sortie. Si vous en ajoutez un, il n'apparaît plus permanent et vous pouvez le supprimer. À propos des deux autres, vous avez raison, ils sont utilisés par des processus inconnus. J'ai été informé que ces pilotes ne sont pas destinés à être compilés en tant que modules chargeables et ont donc abandonné cette approche. – Jay