diff options
author | Marcin Chrzanowski <marcin.j.chrzanowski@gmail.com> | 2018-05-02 14:24:12 +0200 |
---|---|---|
committer | Marcin Chrzanowski <marcin.j.chrzanowski@gmail.com> | 2018-05-02 14:25:00 +0200 |
commit | 66bcebae16314268dfc64ed89072feca862be108 (patch) | |
tree | fb1d5bc1ecd85f29a313a36943e70cdfe7379331 /pci.c | |
parent | 563c60bd01d95843035848c878bb736ff04eae29 (diff) |
Setup PCI device scaffold
Diffstat (limited to 'pci.c')
-rw-r--r-- | pci.c | 74 |
1 files changed, 74 insertions, 0 deletions
@@ -0,0 +1,74 @@ +#include "pci.h" + +#include <linux/kernel.h> +#include <linux/pci.h> + +#include "harddoom.h" + +int doom_probe(struct pci_dev *dev, const struct pci_device_id *id) +{ + printk(KERN_INFO "In probe\n"); + return 0; +} + +void doom_remove (struct pci_dev *dev) +{ + printk(KERN_INFO "In remove\n"); +} + +int doom_suspend (struct pci_dev *dev, pm_message_t state) +{ + printk(KERN_INFO "In suspend\n"); + return 0; +} + +int doom_suspend_late (struct pci_dev *dev, pm_message_t state) +{ + printk(KERN_INFO "In suspend_late\n"); + return 0; +} + +int doom_resume_early (struct pci_dev *dev) +{ + printk(KERN_INFO "In resume_early\n"); + return 0; +} + +int doom_resume (struct pci_dev *dev) +{ + printk(KERN_INFO "In resume\n"); + return 0; +} + +void doom_shutdown (struct pci_dev *dev) +{ + printk(KERN_INFO "In shutdown\n"); +} + +struct pci_device_id device_ids[1] = { + { PCI_DEVICE(HARDDOOM_VENDOR_ID, HARDDOOM_DEVICE_ID) } +}; + +struct pci_driver driver = { + .name = "harddoom", + .id_table = device_ids, + .probe = doom_probe, + .remove = doom_remove, + .suspend = doom_suspend, + .suspend_late = doom_suspend_late, + .resume_early = doom_resume_early, + .resume = doom_resume, + .shutdown = doom_shutdown +}; + +int pci_init(void) +{ + printk(KERN_INFO "In pci init\n"); + return pci_register_driver(&driver); +} + +void pci_cleanup(void) +{ + printk(KERN_INFO "In pci cleanup\n"); + pci_unregister_driver(&driver); +} |