Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1862 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  [LINUX] problème sur un driver !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[LINUX] problème sur un driver !

n°142665
sanglier04
Posté le 22-05-2002 à 18:27:42  profilanswer
 

voila , c pour une carte pci sur proc x86(cyrix) avec un noyau 2.4.
 
voici une partie du code :
 
int pci_das4020_init()
{
 unsigned long ret;
 unsigned char *gt;
 
 if ((pci_das_major=register_chrdev(pci_das_major, pci_das_module_name, &pci_das_fops))<0)
 {
  printk("Ne peut avoir un major\n" );
  return -EBUSY;
 }else
  printk("major=%d\n", pci_das_major);
   
   if (!pci_present())
 {
  printk("l'ordinateut n'a pas de pci\n" );
  return -EBUSY;
 }
   
 if ((pci_das_dev=pci_find_device(4871, 82, NULL))==NULL)
 {
  printk("carte non trouvée\n" );
  return -EBUSY;
 }
 
 ret=pci_resource_flags(pci_das_dev, 2);
 if (ret!=IORESOURCE_IO && ret!=IORESOURCE_MEM)
 {
  printk ("impossible d'obtenire la zone bar2\n" );
  return -EBUSY;
 }
 
 /* obtenire les adresses hw */
 pci_das_hwadd2s=pci_resource_start(pci_das_dev, 2);
   pci_das_hwadd2e=pci_resource_end(pci_das_dev, 2);
   
    if (check_mem_region(pci_das_hwadd2s, pci_das_hwadd2e-pci_das_hwadd2s))
 {
  printk("zone mémoire base 2 déjà utilisée\n" );
  return -EBUSY;
 }
 
 request_mem_region(pci_das_hwadd2s, pci_das_hwadd2e-pci_das_hwadd2s, "pci-das4020/12" );
 
 
 gt=ioremap(pci_das_hwadd2s, pci_das_hwadd2e-pci_das_hwadd2s);
 
 *(gt+0x4E)=0;
 *(gt+0x48)=0;
 
  return 0;
}
 
 
toutes les fonctions on l'air de fonctionné, néamoins il ne se passe rien sur ma carte, aurai-je oublié kkchose ? :??:

mood
Publicité
Posté le 22-05-2002 à 18:27:42  profilanswer
 

n°142794
sanglier04
Posté le 22-05-2002 à 21:29:30  profilanswer
 

up svp :bounce:

n°142942
sanglier04
Posté le 23-05-2002 à 08:16:56  profilanswer
 

j'ai oublié de préciser que c'etait un driver de type char

n°143628
apolon34
Vive Linux!!
Posté le 23-05-2002 à 22:26:00  profilanswer
 

moi ca me depasse
 
(up deguise)

n°143689
sanglier04
Posté le 24-05-2002 à 08:10:40  profilanswer
 

:D
 
non bon alors fallai viré le request_mem_region et l'accès se fait non pas en déréférencant le pointeur mais avec les fonctions writeb , writel, ...
 
voila tout marche ! :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  [LINUX] problème sur un driver !

 

Sujets relatifs
[SQL] Probleme d'export :/linux, interruption et c : help !!
Probleme de CSS...[C++] ajout user sous Linux et envoie mail (Edit)
HTML+MAILING LIST= probleme[MySQL] Petit problème de rangement
[Java] petit probleme pour lancer un exe via javapb easyphp : probleme de port...
Encore un probleme de dates en VB[SQL] Requête et date (Problème résolu merci...)
Plus de sujets relatifs à : [LINUX] problème sur un driver !


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR