diff --git a/features/netsocket/emac-drivers/TARGET_STM/mbed_lib.json b/features/netsocket/emac-drivers/TARGET_STM/mbed_lib.json index 90635673c7..7f85e45c25 100644 --- a/features/netsocket/emac-drivers/TARGET_STM/mbed_lib.json +++ b/features/netsocket/emac-drivers/TARGET_STM/mbed_lib.json @@ -11,6 +11,10 @@ "help" : "Configures actual PHY address according to pullup/down status of PHYAD pin(s)", "value" : 0 }, + "eth-phy-media-interface": { + "help" : "Selects Connection to PHY Chip: ETH_MEDIA_INTERFACE_RMII / ETH_MEDIA_INTERFACE_MII", + "value" : "ETH_MEDIA_INTERFACE_RMII" + }, "eth-phy-AutoNegotiation": { "help" : "Selects AutoNegotiation mode : ETH_AUTONEGOTIATION_ENABLE / ETH_AUTONEGOTIATION_DISABLE", "value" : "ETH_AUTONEGOTIATION_ENABLE" diff --git a/features/netsocket/emac-drivers/TARGET_STM/stm32xx_emac.cpp b/features/netsocket/emac-drivers/TARGET_STM/stm32xx_emac.cpp index d5b5c5e90f..9c34811179 100644 --- a/features/netsocket/emac-drivers/TARGET_STM/stm32xx_emac.cpp +++ b/features/netsocket/emac-drivers/TARGET_STM/stm32xx_emac.cpp @@ -313,7 +313,7 @@ bool STM32_EMAC::low_level_init_successful() EthHandle.Init.MACAddr = &MACAddr[0]; EthHandle.Init.RxMode = ETH_RXINTERRUPT_MODE; EthHandle.Init.ChecksumMode = ETH_CHECKSUM_BY_SOFTWARE; - EthHandle.Init.MediaInterface = ETH_MEDIA_INTERFACE_RMII; + EthHandle.Init.MediaInterface = MBED_CONF_STM32_EMAC_ETH_PHY_MEDIA_INTERFACE; tr_info("PHY Addr %u AutoNegotiation %u", EthHandle.Init.PhyAddress, EthHandle.Init.AutoNegotiation); tr_debug("MAC Addr %02x:%02x:%02x:%02x:%02x:%02x", MACAddr[0], MACAddr[1], MACAddr[2], MACAddr[3], MACAddr[4], MACAddr[5]); tr_info("ETH buffers : %u Rx %u Tx", ETH_RXBUFNB, ETH_TXBUFNB);