- robo.gmii = ((mdio_read(0, 0x0f) & 0xf000) != 0);
- /* 53115 ? */
- if (robo.gmii && robo_read32(ROBO_STAT_PAGE, ROBO_LSA_IM_PORT) != 0) {
- robo_write16(ROBO_ARLIO_PAGE, ROBO_VTBL_INDX_5395, val16);
- robo_write16(ROBO_ARLIO_PAGE, ROBO_VTBL_ACCESS_5395,
- (1 << 7) /* start */ | 1 /* read */);
- if (robo_read16(ROBO_ARLIO_PAGE, ROBO_VTBL_ACCESS_5395) == 1 &&
- robo_read16(ROBO_ARLIO_PAGE, ROBO_VTBL_INDX_5395) == val16)
- return 4;
- }
- /* dirty trick for 5356/5357 */
- if ((phyid & 0xfff0ffff ) == 0x5da00362 ||
- (phyid & 0xfff0ffff ) == 0x5e000362)
- return 3;
- /* 5325/5352/5354*/
- return 1;