| /* | |
| * Intel Poulsbo Stub driver | |
| * | |
| * Copyright (C) 2010 Novell <jlee@novell.com> | |
| * | |
| * This program is free software; you can redistribute it and/or modify it | |
| * under the terms of the GNU General Public License version 2 as published by | |
| * the Free Software Foundation. | |
| * | |
| */ | |
| #include <linux/module.h> | |
| #include <linux/pci.h> | |
| #include <linux/acpi.h> | |
| #include <acpi/video.h> | |
| #define DRIVER_NAME "poulsbo" | |
| enum { | |
| CHIP_PSB_8108 = 0, | |
| CHIP_PSB_8109 = 1, | |
| }; | |
| static DEFINE_PCI_DEVICE_TABLE(pciidlist) = { | |
| {0x8086, 0x8108, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8108}, \ | |
| {0x8086, 0x8109, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8109}, \ | |
| {0, 0, 0} | |
| }; | |
| static int poulsbo_probe(struct pci_dev *pdev, const struct pci_device_id *id) | |
| { | |
| return acpi_video_register(); | |
| } | |
| static void poulsbo_remove(struct pci_dev *pdev) | |
| { | |
| acpi_video_unregister(); | |
| } | |
| static struct pci_driver poulsbo_driver = { | |
| .name = DRIVER_NAME, | |
| .id_table = pciidlist, | |
| .probe = poulsbo_probe, | |
| .remove = poulsbo_remove, | |
| }; | |
| static int __init poulsbo_init(void) | |
| { | |
| return pci_register_driver(&poulsbo_driver); | |
| } | |
| static void __exit poulsbo_exit(void) | |
| { | |
| pci_unregister_driver(&poulsbo_driver); | |
| } | |
| module_init(poulsbo_init); | |
| module_exit(poulsbo_exit); | |
| MODULE_AUTHOR("Lee, Chun-Yi <jlee@novell.com>"); | |
| MODULE_DESCRIPTION("Poulsbo Stub Driver"); | |
| MODULE_LICENSE("GPL"); | |
| MODULE_DEVICE_TABLE(pci, pciidlist); |