Service de noyau pci_cfgrw
Objectif
Lente et écrit les registres de configuration des emplacements de bus PCI.
Syntaxe
#include <sys/mdio.h> int pci_cfgrw(bid, md, write_flag)
int bid;
struct mdio *md;
int write_flag;Descriptif
Le service de noyau Pci_cfgrw fournit un accès sérialisé aux registres de configuration d'un bus PCI. Pour garantir l'intégrité des données dans un environnement multiprocesseur, un verrou est requis avant d'accéder aux registres de configuration. En fonction de la valeur du paramètre Flag-écriture , une lecture ou une écriture dans le registre de configuration est effectuée au décalage Add_m_m_mc pour l'unité identifiée par Md_sla.
Le service de noyau Pci_cfgrw fournit des extensions de noyau aux mêmes services que MIOPCFGET et MIOPCFPUT ioctls pour les applications. Le service de noyau Pci_cfgrw peut être appelé à partir du processus ou de l'environnement d'interruption.
Paramètres
| Article | Descriptif |
|---|---|
| demande de ligne | Indique l'identificateur de bus. |
| md | Indique l'adresse de la structure Mdio . La structure Mdio contient les zones suivantes:
|
| Flag-écriture | Définis sur 1 pour l'écriture et 0 pour la lecture. |
Valeurs renvoyées
Renvoie 0 pour l'exécution réussie.
| Article | Descriptif |
|---|---|
| ENOMEM | Indique qu'aucune mémoire n'a pu être allouée. |
| EINVAL | Indique que le bus, l'unité / la fonction ou la taille n'est pas valide. |
| EPERM | Indique que la plateforme ne permet pas l'opération demandée |