Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

phy: ti: gmii-sel: Enable USXGMII mode for J784S4

TI's J784S4 SoC supports USXGMII mode with the CPSW9G instance's MAC
ports 1 and 2. Add USXGMII mode to the extra_modes member of J784S4's
SoC data.

Signed-off-by: Siddharth Vadapalli <s-vadapalli@ti.com>
Reviewed-by: Roger Quadros <rogerq@kernel.org>
Link: https://lore.kernel.org/r/20230331062521.529005-3-s-vadapalli@ti.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>

authored by

Siddharth Vadapalli and committed by
Vinod Koul
8d087a09 efd65880

+10 -1
+10 -1
drivers/phy/ti/phy-gmii-sel.c
··· 25 25 /* J72xx SoC specific definitions for the CONTROL port */ 26 26 #define J72XX_GMII_SEL_MODE_SGMII 3 27 27 #define J72XX_GMII_SEL_MODE_QSGMII 4 28 + #define J72XX_GMII_SEL_MODE_USXGMII 5 28 29 #define J72XX_GMII_SEL_MODE_QSGMII_SUB 6 29 30 30 31 #define PHY_GMII_PORT(n) BIT((n) - 1) ··· 113 112 goto unsupported; 114 113 else 115 114 gmii_sel_mode = J72XX_GMII_SEL_MODE_SGMII; 115 + break; 116 + 117 + case PHY_INTERFACE_MODE_USXGMII: 118 + if (!(soc_data->extra_modes & BIT(PHY_INTERFACE_MODE_USXGMII))) 119 + goto unsupported; 120 + else 121 + gmii_sel_mode = J72XX_GMII_SEL_MODE_USXGMII; 116 122 break; 117 123 118 124 default: ··· 247 239 struct phy_gmii_sel_soc_data phy_gmii_sel_cpsw9g_soc_j784s4 = { 248 240 .use_of_data = true, 249 241 .regfields = phy_gmii_sel_fields_am654, 250 - .extra_modes = BIT(PHY_INTERFACE_MODE_QSGMII), 242 + .extra_modes = BIT(PHY_INTERFACE_MODE_QSGMII) | 243 + BIT(PHY_INTERFACE_MODE_USXGMII), 251 244 .num_ports = 8, 252 245 .num_qsgmii_main_ports = 2, 253 246 };