OSDN Git Service

net: ethernet: ti: am65-cpsw: Enable QSGMII for J784S4 CPSW9G
authorSiddharth Vadapalli <s-vadapalli@ti.com>
Tue, 4 Apr 2023 06:14:58 +0000 (11:44 +0530)
committerJakub Kicinski <kuba@kernel.org>
Sat, 8 Apr 2023 02:46:15 +0000 (19:46 -0700)
TI's J784S4 SoC supports QSGMII mode with the CPSW9G instance of the
CPSW Ethernet Switch. Add a new compatible for J784S4 SoC and enable
QSGMII support for it by adding QSGMII mode to the extra_modes member of
the "j784s4_cpswxg_pdata" SoC data.

Signed-off-by: Siddharth Vadapalli <s-vadapalli@ti.com>
Reviewed-by: Roger Quadros <rogerq@kernel.org>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/ti/am65-cpsw-nuss.c

index f08f0e7..fb45812 100644 (file)
@@ -2810,12 +2810,20 @@ static const struct am65_cpsw_pdata j721e_cpswxg_pdata = {
        .extra_modes = BIT(PHY_INTERFACE_MODE_QSGMII) | BIT(PHY_INTERFACE_MODE_SGMII),
 };
 
+static const struct am65_cpsw_pdata j784s4_cpswxg_pdata = {
+       .quirks = 0,
+       .ale_dev_id = "am64-cpswxg",
+       .fdqring_mode = K3_RINGACC_RING_MODE_MESSAGE,
+       .extra_modes = BIT(PHY_INTERFACE_MODE_QSGMII),
+};
+
 static const struct of_device_id am65_cpsw_nuss_of_mtable[] = {
        { .compatible = "ti,am654-cpsw-nuss", .data = &am65x_sr1_0},
        { .compatible = "ti,j721e-cpsw-nuss", .data = &j721e_pdata},
        { .compatible = "ti,am642-cpsw-nuss", .data = &am64x_cpswxg_pdata},
        { .compatible = "ti,j7200-cpswxg-nuss", .data = &j7200_cpswxg_pdata},
        { .compatible = "ti,j721e-cpswxg-nuss", .data = &j721e_cpswxg_pdata},
+       { .compatible = "ti,j784s4-cpswxg-nuss", .data = &j784s4_cpswxg_pdata},
        { /* sentinel */ },
 };
 MODULE_DEVICE_TABLE(of, am65_cpsw_nuss_of_mtable);