On 20/10/2015 11:05, Julien Grall wrote:
Thank you for the log. The offending node is /pci@ee090000/usb@0,1 which
is (r8a7790.dtsi):

1407                 usb@0,1 {
1408                         reg = <0x800 0 0 0 0>;
1409                         device_type = "pci";
1410                         phys = <&usb0 0>;
1411                         phy-names = "usb";
1412                 };
1413

We assume that every node containing device_type = "pci" is a PCI bus.
So Xen is looking for a property "ranges" which is not present.

Although, here it's describing a PCI device. I wasn't able to find a
spec telling that device_type = "pci"; should only be used by the PCI
bus. Ian, do you remember why you implement with this assumption?

For now, I would advice you to drop this node, the next one (usb@0,2)
and doing the same in "pci@ee0d0000". We can figure out later how to fix
it when you get a DOM0 booting.

Better solution, rather than dropping the nodes can you add "ranges;" in each of them. Smth like

usb@0,1 {
  reg = <0x800 0 0 0 0>;
  device_type = "pci";
  phys = <&usb0 0>;
  phy-names = "usb";
  ranges;
}

"ranges;" is used to tell the PCI device is using the same address space of the PCI bus. There is DT bindings describing how look like the subnode and they mandate the property "ranges" (see [1], [2]). Although renesas doesn't seem to require it. Might be worth to investigate it.

Regards,

[1] http://lxr.free-electrons.com/source/Documentation/devicetree/bindings/pci/mvebu-pci.txt [2] http://lxr.free-electrons.com/source/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt

--
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

Reply via email to