Message ID | 1591925417-27665-1-git-send-email-yangtiezhu@loongson.cn (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | [v2] PCI: loongson: Use DECLARE_PCI_FIXUP_EARLY for bridge_class_quirk() | expand |
On 06/12/2020 09:30 AM, Tiezhu Yang wrote: > Use DECLARE_PCI_FIXUP_EARLY instead of DECLARE_PCI_FIXUP_HEADER > for bridge_class_quirk() in pci-loongson.c, otherwise the fixup > has no effect. > > Fixes: 1f58cca5cf2b ("PCI: Add Loongson PCI Controller support") > Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn> > --- > > v2: > - modify the patch subject used with lower case "loongson" > > This patch is based on mips-next tree. > > drivers/pci/controller/pci-loongson.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/pci/controller/pci-loongson.c b/drivers/pci/controller/pci-loongson.c > index 459009c..58b862a 100644 > --- a/drivers/pci/controller/pci-loongson.c > +++ b/drivers/pci/controller/pci-loongson.c > @@ -37,11 +37,11 @@ static void bridge_class_quirk(struct pci_dev *dev) > { > dev->class = PCI_CLASS_BRIDGE_PCI << 8; > } > -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, > +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, > DEV_PCIE_PORT_0, bridge_class_quirk); > -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, > +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, > DEV_PCIE_PORT_1, bridge_class_quirk); > -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, > +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, > DEV_PCIE_PORT_2, bridge_class_quirk); > > static void system_bus_quirk(struct pci_dev *pdev) Hi, Any comments? Could you please apply this patch? Thanks, Tiezhu
On Tue, Jul 14, 2020 at 03:37:51PM +0800, Tiezhu Yang wrote: > On 06/12/2020 09:30 AM, Tiezhu Yang wrote: > > Use DECLARE_PCI_FIXUP_EARLY instead of DECLARE_PCI_FIXUP_HEADER > > for bridge_class_quirk() in pci-loongson.c, otherwise the fixup > > has no effect. > > > > Fixes: 1f58cca5cf2b ("PCI: Add Loongson PCI Controller support") > > Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn> > > --- > > > > v2: > > - modify the patch subject used with lower case "loongson" > > > > This patch is based on mips-next tree. > > > > drivers/pci/controller/pci-loongson.c | 6 +++--- > > 1 file changed, 3 insertions(+), 3 deletions(-) > > > > diff --git a/drivers/pci/controller/pci-loongson.c b/drivers/pci/controller/pci-loongson.c > > index 459009c..58b862a 100644 > > --- a/drivers/pci/controller/pci-loongson.c > > +++ b/drivers/pci/controller/pci-loongson.c > > @@ -37,11 +37,11 @@ static void bridge_class_quirk(struct pci_dev *dev) > > { > > dev->class = PCI_CLASS_BRIDGE_PCI << 8; > > } > > -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, > > +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, > > DEV_PCIE_PORT_0, bridge_class_quirk); > > -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, > > +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, > > DEV_PCIE_PORT_1, bridge_class_quirk); > > -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, > > +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, > > DEV_PCIE_PORT_2, bridge_class_quirk); > > static void system_bus_quirk(struct pci_dev *pdev) > > Hi, > > Any comments? (1) how was this driver tested if this patch is required ? Is it because you are testing on a different platform ? (2) Please explain why it is needed (I mean describe what happens in current code and how this fixes it) in the commit log, it is useful for people who may need to tweak this code further I will apply it then, thanks. Lorenzo > Could you please apply this patch? > > Thanks, > Tiezhu >
On 07/14/2020 11:08 PM, Lorenzo Pieralisi wrote: > On Tue, Jul 14, 2020 at 03:37:51PM +0800, Tiezhu Yang wrote: >> On 06/12/2020 09:30 AM, Tiezhu Yang wrote: >>> Use DECLARE_PCI_FIXUP_EARLY instead of DECLARE_PCI_FIXUP_HEADER >>> for bridge_class_quirk() in pci-loongson.c, otherwise the fixup >>> has no effect. >>> >>> Fixes: 1f58cca5cf2b ("PCI: Add Loongson PCI Controller support") >>> Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn> >>> --- >>> >>> v2: >>> - modify the patch subject used with lower case "loongson" >>> >>> This patch is based on mips-next tree. >>> >>> drivers/pci/controller/pci-loongson.c | 6 +++--- >>> 1 file changed, 3 insertions(+), 3 deletions(-) >>> >>> diff --git a/drivers/pci/controller/pci-loongson.c b/drivers/pci/controller/pci-loongson.c >>> index 459009c..58b862a 100644 >>> --- a/drivers/pci/controller/pci-loongson.c >>> +++ b/drivers/pci/controller/pci-loongson.c >>> @@ -37,11 +37,11 @@ static void bridge_class_quirk(struct pci_dev *dev) >>> { >>> dev->class = PCI_CLASS_BRIDGE_PCI << 8; >>> } >>> -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, >>> +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, >>> DEV_PCIE_PORT_0, bridge_class_quirk); >>> -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, >>> +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, >>> DEV_PCIE_PORT_1, bridge_class_quirk); >>> -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, >>> +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, >>> DEV_PCIE_PORT_2, bridge_class_quirk); >>> static void system_bus_quirk(struct pci_dev *pdev) >> Hi, >> >> Any comments? Hi Lorenzo, Thanks for your reply. > (1) how was this driver tested if this patch is required ? Is it because > you are testing on a different platform ? According to the datasheet of Loongson LS7A bridge chip, the old version of Loongson LS7A PCIE port has a hardware bug about PCI class. As far as I know, the latest version has already fixed this bug. I test it on the old version which has hardware bug. > (2) Please explain why it is needed (I mean describe what happens > in current code and how this fixes it) in the commit log, it is > useful for people who may need to tweak this code further OK, this patch is to maintain downward compatibility, I will add more info to the commit message and then send v3. Thanks, Tiezhu > > I will apply it then, thanks. > > Lorenzo > >> Could you please apply this patch? >> >> Thanks, >> Tiezhu >>
diff --git a/drivers/pci/controller/pci-loongson.c b/drivers/pci/controller/pci-loongson.c index 459009c..58b862a 100644 --- a/drivers/pci/controller/pci-loongson.c +++ b/drivers/pci/controller/pci-loongson.c @@ -37,11 +37,11 @@ static void bridge_class_quirk(struct pci_dev *dev) { dev->class = PCI_CLASS_BRIDGE_PCI << 8; } -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, DEV_PCIE_PORT_0, bridge_class_quirk); -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, DEV_PCIE_PORT_1, bridge_class_quirk); -DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_LOONGSON, +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_LOONGSON, DEV_PCIE_PORT_2, bridge_class_quirk); static void system_bus_quirk(struct pci_dev *pdev)
Use DECLARE_PCI_FIXUP_EARLY instead of DECLARE_PCI_FIXUP_HEADER for bridge_class_quirk() in pci-loongson.c, otherwise the fixup has no effect. Fixes: 1f58cca5cf2b ("PCI: Add Loongson PCI Controller support") Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn> --- v2: - modify the patch subject used with lower case "loongson" This patch is based on mips-next tree. drivers/pci/controller/pci-loongson.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)