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

net: phy: microchip_t1: Enable pin out specific to lan887x phy for PEROUT signal

Adds support for enabling pin out that is required
to generate periodic output signal on lan887x phy.

Signed-off-by: Divya Koppera <divya.koppera@microchip.com>
Link: https://patch.msgid.link/20250115090634.12941-3-divya.koppera@microchip.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

authored by

Divya Koppera and committed by
Jakub Kicinski
8541fc12 bf356a6d

+13 -1
+13 -1
drivers/net/phy/microchip_t1.c
··· 238 238 #define LAN887X_INT_MSK_LINK_UP_MSK BIT(1) 239 239 #define LAN887X_INT_MSK_LINK_DOWN_MSK BIT(0) 240 240 241 + #define LAN887X_MX_CHIP_TOP_REG_CONTROL1 0xF002 242 + #define LAN887X_MX_CHIP_TOP_REG_CONTROL1_EVT_EN BIT(8) 243 + 241 244 #define LAN887X_MX_CHIP_TOP_LINK_MSK (LAN887X_INT_MSK_LINK_UP_MSK |\ 242 245 LAN887X_INT_MSK_LINK_DOWN_MSK) 243 246 ··· 1289 1286 if (IS_ERR(priv->clock)) 1290 1287 return PTR_ERR(priv->clock); 1291 1288 1289 + /* Enable pin mux for EVT */ 1290 + phy_modify_mmd(phydev, MDIO_MMD_VEND1, 1291 + LAN887X_MX_CHIP_TOP_REG_CONTROL1, 1292 + LAN887X_MX_CHIP_TOP_REG_CONTROL1_EVT_EN, 1293 + LAN887X_MX_CHIP_TOP_REG_CONTROL1_EVT_EN); 1294 + 1295 + /* Initialize pin numbers specific to PEROUT */ 1296 + priv->clock->event_pin = 3; 1297 + 1292 1298 priv->init_done = true; 1293 1299 } 1294 1300 ··· 2166 2154 2167 2155 module_phy_driver(microchip_t1_phy_driver); 2168 2156 2169 - static const struct mdio_device_id __maybe_unused microchip_t1_tbl[] = { 2157 + static struct mdio_device_id __maybe_unused microchip_t1_tbl[] = { 2170 2158 { PHY_ID_MATCH_MODEL(PHY_ID_LAN87XX) }, 2171 2159 { PHY_ID_MATCH_MODEL(PHY_ID_LAN937X) }, 2172 2160 { PHY_ID_MATCH_MODEL(PHY_ID_LAN887X) },