Конкретно интересует отличие DP83848CVV (стоит на плате STM3240G-EVAL) и KSZ8863RLL.
В прошивке (примере ST), касаемо железа нашел только следующие настройки:
Код
#define DP83848_PHY_ADDRESS 0x01 /* Relative to STM324xG-EVAL Board */
#define PHY_MICR 0x11 /* MII Interrupt Control Register */
#define PHY_MICR_INT_EN ((uint16_t)0x0002) /* PHY Enable interrupts */
#define PHY_MICR_INT_OE ((uint16_t)0x0001) /* PHY Enable output interrupt events */
#define PHY_MISR 0x12 /* MII Interrupt Status and Misc. Control Register */
#define PHY_MISR_LINK_INT_EN ((uint16_t)0x0020) /* Enable Interrupt on change of link status */
#define PHY_LINK_STATUS ((uint16_t)0x2000) /* PHY link status interrupt mask */
Код
/* PHY configuration section **************************************************/
/* PHY Reset delay */
#define PHY_RESET_DELAY ((uint32_t)0x000FFFFF)
/* PHY Configuration delay */
#define PHY_CONFIG_DELAY ((uint32_t)0x00FFFFFF)
/* The PHY status register value change from a PHY to another, so the user have
to update this value depending on the used external PHY */
#define PHY_SR ((uint16_t)16) /* Value for DP83848 PHY */
/* The Speed and Duplex mask values change from a PHY to another, so the user
have to update this value depending on the used external PHY */
#define PHY_SPEED_STATUS ((uint16_t)0x0002) /* Value for DP83848 PHY */
#define PHY_DUPLEX_STATUS ((uint16_t)0x0004) /* Value for DP83848 PHY */