phy: sun4i-usb: Add H3/H5 PHY config
authorJagan Teki <jagan@amarulasolutions.com>
Mon, 7 May 2018 07:33:28 +0000 (13:03 +0530)
committerJagan Teki <jagan@amarulasolutions.com>
Mon, 28 May 2018 11:10:43 +0000 (16:40 +0530)
H3/H5 has 4 USB PHY, rest are similar to A64.

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Acked-by: Jun Nie <jun.nie@linaro.org>
drivers/phy/allwinner/phy-sun4i-usb.c

index 7f2970b96bda291f23d65ec333e4f321645f0dff..993f036b7877f9dfd77cbdafeb2950b94a2ce662 100644 (file)
@@ -56,6 +56,7 @@
 #define MAX_PHYS                       4
 
 enum sun4i_usb_phy_type {
+       sun8i_h3_phy,
        sun50i_a64_phy,
 };
 
@@ -414,6 +415,15 @@ static int sun4i_usb_phy_probe(struct udevice *dev)
        return 0;
 }
 
+static const struct sun4i_usb_phy_cfg sun8i_h3_cfg = {
+       .num_phys = 4,
+       .type = sun8i_h3_phy,
+       .disc_thresh = 3,
+       .phyctl_offset = REG_PHYCTL_A33,
+       .enable_pmu_unk1 = true,
+       .phy0_dual_route = true,
+};
+
 static const struct sun4i_usb_phy_cfg sun50i_a64_cfg = {
        .num_phys = 2,
        .type = sun50i_a64_phy,
@@ -424,6 +434,7 @@ static const struct sun4i_usb_phy_cfg sun50i_a64_cfg = {
 };
 
 static const struct udevice_id sun4i_usb_phy_ids[] = {
+       { .compatible = "allwinner,sun8i-h3-usb-phy", .data = (ulong)&sun8i_h3_cfg },
        { .compatible = "allwinner,sun50i-a64-usb-phy", .data = (ulong)&sun50i_a64_cfg},
        { }
 };