RE: [PATCH v6 02/13] PCI: designware: Set func type of host init to int

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> -----Original Message-----
> From: Lucas Stach [mailto:l.stach@xxxxxxxxxxxxxx]
> Sent: Thursday, October 16, 2014 6:39 PM
> To: Richard Zhu
> Cc: linux-pci@xxxxxxxxxxxxxxx; Guo Shawn-R65073; festevam@xxxxxxxxx;
> tharvey@xxxxxxxxxxxxx
> Subject: Re: [PATCH v6 02/13] PCI: designware: Set func type of host init to
> int
> 
> Am Donnerstag, den 16.10.2014, 15:52 +0800 schrieb Richard Zhu:
> > host init maybe failed, change the func type of host_init defined in
> > struct pci_host_ops from void to int.
> >
> > Signed-off-by: Richard Zhu <richard.zhu@xxxxxxxxxxxxx>
> 
> NAK. You are breaking compilation within the series here. If you are going to
> change the prototype the dependant changes need to be in the same patch. So
> squash in at least patch 3-5 plus the imx6 change.
[Richard] So, this patch should be squashed with patch3-5, and the "PCI: imx6: Add imx6sx pcie support".
Thanks.

> 
> > ---
> >  drivers/pci/host/pcie-designware.c | 7 +++++--
> > drivers/pci/host/pcie-designware.h | 2 +-
> >  2 files changed, 6 insertions(+), 3 deletions(-)
> >
> > diff --git a/drivers/pci/host/pcie-designware.c
> > b/drivers/pci/host/pcie-designware.c
> > index b1f82ff..1a2b477 100644
> > --- a/drivers/pci/host/pcie-designware.c
> > +++ b/drivers/pci/host/pcie-designware.c
> > @@ -578,8 +578,11 @@ int __init dw_pcie_host_init(struct pcie_port *pp)
> >  		}
> >  	}
> >
> > -	if (pp->ops->host_init)
> > -		pp->ops->host_init(pp);
> > +	if (pp->ops->host_init) {
> > +		ret = pp->ops->host_init(pp);
> > +		if (ret < 0)
> > +			return ret;
> > +	}
> >
> >  	dw_pcie_wr_own_conf(pp, PCI_BASE_ADDRESS_0, 4, 0);
> >
> > diff --git a/drivers/pci/host/pcie-designware.h
> > b/drivers/pci/host/pcie-designware.h
> > index b0bfed0..57ab11d 100644
> > --- a/drivers/pci/host/pcie-designware.h
> > +++ b/drivers/pci/host/pcie-designware.h
> > @@ -72,7 +72,7 @@ struct pcie_host_ops {
> >  	int (*wr_other_conf)(struct pcie_port *pp, struct pci_bus *bus,
> >  			unsigned int devfn, int where, int size, u32 val);
> >  	int (*link_up)(struct pcie_port *pp);
> > -	void (*host_init)(struct pcie_port *pp);
> > +	int (*host_init)(struct pcie_port *pp);
> >  	void (*msi_set_irq)(struct pcie_port *pp, int irq);
> >  	void (*msi_clear_irq)(struct pcie_port *pp, int irq);
> >  	u32 (*get_msi_data)(struct pcie_port *pp);
> 


Best Regards
Richard Zhu

��.n��������+%������w��{.n�����{���"�)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥





[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux