diff options
Diffstat (limited to 'drivers/gpu/vga/vgaarb.c')
| -rw-r--r-- | drivers/gpu/vga/vgaarb.c | 61 | 
1 files changed, 41 insertions, 20 deletions
diff --git a/drivers/gpu/vga/vgaarb.c b/drivers/gpu/vga/vgaarb.c index 441e38c95a8..b87569e96b1 100644 --- a/drivers/gpu/vga/vgaarb.c +++ b/drivers/gpu/vga/vgaarb.c @@ -1,12 +1,32 @@  /* - * vgaarb.c + * vgaarb.c: Implements the VGA arbitration. For details refer to + * Documentation/vgaarbiter.txt + *   *   * (C) Copyright 2005 Benjamin Herrenschmidt <benh@kernel.crashing.org>   * (C) Copyright 2007 Paulo R. Zanoni <przanoni@gmail.com>   * (C) Copyright 2007, 2009 Tiago Vignatti <vignatti@freedesktop.org>   * - * Implements the VGA arbitration. For details refer to - * Documentation/vgaarbiter.txt + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice (including the next + * paragraph) shall be included in all copies or substantial portions of the + * Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS + * IN THE SOFTWARE. + *   */  #include <linux/module.h> @@ -155,8 +175,8 @@ static struct vga_device *__vga_tryget(struct vga_device *vgadev,  	    (vgadev->decodes & VGA_RSRC_LEGACY_MEM))  		rsrc |= VGA_RSRC_LEGACY_MEM; -	pr_devel("%s: %d\n", __func__, rsrc); -	pr_devel("%s: owns: %d\n", __func__, vgadev->owns); +	pr_debug("%s: %d\n", __func__, rsrc); +	pr_debug("%s: owns: %d\n", __func__, vgadev->owns);  	/* Check what resources we need to acquire */  	wants = rsrc & ~vgadev->owns; @@ -268,7 +288,7 @@ static void __vga_put(struct vga_device *vgadev, unsigned int rsrc)  {  	unsigned int old_locks = vgadev->locks; -	pr_devel("%s\n", __func__); +	pr_debug("%s\n", __func__);  	/* Update our counters, and account for equivalent legacy resources  	 * if we decode them @@ -575,6 +595,7 @@ static inline void vga_update_device_decodes(struct vga_device *vgadev,  		else  			vga_decode_count--;  	} +	pr_debug("vgaarb: decoding count now is: %d\n", vga_decode_count);  }  void __vga_set_legacy_decoding(struct pci_dev *pdev, unsigned int decodes, bool userspace) @@ -831,7 +852,7 @@ static ssize_t vga_arb_write(struct file *file, const char __user * buf,  		curr_pos += 5;  		remaining -= 5; -		pr_devel("client 0x%p called 'lock'\n", priv); +		pr_debug("client 0x%p called 'lock'\n", priv);  		if (!vga_str_to_iostate(curr_pos, remaining, &io_state)) {  			ret_val = -EPROTO; @@ -867,7 +888,7 @@ static ssize_t vga_arb_write(struct file *file, const char __user * buf,  		curr_pos += 7;  		remaining -= 7; -		pr_devel("client 0x%p called 'unlock'\n", priv); +		pr_debug("client 0x%p called 'unlock'\n", priv);  		if (strncmp(curr_pos, "all", 3) == 0)  			io_state = VGA_RSRC_LEGACY_IO | VGA_RSRC_LEGACY_MEM; @@ -917,7 +938,7 @@ static ssize_t vga_arb_write(struct file *file, const char __user * buf,  		curr_pos += 8;  		remaining -= 8; -		pr_devel("client 0x%p called 'trylock'\n", priv); +		pr_debug("client 0x%p called 'trylock'\n", priv);  		if (!vga_str_to_iostate(curr_pos, remaining, &io_state)) {  			ret_val = -EPROTO; @@ -961,7 +982,7 @@ static ssize_t vga_arb_write(struct file *file, const char __user * buf,  		curr_pos += 7;  		remaining -= 7; -		pr_devel("client 0x%p called 'target'\n", priv); +		pr_debug("client 0x%p called 'target'\n", priv);  		/* if target is default */  		if (!strncmp(curr_pos, "default", 7))  			pdev = pci_dev_get(vga_default_device()); @@ -971,11 +992,11 @@ static ssize_t vga_arb_write(struct file *file, const char __user * buf,  				ret_val = -EPROTO;  				goto done;  			} -			pr_devel("vgaarb: %s ==> %x:%x:%x.%x\n", curr_pos, +			pr_debug("vgaarb: %s ==> %x:%x:%x.%x\n", curr_pos,  				domain, bus, PCI_SLOT(devfn), PCI_FUNC(devfn));  			pbus = pci_find_bus(domain, bus); -			pr_devel("vgaarb: pbus %p\n", pbus); +			pr_debug("vgaarb: pbus %p\n", pbus);  			if (pbus == NULL) {  				pr_err("vgaarb: invalid PCI domain and/or bus address %x:%x\n",  					domain, bus); @@ -983,7 +1004,7 @@ static ssize_t vga_arb_write(struct file *file, const char __user * buf,  				goto done;  			}  			pdev = pci_get_slot(pbus, devfn); -			pr_devel("vgaarb: pdev %p\n", pdev); +			pr_debug("vgaarb: pdev %p\n", pdev);  			if (!pdev) {  				pr_err("vgaarb: invalid PCI address %x:%x\n",  					bus, devfn); @@ -993,7 +1014,7 @@ static ssize_t vga_arb_write(struct file *file, const char __user * buf,  		}  		vgadev = vgadev_find(pdev); -		pr_devel("vgaarb: vgadev %p\n", vgadev); +		pr_debug("vgaarb: vgadev %p\n", vgadev);  		if (vgadev == NULL) {  			pr_err("vgaarb: this pci device is not a vga device\n");  			pci_dev_put(pdev); @@ -1029,7 +1050,7 @@ static ssize_t vga_arb_write(struct file *file, const char __user * buf,  	} else if (strncmp(curr_pos, "decodes ", 8) == 0) {  		curr_pos += 8;  		remaining -= 8; -		pr_devel("vgaarb: client 0x%p called 'decodes'\n", priv); +		pr_debug("vgaarb: client 0x%p called 'decodes'\n", priv);  		if (!vga_str_to_iostate(curr_pos, remaining, &io_state)) {  			ret_val = -EPROTO; @@ -1058,7 +1079,7 @@ static unsigned int vga_arb_fpoll(struct file *file, poll_table * wait)  {  	struct vga_arb_private *priv = file->private_data; -	pr_devel("%s\n", __func__); +	pr_debug("%s\n", __func__);  	if (priv == NULL)  		return -ENODEV; @@ -1071,7 +1092,7 @@ static int vga_arb_open(struct inode *inode, struct file *file)  	struct vga_arb_private *priv;  	unsigned long flags; -	pr_devel("%s\n", __func__); +	pr_debug("%s\n", __func__);  	priv = kmalloc(sizeof(struct vga_arb_private), GFP_KERNEL);  	if (priv == NULL) @@ -1101,7 +1122,7 @@ static int vga_arb_release(struct inode *inode, struct file *file)  	unsigned long flags;  	int i; -	pr_devel("%s\n", __func__); +	pr_debug("%s\n", __func__);  	if (priv == NULL)  		return -ENODEV; @@ -1112,7 +1133,7 @@ static int vga_arb_release(struct inode *inode, struct file *file)  		uc = &priv->cards[i];  		if (uc->pdev == NULL)  			continue; -		pr_devel("uc->io_cnt == %d, uc->mem_cnt == %d\n", +		pr_debug("uc->io_cnt == %d, uc->mem_cnt == %d\n",  			 uc->io_cnt, uc->mem_cnt);  		while (uc->io_cnt--)  			vga_put(uc->pdev, VGA_RSRC_LEGACY_IO); @@ -1165,7 +1186,7 @@ static int pci_notify(struct notifier_block *nb, unsigned long action,  	struct pci_dev *pdev = to_pci_dev(dev);  	bool notify = false; -	pr_devel("%s\n", __func__); +	pr_debug("%s\n", __func__);  	/* For now we're only intereted in devices added and removed. I didn't  	 * test this thing here, so someone needs to double check for the  |