| /* | 
 |  * Copyright (C) 2007 Antonino Daplas <adaplas@gmail.com> | 
 |  * | 
 |  * This file is subject to the terms and conditions of the GNU General Public | 
 |  * License.  See the file COPYING in the main directory of this archive | 
 |  * for more details. | 
 |  * | 
 |  */ | 
 | #include <linux/fb.h> | 
 | #include <linux/pci.h> | 
 | #include <linux/module.h> | 
 | #include <linux/vgaarb.h> | 
 |  | 
 | int fb_is_primary_device(struct fb_info *info) | 
 | { | 
 | 	struct device *device = info->device; | 
 | 	struct pci_dev *default_device = vga_default_device(); | 
 | 	struct pci_dev *pci_dev; | 
 | 	struct resource *res; | 
 |  | 
 | 	if (!device || !dev_is_pci(device)) | 
 | 		return 0; | 
 |  | 
 | 	pci_dev = to_pci_dev(device); | 
 |  | 
 | 	if (default_device) { | 
 | 		if (pci_dev == default_device) | 
 | 			return 1; | 
 | 		return 0; | 
 | 	} | 
 |  | 
 | 	res = pci_dev->resource + PCI_ROM_RESOURCE; | 
 |  | 
 | 	if (res->flags & IORESOURCE_ROM_SHADOW) | 
 | 		return 1; | 
 |  | 
 | 	return 0; | 
 | } | 
 | EXPORT_SYMBOL(fb_is_primary_device); | 
 | MODULE_LICENSE("GPL"); |