* [U-Boot] [PATCH] vexpress64: Juno: Change PCI buss addresses for IO to start from zero.
@ 2016-11-22 11:19 Liviu Dudau
2016-11-22 11:29 ` Sudeep Holla
2016-11-29 18:02 ` [U-Boot] " Tom Rini
0 siblings, 2 replies; 8+ messages in thread
From: Liviu Dudau @ 2016-11-22 11:19 UTC (permalink / raw)
To: u-boot
Juno uses a 1:1 mapping between CPU and PCI addresses for IO. First,
that will trip devices that cannot use more than 16 bits of addresses
for IO, second it is un-necessary as the system can handle zero-based
PCI addresses just fine.
Change the mapping to start IO bus addresses from zero.
Signed-off-by: Liviu Dudau <Liviu.Dudau@foss.arm.com>
---
board/armltd/vexpress64/pcie.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/board/armltd/vexpress64/pcie.c b/board/armltd/vexpress64/pcie.c
index b3fb09c..0608a5a 100644
--- a/board/armltd/vexpress64/pcie.c
+++ b/board/armltd/vexpress64/pcie.c
@@ -123,7 +123,7 @@ void xr3pci_setup_atr(void)
base += XR3PCI_ATR_TABLE_SIZE;
/* setup IO space translation */
- xr3pci_set_atr_entry(base, XR3_PCI_IOSPACE_START, XR3_PCI_IOSPACE_START,
+ xr3pci_set_atr_entry(base, XR3_PCI_IOSPACE_START, 0,
XR3_PCI_IOSPACE_SIZE, XR3PCI_ATR_TRSLID_PCIE_IO);
base += XR3PCI_ATR_TABLE_SIZE;
--
2.10.2
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [U-Boot] [PATCH] vexpress64: Juno: Change PCI buss addresses for IO to start from zero.
2016-11-22 11:19 [U-Boot] [PATCH] vexpress64: Juno: Change PCI buss addresses for IO to start from zero Liviu Dudau
@ 2016-11-22 11:29 ` Sudeep Holla
2016-11-22 12:08 ` Liviu Dudau
2016-11-29 18:02 ` [U-Boot] " Tom Rini
1 sibling, 1 reply; 8+ messages in thread
From: Sudeep Holla @ 2016-11-22 11:29 UTC (permalink / raw)
To: u-boot
Hi Liviu,
On Tue, Nov 22, 2016 at 11:19 AM, Liviu Dudau <Liviu.Dudau@foss.arm.com> wrote:
> Juno uses a 1:1 mapping between CPU and PCI addresses for IO. First,
> that will trip devices that cannot use more than 16 bits of addresses
> for IO, second it is un-necessary as the system can handle zero-based
> PCI addresses just fine.
>
> Change the mapping to start IO bus addresses from zero.
>
I assume this require corresponding DT change, shout if that's not true.
If that's true, then does this patch not require patching of DT so
that systems not
running Uboot with this patch continue to work and we retain the
mainline DT as is ?
--
Regards,
Sudeep
^ permalink raw reply [flat|nested] 8+ messages in thread
* [U-Boot] [PATCH] vexpress64: Juno: Change PCI buss addresses for IO to start from zero.
2016-11-22 11:29 ` Sudeep Holla
@ 2016-11-22 12:08 ` Liviu Dudau
2016-11-22 15:08 ` Tom Rini
0 siblings, 1 reply; 8+ messages in thread
From: Liviu Dudau @ 2016-11-22 12:08 UTC (permalink / raw)
To: u-boot
On Tue, Nov 22, 2016 at 11:29:20AM +0000, Sudeep Holla wrote:
> Hi Liviu,
>
> On Tue, Nov 22, 2016 at 11:19 AM, Liviu Dudau <Liviu.Dudau@foss.arm.com> wrote:
> > Juno uses a 1:1 mapping between CPU and PCI addresses for IO. First,
> > that will trip devices that cannot use more than 16 bits of addresses
> > for IO, second it is un-necessary as the system can handle zero-based
> > PCI addresses just fine.
> >
> > Change the mapping to start IO bus addresses from zero.
> >
>
> I assume this require corresponding DT change, shout if that's not true.
> If that's true, then does this patch not require patching of DT so
> that systems not
> running Uboot with this patch continue to work and we retain the
> mainline DT as is ?
Yes, it does require DT changes, Jeremy Linton has a patch
>
> --
> Regards,
> Sudeep
--
====================
| I would like to |
| fix the world, |
| but they're not |
| giving me the |
\ source code! /
---------------
?\_(?)_/?
^ permalink raw reply [flat|nested] 8+ messages in thread
* [U-Boot] [PATCH] vexpress64: Juno: Change PCI buss addresses for IO to start from zero.
2016-11-22 12:08 ` Liviu Dudau
@ 2016-11-22 15:08 ` Tom Rini
2016-11-22 15:54 ` Ryan Harkin
2016-11-22 16:10 ` Sudeep Holla
0 siblings, 2 replies; 8+ messages in thread
From: Tom Rini @ 2016-11-22 15:08 UTC (permalink / raw)
To: u-boot
On Tue, Nov 22, 2016 at 12:08:49PM +0000, Liviu Dudau wrote:
> On Tue, Nov 22, 2016 at 11:29:20AM +0000, Sudeep Holla wrote:
> > Hi Liviu,
> >
> > On Tue, Nov 22, 2016 at 11:19 AM, Liviu Dudau <Liviu.Dudau@foss.arm.com> wrote:
> > > Juno uses a 1:1 mapping between CPU and PCI addresses for IO. First,
> > > that will trip devices that cannot use more than 16 bits of addresses
> > > for IO, second it is un-necessary as the system can handle zero-based
> > > PCI addresses just fine.
> > >
> > > Change the mapping to start IO bus addresses from zero.
> > >
> >
> > I assume this require corresponding DT change, shout if that's not true.
> > If that's true, then does this patch not require patching of DT so
> > that systems not
> > running Uboot with this patch continue to work and we retain the
> > mainline DT as is ?
>
> Yes, it does require DT changes, Jeremy Linton has a patch
So to be clear, what level of coordination do we need between the two
parts being merged? It would not be ideal to have combinations of
U-Boot and Linux not work. Thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20161122/5b02da57/attachment.sig>
^ permalink raw reply [flat|nested] 8+ messages in thread
* [U-Boot] [PATCH] vexpress64: Juno: Change PCI buss addresses for IO to start from zero.
2016-11-22 15:08 ` Tom Rini
@ 2016-11-22 15:54 ` Ryan Harkin
2016-11-22 16:10 ` Sudeep Holla
1 sibling, 0 replies; 8+ messages in thread
From: Ryan Harkin @ 2016-11-22 15:54 UTC (permalink / raw)
To: u-boot
On 22 November 2016 at 15:08, Tom Rini <trini@konsulko.com> wrote:
> On Tue, Nov 22, 2016 at 12:08:49PM +0000, Liviu Dudau wrote:
>> On Tue, Nov 22, 2016 at 11:29:20AM +0000, Sudeep Holla wrote:
>> > Hi Liviu,
>> >
>> > On Tue, Nov 22, 2016 at 11:19 AM, Liviu Dudau <Liviu.Dudau@foss.arm.com> wrote:
>> > > Juno uses a 1:1 mapping between CPU and PCI addresses for IO. First,
>> > > that will trip devices that cannot use more than 16 bits of addresses
>> > > for IO, second it is un-necessary as the system can handle zero-based
>> > > PCI addresses just fine.
>> > >
>> > > Change the mapping to start IO bus addresses from zero.
>> > >
>> >
>> > I assume this require corresponding DT change, shout if that's not true.
>> > If that's true, then does this patch not require patching of DT so
>> > that systems not
>> > running Uboot with this patch continue to work and we retain the
>> > mainline DT as is ?
>>
>> Yes, it does require DT changes, Jeremy Linton has a patch
>
> So to be clear, what level of coordination do we need between the two
> parts being merged? It would not be ideal to have combinations of
> U-Boot and Linux not work. Thanks!
>
I was wondering that too.
However, I just tested the patch in my setup and everything still
seems to work for me. I'll admit though that I only use the PCIe
network port, I don't have any extra PCIe devices and don't use SATA
drives in my setup.
> --
> Tom
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* [U-Boot] [PATCH] vexpress64: Juno: Change PCI buss addresses for IO to start from zero.
2016-11-22 15:08 ` Tom Rini
2016-11-22 15:54 ` Ryan Harkin
@ 2016-11-22 16:10 ` Sudeep Holla
2016-11-28 17:11 ` Jeremy Linton
1 sibling, 1 reply; 8+ messages in thread
From: Sudeep Holla @ 2016-11-22 16:10 UTC (permalink / raw)
To: u-boot
On 22/11/16 15:08, Tom Rini wrote:
> On Tue, Nov 22, 2016 at 12:08:49PM +0000, Liviu Dudau wrote:
>> On Tue, Nov 22, 2016 at 11:29:20AM +0000, Sudeep Holla wrote:
>>> Hi Liviu,
>>>
>>> On Tue, Nov 22, 2016 at 11:19 AM, Liviu Dudau <Liviu.Dudau@foss.arm.com> wrote:
>>>> Juno uses a 1:1 mapping between CPU and PCI addresses for IO. First,
>>>> that will trip devices that cannot use more than 16 bits of addresses
>>>> for IO, second it is un-necessary as the system can handle zero-based
>>>> PCI addresses just fine.
>>>>
>>>> Change the mapping to start IO bus addresses from zero.
>>>>
>>>
>>> I assume this require corresponding DT change, shout if that's not true.
>>> If that's true, then does this patch not require patching of DT so
>>> that systems not
>>> running Uboot with this patch continue to work and we retain the
>>> mainline DT as is ?
>>
>> Yes, it does require DT changes, Jeremy Linton has a patch
>
> So to be clear, what level of coordination do we need between the two
> parts being merged? It would not be ideal to have combinations of
> U-Boot and Linux not work. Thanks!
>
What I had in mind is U-Boot modifying/fixing up the DT to adapt to this
change so that we maintain compatibility and don't break anything. But I
was not sure how feasible is that solution with other bootloaders like UEFI.
--
Regards,
Sudeep
^ permalink raw reply [flat|nested] 8+ messages in thread
* [U-Boot] [PATCH] vexpress64: Juno: Change PCI buss addresses for IO to start from zero.
2016-11-22 16:10 ` Sudeep Holla
@ 2016-11-28 17:11 ` Jeremy Linton
0 siblings, 0 replies; 8+ messages in thread
From: Jeremy Linton @ 2016-11-28 17:11 UTC (permalink / raw)
To: u-boot
|-----Original Message-----
|From: Sudeep Holla [mailto:sudeep.holla at arm.com]
|Sent: Tuesday, November 22, 2016 10:11 AM
|To: Tom Rini; Liviu Dudau
|Cc: Sudeep Holla; Lorenzo Pieralisi; Jeremy Linton; U-Boot ML
|Subject: Re: [U-Boot] [PATCH] vexpress64: Juno: Change PCI buss addresses
|for IO to start from zero.
|
|
|
|On 22/11/16 15:08, Tom Rini wrote:
|> On Tue, Nov 22, 2016 at 12:08:49PM +0000, Liviu Dudau wrote:
|>> On Tue, Nov 22, 2016 at 11:29:20AM +0000, Sudeep Holla wrote:
|>>> Hi Liviu,
|>>>
|>>> On Tue, Nov 22, 2016 at 11:19 AM, Liviu Dudau
|<Liviu.Dudau@foss.arm.com> wrote:
|>>>> Juno uses a 1:1 mapping between CPU and PCI addresses for IO.
|>>>> First, that will trip devices that cannot use more than 16 bits of
|>>>> addresses for IO, second it is un-necessary as the system can
|>>>> handle zero-based PCI addresses just fine.
|>>>>
|>>>> Change the mapping to start IO bus addresses from zero.
|>>>>
|>>>
|>>> I assume this require corresponding DT change, shout if that's not true.
|>>> If that's true, then does this patch not require patching of DT so
|>>> that systems not running Uboot with this patch continue to work and
|>>> we retain the mainline DT as is ?
|>>
|>> Yes, it does require DT changes, Jeremy Linton has a patch
|>
|> So to be clear, what level of coordination do we need between the two
|> parts being merged? It would not be ideal to have combinations of
|> U-Boot and Linux not work. Thanks!
|>
|
|What I had in mind is U-Boot modifying/fixing up the DT to adapt to this
|change so that we maintain compatibility and don't break anything. But I was
|not sure how feasible is that solution with other bootloaders like UEFI.
Hi,
UEFI already has the 0 based PIO in place, so in theory its broken with the current DT.
Put another way, I suspect that there are few (if any) juno's running out there, making use of PCIe PIO. Most of the boards people are likely to plug into the machine don't use PIO.
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [U-Boot] vexpress64: Juno: Change PCI buss addresses for IO to start from zero.
2016-11-22 11:19 [U-Boot] [PATCH] vexpress64: Juno: Change PCI buss addresses for IO to start from zero Liviu Dudau
2016-11-22 11:29 ` Sudeep Holla
@ 2016-11-29 18:02 ` Tom Rini
1 sibling, 0 replies; 8+ messages in thread
From: Tom Rini @ 2016-11-29 18:02 UTC (permalink / raw)
To: u-boot
On Tue, Nov 22, 2016 at 11:19:18AM +0000, Liviu Dudau wrote:
> Juno uses a 1:1 mapping between CPU and PCI addresses for IO. First,
> that will trip devices that cannot use more than 16 bits of addresses
> for IO, second it is un-necessary as the system can handle zero-based
> PCI addresses just fine.
>
> Change the mapping to start IO bus addresses from zero.
>
> Signed-off-by: Liviu Dudau <Liviu.Dudau@foss.arm.com>
Applied to u-boot/master, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20161129/e3cf97f2/attachment.sig>
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2016-11-29 18:02 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-22 11:19 [U-Boot] [PATCH] vexpress64: Juno: Change PCI buss addresses for IO to start from zero Liviu Dudau
2016-11-22 11:29 ` Sudeep Holla
2016-11-22 12:08 ` Liviu Dudau
2016-11-22 15:08 ` Tom Rini
2016-11-22 15:54 ` Ryan Harkin
2016-11-22 16:10 ` Sudeep Holla
2016-11-28 17:11 ` Jeremy Linton
2016-11-29 18:02 ` [U-Boot] " Tom Rini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox