首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 驱动开发 >

求教:写了个PCI驱动框架 为啥probe里的printk没有输出?init里printk到是输出了

2013-01-22 
求教:写了个PCI驱动框架 为什么probe里的printk没有输出?init里printk到是输出了写了个PCI驱动框架 为什么

求教:写了个PCI驱动框架 为什么probe里的printk没有输出?init里printk到是输出了
写了个PCI驱动框架 为什么probe里的printk没有输出?init里printk到是输出了
#include <linux/init.h>
#include <linux/pci.h>
#include <linux/slab.h>
#include <sound/core.h>
#include <sound/pcm.h>
#include <sound/initval.h>
#include <linux/interrupt.h>
#include <asm/io.h>
#define  PCI_VENDOR_ID_ALC888 0x10ec
#define  PCI_DEVICE_ID_ALC888 0x0888
static struct pci_device_id snd_alc888_ids[]={
{PCI_VENDOR_ID_ALC888,PCI_DEVICE_ID_ALC888,
  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0,},
{0,}
};
MODULE_DEVICE_TABLE(pci,snd_alc888_ids);


////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
static int __devinit snd_alc888_probe(struct pci_dev *pci,const struct pci_device_id *pci_id)
{
  int err=0;
  printk( "snd_alc888_probe pci->vendor=%d!\n",pci->vendor);
  return err;

}
static void __devexit snd_alc888_remove(struct pci_dev *pci)
{
  snd_card_free(pci_get_drvdata(pci)); 
  pci_set_drvdata(pci,NULL);
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
static struct pci_driver driver={
        .name        =        "alc888",
        .id_table=snd_alc888_ids,
        .probe=snd_alc888_probe,
        .remove=__devexit_p(snd_alc888_remove),
};
static int __init alas_card_alc888_init(void)
{
printk("alc888_init\n");
return pci_register_driver(&driver);
}

static void __exit alsa_card_alc888_exit(void)
{
printk("alc888_exit\n");
pci_unregister_driver(&driver);
}


MODULE_ALIAS("ALC888 8 Out 4 in");

MODULE_LICENSE("GPL");
MODULE_DESCRIPTION("ALC888 HD-audio codec");

module_init(alas_card_alc888_init);
module_exit(alsa_card_alc888_exit);

[解决办法]
设备的VID是8086, PID是293e。
你的代码里面,改成新的VID/PID试一下,看看是不是有Probe打印了。


#define  PCI_VENDOR_ID_ALC888 0x8086
#define  PCI_DEVICE_ID_ALC888 0x293e

热点排行