[PATCH v5 2/4] Documentation: Add documentation for APM X-Gene SoC SATA host controller DTS binding

Mark Rutland mark.rutland at arm.com
Tue Nov 26 09:55:16 EST 2013


On Tue, Nov 26, 2013 at 07:01:23AM +0000, Loc Ho wrote:
> Documentation: Add documentation for APM X-Gene SoC SATA host controller DTS binding
> 
> Signed-off-by: Loc Ho <lho at apm.com>
> Signed-off-by: Tuan Phan <tphan at apm.com>
> Signed-off-by: Suman Tripathi <stripathi at apm.com>
> ---
>  .../devicetree/bindings/ata/apm-xgene.txt          |  102 ++++++++++++++++++++
>  1 files changed, 102 insertions(+), 0 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/ata/apm-xgene.txt
> 
> diff --git a/Documentation/devicetree/bindings/ata/apm-xgene.txt b/Documentation/devicetree/bindings/ata/apm-xgene.txt
> new file mode 100644
> index 0000000..879eee7
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/ata/apm-xgene.txt
> @@ -0,0 +1,102 @@
> +* APM X-Gene 6.0 Gb/s SATA host controller and clock nodes
> +
> +SATA host controller nodes are defined to describe on-chip Serial ATA
> +controllers. Each SATA controller (pair of ports) have its own node. Its
> +corresponding clock nodes are shown below.
> +
> +Required properties:
> +- compatible		: Shall be "apm,xgene-ahci-sgmii" if mux'ed with SGMII
> +			  or "apm,xgene-ahci-pcie" if mux'ed with PCIe.
> +- reg			: First memory resource shall be the AHCI memory
> +			  resource.
> +			  Second memory resource shall be the host controller
> +			  memory resource.
> +- interrupt-parent	: Interrupt controller.

I don't think that's strictly required.

> +- interrupts		: Interrupt mapping for SATA host controller IRQ.
> +- clocks		: Reference to the clock entry.
> +- phys			: PHY reference with parameter 0.
> +- phy-names		: Name of the PHY. Shall be "sata-6g".
> +
> +Optional properties:
> +- status		: Shall be "ok" if enabled or "na" if disabled.
> +			  Default is "ok".

Why not use the more standard "disabled" string, as I asked you to
previously?

[...]

> +		sata2: sata at 1a400000 {
> +			compatible = "apm,xgene-ahci-sgmii";
> +			reg = <0x0 0x1a400000 0x0 0x1000>,
> +			      <0x0 0x1f220000 0x0 0x10000>;
> +			interrupt-parent = <&gic>;
> +			interrupts = <0x0 0x87 0x4>;
> +			status = "ok";
> +			clocks = <&sata23clk 0>;
> +			phys = <&phy2 0>;
> +			phy-names = "sata-6g";
> +		};
> +
> +		sata3: sata at 1a800000 {
> +			compatible = "apm,xgene-ahci-pcie";
> +			reg = <0x0 0x1a800000 0x0 0x1000>,
> +			      <0x0 0x1f230000 0x0 0x10000>;
> +			interrupt-parent = <&gic>;
> +			interrupts = <0x0 0x88 0x4>;
> +			status = "ok";
> +			clocks = <&sata45clk 0>;
> +			phys = <&phy3 0>;
> +			phy-names = "sata-6g";
> +		};

The example is pointlessly huge. You could trim it down two these last
two nodes (with a phy node and some fixed clocks). 

Thanks,
Mark.



More information about the linux-arm-kernel mailing list