Changeset 4299 in vbox for trunk/src/VBox/Additions/linux/module
- Timestamp:
- Aug 23, 2007 7:13:58 AM (18 years ago)
- svn:sync-xref-src-repo-rev:
- 23822
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/linux/module/vboxmod.c
r4071 r4299 640 640 } 641 641 642 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 20) 643 #define PCI_DEV_GET(v,d,p) pci_get_device(v,d,p) 644 #define PCI_DEV_PUT(x) pci_dev_put(x) 645 #else 646 #define PCI_DEV_GET(v,d,p) pci_find_device(v,d,p) 647 #define PCI_DEV_PUT(x) 648 #endif 649 642 650 /** 643 651 * Module initialization … … 651 659 VMMDevReportGuestInfo *infoReq = NULL; 652 660 653 printk(KERN_INFO "vboxadd: initializing . Version %s\n", VERSION);661 printk(KERN_INFO "vboxadd: initializing version %s\n", VERSION); 654 662 655 663 if (vboxadd_cmc_init ()) … … 662 670 * Detect PCI device 663 671 */ 664 pcidev = pci_find_device(VMMDEV_VENDORID, VMMDEV_DEVICEID, pcidev);672 pcidev = PCI_DEV_GET(VMMDEV_VENDORID, VMMDEV_DEVICEID, pcidev); 665 673 if (!pcidev) 666 674 { … … 673 681 { 674 682 printk (KERN_ERR "vboxadd: could not enable device: %d\n", err); 683 PCI_DEV_PUT(pcidev); 675 684 return -ENODEV; 676 685 } … … 682 691 printk(KERN_ERR "vboxadd: register_chrdev failed: vbox_major: %d, err = %d\n", 683 692 vbox_major, err); 693 PCI_DEV_PUT(pcidev); 684 694 return -ENODEV; 685 695 } … … 704 714 /* get the memory region */ 705 715 vboxDev->vmmdevmem = pci_resource_start(pcidev, 1); 706 /* and size */707 716 vboxDev->vmmdevmem_size = pci_resource_len(pcidev, 1); 708 717 … … 722 731 723 732 /* map adapter memory into kernel address space and check version */ 724 vboxDev->pVMMDevMemory = (VMMDevMemory *) ioremap( 725 vboxDev->vmmdevmem, 726 vboxDev->vmmdevmem_size 727 ); 733 vboxDev->pVMMDevMemory = (VMMDevMemory *) ioremap(vboxDev->vmmdevmem, 734 vboxDev->vmmdevmem_size); 728 735 if (!vboxDev->pVMMDevMemory) 729 736 { … … 749 756 750 757 /* report guest information to host, this must be done as the very first request */ 751 rcVBox = VbglGRAlloc( 752 (VMMDevRequestHeader**)&infoReq, 753 sizeof(VMMDevReportGuestInfo), 754 VMMDevReq_ReportGuestInfo 755 ); 758 rcVBox = VbglGRAlloc((VMMDevRequestHeader**)&infoReq, 759 sizeof(VMMDevReportGuestInfo), VMMDevReq_ReportGuestInfo); 756 760 if (VBOX_FAILURE(rcVBox)) 757 761 { … … 785 789 786 790 /* allocate a VMM request structure for use in the ISR */ 787 rcVBox = VbglGRAlloc( 788 (VMMDevRequestHeader**)&vboxDev->irqAckRequest, 789 sizeof(VMMDevEvents), 790 VMMDevReq_AcknowledgeEvents 791 ); 791 rcVBox = VbglGRAlloc((VMMDevRequestHeader**)&vboxDev->irqAckRequest, 792 sizeof(VMMDevEvents), VMMDevReq_AcknowledgeEvents); 792 793 if (VBOX_FAILURE(rcVBox)) 793 794 { … … 797 798 798 799 /* get ISR */ 799 err = request_irq(pcidev->irq, vboxadd_irq_handler, SA_SHIRQ, "vboxadd", vboxDev); 800 err = request_irq(pcidev->irq, vboxadd_irq_handler, 801 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 20) 802 IRQF_SHARED, 803 #else 804 SA_SHIRQ, 805 #endif 806 "vboxadd", vboxDev); 800 807 if (err) 801 808 { … … 809 816 /* some useful information for the user */ 810 817 printk(KERN_INFO 811 "vboxadd: major code: %d, " 812 "using irq %d, " 818 "vboxadd: major code: %d, using irq %d, " 813 819 "io port 0x%x, memory at 0x%x (size %d bytes), " 814 820 "hypervisor window at 0x%p (size 0x%x bytes)\n", … … 818 824 819 825 /* successful return */ 826 PCI_DEV_PUT(pcidev); 820 827 return 0; 828 821 829 fail: 830 PCI_DEV_PUT(pcidev); 822 831 free_resources(); 823 832 unregister_chrdev(vbox_major, "vboxadd");
Note:
See TracChangeset
for help on using the changeset viewer.