Message ID | af58804b4774b109fbd6022ce7cc8081990b3625.1356319097.git.wei_wang@realsil.com.cn (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Dec 24, 2012 at 02:03:30PM +0800, wei_wang@realsil.com.cn wrote: > From: Wei WANG <wei_wang@realsil.com.cn> > > Signed-off-by: Wei WANG <wei_wang@realsil.com.cn> > --- > drivers/mfd/rtsx_pcr.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/mfd/rtsx_pcr.c b/drivers/mfd/rtsx_pcr.c > index fa2c2bc..2ee6be5 100644 > --- a/drivers/mfd/rtsx_pcr.c > +++ b/drivers/mfd/rtsx_pcr.c > @@ -1084,6 +1084,10 @@ static int __devinit rtsx_pci_probe(struct pci_dev *pcidev, > pci_set_master(pcidev); > synchronize_irq(pcr->irq); > > + ret = pci_set_dma_mask(pcidev, DMA_BIT_MASK(32)); > + if (ret < 0) > + goto disable_irq; This piece is deep down in rtsx_pci_probe() and if it fails, the _probe function has do to all the error unwinding on the error path. Why not push it up before the pci_enable_device(pcidev) call so in case it fails, you can save yourself all the needless unwinding? Oh, and ditto here, commit message is missing. Thanks.
diff --git a/drivers/mfd/rtsx_pcr.c b/drivers/mfd/rtsx_pcr.c index fa2c2bc..2ee6be5 100644 --- a/drivers/mfd/rtsx_pcr.c +++ b/drivers/mfd/rtsx_pcr.c @@ -1084,6 +1084,10 @@ static int __devinit rtsx_pci_probe(struct pci_dev *pcidev, pci_set_master(pcidev); synchronize_irq(pcr->irq); + ret = pci_set_dma_mask(pcidev, DMA_BIT_MASK(32)); + if (ret < 0) + goto disable_irq; + ret = rtsx_pci_init_chip(pcr); if (ret < 0) goto disable_irq;