Thread (27 messages) 27 messages, 5 authors, 2017-07-05

[PATCH v5 1/3] PCI: Add DT binding for tango PCIe controller

From: Mason <hidden>
Date: 2017-06-07 22:35:27
Also in: linux-devicetree, linux-pci, lkml

Hello Rob,

On 07/06/2017 23:29, Rob Herring wrote:
On Wed, May 31, 2017 at 03:30:26PM +0200, Marc Gonzalez wrote:
quoted
Binding for the Sigma Designs SMP8759 SoC.

Signed-off-by: Marc Gonzalez <redacted>
---
 Documentation/devicetree/bindings/pci/tango-pcie.txt | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)
diff --git a/Documentation/devicetree/bindings/pci/tango-pcie.txt b/Documentation/devicetree/bindings/pci/tango-pcie.txt
new file mode 100644
index 000000000000..35ef2c811a27
--- /dev/null
+++ b/Documentation/devicetree/bindings/pci/tango-pcie.txt
@@ -0,0 +1,30 @@
+Sigma Designs Tango PCIe controller
+
+Required properties:
+
+- compatible: "sigma,smp8759-pcie"
+- reg: address/size of PCI configuration space, address/size of register area
+- device_type: "pci"
+- #size-cells: <2>
+- #address-cells: <3>
+- msi-controller
+- ranges: translation from system to bus addresses
+- interrupts: spec for misc interrupts, spec for MSI
+
+http://elinux.org/Device_Tree_Usage#PCI_Address_Translation
+http://elinux.org/Device_Tree_Usage#Advanced_Interrupt_Mapping
Why are these here?
I found these references very helpful when writing the node.
Where would you put them? In the example?
There's several standard properties you are missing like bus-range.
My reasoning for omitting "bus-range" was that the PCI core computes
it by itself (1M per "bus" so SZ_4M => 4 devices). I thought redundant
information was bad form?
Build your dts with "W=2". dtc recently gained some checks for PCI 
bindings.
I'll give it a try. Did v4.9 already support it?
quoted
+Example:
+
+	pcie at 2e000 {
+		compatible = "sigma,smp8759-pcie";
+		reg = <0x50000000 SZ_4M>, <0x2e000 0x100>;
+		device_type = "pci";
+		#size-cells = <2>;
+		#address-cells = <3>;
+		msi-controller;
+		ranges = <0x02000000 0x0 0x00400000  0x50400000  0x0 SZ_60M>;
I don't think SZ_60M exists or is available to dts files. Just put the 
number in.
I #defined it at the top of my DTS.
Using symbolic constants in DTS is not acceptable?

Thanks for having a look.

Regards.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help