Lines Matching +full:0 +full:x54
18 #define PHY_ID_VSC8530 0x00070560
19 #define PHY_ID_VSC8531 0x00070570
20 #define PHY_ID_VSC8540 0x00070760
21 #define PHY_ID_VSC8541 0x00070770
22 #define PHY_ID_VSC8574 0x000704a0
23 #define PHY_ID_VSC8584 0x000707c0
27 #define MSCC_PHY_PAGE_STD 0x0000 /* Standard registers */
28 #define MSCC_PHY_PAGE_EXT1 0x0001 /* Extended registers - page 1 */
29 #define MSCC_PHY_PAGE_EXT2 0x0002 /* Extended registers - page 2 */
30 #define MSCC_PHY_PAGE_EXT3 0x0003 /* Extended registers - page 3 */
31 #define MSCC_PHY_PAGE_EXT4 0x0004 /* Extended registers - page 4 */
32 #define MSCC_PHY_PAGE_GPIO 0x0010 /* GPIO registers */
33 #define MSCC_PHY_PAGE_TEST 0x2A30 /* TEST Page registers */
34 #define MSCC_PHY_PAGE_TR 0x52B5 /* Token Ring Page registers */
42 #define SMI_BROADCAST_WR_EN BIT(0)
49 #define MIIM_AUX_CNTRL_STAT_ACTIPHY_TO (0x0004)
50 #define MIIM_AUX_CNTRL_STAT_F_DUPLEX (0x0020)
51 #define MIIM_AUX_CNTRL_STAT_SPEED_MASK (0x0018)
53 #define MIIM_AUX_CNTRL_STAT_SPEED_10M (0x0)
54 #define MIIM_AUX_CNTRL_STAT_SPEED_100M (0x1)
55 #define MIIM_AUX_CNTRL_STAT_SPEED_1000M (0x2)
59 #define MAC_IF_SELECTION_MASK (0x1800)
60 #define MAC_IF_SELECTION_GMII (0)
66 #define VSC8584_MAC_IF_SELECTION_SGMII 0
70 #define MEDIA_OP_MODE_COPPER 0
99 #define VSC_FAST_LINK_FAIL2_ENA_MASK (0x8000)
100 #define RX_CLK_OUT_MASK (0x0800)
103 #define RX_CLK_OUT_NORMAL (0)
107 #define RGMII_RX_CLK_DELAY_MASK (0x0070)
108 #define RGMII_TX_CLK_DELAY_POS (0)
110 #define RGMII_TX_CLK_DELAY_MASK (0x0007)
116 #define EDGE_RATE_CNTL_MASK (0x00E0)
119 #define RMII_CLK_OUT_ENABLE_MASK (0x10)
125 #define MSCC_DW8051_CNTL_STATUS 0
134 #define MSCC_DW8051_VLD_MASK 0xf1ff
138 #define MSCC_TRAP_ROM_ADDR_SERDES_INIT 0x3eb7
142 #define MSCC_PATCH_RAM_ADDR_SERDES_INIT 0x4012
152 #define READ_RAM (0x00 << 13)
155 #define INT_MEM_DATA_M GENMASK(7, 0)
166 #define PROC_CMD_RECONF_PORT (0 << 7)
169 #define PROC_CMD_READ (0 << 6)
172 #define PROC_CMD_FIBER_1000BASE_X (0 << 4)
175 #define PROC_CMD_NO_MAC_CONF (0x00 << 4)
177 #define PROC_CMD_NOP GENMASK(3, 0)
180 #define PROC_CMD_FIBER_MEDIA_CONF BIT(0)
181 #define PROC_CMD_MCB_ACCESS_MAC_CONF (0x0000 << 0)
187 #define MAC_CFG_SGMII (0x00 << 14)
200 /* Token Ring Page 0x52B5 Registers */
206 #define MSCC_PHY_TR_16_READ (0xA000)
208 #define MSCC_PHY_TR_16_WRITE (0x8000)
214 #define MSCC_PHY_TR_LINKDETCTRL_MASK (0x0018)
215 #define MSCC_PHY_TR_LINKDETCTRL_ADDR (0x07F8)
217 #define MSCC_PHY_TR_VGATHRESH100_POS (0)
219 #define MSCC_PHY_TR_VGATHRESH100_VAL (0x0018)
220 #define MSCC_PHY_TR_VGATHRESH100_MASK (0x007f)
221 #define MSCC_PHY_TR_VGATHRESH100_ADDR (0x0FA4)
223 #define MSCC_PHY_TR_VGAGAIN10_U_POS (0)
225 #define MSCC_PHY_TR_VGAGAIN10_U_MASK (0x0001)
226 #define MSCC_PHY_TR_VGAGAIN10_U_VAL (0)
230 #define MSCC_PHY_TR_VGAGAIN10_L_MASK (0xf000)
231 #define MSCC_PHY_TR_VGAGAIN10_L_VAL (0x0001)
232 #define MSCC_PHY_TR_VGAGAIN10_ADDR (0x0F92)
238 #define VSC8584_REVB 0x0001
239 #define MSCC_DEV_REV_MASK GENMASK(3, 0)
241 #define MSCC_VSC8574_REVB_INT8051_FW_START_ADDR 0x4000
242 #define MSCC_VSC8574_REVB_INT8051_FW_CRC 0x29e8
244 #define MSCC_VSC8584_REVB_INT8051_FW_START_ADDR 0xe800
245 #define MSCC_VSC8584_REVB_INT8051_FW_CRC 0xfb48
279 val & GENMASK(15, 0)); in vsc8584_csr_write()
311 return 0; in vsc8584_cmd()
346 return 0; in vsc8584_micro_deassert_reset()
365 bus->write(bus, phy, MDIO_DEVAD_NONE, MSCC_TRAP_ROM_ADDR(4), 0x005b); in vsc8584_micro_assert_reset()
366 bus->write(bus, phy, MDIO_DEVAD_NONE, MSCC_PATCH_RAM_ADDR(4), 0x005b); in vsc8584_micro_assert_reset()
379 PROC_CMD_MCB_ACCESS_MAC_CONF | PROC_CMD_SGMII_PORT(0) | in vsc8584_micro_assert_reset()
389 return 0; in vsc8584_micro_assert_reset()
393 0x46, 0x4a, 0x02, 0x43, 0x37, 0x02, 0x46, 0x26, 0x02, 0x46, 0x77, 0x02,
394 0x45, 0x60, 0x02, 0x45, 0xaf, 0xed, 0xff, 0xe5, 0xfc, 0x54, 0x38, 0x64,
395 0x20, 0x70, 0x08, 0x65, 0xff, 0x70, 0x04, 0xed, 0x44, 0x80, 0xff, 0x22,
396 0x8f, 0x19, 0x7b, 0xbb, 0x7d, 0x0e, 0x7f, 0x04, 0x12, 0x3d, 0xd7, 0xef,
397 0x4e, 0x60, 0x03, 0x02, 0x41, 0xf9, 0xe4, 0xf5, 0x1a, 0x74, 0x01, 0x7e,
398 0x00, 0xa8, 0x1a, 0x08, 0x80, 0x05, 0xc3, 0x33, 0xce, 0x33, 0xce, 0xd8,
399 0xf9, 0xff, 0xef, 0x55, 0x19, 0x70, 0x03, 0x02, 0x41, 0xed, 0x85, 0x1a,
400 0xfb, 0x7b, 0xbb, 0xe4, 0xfd, 0xff, 0x12, 0x3d, 0xd7, 0xef, 0x4e, 0x60,
401 0x03, 0x02, 0x41, 0xed, 0xe5, 0x1a, 0x54, 0x02, 0x75, 0x1d, 0x00, 0x25,
402 0xe0, 0x25, 0xe0, 0xf5, 0x1c, 0xe4, 0x78, 0xc5, 0xf6, 0xd2, 0x0a, 0x12,
403 0x41, 0xfa, 0x7b, 0xff, 0x7d, 0x12, 0x7f, 0x07, 0x12, 0x3d, 0xd7, 0xef,
404 0x4e, 0x60, 0x03, 0x02, 0x41, 0xe7, 0xc2, 0x0a, 0x74, 0xc7, 0x25, 0x1a,
405 0xf9, 0x74, 0xe7, 0x25, 0x1a, 0xf8, 0xe6, 0x27, 0xf5, 0x1b, 0xe5, 0x1d,
406 0x24, 0x5b, 0x12, 0x45, 0xea, 0x12, 0x3e, 0xda, 0x7b, 0xfc, 0x7d, 0x11,
407 0x7f, 0x07, 0x12, 0x3d, 0xd7, 0x78, 0xcc, 0xef, 0xf6, 0x78, 0xc1, 0xe6,
408 0xfe, 0xef, 0xd3, 0x9e, 0x40, 0x06, 0x78, 0xcc, 0xe6, 0x78, 0xc1, 0xf6,
409 0x12, 0x41, 0xfa, 0x7b, 0xec, 0x7d, 0x12, 0x7f, 0x07, 0x12, 0x3d, 0xd7,
410 0x78, 0xcb, 0xef, 0xf6, 0xbf, 0x07, 0x06, 0x78, 0xc3, 0x76, 0x1a, 0x80,
411 0x1f, 0x78, 0xc5, 0xe6, 0xff, 0x60, 0x0f, 0xc3, 0xe5, 0x1b, 0x9f, 0xff,
412 0x78, 0xcb, 0xe6, 0x85, 0x1b, 0xf0, 0xa4, 0x2f, 0x80, 0x07, 0x78, 0xcb,
413 0xe6, 0x85, 0x1b, 0xf0, 0xa4, 0x78, 0xc3, 0xf6, 0xe4, 0x78, 0xc2, 0xf6,
414 0x78, 0xc2, 0xe6, 0xff, 0xc3, 0x08, 0x96, 0x40, 0x03, 0x02, 0x41, 0xd1,
415 0xef, 0x54, 0x03, 0x60, 0x33, 0x14, 0x60, 0x46, 0x24, 0xfe, 0x60, 0x42,
416 0x04, 0x70, 0x4b, 0xef, 0x24, 0x02, 0xff, 0xe4, 0x33, 0xfe, 0xef, 0x78,
417 0x02, 0xce, 0xa2, 0xe7, 0x13, 0xce, 0x13, 0xd8, 0xf8, 0xff, 0xe5, 0x1d,
418 0x24, 0x5c, 0xcd, 0xe5, 0x1c, 0x34, 0xf0, 0xcd, 0x2f, 0xff, 0xed, 0x3e,
419 0xfe, 0x12, 0x46, 0x0d, 0x7d, 0x11, 0x80, 0x0b, 0x78, 0xc2, 0xe6, 0x70,
420 0x04, 0x7d, 0x11, 0x80, 0x02, 0x7d, 0x12, 0x7f, 0x07, 0x12, 0x3e, 0x9a,
421 0x8e, 0x1e, 0x8f, 0x1f, 0x80, 0x03, 0xe5, 0x1e, 0xff, 0x78, 0xc5, 0xe6,
422 0x06, 0x24, 0xcd, 0xf8, 0xa6, 0x07, 0x78, 0xc2, 0x06, 0xe6, 0xb4, 0x1a,
423 0x0a, 0xe5, 0x1d, 0x24, 0x5c, 0x12, 0x45, 0xea, 0x12, 0x3e, 0xda, 0x78,
424 0xc5, 0xe6, 0x65, 0x1b, 0x70, 0x82, 0x75, 0xdb, 0x20, 0x75, 0xdb, 0x28,
425 0x12, 0x46, 0x02, 0x12, 0x46, 0x02, 0xe5, 0x1a, 0x12, 0x45, 0xf5, 0xe5,
426 0x1a, 0xc3, 0x13, 0x12, 0x45, 0xf5, 0x78, 0xc5, 0x16, 0xe6, 0x24, 0xcd,
427 0xf8, 0xe6, 0xff, 0x7e, 0x08, 0x1e, 0xef, 0xa8, 0x06, 0x08, 0x80, 0x02,
428 0xc3, 0x13, 0xd8, 0xfc, 0xfd, 0xc4, 0x33, 0x54, 0xe0, 0xf5, 0xdb, 0xef,
429 0xa8, 0x06, 0x08, 0x80, 0x02, 0xc3, 0x13, 0xd8, 0xfc, 0xfd, 0xc4, 0x33,
430 0x54, 0xe0, 0x44, 0x08, 0xf5, 0xdb, 0xee, 0x70, 0xd8, 0x78, 0xc5, 0xe6,
431 0x70, 0xc8, 0x75, 0xdb, 0x10, 0x02, 0x40, 0xfd, 0x78, 0xc2, 0xe6, 0xc3,
432 0x94, 0x17, 0x50, 0x0e, 0xe5, 0x1d, 0x24, 0x62, 0x12, 0x42, 0x08, 0xe5,
433 0x1d, 0x24, 0x5c, 0x12, 0x42, 0x08, 0x20, 0x0a, 0x03, 0x02, 0x40, 0x76,
434 0x05, 0x1a, 0xe5, 0x1a, 0xc3, 0x94, 0x04, 0x50, 0x03, 0x02, 0x40, 0x3a,
435 0x22, 0xe5, 0x1d, 0x24, 0x5c, 0xff, 0xe5, 0x1c, 0x34, 0xf0, 0xfe, 0x12,
436 0x46, 0x0d, 0x22, 0xff, 0xe5, 0x1c, 0x34, 0xf0, 0xfe, 0x12, 0x46, 0x0d,
437 0x22, 0xe4, 0xf5, 0x19, 0x12, 0x46, 0x43, 0x20, 0xe7, 0x1e, 0x7b, 0xfe,
438 0x12, 0x42, 0xf9, 0xef, 0xc4, 0x33, 0x33, 0x54, 0xc0, 0xff, 0xc0, 0x07,
439 0x7b, 0x54, 0x12, 0x42, 0xf9, 0xd0, 0xe0, 0x4f, 0xff, 0x74, 0x2a, 0x25,
440 0x19, 0xf8, 0xa6, 0x07, 0x12, 0x46, 0x43, 0x20, 0xe7, 0x03, 0x02, 0x42,
441 0xdf, 0x54, 0x03, 0x64, 0x03, 0x70, 0x03, 0x02, 0x42, 0xcf, 0x7b, 0xcb,
442 0x12, 0x43, 0x2c, 0x8f, 0xfb, 0x7b, 0x30, 0x7d, 0x03, 0xe4, 0xff, 0x12,
443 0x3d, 0xd7, 0xc3, 0xef, 0x94, 0x02, 0xee, 0x94, 0x00, 0x50, 0x2a, 0x12,
444 0x42, 0xec, 0xef, 0x4e, 0x70, 0x23, 0x12, 0x43, 0x04, 0x60, 0x0a, 0x12,
445 0x43, 0x12, 0x70, 0x0c, 0x12, 0x43, 0x1f, 0x70, 0x07, 0x12, 0x46, 0x39,
446 0x7b, 0x03, 0x80, 0x07, 0x12, 0x46, 0x39, 0x12, 0x46, 0x43, 0xfb, 0x7a,
447 0x00, 0x7d, 0x54, 0x80, 0x3e, 0x12, 0x42, 0xec, 0xef, 0x4e, 0x70, 0x24,
448 0x12, 0x43, 0x04, 0x60, 0x0a, 0x12, 0x43, 0x12, 0x70, 0x0f, 0x12, 0x43,
449 0x1f, 0x70, 0x0a, 0x12, 0x46, 0x39, 0xe4, 0xfb, 0xfa, 0x7d, 0xee, 0x80,
450 0x1e, 0x12, 0x46, 0x39, 0x7b, 0x01, 0x7a, 0x00, 0x7d, 0xee, 0x80, 0x13,
451 0x12, 0x46, 0x39, 0x12, 0x46, 0x43, 0x54, 0x40, 0xfe, 0xc4, 0x13, 0x13,
452 0x54, 0x03, 0xfb, 0x7a, 0x00, 0x7d, 0xee, 0x12, 0x38, 0xbd, 0x7b, 0xff,
453 0x12, 0x43, 0x2c, 0xef, 0x4e, 0x70, 0x07, 0x74, 0x2a, 0x25, 0x19, 0xf8,
454 0xe4, 0xf6, 0x05, 0x19, 0xe5, 0x19, 0xc3, 0x94, 0x02, 0x50, 0x03, 0x02,
455 0x42, 0x15, 0x22, 0xe5, 0x19, 0x24, 0x17, 0xfd, 0x7b, 0x20, 0x7f, 0x04,
456 0x12, 0x3d, 0xd7, 0x22, 0xe5, 0x19, 0x24, 0x17, 0xfd, 0x7f, 0x04, 0x12,
457 0x3d, 0xd7, 0x22, 0x7b, 0x22, 0x7d, 0x18, 0x7f, 0x06, 0x12, 0x3d, 0xd7,
458 0xef, 0x64, 0x01, 0x4e, 0x22, 0x7d, 0x1c, 0xe4, 0xff, 0x12, 0x3e, 0x9a,
459 0xef, 0x54, 0x1b, 0x64, 0x0a, 0x22, 0x7b, 0xcc, 0x7d, 0x10, 0xff, 0x12,
460 0x3d, 0xd7, 0xef, 0x64, 0x01, 0x4e, 0x22, 0xe5, 0x19, 0x24, 0x17, 0xfd,
461 0x7f, 0x04, 0x12, 0x3d, 0xd7, 0x22, 0xd2, 0x08, 0x75, 0xfb, 0x03, 0xab,
462 0x7e, 0xaa, 0x7d, 0x7d, 0x19, 0x7f, 0x03, 0x12, 0x3e, 0xda, 0xe5, 0x7e,
463 0x54, 0x0f, 0x24, 0xf3, 0x60, 0x03, 0x02, 0x43, 0xe9, 0x12, 0x46, 0x5a,
464 0x12, 0x46, 0x61, 0xd8, 0xfb, 0xff, 0x20, 0xe2, 0x35, 0x13, 0x92, 0x0c,
465 0xef, 0xa2, 0xe1, 0x92, 0x0b, 0x30, 0x0c, 0x2a, 0xe4, 0xf5, 0x10, 0x7b,
466 0xfe, 0x12, 0x43, 0xff, 0xef, 0xc4, 0x33, 0x33, 0x54, 0xc0, 0xff, 0xc0,
467 0x07, 0x7b, 0x54, 0x12, 0x43, 0xff, 0xd0, 0xe0, 0x4f, 0xff, 0x74, 0x2a,
468 0x25, 0x10, 0xf8, 0xa6, 0x07, 0x05, 0x10, 0xe5, 0x10, 0xc3, 0x94, 0x02,
469 0x40, 0xd9, 0x12, 0x46, 0x5a, 0x12, 0x46, 0x61, 0xd8, 0xfb, 0x54, 0x05,
470 0x64, 0x04, 0x70, 0x27, 0x78, 0xc4, 0xe6, 0x78, 0xc6, 0xf6, 0xe5, 0x7d,
471 0xff, 0x33, 0x95, 0xe0, 0xef, 0x54, 0x0f, 0x78, 0xc4, 0xf6, 0x12, 0x44,
472 0x0a, 0x20, 0x0c, 0x0c, 0x12, 0x46, 0x5a, 0x12, 0x46, 0x61, 0xd8, 0xfb,
473 0x13, 0x92, 0x0d, 0x22, 0xc2, 0x0d, 0x22, 0x12, 0x46, 0x5a, 0x12, 0x46,
474 0x61, 0xd8, 0xfb, 0x54, 0x05, 0x64, 0x05, 0x70, 0x1e, 0x78, 0xc4, 0x7d,
475 0xb8, 0x12, 0x43, 0xf5, 0x78, 0xc1, 0x7d, 0x74, 0x12, 0x43, 0xf5, 0xe4,
476 0x78, 0xc1, 0xf6, 0x22, 0x7b, 0x01, 0x7a, 0x00, 0x7d, 0xee, 0x7f, 0x92,
477 0x12, 0x38, 0xbd, 0x22, 0xe6, 0xfb, 0x7a, 0x00, 0x7f, 0x92, 0x12, 0x38,
478 0xbd, 0x22, 0xe5, 0x10, 0x24, 0x17, 0xfd, 0x7f, 0x04, 0x12, 0x3d, 0xd7,
479 0x22, 0x78, 0xc1, 0xe6, 0xfb, 0x7a, 0x00, 0x7d, 0x74, 0x7f, 0x92, 0x12,
480 0x38, 0xbd, 0xe4, 0x78, 0xc1, 0xf6, 0xf5, 0x11, 0x74, 0x01, 0x7e, 0x00,
481 0xa8, 0x11, 0x08, 0x80, 0x05, 0xc3, 0x33, 0xce, 0x33, 0xce, 0xd8, 0xf9,
482 0xff, 0x78, 0xc4, 0xe6, 0xfd, 0xef, 0x5d, 0x60, 0x44, 0x85, 0x11, 0xfb,
483 0xe5, 0x11, 0x54, 0x02, 0x25, 0xe0, 0x25, 0xe0, 0xfe, 0xe4, 0x24, 0x5b,
484 0xfb, 0xee, 0x12, 0x45, 0xed, 0x12, 0x3e, 0xda, 0x7b, 0x40, 0x7d, 0x11,
485 0x7f, 0x07, 0x12, 0x3d, 0xd7, 0x74, 0xc7, 0x25, 0x11, 0xf8, 0xa6, 0x07,
486 0x7b, 0x11, 0x7d, 0x12, 0x7f, 0x07, 0x12, 0x3d, 0xd7, 0xef, 0x4e, 0x60,
487 0x09, 0x74, 0xe7, 0x25, 0x11, 0xf8, 0x76, 0x04, 0x80, 0x07, 0x74, 0xe7,
488 0x25, 0x11, 0xf8, 0x76, 0x0a, 0x05, 0x11, 0xe5, 0x11, 0xc3, 0x94, 0x04,
489 0x40, 0x9a, 0x78, 0xc6, 0xe6, 0x70, 0x15, 0x78, 0xc4, 0xe6, 0x60, 0x10,
490 0x75, 0xd9, 0x38, 0x75, 0xdb, 0x10, 0x7d, 0xfe, 0x12, 0x44, 0xb8, 0x7d,
491 0x76, 0x12, 0x44, 0xb8, 0x79, 0xc6, 0xe7, 0x78, 0xc4, 0x66, 0xff, 0x60,
492 0x03, 0x12, 0x40, 0x25, 0x78, 0xc4, 0xe6, 0x70, 0x09, 0xfb, 0xfa, 0x7d,
493 0xfe, 0x7f, 0x8e, 0x12, 0x38, 0xbd, 0x22, 0x7b, 0x01, 0x7a, 0x00, 0x7f,
494 0x8e, 0x12, 0x38, 0xbd, 0x22, 0xe4, 0xf5, 0xfb, 0x7d, 0x1c, 0xe4, 0xff,
495 0x12, 0x3e, 0x9a, 0xad, 0x07, 0xac, 0x06, 0xec, 0x54, 0xc0, 0xff, 0xed,
496 0x54, 0x3f, 0x4f, 0xf5, 0x20, 0x30, 0x06, 0x2c, 0x30, 0x01, 0x08, 0xa2,
497 0x04, 0x72, 0x03, 0x92, 0x07, 0x80, 0x21, 0x30, 0x04, 0x06, 0x7b, 0xcc,
498 0x7d, 0x11, 0x80, 0x0d, 0x30, 0x03, 0x06, 0x7b, 0xcc, 0x7d, 0x10, 0x80,
499 0x04, 0x7b, 0x66, 0x7d, 0x16, 0xe4, 0xff, 0x12, 0x3d, 0xd7, 0xee, 0x4f,
500 0x24, 0xff, 0x92, 0x07, 0xaf, 0xfb, 0x74, 0x26, 0x2f, 0xf8, 0xe6, 0xff,
501 0xa6, 0x20, 0x20, 0x07, 0x39, 0x8f, 0x20, 0x30, 0x07, 0x34, 0x30, 0x00,
502 0x31, 0x20, 0x04, 0x2e, 0x20, 0x03, 0x2b, 0xe4, 0xf5, 0xff, 0x75, 0xfc,
503 0xc2, 0xe5, 0xfc, 0x30, 0xe0, 0xfb, 0xaf, 0xfe, 0xef, 0x20, 0xe3, 0x1a,
504 0xae, 0xfd, 0x44, 0x08, 0xf5, 0xfe, 0x75, 0xfc, 0x80, 0xe5, 0xfc, 0x30,
505 0xe0, 0xfb, 0x8f, 0xfe, 0x8e, 0xfd, 0x75, 0xfc, 0x80, 0xe5, 0xfc, 0x30,
506 0xe0, 0xfb, 0x05, 0xfb, 0xaf, 0xfb, 0xef, 0xc3, 0x94, 0x04, 0x50, 0x03,
507 0x02, 0x44, 0xc5, 0xe4, 0xf5, 0xfb, 0x22, 0xe5, 0x7e, 0x54, 0x0f, 0x64,
508 0x01, 0x70, 0x23, 0xe5, 0x7e, 0x30, 0xe4, 0x1e, 0x90, 0x47, 0xd0, 0xe0,
509 0x44, 0x02, 0xf0, 0x54, 0xfb, 0xf0, 0x90, 0x47, 0xd4, 0xe0, 0x44, 0x04,
510 0xf0, 0x7b, 0x03, 0x7d, 0x5b, 0x7f, 0x5d, 0x12, 0x36, 0x29, 0x7b, 0x0e,
511 0x80, 0x1c, 0x90, 0x47, 0xd0, 0xe0, 0x54, 0xfd, 0xf0, 0x44, 0x04, 0xf0,
512 0x90, 0x47, 0xd4, 0xe0, 0x54, 0xfb, 0xf0, 0x7b, 0x02, 0x7d, 0x5b, 0x7f,
513 0x5d, 0x12, 0x36, 0x29, 0x7b, 0x06, 0x7d, 0x60, 0x7f, 0x63, 0x12, 0x36,
514 0x29, 0x22, 0xe5, 0x7e, 0x30, 0xe5, 0x35, 0x30, 0xe4, 0x0b, 0x7b, 0x02,
515 0x7d, 0x33, 0x7f, 0x35, 0x12, 0x36, 0x29, 0x80, 0x10, 0x7b, 0x01, 0x7d,
516 0x33, 0x7f, 0x35, 0x12, 0x36, 0x29, 0x90, 0x47, 0xd2, 0xe0, 0x44, 0x04,
517 0xf0, 0x90, 0x47, 0xd2, 0xe0, 0x54, 0xf7, 0xf0, 0x90, 0x47, 0xd1, 0xe0,
518 0x44, 0x10, 0xf0, 0x7b, 0x05, 0x7d, 0x84, 0x7f, 0x86, 0x12, 0x36, 0x29,
519 0x22, 0xfb, 0xe5, 0x1c, 0x34, 0xf0, 0xfa, 0x7d, 0x10, 0x7f, 0x07, 0x22,
520 0x54, 0x01, 0xc4, 0x33, 0x54, 0xe0, 0xf5, 0xdb, 0x44, 0x08, 0xf5, 0xdb,
521 0x22, 0xf5, 0xdb, 0x75, 0xdb, 0x08, 0xf5, 0xdb, 0x75, 0xdb, 0x08, 0x22,
522 0xab, 0x07, 0xaa, 0x06, 0x7d, 0x10, 0x7f, 0x07, 0x12, 0x3e, 0xda, 0x7b,
523 0xff, 0x7d, 0x10, 0x7f, 0x07, 0x12, 0x3d, 0xd7, 0xef, 0x4e, 0x60, 0xf3,
524 0x22, 0x12, 0x44, 0xc2, 0x30, 0x0c, 0x03, 0x12, 0x42, 0x12, 0x78, 0xc4,
525 0xe6, 0xff, 0x60, 0x03, 0x12, 0x40, 0x25, 0x22, 0xe5, 0x19, 0x24, 0x17,
526 0x54, 0x1f, 0x44, 0x80, 0xff, 0x22, 0x74, 0x2a, 0x25, 0x19, 0xf8, 0xe6,
527 0x22, 0x12, 0x46, 0x72, 0x12, 0x46, 0x68, 0x90, 0x47, 0xfa, 0xe0, 0x54,
528 0xf8, 0x44, 0x02, 0xf0, 0x22, 0xe5, 0x7e, 0xae, 0x7d, 0x78, 0x04, 0x22,
529 0xce, 0xa2, 0xe7, 0x13, 0xce, 0x13, 0x22, 0xe4, 0x78, 0xc4, 0xf6, 0xc2,
530 0x0d, 0x78, 0xc1, 0xf6, 0x22, 0xc2, 0x0c, 0xc2, 0x0b, 0x22, 0x22,
534 0xe8, 0x59, 0x02, 0xe8, 0x12, 0x02, 0xe8, 0x42, 0x02, 0xe8, 0x5a, 0x02,
535 0xe8, 0x5b, 0x02, 0xe8, 0x5c, 0xe5, 0x69, 0x54, 0x0f, 0x24, 0xf7, 0x60,
536 0x27, 0x24, 0xfc, 0x60, 0x23, 0x24, 0x08, 0x70, 0x14, 0xe5, 0x69, 0xae,
537 0x68, 0x78, 0x04, 0xce, 0xa2, 0xe7, 0x13, 0xce, 0x13, 0xd8, 0xf8, 0x7e,
538 0x00, 0x54, 0x0f, 0x80, 0x00, 0x7b, 0x01, 0x7a, 0x00, 0x7d, 0xee, 0x7f,
539 0x92, 0x12, 0x50, 0xee, 0x22, 0xe4, 0xf5, 0x10, 0x85, 0x10, 0xfb, 0x7d,
540 0x1c, 0xe4, 0xff, 0x12, 0x59, 0xea, 0x05, 0x10, 0xe5, 0x10, 0xc3, 0x94,
541 0x04, 0x40, 0xed, 0x22, 0x22, 0x22, 0x22, 0x22,
596 bus->write(bus, phy, MDIO_DEVAD_NONE, MSCC_INT_MEM_ADDR, 0x0000); in vsc8584_patch_fw()
598 for (i = 0; i < fw_size; i++) in vsc8584_patch_fw()
608 return 0; in vsc8584_patch_fw()
685 bus->write(bus, phy0, MDIO_DEVAD_NONE, MSCC_PHY_EXT_PHY_CNTL_2, 0x0040); in vsc8574_config_pre_init()
690 bus->write(bus, phy0, MDIO_DEVAD_NONE, MSCC_PHY_TEST_PAGE_20, 0x4320); in vsc8574_config_pre_init()
691 bus->write(bus, phy0, MDIO_DEVAD_NONE, MSCC_PHY_TEST_PAGE_24, 0x0c00); in vsc8574_config_pre_init()
692 bus->write(bus, phy0, MDIO_DEVAD_NONE, MSCC_PHY_TEST_PAGE_9, 0x18ca); in vsc8574_config_pre_init()
693 bus->write(bus, phy0, MDIO_DEVAD_NONE, MSCC_PHY_TEST_PAGE_5, 0x1b20); in vsc8574_config_pre_init()
702 vsc8584_csr_write(bus, phy0, 0x0fae, 0x000401bd); in vsc8574_config_pre_init()
703 vsc8584_csr_write(bus, phy0, 0x0fac, 0x000f000f); in vsc8574_config_pre_init()
704 vsc8584_csr_write(bus, phy0, 0x17a0, 0x00a0f147); in vsc8574_config_pre_init()
705 vsc8584_csr_write(bus, phy0, 0x0fe4, 0x00052f54); in vsc8574_config_pre_init()
706 vsc8584_csr_write(bus, phy0, 0x1792, 0x0027303d); in vsc8574_config_pre_init()
707 vsc8584_csr_write(bus, phy0, 0x07fe, 0x00000704); in vsc8574_config_pre_init()
708 vsc8584_csr_write(bus, phy0, 0x0fe0, 0x00060150); in vsc8574_config_pre_init()
709 vsc8584_csr_write(bus, phy0, 0x0f82, 0x0012b00a); in vsc8574_config_pre_init()
710 vsc8584_csr_write(bus, phy0, 0x0f80, 0x00000d74); in vsc8574_config_pre_init()
711 vsc8584_csr_write(bus, phy0, 0x02e0, 0x00000012); in vsc8574_config_pre_init()
712 vsc8584_csr_write(bus, phy0, 0x03a2, 0x00050208); in vsc8574_config_pre_init()
713 vsc8584_csr_write(bus, phy0, 0x03b2, 0x00009186); in vsc8574_config_pre_init()
714 vsc8584_csr_write(bus, phy0, 0x0fb0, 0x000e3700); in vsc8574_config_pre_init()
715 vsc8584_csr_write(bus, phy0, 0x1688, 0x00049f81); in vsc8574_config_pre_init()
716 vsc8584_csr_write(bus, phy0, 0x0fd2, 0x0000ffff); in vsc8574_config_pre_init()
717 vsc8584_csr_write(bus, phy0, 0x168a, 0x00039fa2); in vsc8574_config_pre_init()
718 vsc8584_csr_write(bus, phy0, 0x1690, 0x0020640b); in vsc8574_config_pre_init()
719 vsc8584_csr_write(bus, phy0, 0x0258, 0x00002220); in vsc8574_config_pre_init()
720 vsc8584_csr_write(bus, phy0, 0x025a, 0x00002a20); in vsc8574_config_pre_init()
721 vsc8584_csr_write(bus, phy0, 0x025c, 0x00003060); in vsc8574_config_pre_init()
722 vsc8584_csr_write(bus, phy0, 0x025e, 0x00003fa0); in vsc8574_config_pre_init()
723 vsc8584_csr_write(bus, phy0, 0x03a6, 0x0000e0f0); in vsc8574_config_pre_init()
724 vsc8584_csr_write(bus, phy0, 0x0f92, 0x00001489); in vsc8574_config_pre_init()
725 vsc8584_csr_write(bus, phy0, 0x16a2, 0x00007000); in vsc8574_config_pre_init()
726 vsc8584_csr_write(bus, phy0, 0x16a6, 0x00071448); in vsc8574_config_pre_init()
727 vsc8584_csr_write(bus, phy0, 0x16a0, 0x00eeffdd); in vsc8574_config_pre_init()
728 vsc8584_csr_write(bus, phy0, 0x0fe8, 0x0091b06c); in vsc8574_config_pre_init()
729 vsc8584_csr_write(bus, phy0, 0x0fea, 0x00041600); in vsc8574_config_pre_init()
730 vsc8584_csr_write(bus, phy0, 0x16b0, 0x00eeff00); in vsc8574_config_pre_init()
731 vsc8584_csr_write(bus, phy0, 0x16b2, 0x00007000); in vsc8574_config_pre_init()
732 vsc8584_csr_write(bus, phy0, 0x16b4, 0x00000814); in vsc8574_config_pre_init()
733 vsc8584_csr_write(bus, phy0, 0x0f90, 0x00688980); in vsc8574_config_pre_init()
734 vsc8584_csr_write(bus, phy0, 0x03a4, 0x0000d8f0); in vsc8574_config_pre_init()
735 vsc8584_csr_write(bus, phy0, 0x0fc0, 0x00000400); in vsc8574_config_pre_init()
736 vsc8584_csr_write(bus, phy0, 0x07fa, 0x0050100f); in vsc8574_config_pre_init()
737 vsc8584_csr_write(bus, phy0, 0x0796, 0x00000003); in vsc8574_config_pre_init()
738 vsc8584_csr_write(bus, phy0, 0x07f8, 0x00c3ff98); in vsc8574_config_pre_init()
739 vsc8584_csr_write(bus, phy0, 0x0fa4, 0x0018292a); in vsc8574_config_pre_init()
740 vsc8584_csr_write(bus, phy0, 0x168c, 0x00d2c46f); in vsc8574_config_pre_init()
741 vsc8584_csr_write(bus, phy0, 0x17a2, 0x00000620); in vsc8574_config_pre_init()
742 vsc8584_csr_write(bus, phy0, 0x16a4, 0x0013132f); in vsc8574_config_pre_init()
743 vsc8584_csr_write(bus, phy0, 0x16a8, 0x00000000); in vsc8574_config_pre_init()
744 vsc8584_csr_write(bus, phy0, 0x0ffc, 0x00c0a028); in vsc8574_config_pre_init()
745 vsc8584_csr_write(bus, phy0, 0x0fec, 0x00901c09); in vsc8574_config_pre_init()
746 vsc8584_csr_write(bus, phy0, 0x0fee, 0x0004a6a1); in vsc8574_config_pre_init()
747 vsc8584_csr_write(bus, phy0, 0x0ffe, 0x00b01807); in vsc8574_config_pre_init()
752 bus->write(bus, phy0, MDIO_DEVAD_NONE, MSCC_PHY_CU_PMD_TX_CNTL, 0x028e); in vsc8574_config_pre_init()
757 vsc8584_csr_write(bus, phy0, 0x0486, 0x0008a518); in vsc8574_config_pre_init()
758 vsc8584_csr_write(bus, phy0, 0x0488, 0x006dc696); in vsc8574_config_pre_init()
759 vsc8584_csr_write(bus, phy0, 0x048a, 0x00000912); in vsc8574_config_pre_init()
760 vsc8584_csr_write(bus, phy0, 0x048e, 0x00000db6); in vsc8574_config_pre_init()
761 vsc8584_csr_write(bus, phy0, 0x049c, 0x00596596); in vsc8574_config_pre_init()
762 vsc8584_csr_write(bus, phy0, 0x049e, 0x00000514); in vsc8574_config_pre_init()
763 vsc8584_csr_write(bus, phy0, 0x04a2, 0x00410280); in vsc8574_config_pre_init()
764 vsc8584_csr_write(bus, phy0, 0x04a4, 0x00000000); in vsc8574_config_pre_init()
765 vsc8584_csr_write(bus, phy0, 0x04a6, 0x00000000); in vsc8574_config_pre_init()
766 vsc8584_csr_write(bus, phy0, 0x04a8, 0x00000000); in vsc8574_config_pre_init()
767 vsc8584_csr_write(bus, phy0, 0x04aa, 0x00000000); in vsc8574_config_pre_init()
768 vsc8584_csr_write(bus, phy0, 0x04ae, 0x007df7dd); in vsc8574_config_pre_init()
769 vsc8584_csr_write(bus, phy0, 0x04b0, 0x006d95d4); in vsc8574_config_pre_init()
770 vsc8584_csr_write(bus, phy0, 0x04b2, 0x00492410); in vsc8574_config_pre_init()
860 return 0; in vsc8584_config_pre_init()
896 0x2000); in vsc8584_config_pre_init()
901 bus->write(bus, phy0, MDIO_DEVAD_NONE, MSCC_PHY_TEST_PAGE_5, 0x1f20); in vsc8584_config_pre_init()
910 bus->write(bus, phy0, MDIO_DEVAD_NONE, MSCC_PHY_REG_TR_ADDR_16, 0xafa4); in vsc8584_config_pre_init()
913 reg &= ~0x007f; in vsc8584_config_pre_init()
914 reg |= 0x0019; in vsc8584_config_pre_init()
917 bus->write(bus, phy0, MDIO_DEVAD_NONE, MSCC_PHY_REG_TR_ADDR_16, 0x8fa4); in vsc8584_config_pre_init()
919 vsc8584_csr_write(bus, phy0, 0x07fa, 0x0050100f); in vsc8584_config_pre_init()
920 vsc8584_csr_write(bus, phy0, 0x1688, 0x00049f81); in vsc8584_config_pre_init()
921 vsc8584_csr_write(bus, phy0, 0x0f90, 0x00688980); in vsc8584_config_pre_init()
922 vsc8584_csr_write(bus, phy0, 0x03a4, 0x0000d8f0); in vsc8584_config_pre_init()
923 vsc8584_csr_write(bus, phy0, 0x0fc0, 0x00000400); in vsc8584_config_pre_init()
924 vsc8584_csr_write(bus, phy0, 0x0f82, 0x0012b002); in vsc8584_config_pre_init()
925 vsc8584_csr_write(bus, phy0, 0x1686, 0x00000004); in vsc8584_config_pre_init()
926 vsc8584_csr_write(bus, phy0, 0x168c, 0x00d2c46f); in vsc8584_config_pre_init()
927 vsc8584_csr_write(bus, phy0, 0x17a2, 0x00000620); in vsc8584_config_pre_init()
928 vsc8584_csr_write(bus, phy0, 0x16a0, 0x00eeffdd); in vsc8584_config_pre_init()
929 vsc8584_csr_write(bus, phy0, 0x16a6, 0x00071448); in vsc8584_config_pre_init()
930 vsc8584_csr_write(bus, phy0, 0x16a4, 0x0013132f); in vsc8584_config_pre_init()
931 vsc8584_csr_write(bus, phy0, 0x16a8, 0x00000000); in vsc8584_config_pre_init()
932 vsc8584_csr_write(bus, phy0, 0x0ffc, 0x00c0a028); in vsc8584_config_pre_init()
933 vsc8584_csr_write(bus, phy0, 0x0fe8, 0x0091b06c); in vsc8584_config_pre_init()
934 vsc8584_csr_write(bus, phy0, 0x0fea, 0x00041600); in vsc8584_config_pre_init()
935 vsc8584_csr_write(bus, phy0, 0x0f80, 0x00fffaff); in vsc8584_config_pre_init()
936 vsc8584_csr_write(bus, phy0, 0x0fec, 0x00901809); in vsc8584_config_pre_init()
937 vsc8584_csr_write(bus, phy0, 0x0ffe, 0x00b01007); in vsc8584_config_pre_init()
938 vsc8584_csr_write(bus, phy0, 0x16b0, 0x00eeff00); in vsc8584_config_pre_init()
939 vsc8584_csr_write(bus, phy0, 0x16b2, 0x00007000); in vsc8584_config_pre_init()
940 vsc8584_csr_write(bus, phy0, 0x16b4, 0x00000814); in vsc8584_config_pre_init()
945 bus->write(bus, phy0, MDIO_DEVAD_NONE, MSCC_PHY_CU_PMD_TX_CNTL, 0x028e); in vsc8584_config_pre_init()
950 vsc8584_csr_write(bus, phy0, 0x0486, 0x0008a518); in vsc8584_config_pre_init()
951 vsc8584_csr_write(bus, phy0, 0x0488, 0x006dc696); in vsc8584_config_pre_init()
952 vsc8584_csr_write(bus, phy0, 0x048a, 0x00000912); in vsc8584_config_pre_init()
1067 return 0; in mscc_vsc8531_vsc8541_init_scripts()
1100 return 0; in mscc_parse_status()
1117 int retval = 0; in mscc_phy_soft_reset()
1119 u16 reg_val = 0; in mscc_phy_soft_reset()
1129 while ((reg_val & BMCR_RESET) && (timeout > 0)) { in mscc_phy_soft_reset()
1135 if (timeout == 0) { in mscc_phy_soft_reset()
1136 printf("MSCC PHY Soft_Reset Error: mac i/f = 0x%x\n", in mscc_phy_soft_reset()
1146 u16 reg_val = 0; in vsc8531_vsc8541_mac_config()
1147 u16 mac_if = 0; in vsc8531_vsc8541_mac_config()
1148 u16 rx_clk_out = 0; in vsc8531_vsc8541_mac_config()
1156 /* Set Reg23.12:11=0 */ in vsc8531_vsc8541_mac_config()
1165 /* Set Reg20E2.11=0 */ in vsc8531_vsc8541_mac_config()
1172 /* Set Reg20E2.11=0 */ in vsc8531_vsc8541_mac_config()
1177 printf("MSCC PHY - INVALID MAC i/f Config: mac i/f = 0x%x\n", in vsc8531_vsc8541_mac_config()
1208 return 0; in vsc8531_vsc8541_mac_config()
1228 if (retval != 0) in vsc8531_config()
1232 if (retval != 0) in vsc8531_config()
1236 printf("PHY 8530/31 MAC i/f Config Error: mac i/f = 0x%x\n", in vsc8531_config()
1240 /* Default RMII Clk Output to 0=OFF/1=ON */ in vsc8531_config()
1241 rmii_clk_out = 0; in vsc8531_config()
1290 if (retval != 0) in vsc8541_config()
1294 if (retval != 0) in vsc8541_config()
1298 printf("PHY 8541 MAC i/f config Error: mac i/f = 0x%x\n", in vsc8541_config()
1302 /* Default RMII Clk Output to 0=OFF/1=ON */ in vsc8541_config()
1303 rmii_clk_out = 0; in vsc8541_config()
1405 if (ret != 0) in vsc8584_config_init()
1436 .mask = 0x000ffff0,
1446 .mask = 0x000ffff0,
1456 .mask = 0x000ffff0,
1466 .mask = 0x000ffff0,
1476 .mask = 0x000ffff0,
1486 .mask = 0x000ffff0,
1502 return 0; in phy_mscc_init()