net: mvpp2: add hw_version field in "struct mvpp2"
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Wed, 15 Feb 2017 13:08:59 +0000 (14:08 +0100)
committerStefan Roese <sr@denx.de>
Wed, 29 Mar 2017 05:40:39 +0000 (07:40 +0200)
In preparation to the introduction for the support of PPv2.2 in the
mvpp2 driver, this commit adds a hw_version field to the struct
mvpp2, and uses the .data field of the DT match table to fill it in.

Having the MVPP21 and MVPP22 definitions available will allow to start
adding the necessary conditional code to support PPv2.2.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
drivers/net/mvpp2.c

index d199eafe3006d6d47fc424f6e85835069a7e512d..9683439d231c224c0fa84da75982497f402e0b28 100644 (file)
@@ -707,6 +707,9 @@ struct mvpp2 {
        /* Tclk value */
        u32 tclk;
 
+       /* HW version */
+       enum { MVPP21, MVPP22 } hw_version;
+
        struct mii_dev *bus;
 };
 
@@ -4132,6 +4135,9 @@ static int mvpp2_base_probe(struct udevice *dev)
        u32 size = 0;
        int i;
 
+       /* Save hw-version */
+       priv->hw_version = dev_get_driver_data(dev);
+
        /*
         * U-Boot special buffer handling:
         *
@@ -4234,7 +4240,10 @@ static int mvpp2_base_bind(struct udevice *parent)
 }
 
 static const struct udevice_id mvpp2_ids[] = {
-       { .compatible = "marvell,armada-375-pp2" },
+       {
+               .compatible = "marvell,armada-375-pp2",
+               .data = MVPP21,
+       },
        { }
 };