* [PATCH] mvebu : pcie: dt: potential issue in range parsing @ 2014-01-10 10:23 Jean-Jacques Hiblot 2014-02-05 4:05 ` Jason Cooper 2014-02-05 15:47 ` Thomas Petazzoni 0 siblings, 2 replies; 5+ messages in thread From: Jean-Jacques Hiblot @ 2014-01-10 10:23 UTC (permalink / raw) To: linux-arm-kernel The second parameter of of_read_number is not the index, but a size. As it happens, in this case it may work just fine because of the the conversion to u32 and the favorable endianness on this architecture. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@traphandler.com> --- drivers/pci/host/pci-mvebu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/pci/host/pci-mvebu.c b/drivers/pci/host/pci-mvebu.c index c269e43..877e8ce 100644 --- a/drivers/pci/host/pci-mvebu.c +++ b/drivers/pci/host/pci-mvebu.c @@ -768,7 +768,7 @@ static int mvebu_get_tgt_attr(struct device_node *np, int devfn, for (i = 0; i < nranges; i++) { u32 flags = of_read_number(range, 1); - u32 slot = of_read_number(range, 2); + u32 slot = of_read_number(range + 1, 1); u64 cpuaddr = of_read_number(range + na, pna); unsigned long rtype; -- 1.8.5.2 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH] mvebu : pcie: dt: potential issue in range parsing 2014-01-10 10:23 [PATCH] mvebu : pcie: dt: potential issue in range parsing Jean-Jacques Hiblot @ 2014-02-05 4:05 ` Jason Cooper 2014-02-05 15:47 ` Thomas Petazzoni 1 sibling, 0 replies; 5+ messages in thread From: Jason Cooper @ 2014-02-05 4:05 UTC (permalink / raw) To: linux-arm-kernel Jean-Jacques, On Fri, Jan 10, 2014 at 11:23:51AM +0100, Jean-Jacques Hiblot wrote: > The second parameter of of_read_number is not the index, but a size. > As it happens, in this case it may work just fine because of the the conversion > to u32 and the favorable endianness on this architecture. > > Signed-off-by: Jean-Jacques Hiblot <jjhiblot@traphandler.com> > --- > drivers/pci/host/pci-mvebu.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Sorry for the unusually long delay. I was waiting for Thomas to get back from vacation since he is intimately familiar with this driver. Thomas? thx, Jason. > diff --git a/drivers/pci/host/pci-mvebu.c b/drivers/pci/host/pci-mvebu.c > index c269e43..877e8ce 100644 > --- a/drivers/pci/host/pci-mvebu.c > +++ b/drivers/pci/host/pci-mvebu.c > @@ -768,7 +768,7 @@ static int mvebu_get_tgt_attr(struct device_node *np, int devfn, > > for (i = 0; i < nranges; i++) { > u32 flags = of_read_number(range, 1); > - u32 slot = of_read_number(range, 2); > + u32 slot = of_read_number(range + 1, 1); > u64 cpuaddr = of_read_number(range + na, pna); > unsigned long rtype; > > -- > 1.8.5.2 > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel at lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH] mvebu : pcie: dt: potential issue in range parsing 2014-01-10 10:23 [PATCH] mvebu : pcie: dt: potential issue in range parsing Jean-Jacques Hiblot 2014-02-05 4:05 ` Jason Cooper @ 2014-02-05 15:47 ` Thomas Petazzoni 2014-02-05 17:21 ` Jason Cooper 1 sibling, 1 reply; 5+ messages in thread From: Thomas Petazzoni @ 2014-02-05 15:47 UTC (permalink / raw) To: linux-arm-kernel Dear Jean-Jacques Hiblot, On Fri, 10 Jan 2014 11:23:51 +0100, Jean-Jacques Hiblot wrote: > The second parameter of of_read_number is not the index, but a size. > As it happens, in this case it may work just fine because of the the conversion > to u32 and the favorable endianness on this architecture. > > Signed-off-by: Jean-Jacques Hiblot <jjhiblot@traphandler.com> > --- > drivers/pci/host/pci-mvebu.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/pci/host/pci-mvebu.c b/drivers/pci/host/pci-mvebu.c > index c269e43..877e8ce 100644 > --- a/drivers/pci/host/pci-mvebu.c > +++ b/drivers/pci/host/pci-mvebu.c > @@ -768,7 +768,7 @@ static int mvebu_get_tgt_attr(struct device_node *np, int devfn, > > for (i = 0; i < nranges; i++) { > u32 flags = of_read_number(range, 1); > - u32 slot = of_read_number(range, 2); > + u32 slot = of_read_number(range + 1, 1); > u64 cpuaddr = of_read_number(range + na, pna); > unsigned long rtype; > Sorry for the long delay, and thanks for the fix! Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> (on Armada 370, with PCIe cards plugged in) Thanks! Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH] mvebu : pcie: dt: potential issue in range parsing 2014-02-05 15:47 ` Thomas Petazzoni @ 2014-02-05 17:21 ` Jason Cooper 2014-02-14 18:51 ` Bjorn Helgaas 0 siblings, 1 reply; 5+ messages in thread From: Jason Cooper @ 2014-02-05 17:21 UTC (permalink / raw) To: linux-arm-kernel + Bjorn, linux-pci Bjorn, It looks like this didn't get Cc'd to linux-pci. Here's a link: http://www.spinics.net/lists/arm-kernel/msg299721.html On Wed, Feb 05, 2014 at 04:47:10PM +0100, Thomas Petazzoni wrote: > Dear Jean-Jacques Hiblot, > > On Fri, 10 Jan 2014 11:23:51 +0100, Jean-Jacques Hiblot wrote: > > The second parameter of of_read_number is not the index, but a size. > > As it happens, in this case it may work just fine because of the the conversion > > to u32 and the favorable endianness on this architecture. > > > > Signed-off-by: Jean-Jacques Hiblot <jjhiblot@traphandler.com> > > --- > > drivers/pci/host/pci-mvebu.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/pci/host/pci-mvebu.c b/drivers/pci/host/pci-mvebu.c > > index c269e43..877e8ce 100644 > > --- a/drivers/pci/host/pci-mvebu.c > > +++ b/drivers/pci/host/pci-mvebu.c > > @@ -768,7 +768,7 @@ static int mvebu_get_tgt_attr(struct device_node *np, int devfn, > > > > for (i = 0; i < nranges; i++) { > > u32 flags = of_read_number(range, 1); > > - u32 slot = of_read_number(range, 2); > > + u32 slot = of_read_number(range + 1, 1); > > u64 cpuaddr = of_read_number(range + na, pna); > > unsigned long rtype; > > > > Sorry for the long delay, and thanks for the fix! > > Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> > Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> > > (on Armada 370, with PCIe cards plugged in) Fixes: 11be65472a427 ("PCI: mvebu: Adapt to the new device tree layout") Cc: <stable@vger.kernel.org> # v3.12+ Acked-by: Jason Cooper <jason@lakedaemon.net> thx, Jason. ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH] mvebu : pcie: dt: potential issue in range parsing 2014-02-05 17:21 ` Jason Cooper @ 2014-02-14 18:51 ` Bjorn Helgaas 0 siblings, 0 replies; 5+ messages in thread From: Bjorn Helgaas @ 2014-02-14 18:51 UTC (permalink / raw) To: linux-arm-kernel On Wed, Feb 05, 2014 at 12:21:07PM -0500, Jason Cooper wrote: > > + Bjorn, linux-pci > > Bjorn, > > It looks like this didn't get Cc'd to linux-pci. Here's a link: > > http://www.spinics.net/lists/arm-kernel/msg299721.html Thanks for the heads-up; I had indeed missed this (I mostly rely on patchwork, which only tracks linux-pci, and it's not smart enough to extract quoted patches). Applied to pci/host-mvebu for v3.15, thanks! > > On Wed, Feb 05, 2014 at 04:47:10PM +0100, Thomas Petazzoni wrote: > > Dear Jean-Jacques Hiblot, > > > > On Fri, 10 Jan 2014 11:23:51 +0100, Jean-Jacques Hiblot wrote: > > > The second parameter of of_read_number is not the index, but a size. > > > As it happens, in this case it may work just fine because of the the conversion > > > to u32 and the favorable endianness on this architecture. > > > > > > Signed-off-by: Jean-Jacques Hiblot <jjhiblot@traphandler.com> > > > --- > > > drivers/pci/host/pci-mvebu.c | 2 +- > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > diff --git a/drivers/pci/host/pci-mvebu.c b/drivers/pci/host/pci-mvebu.c > > > index c269e43..877e8ce 100644 > > > --- a/drivers/pci/host/pci-mvebu.c > > > +++ b/drivers/pci/host/pci-mvebu.c > > > @@ -768,7 +768,7 @@ static int mvebu_get_tgt_attr(struct device_node *np, int devfn, > > > > > > for (i = 0; i < nranges; i++) { > > > u32 flags = of_read_number(range, 1); > > > - u32 slot = of_read_number(range, 2); > > > + u32 slot = of_read_number(range + 1, 1); > > > u64 cpuaddr = of_read_number(range + na, pna); > > > unsigned long rtype; > > > > > > > Sorry for the long delay, and thanks for the fix! > > > > Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> > > Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> > > > > (on Armada 370, with PCIe cards plugged in) > > > Fixes: 11be65472a427 ("PCI: mvebu: Adapt to the new device tree layout") > Cc: <stable@vger.kernel.org> # v3.12+ > Acked-by: Jason Cooper <jason@lakedaemon.net> > > thx, > > Jason. ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2014-02-14 18:51 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-01-10 10:23 [PATCH] mvebu : pcie: dt: potential issue in range parsing Jean-Jacques Hiblot 2014-02-05 4:05 ` Jason Cooper 2014-02-05 15:47 ` Thomas Petazzoni 2014-02-05 17:21 ` Jason Cooper 2014-02-14 18:51 ` Bjorn Helgaas
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).