Message ID | 1437559704-13332-1-git-send-email-B48286@freescale.com (mailing list archive) |
---|---|
State | Rejected |
Delegated to: | Scott Wood |
Headers | show |
On Wed, 2015-07-22 at 18:08 +0800, Zhiqiang Hou wrote: > From: Hou Zhiqiang <B48286@freescale.com> You CCed this to b21284@freescale.com. Who is that? It would be nice to use "friendly" e-mail addresses, but at least include the name along with the e-mail address. I suggest CCing the people who added these device trees. > Impact board list: > P1020MBG-PC. P1022DS, P2020RDB > All above boards have its PCIE memory range less than 0xbfff_ffff, If you mean that the physical address of the memory region is <= 0xbfff_ffff, I don't see the relevance. > but in dts its boundary value was 0xe0000000. Both of them was maped > to the same boundary 0xe0000000 which was Overlapped and crossed. By "boundary" do you mean the PCIe bus address? Why is it a problem for these independent PCIe root complexes to have the same PCIe bus addresses? > Cpu will access the illicit memery addr and detect error then lead to > cpu stall. So update dts for these boards. What is illicit about it? Why isn't the problem seen in the 36-bit device trees, which do the same thing? -Scott
Hi Scott and all, Please ignore this patch! > -----Original Message----- > From: Wood Scott-B07421 > Sent: 2015年7月25日 10:48 > To: Hou Zhiqiang-B48286 > Cc: linuxppc-dev@lists.ozlabs.org; benh@kernel.crashing.org; > paulus@samba.org; mpe@ellerman.id.au; Hu Mingkai-B21284 > Subject: Re: [PATCH] powerpc/fsl-pci: fix pcie range issue for some P1/P2 > boards > > On Wed, 2015-07-22 at 18:08 +0800, Zhiqiang Hou wrote: > > > From: Hou Zhiqiang <B48286@freescale.com> > > You CCed this to > b21284@freescale.com. Who is that? It would be nice to use "friendly" > e-mail addresses, but at least include the name along with the e-mail > address. > > I suggest CCing the people who added these device trees. > > > Impact board list: > > P1020MBG-PC. P1022DS, P2020RDB > > All above boards have its PCIE memory range less than 0xbfff_ffff, > > If you mean that the physical address of the memory region is <= > 0xbfff_ffff, I don't see the relevance. > > > but in dts its boundary value was 0xe0000000. Both of them was maped > > to the same boundary 0xe0000000 which was Overlapped and crossed. > > By "boundary" do you mean the PCIe bus address? Why is it a problem for > these independent PCIe root complexes to have the same PCIe bus addresses? > Yes, you're right. It isn't an issue using the same PCIe bus addresses. > > Cpu will access the illicit memery addr and detect error then lead to > > cpu stall. So update dts for these boards. > > What is illicit about it? > > Why isn't the problem seen in the 36-bit device trees, which do the same > thing? > > -Scott Thanks, Zhiqiang
On Tue, 2015-07-28 at 21:34 -0500, Hou Zhiqiang-B48286 wrote: > Hi Scott and all, > > Please ignore this patch! Did you figure out what was actually causing you to see CPU stalls? -Scott
Hi Scott, > -----Original Message----- > From: Wood Scott-B07421 > Sent: 2015年7月29日 10:35 > To: Hou Zhiqiang-B48286 > Cc: linuxppc-dev@lists.ozlabs.org; benh@kernel.crashing.org; > paulus@samba.org; mpe@ellerman.id.au; Hu Mingkai-B21284 > Subject: Re: [PATCH] powerpc/fsl-pci: fix pcie range issue for some P1/P2 > boards > > On Tue, 2015-07-28 at 21:34 -0500, Hou Zhiqiang-B48286 wrote: > > Hi Scott and all, > > > > Please ignore this patch! > > Did you figure out what was actually causing you to see CPU stalls? > This issue fixed by cf4d1cf5ac5e7d2b886af6ed906ea0dcdc5b6855 in upstream. > -Scott Thanks, Zhiqiang
diff --git a/arch/powerpc/boot/dts/p1020mbg-pc_32b.dts b/arch/powerpc/boot/dts/p1020mbg-pc_32b.dts index ab8f076..4dfbd30 100644 --- a/arch/powerpc/boot/dts/p1020mbg-pc_32b.dts +++ b/arch/powerpc/boot/dts/p1020mbg-pc_32b.dts @@ -55,12 +55,12 @@ }; pci0: pcie@ffe09000 { - reg = <0x0 0xffe09000 0x0 0x1000>; - ranges = <0x2000000 0x0 0xe0000000 0x0 0xa0000000 0x0 0x20000000 + ranges = <0x2000000 0x0 0xa0000000 0x0 0xa0000000 0x0 0x20000000 0x1000000 0x0 0x00000000 0x0 0xffc10000 0x0 0x10000>; + reg = <0x0 0xffe09000 0x0 0x1000>; pcie@0 { - ranges = <0x2000000 0x0 0xe0000000 - 0x2000000 0x0 0xe0000000 + ranges = <0x2000000 0x0 0xa0000000 + 0x2000000 0x0 0xa0000000 0x0 0x20000000 0x1000000 0x0 0x0 @@ -71,11 +71,11 @@ pci1: pcie@ffe0a000 { reg = <0x0 0xffe0a000 0x0 0x1000>; - ranges = <0x2000000 0x0 0xe0000000 0x0 0x80000000 0x0 0x20000000 + ranges = <0x2000000 0x0 0x80000000 0x0 0x80000000 0x0 0x20000000 0x1000000 0x0 0x00000000 0x0 0xffc00000 0x0 0x10000>; pcie@0 { - ranges = <0x2000000 0x0 0xe0000000 - 0x2000000 0x0 0xe0000000 + ranges = <0x2000000 0x0 0x80000000 + 0x2000000 0x0 0x80000000 0x0 0x20000000 0x1000000 0x0 0x0 diff --git a/arch/powerpc/boot/dts/p1022ds_32b.dts b/arch/powerpc/boot/dts/p1022ds_32b.dts index d96cae0..803e0db 100644 --- a/arch/powerpc/boot/dts/p1022ds_32b.dts +++ b/arch/powerpc/boot/dts/p1022ds_32b.dts @@ -54,12 +54,12 @@ }; pci0: pcie@ffe09000 { - ranges = <0x2000000 0x0 0xe0000000 0 0xa0000000 0x0 0x20000000 + ranges = <0x2000000 0x0 0xa0000000 0 0xa0000000 0x0 0x20000000 0x1000000 0x0 0x00000000 0 0xffc10000 0x0 0x10000>; reg = <0x0 0xffe09000 0 0x1000>; pcie@0 { - ranges = <0x2000000 0x0 0xe0000000 - 0x2000000 0x0 0xe0000000 + ranges = <0x2000000 0x0 0xa0000000 + 0x2000000 0x0 0xa0000000 0x0 0x20000000 0x1000000 0x0 0x0 @@ -69,12 +69,12 @@ }; pci1: pcie@ffe0a000 { - ranges = <0x2000000 0x0 0xe0000000 0 0xc0000000 0x0 0x20000000 + ranges = <0x2000000 0x0 0xc0000000 0 0xc0000000 0x0 0x20000000 0x1000000 0x0 0x00000000 0 0xffc20000 0x0 0x10000>; reg = <0 0xffe0a000 0 0x1000>; pcie@0 { - ranges = <0x2000000 0x0 0xe0000000 - 0x2000000 0x0 0xe0000000 + ranges = <0x2000000 0x0 0xc0000000 + 0x2000000 0x0 0xc0000000 0x0 0x20000000 0x1000000 0x0 0x0 @@ -84,12 +84,12 @@ }; pci2: pcie@ffe0b000 { - ranges = <0x2000000 0x0 0xe0000000 0 0x80000000 0x0 0x20000000 + ranges = <0x2000000 0x0 0x80000000 0 0x80000000 0x0 0x20000000 0x1000000 0x0 0x00000000 0 0xffc00000 0x0 0x10000>; reg = <0 0xffe0b000 0 0x1000>; pcie@0 { - ranges = <0x2000000 0x0 0xe0000000 - 0x2000000 0x0 0xe0000000 + ranges = <0x2000000 0x0 0x80000000 + 0x2000000 0x0 0x80000000 0x0 0x20000000 0x1000000 0x0 0x0 diff --git a/arch/powerpc/boot/dts/p2020rdb-pc_32b.dts b/arch/powerpc/boot/dts/p2020rdb-pc_32b.dts index 57573bd..1676d81 100644 --- a/arch/powerpc/boot/dts/p2020rdb-pc_32b.dts +++ b/arch/powerpc/boot/dts/p2020rdb-pc_32b.dts @@ -63,11 +63,11 @@ pci1: pcie@ffe09000 { reg = <0 0xffe09000 0 0x1000>; - ranges = <0x2000000 0x0 0xe0000000 0 0xa0000000 0x0 0x20000000 + ranges = <0x2000000 0x0 0xa0000000 0 0xa0000000 0x0 0x20000000 0x1000000 0x0 0x00000000 0 0xffc10000 0x0 0x10000>; pcie@0 { - ranges = <0x2000000 0x0 0xe0000000 - 0x2000000 0x0 0xe0000000 + ranges = <0x2000000 0x0 0xa0000000 + 0x2000000 0x0 0xa0000000 0x0 0x20000000 0x1000000 0x0 0x0 @@ -78,11 +78,11 @@ pci0: pcie@ffe0a000 { reg = <0 0xffe0a000 0 0x1000>; - ranges = <0x2000000 0x0 0xe0000000 0 0x80000000 0x0 0x20000000 + ranges = <0x2000000 0x0 0x80000000 0 0x80000000 0x0 0x20000000 0x1000000 0x0 0x00000000 0 0xffc00000 0x0 0x10000>; pcie@0 { - ranges = <0x2000000 0x0 0xe0000000 - 0x2000000 0x0 0xe0000000 + ranges = <0x2000000 0x0 0x80000000 + 0x2000000 0x0 0x80000000 0x0 0x20000000 0x1000000 0x0 0x0