[PATCH] ahci: add DT binding for Calxeda AHCI controller

Rob Herring robherring2 at gmail.com
Tue Oct 4 13:30:11 EST 2011


On 09/02/2011 10:10 AM, Rob Herring wrote:
> From: Rob Herring <rob.herring at calxeda.com>
> 
> Add devicetree match table to ahci platform driver for Calxeda Highbank
> AHCI controller.
> 
> Signed-off-by: Rob Herring <rob.herring at calxeda.com>
> Cc: Jeff Garzik <jgarzik at pobox.com>
> Cc: linux-ide at vger.kernel.org
> Cc: linux-kernel at vger.kernel.org
> Cc: devicetree-discuss at lists.ozlabs.org
> ---

Any comments on this?

Rob

>  .../devicetree/bindings/ata/calxeda-sata.txt       |   17 +++++++++++++++++
>  drivers/ata/ahci_platform.c                        |    7 +++++++
>  2 files changed, 24 insertions(+), 0 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/ata/calxeda-sata.txt
> 
> diff --git a/Documentation/devicetree/bindings/ata/calxeda-sata.txt b/Documentation/devicetree/bindings/ata/calxeda-sata.txt
> new file mode 100644
> index 0000000..79caa56
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/ata/calxeda-sata.txt
> @@ -0,0 +1,17 @@
> +* Calxeda SATA Controller
> +
> +SATA nodes are defined to describe on-chip Serial ATA controllers.
> +Each SATA controller should have its own node.
> +
> +Required properties:
> +- compatible        : compatible list, contains "calxeda,hb-ahci"
> +- interrupts        : <interrupt mapping for SATA IRQ>
> +- reg               : <registers mapping>
> +
> +Example:
> +        sata at ffe08000 {
> +		compatible = "calxeda,hb-ahci";
> +                reg = <0xffe08000 0x1000>;
> +                interrupts = <115>;
> +        };
> +
> diff --git a/drivers/ata/ahci_platform.c b/drivers/ata/ahci_platform.c
> index 6fef1fa..9bfc970 100644
> --- a/drivers/ata/ahci_platform.c
> +++ b/drivers/ata/ahci_platform.c
> @@ -171,11 +171,18 @@ static int __devexit ahci_remove(struct platform_device *pdev)
>  	return 0;
>  }
>  
> +static const struct of_device_id ahci_of_match[] = {
> +	{ .compatible = "calxeda,hb-ahci", },
> +	{},
> +};
> +MODULE_DEVICE_TABLE(of, ahci_of_match);
> +
>  static struct platform_driver ahci_driver = {
>  	.remove = __devexit_p(ahci_remove),
>  	.driver = {
>  		.name = "ahci",
>  		.owner = THIS_MODULE,
> +		.of_match_table = ahci_of_match,
>  	},
>  };
>  



More information about the devicetree-discuss mailing list