diff options
author | Greg Kroah-Hartman <gregkh@suse.de> | 2010-10-28 09:44:56 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-10-28 09:44:56 -0700 |
commit | e4c5bf8e3dca827a1b3a6fac494eae8c74b7e1e7 (patch) | |
tree | ea51b391f7d74ca695dcb9f5e46eb02688a92ed9 /drivers/staging/sm7xx/smtcfb.c | |
parent | 81280572ca6f54009edfa4deee563e8678784218 (diff) | |
parent | a4ac0d847af9dd34d5953a5e264400326144b6b2 (diff) | |
download | op-kernel-dev-e4c5bf8e3dca827a1b3a6fac494eae8c74b7e1e7.zip op-kernel-dev-e4c5bf8e3dca827a1b3a6fac494eae8c74b7e1e7.tar.gz |
Merge 'staging-next' to Linus's tree
This merges the staging-next tree to Linus's tree and resolves
some conflicts that were present due to changes in other trees that were
affected by files here.
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/sm7xx/smtcfb.c')
-rw-r--r-- | drivers/staging/sm7xx/smtcfb.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/drivers/staging/sm7xx/smtcfb.c b/drivers/staging/sm7xx/smtcfb.c index f6b401c..24f47d6 100644 --- a/drivers/staging/sm7xx/smtcfb.c +++ b/drivers/staging/sm7xx/smtcfb.c @@ -848,7 +848,6 @@ static int __devinit smtcfb_pci_probe(struct pci_dev *pdev, "Silicon Motion display driver " SMTC_LINUX_FB_VERSION "\n"); err = pci_enable_device(pdev); /* enable SMTC chip */ - if (err) return err; err = -ENOMEM; @@ -859,7 +858,7 @@ static int __devinit smtcfb_pci_probe(struct pci_dev *pdev, sfb = smtc_alloc_fb_info(pdev, name); if (!sfb) - goto failed; + goto failed_free; /* Jason (08/13/2009) * Store fb_info to be further used when suspending and resuming */ @@ -917,7 +916,8 @@ static int __devinit smtcfb_pci_probe(struct pci_dev *pdev, printk(KERN_INFO "%s: unable to map memory mapped IO\n", sfb->fb.fix.id); - return -ENOMEM; + err = -ENOMEM; + goto failed_fb; } /* set MCLK = 14.31818 * (0x16 / 0x2) */ @@ -951,8 +951,7 @@ static int __devinit smtcfb_pci_probe(struct pci_dev *pdev, printk(KERN_INFO "No valid Silicon Motion display chip was detected!\n"); - smtc_free_fb_info(sfb); - return err; + goto failed_fb; } /* can support 32 bpp */ @@ -986,8 +985,12 @@ static int __devinit smtcfb_pci_probe(struct pci_dev *pdev, smtc_unmap_smem(sfb); smtc_unmap_mmio(sfb); +failed_fb: smtc_free_fb_info(sfb); +failed_free: + pci_disable_device(pdev); + return err; } |