13a749623SJacob Keller /* SPDX-License-Identifier: GPL-2.0 */ 23a749623SJacob Keller /* Copyright (C) 2018-2021, Intel Corporation. */ 33a749623SJacob Keller 43a749623SJacob Keller #ifndef _ICE_PTP_CONSTS_H_ 53a749623SJacob Keller #define _ICE_PTP_CONSTS_H_ 63a749623SJacob Keller 73a749623SJacob Keller /* Constant definitions related to the hardware clock used for PTP 1588 83a749623SJacob Keller * features and functionality. 93a749623SJacob Keller */ 103a749623SJacob Keller /* Constants defined for the PTP 1588 clock hardware. */ 113a749623SJacob Keller 127cab44f1SSergey Temerkhanov const struct ice_phy_reg_info_eth56g eth56g_phy_res[NUM_ETH56G_PHY_RES] = { 137cab44f1SSergey Temerkhanov /* ETH56G_PHY_REG_PTP */ 147cab44f1SSergey Temerkhanov { 157cab44f1SSergey Temerkhanov /* base_addr */ 167cab44f1SSergey Temerkhanov { 177cab44f1SSergey Temerkhanov 0x092000, 187cab44f1SSergey Temerkhanov 0x126000, 197cab44f1SSergey Temerkhanov 0x1BA000, 207cab44f1SSergey Temerkhanov 0x24E000, 217cab44f1SSergey Temerkhanov 0x2E2000, 227cab44f1SSergey Temerkhanov }, 237cab44f1SSergey Temerkhanov /* step */ 247cab44f1SSergey Temerkhanov 0x98, 257cab44f1SSergey Temerkhanov }, 267cab44f1SSergey Temerkhanov /* ETH56G_PHY_MEM_PTP */ 277cab44f1SSergey Temerkhanov { 287cab44f1SSergey Temerkhanov /* base_addr */ 297cab44f1SSergey Temerkhanov { 307cab44f1SSergey Temerkhanov 0x093000, 317cab44f1SSergey Temerkhanov 0x127000, 327cab44f1SSergey Temerkhanov 0x1BB000, 337cab44f1SSergey Temerkhanov 0x24F000, 347cab44f1SSergey Temerkhanov 0x2E3000, 357cab44f1SSergey Temerkhanov }, 367cab44f1SSergey Temerkhanov /* step */ 377cab44f1SSergey Temerkhanov 0x200, 387cab44f1SSergey Temerkhanov }, 397cab44f1SSergey Temerkhanov /* ETH56G_PHY_REG_XPCS */ 407cab44f1SSergey Temerkhanov { 417cab44f1SSergey Temerkhanov /* base_addr */ 427cab44f1SSergey Temerkhanov { 437cab44f1SSergey Temerkhanov 0x000000, 447cab44f1SSergey Temerkhanov 0x009400, 457cab44f1SSergey Temerkhanov 0x128000, 467cab44f1SSergey Temerkhanov 0x1BC000, 477cab44f1SSergey Temerkhanov 0x250000, 487cab44f1SSergey Temerkhanov }, 497cab44f1SSergey Temerkhanov /* step */ 507cab44f1SSergey Temerkhanov 0x21000, 517cab44f1SSergey Temerkhanov }, 527cab44f1SSergey Temerkhanov /* ETH56G_PHY_REG_MAC */ 537cab44f1SSergey Temerkhanov { 547cab44f1SSergey Temerkhanov /* base_addr */ 557cab44f1SSergey Temerkhanov { 567cab44f1SSergey Temerkhanov 0x085000, 577cab44f1SSergey Temerkhanov 0x119000, 587cab44f1SSergey Temerkhanov 0x1AD000, 597cab44f1SSergey Temerkhanov 0x241000, 607cab44f1SSergey Temerkhanov 0x2D5000, 617cab44f1SSergey Temerkhanov }, 627cab44f1SSergey Temerkhanov /* step */ 637cab44f1SSergey Temerkhanov 0x1000, 647cab44f1SSergey Temerkhanov }, 657cab44f1SSergey Temerkhanov /* ETH56G_PHY_REG_GPCS */ 667cab44f1SSergey Temerkhanov { 677cab44f1SSergey Temerkhanov /* base_addr */ 687cab44f1SSergey Temerkhanov { 697cab44f1SSergey Temerkhanov 0x084000, 707cab44f1SSergey Temerkhanov 0x118000, 717cab44f1SSergey Temerkhanov 0x1AC000, 727cab44f1SSergey Temerkhanov 0x240000, 737cab44f1SSergey Temerkhanov 0x2D4000, 747cab44f1SSergey Temerkhanov }, 757cab44f1SSergey Temerkhanov /* step */ 767cab44f1SSergey Temerkhanov 0x400, 777cab44f1SSergey Temerkhanov }, 787cab44f1SSergey Temerkhanov }; 797cab44f1SSergey Temerkhanov 807cab44f1SSergey Temerkhanov const 817cab44f1SSergey Temerkhanov struct ice_eth56g_mac_reg_cfg eth56g_mac_cfg[NUM_ICE_ETH56G_LNK_SPD] = { 827cab44f1SSergey Temerkhanov [ICE_ETH56G_LNK_SPD_1G] = { 837cab44f1SSergey Temerkhanov .tx_mode = { .def = 6, }, 847cab44f1SSergey Temerkhanov .rx_mode = { .def = 6, }, 857cab44f1SSergey Temerkhanov .blks_per_clk = 1, 867cab44f1SSergey Temerkhanov .blktime = 0x4000, /* 32 */ 877cab44f1SSergey Temerkhanov .tx_offset = { 887cab44f1SSergey Temerkhanov .serdes = 0x6666, /* 51.2 */ 897cab44f1SSergey Temerkhanov .no_fec = 0xd066, /* 104.2 */ 907cab44f1SSergey Temerkhanov .sfd = 0x3000, /* 24 */ 917cab44f1SSergey Temerkhanov .onestep = 0x30000 /* 384 */ 927cab44f1SSergey Temerkhanov }, 937cab44f1SSergey Temerkhanov .rx_offset = { 947cab44f1SSergey Temerkhanov .serdes = 0xffffc59a, /* -29.2 */ 957cab44f1SSergey Temerkhanov .no_fec = 0xffff0a80, /* -122.75 */ 967cab44f1SSergey Temerkhanov .sfd = 0x2c00, /* 22 */ 977cab44f1SSergey Temerkhanov .bs_ds = 0x19a /* 0.8 */ 987cab44f1SSergey Temerkhanov /* Dynamic bitslip 0 equals to 10 */ 997cab44f1SSergey Temerkhanov } 1007cab44f1SSergey Temerkhanov }, 1017cab44f1SSergey Temerkhanov [ICE_ETH56G_LNK_SPD_2_5G] = { 1027cab44f1SSergey Temerkhanov .tx_mode = { .def = 6, }, 1037cab44f1SSergey Temerkhanov .rx_mode = { .def = 6, }, 1047cab44f1SSergey Temerkhanov .blks_per_clk = 1, 1057cab44f1SSergey Temerkhanov .blktime = 0x199a, /* 12.8 */ 1067cab44f1SSergey Temerkhanov .tx_offset = { 1077cab44f1SSergey Temerkhanov .serdes = 0x28f6, /* 20.48 */ 1087cab44f1SSergey Temerkhanov .no_fec = 0x53b8, /* 41.86 */ 1097cab44f1SSergey Temerkhanov .sfd = 0x1333, /* 9.6 */ 1107cab44f1SSergey Temerkhanov .onestep = 0x13333 /* 153.6 */ 1117cab44f1SSergey Temerkhanov }, 1127cab44f1SSergey Temerkhanov .rx_offset = { 1137cab44f1SSergey Temerkhanov .serdes = 0xffffe8a4, /* -11.68 */ 1147cab44f1SSergey Temerkhanov .no_fec = 0xffff9a76, /* -50.77 */ 1157cab44f1SSergey Temerkhanov .sfd = 0xf33, /* 7.6 */ 1167cab44f1SSergey Temerkhanov .bs_ds = 0xa4 /* 0.32 */ 1177cab44f1SSergey Temerkhanov } 1187cab44f1SSergey Temerkhanov }, 1197cab44f1SSergey Temerkhanov [ICE_ETH56G_LNK_SPD_10G] = { 1207cab44f1SSergey Temerkhanov .tx_mode = { .def = 1, }, 1217cab44f1SSergey Temerkhanov .rx_mode = { .def = 1, }, 1227cab44f1SSergey Temerkhanov .blks_per_clk = 1, 1237cab44f1SSergey Temerkhanov .blktime = 0x666, /* 3.2 */ 1247cab44f1SSergey Temerkhanov .tx_offset = { 1257cab44f1SSergey Temerkhanov .serdes = 0x234c, /* 17.6484848 */ 1267cab44f1SSergey Temerkhanov .no_fec = 0x8e80, /* 71.25 */ 1277cab44f1SSergey Temerkhanov .fc = 0xb4a4, /* 90.32 */ 1287cab44f1SSergey Temerkhanov .sfd = 0x4a4, /* 2.32 */ 1297cab44f1SSergey Temerkhanov .onestep = 0x4ccd /* 38.4 */ 1307cab44f1SSergey Temerkhanov }, 1317cab44f1SSergey Temerkhanov .rx_offset = { 1327cab44f1SSergey Temerkhanov .serdes = 0xffffeb27, /* -10.42424 */ 1337cab44f1SSergey Temerkhanov .no_fec = 0xffffcccd, /* -25.6 */ 1347cab44f1SSergey Temerkhanov .fc = 0xfffe0014, /* -255.96 */ 1357cab44f1SSergey Temerkhanov .sfd = 0x4a4, /* 2.32 */ 1367cab44f1SSergey Temerkhanov .bs_ds = 0x32 /* 0.0969697 */ 1377cab44f1SSergey Temerkhanov } 1387cab44f1SSergey Temerkhanov }, 1397cab44f1SSergey Temerkhanov [ICE_ETH56G_LNK_SPD_25G] = { 1407cab44f1SSergey Temerkhanov .tx_mode = { 1417cab44f1SSergey Temerkhanov .def = 1, 1427cab44f1SSergey Temerkhanov .rs = 4 1437cab44f1SSergey Temerkhanov }, 1447cab44f1SSergey Temerkhanov .tx_mk_dly = 4, 1457cab44f1SSergey Temerkhanov .tx_cw_dly = { 1467cab44f1SSergey Temerkhanov .def = 1, 1477cab44f1SSergey Temerkhanov .onestep = 6 1487cab44f1SSergey Temerkhanov }, 1497cab44f1SSergey Temerkhanov .rx_mode = { 1507cab44f1SSergey Temerkhanov .def = 1, 1517cab44f1SSergey Temerkhanov .rs = 4 1527cab44f1SSergey Temerkhanov }, 1537cab44f1SSergey Temerkhanov .rx_mk_dly = { 1547cab44f1SSergey Temerkhanov .def = 1, 1557cab44f1SSergey Temerkhanov .rs = 1 1567cab44f1SSergey Temerkhanov }, 1577cab44f1SSergey Temerkhanov .rx_cw_dly = { 1587cab44f1SSergey Temerkhanov .def = 1, 1597cab44f1SSergey Temerkhanov .rs = 1 1607cab44f1SSergey Temerkhanov }, 1617cab44f1SSergey Temerkhanov .blks_per_clk = 1, 1627cab44f1SSergey Temerkhanov .blktime = 0x28f, /* 1.28 */ 1637cab44f1SSergey Temerkhanov .mktime = 0x147b, /* 10.24, only if RS-FEC enabled */ 1647cab44f1SSergey Temerkhanov .tx_offset = { 1657cab44f1SSergey Temerkhanov .serdes = 0xe1e, /* 7.0593939 */ 1667cab44f1SSergey Temerkhanov .no_fec = 0x3857, /* 28.17 */ 1677cab44f1SSergey Temerkhanov .fc = 0x48c3, /* 36.38 */ 1687cab44f1SSergey Temerkhanov .rs = 0x8100, /* 64.5 */ 1697cab44f1SSergey Temerkhanov .sfd = 0x1dc, /* 0.93 */ 1707cab44f1SSergey Temerkhanov .onestep = 0x1eb8 /* 15.36 */ 1717cab44f1SSergey Temerkhanov }, 1727cab44f1SSergey Temerkhanov .rx_offset = { 1737cab44f1SSergey Temerkhanov .serdes = 0xfffff7a9, /* -4.1697 */ 1747cab44f1SSergey Temerkhanov .no_fec = 0xffffe71a, /* -12.45 */ 1757cab44f1SSergey Temerkhanov .fc = 0xfffe894d, /* -187.35 */ 1767cab44f1SSergey Temerkhanov .rs = 0xfffff8cd, /* -3.6 */ 1777cab44f1SSergey Temerkhanov .sfd = 0x1dc, /* 0.93 */ 1787cab44f1SSergey Temerkhanov .bs_ds = 0x14 /* 0.0387879, RS-FEC 0 */ 1797cab44f1SSergey Temerkhanov } 1807cab44f1SSergey Temerkhanov }, 1817cab44f1SSergey Temerkhanov [ICE_ETH56G_LNK_SPD_40G] = { 1827cab44f1SSergey Temerkhanov .tx_mode = { .def = 3 }, 1837cab44f1SSergey Temerkhanov .tx_mk_dly = 4, 1847cab44f1SSergey Temerkhanov .tx_cw_dly = { 1857cab44f1SSergey Temerkhanov .def = 1, 1867cab44f1SSergey Temerkhanov .onestep = 6 1877cab44f1SSergey Temerkhanov }, 1887cab44f1SSergey Temerkhanov .rx_mode = { .def = 4 }, 1897cab44f1SSergey Temerkhanov .rx_mk_dly = { .def = 1 }, 1907cab44f1SSergey Temerkhanov .rx_cw_dly = { .def = 1 }, 1917cab44f1SSergey Temerkhanov .blktime = 0x333, /* 1.6 */ 1927cab44f1SSergey Temerkhanov .mktime = 0xccd, /* 6.4 */ 1937cab44f1SSergey Temerkhanov .tx_offset = { 1947cab44f1SSergey Temerkhanov .serdes = 0x234c, /* 17.6484848 */ 1957cab44f1SSergey Temerkhanov .no_fec = 0x5a8a, /* 45.27 */ 1967cab44f1SSergey Temerkhanov .fc = 0x81b8, /* 64.86 */ 1977cab44f1SSergey Temerkhanov .sfd = 0x4a4, /* 2.32 */ 1987cab44f1SSergey Temerkhanov .onestep = 0x1333 /* 9.6 */ 1997cab44f1SSergey Temerkhanov }, 2007cab44f1SSergey Temerkhanov .rx_offset = { 2017cab44f1SSergey Temerkhanov .serdes = 0xffffeb27, /* -10.42424 */ 2027cab44f1SSergey Temerkhanov .no_fec = 0xfffff594, /* -5.21 */ 2037cab44f1SSergey Temerkhanov .fc = 0xfffe3080, /* -231.75 */ 2047cab44f1SSergey Temerkhanov .sfd = 0x4a4, /* 2.32 */ 2057cab44f1SSergey Temerkhanov .bs_ds = 0xccd /* 6.4 */ 2067cab44f1SSergey Temerkhanov } 2077cab44f1SSergey Temerkhanov }, 2087cab44f1SSergey Temerkhanov [ICE_ETH56G_LNK_SPD_50G] = { 2097cab44f1SSergey Temerkhanov .tx_mode = { .def = 5 }, 2107cab44f1SSergey Temerkhanov .tx_mk_dly = 4, 2117cab44f1SSergey Temerkhanov .tx_cw_dly = { 2127cab44f1SSergey Temerkhanov .def = 1, 2137cab44f1SSergey Temerkhanov .onestep = 6 2147cab44f1SSergey Temerkhanov }, 2157cab44f1SSergey Temerkhanov .rx_mode = { .def = 5 }, 2167cab44f1SSergey Temerkhanov .rx_mk_dly = { .def = 1 }, 2177cab44f1SSergey Temerkhanov .rx_cw_dly = { .def = 1 }, 2187cab44f1SSergey Temerkhanov .blktime = 0x28f, /* 1.28 */ 2197cab44f1SSergey Temerkhanov .mktime = 0xa3d, /* 5.12 */ 2207cab44f1SSergey Temerkhanov .tx_offset = { 2217cab44f1SSergey Temerkhanov .serdes = 0x13ba, /* 9.86353 */ 2227cab44f1SSergey Temerkhanov .rs = 0x5400, /* 42 */ 2237cab44f1SSergey Temerkhanov .sfd = 0xe6, /* 0.45 */ 2247cab44f1SSergey Temerkhanov .onestep = 0xf5c /* 7.68 */ 2257cab44f1SSergey Temerkhanov }, 2267cab44f1SSergey Temerkhanov .rx_offset = { 2277cab44f1SSergey Temerkhanov .serdes = 0xfffff7e8, /* -4.04706 */ 2287cab44f1SSergey Temerkhanov .rs = 0xfffff994, /* -3.21 */ 2297cab44f1SSergey Temerkhanov .sfd = 0xe6 /* 0.45 */ 2307cab44f1SSergey Temerkhanov } 2317cab44f1SSergey Temerkhanov }, 2327cab44f1SSergey Temerkhanov [ICE_ETH56G_LNK_SPD_50G2] = { 2337cab44f1SSergey Temerkhanov .tx_mode = { 2347cab44f1SSergey Temerkhanov .def = 3, 2357cab44f1SSergey Temerkhanov .rs = 2 2367cab44f1SSergey Temerkhanov }, 2377cab44f1SSergey Temerkhanov .tx_mk_dly = 4, 2387cab44f1SSergey Temerkhanov .tx_cw_dly = { 2397cab44f1SSergey Temerkhanov .def = 1, 2407cab44f1SSergey Temerkhanov .onestep = 6 2417cab44f1SSergey Temerkhanov }, 2427cab44f1SSergey Temerkhanov .rx_mode = { 2437cab44f1SSergey Temerkhanov .def = 4, 2447cab44f1SSergey Temerkhanov .rs = 1 2457cab44f1SSergey Temerkhanov }, 2467cab44f1SSergey Temerkhanov .rx_mk_dly = { .def = 1 }, 2477cab44f1SSergey Temerkhanov .rx_cw_dly = { .def = 1 }, 2487cab44f1SSergey Temerkhanov .blktime = 0x28f, /* 1.28 */ 2497cab44f1SSergey Temerkhanov .mktime = 0xa3d, /* 5.12 */ 2507cab44f1SSergey Temerkhanov .tx_offset = { 2517cab44f1SSergey Temerkhanov .serdes = 0xe1e, /* 7.0593939 */ 2527cab44f1SSergey Temerkhanov .no_fec = 0x3d33, /* 30.6 */ 2537cab44f1SSergey Temerkhanov .rs = 0x5057, /* 40.17 */ 2547cab44f1SSergey Temerkhanov .sfd = 0x1dc, /* 0.93 */ 2557cab44f1SSergey Temerkhanov .onestep = 0xf5c /* 7.68 */ 2567cab44f1SSergey Temerkhanov }, 2577cab44f1SSergey Temerkhanov .rx_offset = { 2587cab44f1SSergey Temerkhanov .serdes = 0xfffff7a9, /* -4.1697 */ 2597cab44f1SSergey Temerkhanov .no_fec = 0xfffff8cd, /* -3.6 */ 2607cab44f1SSergey Temerkhanov .rs = 0xfffff21a, /* -6.95 */ 2617cab44f1SSergey Temerkhanov .sfd = 0x1dc, /* 0.93 */ 2627cab44f1SSergey Temerkhanov .bs_ds = 0xa3d /* 5.12, RS-FEC 0x633 (3.1) */ 2637cab44f1SSergey Temerkhanov } 2647cab44f1SSergey Temerkhanov }, 2657cab44f1SSergey Temerkhanov [ICE_ETH56G_LNK_SPD_100G] = { 2667cab44f1SSergey Temerkhanov .tx_mode = { 2677cab44f1SSergey Temerkhanov .def = 3, 2687cab44f1SSergey Temerkhanov .rs = 2 2697cab44f1SSergey Temerkhanov }, 2707cab44f1SSergey Temerkhanov .tx_mk_dly = 10, 2717cab44f1SSergey Temerkhanov .tx_cw_dly = { 2727cab44f1SSergey Temerkhanov .def = 3, 2737cab44f1SSergey Temerkhanov .onestep = 6 2747cab44f1SSergey Temerkhanov }, 2757cab44f1SSergey Temerkhanov .rx_mode = { 2767cab44f1SSergey Temerkhanov .def = 4, 2777cab44f1SSergey Temerkhanov .rs = 1 2787cab44f1SSergey Temerkhanov }, 2797cab44f1SSergey Temerkhanov .rx_mk_dly = { .def = 5 }, 2807cab44f1SSergey Temerkhanov .rx_cw_dly = { .def = 5 }, 2817cab44f1SSergey Temerkhanov .blks_per_clk = 1, 2827cab44f1SSergey Temerkhanov .blktime = 0x148, /* 0.64 */ 2837cab44f1SSergey Temerkhanov .mktime = 0x199a, /* 12.8 */ 2847cab44f1SSergey Temerkhanov .tx_offset = { 2857cab44f1SSergey Temerkhanov .serdes = 0xe1e, /* 7.0593939 */ 2867cab44f1SSergey Temerkhanov .no_fec = 0x67ec, /* 51.96 */ 2877cab44f1SSergey Temerkhanov .rs = 0x44fb, /* 34.49 */ 2887cab44f1SSergey Temerkhanov .sfd = 0x1dc, /* 0.93 */ 2897cab44f1SSergey Temerkhanov .onestep = 0xf5c /* 7.68 */ 2907cab44f1SSergey Temerkhanov }, 2917cab44f1SSergey Temerkhanov .rx_offset = { 2927cab44f1SSergey Temerkhanov .serdes = 0xfffff7a9, /* -4.1697 */ 2937cab44f1SSergey Temerkhanov .no_fec = 0xfffff5a9, /* -5.17 */ 2947cab44f1SSergey Temerkhanov .rs = 0xfffff6e6, /* -4.55 */ 2957cab44f1SSergey Temerkhanov .sfd = 0x1dc, /* 0.93 */ 2967cab44f1SSergey Temerkhanov .bs_ds = 0x199a /* 12.8, RS-FEC 0x31b (1.552) */ 2977cab44f1SSergey Temerkhanov } 2987cab44f1SSergey Temerkhanov }, 2997cab44f1SSergey Temerkhanov [ICE_ETH56G_LNK_SPD_100G2] = { 3007cab44f1SSergey Temerkhanov .tx_mode = { .def = 5 }, 3017cab44f1SSergey Temerkhanov .tx_mk_dly = 10, 3027cab44f1SSergey Temerkhanov .tx_cw_dly = { 3037cab44f1SSergey Temerkhanov .def = 3, 3047cab44f1SSergey Temerkhanov .onestep = 6 3057cab44f1SSergey Temerkhanov }, 3067cab44f1SSergey Temerkhanov .rx_mode = { .def = 5 }, 3077cab44f1SSergey Temerkhanov .rx_mk_dly = { .def = 5 }, 3087cab44f1SSergey Temerkhanov .rx_cw_dly = { .def = 5 }, 3097cab44f1SSergey Temerkhanov .blks_per_clk = 1, 3107cab44f1SSergey Temerkhanov .blktime = 0x148, /* 0.64 */ 3117cab44f1SSergey Temerkhanov .mktime = 0x199a, /* 12.8 */ 3127cab44f1SSergey Temerkhanov .tx_offset = { 3137cab44f1SSergey Temerkhanov .serdes = 0x13ba, /* 9.86353 */ 3147cab44f1SSergey Temerkhanov .rs = 0x460a, /* 35.02 */ 3157cab44f1SSergey Temerkhanov .sfd = 0xe6, /* 0.45 */ 3167cab44f1SSergey Temerkhanov .onestep = 0xf5c /* 7.68 */ 3177cab44f1SSergey Temerkhanov }, 3187cab44f1SSergey Temerkhanov .rx_offset = { 3197cab44f1SSergey Temerkhanov .serdes = 0xfffff7e8, /* -4.04706 */ 3207cab44f1SSergey Temerkhanov .rs = 0xfffff548, /* -5.36 */ 3217cab44f1SSergey Temerkhanov .sfd = 0xe6, /* 0.45 */ 3227cab44f1SSergey Temerkhanov .bs_ds = 0x303 /* 1.506 */ 3237cab44f1SSergey Temerkhanov } 3247cab44f1SSergey Temerkhanov } 3257cab44f1SSergey Temerkhanov }; 3267cab44f1SSergey Temerkhanov 327a39dd252SKarol Kolacinski /* struct ice_time_ref_info_e82x 3283a749623SJacob Keller * 3293a749623SJacob Keller * E822 hardware can use different sources as the reference for the PTP 3303a749623SJacob Keller * hardware clock. Each clock has different characteristics such as a slightly 3313a749623SJacob Keller * different frequency, etc. 3323a749623SJacob Keller * 3333a749623SJacob Keller * This lookup table defines several constants that depend on the current time 334a39dd252SKarol Kolacinski * reference. See the struct ice_time_ref_info_e82x for information about the 3353a749623SJacob Keller * meaning of each constant. 3363a749623SJacob Keller */ 337a39dd252SKarol Kolacinski const struct ice_time_ref_info_e82x e822_time_ref[NUM_ICE_TIME_REF_FREQ] = { 3383a749623SJacob Keller /* ICE_TIME_REF_FREQ_25_000 -> 25 MHz */ 3393a749623SJacob Keller { 3403a749623SJacob Keller /* pll_freq */ 3413a749623SJacob Keller 823437500, /* 823.4375 MHz PLL */ 3423a749623SJacob Keller /* nominal_incval */ 3433a749623SJacob Keller 0x136e44fabULL, 3443a749623SJacob Keller /* pps_delay */ 3453a749623SJacob Keller 11, 3463a749623SJacob Keller }, 3473a749623SJacob Keller 3483a749623SJacob Keller /* ICE_TIME_REF_FREQ_122_880 -> 122.88 MHz */ 3493a749623SJacob Keller { 3503a749623SJacob Keller /* pll_freq */ 3513a749623SJacob Keller 783360000, /* 783.36 MHz */ 3523a749623SJacob Keller /* nominal_incval */ 3533a749623SJacob Keller 0x146cc2177ULL, 3543a749623SJacob Keller /* pps_delay */ 3553a749623SJacob Keller 12, 3563a749623SJacob Keller }, 3573a749623SJacob Keller 3583a749623SJacob Keller /* ICE_TIME_REF_FREQ_125_000 -> 125 MHz */ 3593a749623SJacob Keller { 3603a749623SJacob Keller /* pll_freq */ 3613a749623SJacob Keller 796875000, /* 796.875 MHz */ 3623a749623SJacob Keller /* nominal_incval */ 3633a749623SJacob Keller 0x141414141ULL, 3643a749623SJacob Keller /* pps_delay */ 3653a749623SJacob Keller 12, 3663a749623SJacob Keller }, 3673a749623SJacob Keller 3683a749623SJacob Keller /* ICE_TIME_REF_FREQ_153_600 -> 153.6 MHz */ 3693a749623SJacob Keller { 3703a749623SJacob Keller /* pll_freq */ 3713a749623SJacob Keller 816000000, /* 816 MHz */ 3723a749623SJacob Keller /* nominal_incval */ 3733a749623SJacob Keller 0x139b9b9baULL, 3743a749623SJacob Keller /* pps_delay */ 3753a749623SJacob Keller 12, 3763a749623SJacob Keller }, 3773a749623SJacob Keller 3783a749623SJacob Keller /* ICE_TIME_REF_FREQ_156_250 -> 156.25 MHz */ 3793a749623SJacob Keller { 3803a749623SJacob Keller /* pll_freq */ 3813a749623SJacob Keller 830078125, /* 830.78125 MHz */ 3823a749623SJacob Keller /* nominal_incval */ 3833a749623SJacob Keller 0x134679aceULL, 3843a749623SJacob Keller /* pps_delay */ 3853a749623SJacob Keller 11, 3863a749623SJacob Keller }, 3873a749623SJacob Keller 3883a749623SJacob Keller /* ICE_TIME_REF_FREQ_245_760 -> 245.76 MHz */ 3893a749623SJacob Keller { 3903a749623SJacob Keller /* pll_freq */ 3913a749623SJacob Keller 783360000, /* 783.36 MHz */ 3923a749623SJacob Keller /* nominal_incval */ 3933a749623SJacob Keller 0x146cc2177ULL, 3943a749623SJacob Keller /* pps_delay */ 3953a749623SJacob Keller 12, 3963a749623SJacob Keller }, 3973a749623SJacob Keller }; 3983a749623SJacob Keller 399a39dd252SKarol Kolacinski const struct ice_cgu_pll_params_e82x e822_cgu_params[NUM_ICE_TIME_REF_FREQ] = { 400b111ab5aSJacob Keller /* ICE_TIME_REF_FREQ_25_000 -> 25 MHz */ 401b111ab5aSJacob Keller { 402b111ab5aSJacob Keller /* refclk_pre_div */ 403b111ab5aSJacob Keller 1, 404b111ab5aSJacob Keller /* feedback_div */ 405b111ab5aSJacob Keller 197, 406b111ab5aSJacob Keller /* frac_n_div */ 407b111ab5aSJacob Keller 2621440, 408b111ab5aSJacob Keller /* post_pll_div */ 409b111ab5aSJacob Keller 6, 410b111ab5aSJacob Keller }, 411b111ab5aSJacob Keller 412b111ab5aSJacob Keller /* ICE_TIME_REF_FREQ_122_880 -> 122.88 MHz */ 413b111ab5aSJacob Keller { 414b111ab5aSJacob Keller /* refclk_pre_div */ 415b111ab5aSJacob Keller 5, 416b111ab5aSJacob Keller /* feedback_div */ 417b111ab5aSJacob Keller 223, 418b111ab5aSJacob Keller /* frac_n_div */ 419b111ab5aSJacob Keller 524288, 420b111ab5aSJacob Keller /* post_pll_div */ 421b111ab5aSJacob Keller 7, 422b111ab5aSJacob Keller }, 423b111ab5aSJacob Keller 424b111ab5aSJacob Keller /* ICE_TIME_REF_FREQ_125_000 -> 125 MHz */ 425b111ab5aSJacob Keller { 426b111ab5aSJacob Keller /* refclk_pre_div */ 427b111ab5aSJacob Keller 5, 428b111ab5aSJacob Keller /* feedback_div */ 429b111ab5aSJacob Keller 223, 430b111ab5aSJacob Keller /* frac_n_div */ 431b111ab5aSJacob Keller 524288, 432b111ab5aSJacob Keller /* post_pll_div */ 433b111ab5aSJacob Keller 7, 434b111ab5aSJacob Keller }, 435b111ab5aSJacob Keller 436b111ab5aSJacob Keller /* ICE_TIME_REF_FREQ_153_600 -> 153.6 MHz */ 437b111ab5aSJacob Keller { 438b111ab5aSJacob Keller /* refclk_pre_div */ 439b111ab5aSJacob Keller 5, 440b111ab5aSJacob Keller /* feedback_div */ 441b111ab5aSJacob Keller 159, 442b111ab5aSJacob Keller /* frac_n_div */ 443b111ab5aSJacob Keller 1572864, 444b111ab5aSJacob Keller /* post_pll_div */ 445b111ab5aSJacob Keller 6, 446b111ab5aSJacob Keller }, 447b111ab5aSJacob Keller 448b111ab5aSJacob Keller /* ICE_TIME_REF_FREQ_156_250 -> 156.25 MHz */ 449b111ab5aSJacob Keller { 450b111ab5aSJacob Keller /* refclk_pre_div */ 451b111ab5aSJacob Keller 5, 452b111ab5aSJacob Keller /* feedback_div */ 453b111ab5aSJacob Keller 159, 454b111ab5aSJacob Keller /* frac_n_div */ 455b111ab5aSJacob Keller 1572864, 456b111ab5aSJacob Keller /* post_pll_div */ 457b111ab5aSJacob Keller 6, 458b111ab5aSJacob Keller }, 459b111ab5aSJacob Keller 460b111ab5aSJacob Keller /* ICE_TIME_REF_FREQ_245_760 -> 245.76 MHz */ 461b111ab5aSJacob Keller { 462b111ab5aSJacob Keller /* refclk_pre_div */ 463b111ab5aSJacob Keller 10, 464b111ab5aSJacob Keller /* feedback_div */ 465b111ab5aSJacob Keller 223, 466b111ab5aSJacob Keller /* frac_n_div */ 467b111ab5aSJacob Keller 524288, 468b111ab5aSJacob Keller /* post_pll_div */ 469b111ab5aSJacob Keller 7, 470b111ab5aSJacob Keller }, 471b111ab5aSJacob Keller }; 472b111ab5aSJacob Keller 473*713dcad2SMichal Michalik const 474*713dcad2SMichal Michalik struct ice_cgu_pll_params_e825c e825c_cgu_params[NUM_ICE_TIME_REF_FREQ] = { 475*713dcad2SMichal Michalik /* ICE_TIME_REF_FREQ_25_000 -> 25 MHz */ 476*713dcad2SMichal Michalik { 477*713dcad2SMichal Michalik /* tspll_ck_refclkfreq */ 478*713dcad2SMichal Michalik 0x19, 479*713dcad2SMichal Michalik /* tspll_ndivratio */ 480*713dcad2SMichal Michalik 1, 481*713dcad2SMichal Michalik /* tspll_fbdiv_intgr */ 482*713dcad2SMichal Michalik 320, 483*713dcad2SMichal Michalik /* tspll_fbdiv_frac */ 484*713dcad2SMichal Michalik 0, 485*713dcad2SMichal Michalik /* ref1588_ck_div */ 486*713dcad2SMichal Michalik 0, 487*713dcad2SMichal Michalik }, 488*713dcad2SMichal Michalik 489*713dcad2SMichal Michalik /* ICE_TIME_REF_FREQ_122_880 -> 122.88 MHz */ 490*713dcad2SMichal Michalik { 491*713dcad2SMichal Michalik /* tspll_ck_refclkfreq */ 492*713dcad2SMichal Michalik 0x29, 493*713dcad2SMichal Michalik /* tspll_ndivratio */ 494*713dcad2SMichal Michalik 3, 495*713dcad2SMichal Michalik /* tspll_fbdiv_intgr */ 496*713dcad2SMichal Michalik 195, 497*713dcad2SMichal Michalik /* tspll_fbdiv_frac */ 498*713dcad2SMichal Michalik 1342177280UL, 499*713dcad2SMichal Michalik /* ref1588_ck_div */ 500*713dcad2SMichal Michalik 0, 501*713dcad2SMichal Michalik }, 502*713dcad2SMichal Michalik 503*713dcad2SMichal Michalik /* ICE_TIME_REF_FREQ_125_000 -> 125 MHz */ 504*713dcad2SMichal Michalik { 505*713dcad2SMichal Michalik /* tspll_ck_refclkfreq */ 506*713dcad2SMichal Michalik 0x3E, 507*713dcad2SMichal Michalik /* tspll_ndivratio */ 508*713dcad2SMichal Michalik 2, 509*713dcad2SMichal Michalik /* tspll_fbdiv_intgr */ 510*713dcad2SMichal Michalik 128, 511*713dcad2SMichal Michalik /* tspll_fbdiv_frac */ 512*713dcad2SMichal Michalik 0, 513*713dcad2SMichal Michalik /* ref1588_ck_div */ 514*713dcad2SMichal Michalik 0, 515*713dcad2SMichal Michalik }, 516*713dcad2SMichal Michalik 517*713dcad2SMichal Michalik /* ICE_TIME_REF_FREQ_153_600 -> 153.6 MHz */ 518*713dcad2SMichal Michalik { 519*713dcad2SMichal Michalik /* tspll_ck_refclkfreq */ 520*713dcad2SMichal Michalik 0x33, 521*713dcad2SMichal Michalik /* tspll_ndivratio */ 522*713dcad2SMichal Michalik 3, 523*713dcad2SMichal Michalik /* tspll_fbdiv_intgr */ 524*713dcad2SMichal Michalik 156, 525*713dcad2SMichal Michalik /* tspll_fbdiv_frac */ 526*713dcad2SMichal Michalik 1073741824UL, 527*713dcad2SMichal Michalik /* ref1588_ck_div */ 528*713dcad2SMichal Michalik 0, 529*713dcad2SMichal Michalik }, 530*713dcad2SMichal Michalik 531*713dcad2SMichal Michalik /* ICE_TIME_REF_FREQ_156_250 -> 156.25 MHz */ 532*713dcad2SMichal Michalik { 533*713dcad2SMichal Michalik /* tspll_ck_refclkfreq */ 534*713dcad2SMichal Michalik 0x1F, 535*713dcad2SMichal Michalik /* tspll_ndivratio */ 536*713dcad2SMichal Michalik 5, 537*713dcad2SMichal Michalik /* tspll_fbdiv_intgr */ 538*713dcad2SMichal Michalik 256, 539*713dcad2SMichal Michalik /* tspll_fbdiv_frac */ 540*713dcad2SMichal Michalik 0, 541*713dcad2SMichal Michalik /* ref1588_ck_div */ 542*713dcad2SMichal Michalik 0, 543*713dcad2SMichal Michalik }, 544*713dcad2SMichal Michalik 545*713dcad2SMichal Michalik /* ICE_TIME_REF_FREQ_245_760 -> 245.76 MHz */ 546*713dcad2SMichal Michalik { 547*713dcad2SMichal Michalik /* tspll_ck_refclkfreq */ 548*713dcad2SMichal Michalik 0x52, 549*713dcad2SMichal Michalik /* tspll_ndivratio */ 550*713dcad2SMichal Michalik 3, 551*713dcad2SMichal Michalik /* tspll_fbdiv_intgr */ 552*713dcad2SMichal Michalik 97, 553*713dcad2SMichal Michalik /* tspll_fbdiv_frac */ 554*713dcad2SMichal Michalik 2818572288UL, 555*713dcad2SMichal Michalik /* ref1588_ck_div */ 556*713dcad2SMichal Michalik 0, 557*713dcad2SMichal Michalik }, 558*713dcad2SMichal Michalik }; 559*713dcad2SMichal Michalik 560a39dd252SKarol Kolacinski /* struct ice_vernier_info_e82x 5613a749623SJacob Keller * 5623a749623SJacob Keller * E822 hardware calibrates the delay of the timestamp indication from the 5633a749623SJacob Keller * actual packet transmission or reception during the initialization of the 5643a749623SJacob Keller * PHY. To do this, the hardware mechanism uses some conversions between the 5653a749623SJacob Keller * various clocks within the PHY block. This table defines constants used to 5663a749623SJacob Keller * calculate the correct conversion ratios in the PHY registers. 5673a749623SJacob Keller * 5683a749623SJacob Keller * Many of the values relate to the PAR/PCS clock conversion registers. For 5693a749623SJacob Keller * these registers, a value of 0 means that the associated register is not 5703a749623SJacob Keller * used by this link speed, and that the register should be cleared by writing 5713a749623SJacob Keller * 0. Other values specify the clock frequency in Hz. 5723a749623SJacob Keller */ 573a39dd252SKarol Kolacinski const struct ice_vernier_info_e82x e822_vernier[NUM_ICE_PTP_LNK_SPD] = { 5743a749623SJacob Keller /* ICE_PTP_LNK_SPD_1G */ 5753a749623SJacob Keller { 5763a749623SJacob Keller /* tx_par_clk */ 5773a749623SJacob Keller 31250000, /* 31.25 MHz */ 5783a749623SJacob Keller /* rx_par_clk */ 5793a749623SJacob Keller 31250000, /* 31.25 MHz */ 5803a749623SJacob Keller /* tx_pcs_clk */ 5813a749623SJacob Keller 125000000, /* 125 MHz */ 5823a749623SJacob Keller /* rx_pcs_clk */ 5833a749623SJacob Keller 125000000, /* 125 MHz */ 5843a749623SJacob Keller /* tx_desk_rsgb_par */ 5853a749623SJacob Keller 0, /* unused */ 5863a749623SJacob Keller /* rx_desk_rsgb_par */ 5873a749623SJacob Keller 0, /* unused */ 5883a749623SJacob Keller /* tx_desk_rsgb_pcs */ 5893a749623SJacob Keller 0, /* unused */ 5903a749623SJacob Keller /* rx_desk_rsgb_pcs */ 5913a749623SJacob Keller 0, /* unused */ 5923a749623SJacob Keller /* tx_fixed_delay */ 5933a749623SJacob Keller 25140, 5943a749623SJacob Keller /* pmd_adj_divisor */ 5953a749623SJacob Keller 10000000, 5963a749623SJacob Keller /* rx_fixed_delay */ 5973a749623SJacob Keller 17372, 5983a749623SJacob Keller }, 5993a749623SJacob Keller /* ICE_PTP_LNK_SPD_10G */ 6003a749623SJacob Keller { 6013a749623SJacob Keller /* tx_par_clk */ 6023a749623SJacob Keller 257812500, /* 257.8125 MHz */ 6033a749623SJacob Keller /* rx_par_clk */ 6043a749623SJacob Keller 257812500, /* 257.8125 MHz */ 6053a749623SJacob Keller /* tx_pcs_clk */ 6063a749623SJacob Keller 156250000, /* 156.25 MHz */ 6073a749623SJacob Keller /* rx_pcs_clk */ 6083a749623SJacob Keller 156250000, /* 156.25 MHz */ 6093a749623SJacob Keller /* tx_desk_rsgb_par */ 6103a749623SJacob Keller 0, /* unused */ 6113a749623SJacob Keller /* rx_desk_rsgb_par */ 6123a749623SJacob Keller 0, /* unused */ 6133a749623SJacob Keller /* tx_desk_rsgb_pcs */ 6143a749623SJacob Keller 0, /* unused */ 6153a749623SJacob Keller /* rx_desk_rsgb_pcs */ 6163a749623SJacob Keller 0, /* unused */ 6173a749623SJacob Keller /* tx_fixed_delay */ 6183a749623SJacob Keller 6938, 6193a749623SJacob Keller /* pmd_adj_divisor */ 6203a749623SJacob Keller 82500000, 6213a749623SJacob Keller /* rx_fixed_delay */ 6223a749623SJacob Keller 6212, 6233a749623SJacob Keller }, 6243a749623SJacob Keller /* ICE_PTP_LNK_SPD_25G */ 6253a749623SJacob Keller { 6263a749623SJacob Keller /* tx_par_clk */ 6273a749623SJacob Keller 644531250, /* 644.53125 MHZ */ 6283a749623SJacob Keller /* rx_par_clk */ 6293a749623SJacob Keller 644531250, /* 644.53125 MHz */ 6303a749623SJacob Keller /* tx_pcs_clk */ 6313a749623SJacob Keller 390625000, /* 390.625 MHz */ 6323a749623SJacob Keller /* rx_pcs_clk */ 6333a749623SJacob Keller 390625000, /* 390.625 MHz */ 6343a749623SJacob Keller /* tx_desk_rsgb_par */ 6353a749623SJacob Keller 0, /* unused */ 6363a749623SJacob Keller /* rx_desk_rsgb_par */ 6373a749623SJacob Keller 0, /* unused */ 6383a749623SJacob Keller /* tx_desk_rsgb_pcs */ 6393a749623SJacob Keller 0, /* unused */ 6403a749623SJacob Keller /* rx_desk_rsgb_pcs */ 6413a749623SJacob Keller 0, /* unused */ 6423a749623SJacob Keller /* tx_fixed_delay */ 6433a749623SJacob Keller 2778, 6443a749623SJacob Keller /* pmd_adj_divisor */ 6453a749623SJacob Keller 206250000, 6463a749623SJacob Keller /* rx_fixed_delay */ 6473a749623SJacob Keller 2491, 6483a749623SJacob Keller }, 6493a749623SJacob Keller /* ICE_PTP_LNK_SPD_25G_RS */ 6503a749623SJacob Keller { 6513a749623SJacob Keller /* tx_par_clk */ 6523a749623SJacob Keller 0, /* unused */ 6533a749623SJacob Keller /* rx_par_clk */ 6543a749623SJacob Keller 0, /* unused */ 6553a749623SJacob Keller /* tx_pcs_clk */ 6563a749623SJacob Keller 0, /* unused */ 6573a749623SJacob Keller /* rx_pcs_clk */ 6583a749623SJacob Keller 0, /* unused */ 6593a749623SJacob Keller /* tx_desk_rsgb_par */ 6603a749623SJacob Keller 161132812, /* 162.1328125 MHz Reed Solomon gearbox */ 6613a749623SJacob Keller /* rx_desk_rsgb_par */ 6623a749623SJacob Keller 161132812, /* 162.1328125 MHz Reed Solomon gearbox */ 6633a749623SJacob Keller /* tx_desk_rsgb_pcs */ 6643a749623SJacob Keller 97656250, /* 97.62625 MHz Reed Solomon gearbox */ 6653a749623SJacob Keller /* rx_desk_rsgb_pcs */ 6663a749623SJacob Keller 97656250, /* 97.62625 MHz Reed Solomon gearbox */ 6673a749623SJacob Keller /* tx_fixed_delay */ 6683a749623SJacob Keller 3928, 6693a749623SJacob Keller /* pmd_adj_divisor */ 6703a749623SJacob Keller 206250000, 6713a749623SJacob Keller /* rx_fixed_delay */ 6723a749623SJacob Keller 29535, 6733a749623SJacob Keller }, 6743a749623SJacob Keller /* ICE_PTP_LNK_SPD_40G */ 6753a749623SJacob Keller { 6763a749623SJacob Keller /* tx_par_clk */ 6773a749623SJacob Keller 257812500, 6783a749623SJacob Keller /* rx_par_clk */ 6793a749623SJacob Keller 257812500, 6803a749623SJacob Keller /* tx_pcs_clk */ 6813a749623SJacob Keller 156250000, /* 156.25 MHz */ 6823a749623SJacob Keller /* rx_pcs_clk */ 6833a749623SJacob Keller 156250000, /* 156.25 MHz */ 6843a749623SJacob Keller /* tx_desk_rsgb_par */ 6853a749623SJacob Keller 0, /* unused */ 6863a749623SJacob Keller /* rx_desk_rsgb_par */ 6873a749623SJacob Keller 156250000, /* 156.25 MHz deskew clock */ 6883a749623SJacob Keller /* tx_desk_rsgb_pcs */ 6893a749623SJacob Keller 0, /* unused */ 6903a749623SJacob Keller /* rx_desk_rsgb_pcs */ 6913a749623SJacob Keller 156250000, /* 156.25 MHz deskew clock */ 6923a749623SJacob Keller /* tx_fixed_delay */ 6933a749623SJacob Keller 5666, 6943a749623SJacob Keller /* pmd_adj_divisor */ 6953a749623SJacob Keller 82500000, 6963a749623SJacob Keller /* rx_fixed_delay */ 6973a749623SJacob Keller 4244, 6983a749623SJacob Keller }, 6993a749623SJacob Keller /* ICE_PTP_LNK_SPD_50G */ 7003a749623SJacob Keller { 7013a749623SJacob Keller /* tx_par_clk */ 7023a749623SJacob Keller 644531250, /* 644.53125 MHZ */ 7033a749623SJacob Keller /* rx_par_clk */ 7043a749623SJacob Keller 644531250, /* 644.53125 MHZ */ 7053a749623SJacob Keller /* tx_pcs_clk */ 7063a749623SJacob Keller 390625000, /* 390.625 MHz */ 7073a749623SJacob Keller /* rx_pcs_clk */ 7083a749623SJacob Keller 390625000, /* 390.625 MHz */ 7093a749623SJacob Keller /* tx_desk_rsgb_par */ 7103a749623SJacob Keller 0, /* unused */ 7113a749623SJacob Keller /* rx_desk_rsgb_par */ 7123a749623SJacob Keller 195312500, /* 193.3125 MHz deskew clock */ 7133a749623SJacob Keller /* tx_desk_rsgb_pcs */ 7143a749623SJacob Keller 0, /* unused */ 7153a749623SJacob Keller /* rx_desk_rsgb_pcs */ 7163a749623SJacob Keller 195312500, /* 193.3125 MHz deskew clock */ 7173a749623SJacob Keller /* tx_fixed_delay */ 7183a749623SJacob Keller 2778, 7193a749623SJacob Keller /* pmd_adj_divisor */ 7203a749623SJacob Keller 206250000, 7213a749623SJacob Keller /* rx_fixed_delay */ 7223a749623SJacob Keller 2868, 7233a749623SJacob Keller }, 7243a749623SJacob Keller /* ICE_PTP_LNK_SPD_50G_RS */ 7253a749623SJacob Keller { 7263a749623SJacob Keller /* tx_par_clk */ 7273a749623SJacob Keller 0, /* unused */ 7283a749623SJacob Keller /* rx_par_clk */ 7293a749623SJacob Keller 644531250, /* 644.53125 MHz */ 7303a749623SJacob Keller /* tx_pcs_clk */ 7313a749623SJacob Keller 0, /* unused */ 7323a749623SJacob Keller /* rx_pcs_clk */ 7333a749623SJacob Keller 644531250, /* 644.53125 MHz */ 7343a749623SJacob Keller /* tx_desk_rsgb_par */ 7353a749623SJacob Keller 322265625, /* 322.265625 MHz Reed Solomon gearbox */ 7363a749623SJacob Keller /* rx_desk_rsgb_par */ 7373a749623SJacob Keller 322265625, /* 322.265625 MHz Reed Solomon gearbox */ 7383a749623SJacob Keller /* tx_desk_rsgb_pcs */ 7393a749623SJacob Keller 644531250, /* 644.53125 MHz Reed Solomon gearbox */ 7403a749623SJacob Keller /* rx_desk_rsgb_pcs */ 7413a749623SJacob Keller 644531250, /* 644.53125 MHz Reed Solomon gearbox */ 7423a749623SJacob Keller /* tx_fixed_delay */ 7433a749623SJacob Keller 2095, 7443a749623SJacob Keller /* pmd_adj_divisor */ 7453a749623SJacob Keller 206250000, 7463a749623SJacob Keller /* rx_fixed_delay */ 7473a749623SJacob Keller 14524, 7483a749623SJacob Keller }, 7493a749623SJacob Keller /* ICE_PTP_LNK_SPD_100G_RS */ 7503a749623SJacob Keller { 7513a749623SJacob Keller /* tx_par_clk */ 7523a749623SJacob Keller 0, /* unused */ 7533a749623SJacob Keller /* rx_par_clk */ 7543a749623SJacob Keller 644531250, /* 644.53125 MHz */ 7553a749623SJacob Keller /* tx_pcs_clk */ 7563a749623SJacob Keller 0, /* unused */ 7573a749623SJacob Keller /* rx_pcs_clk */ 7583a749623SJacob Keller 644531250, /* 644.53125 MHz */ 7593a749623SJacob Keller /* tx_desk_rsgb_par */ 7603a749623SJacob Keller 644531250, /* 644.53125 MHz Reed Solomon gearbox */ 7613a749623SJacob Keller /* rx_desk_rsgb_par */ 7623a749623SJacob Keller 644531250, /* 644.53125 MHz Reed Solomon gearbox */ 7633a749623SJacob Keller /* tx_desk_rsgb_pcs */ 7643a749623SJacob Keller 644531250, /* 644.53125 MHz Reed Solomon gearbox */ 7653a749623SJacob Keller /* rx_desk_rsgb_pcs */ 7663a749623SJacob Keller 644531250, /* 644.53125 MHz Reed Solomon gearbox */ 7673a749623SJacob Keller /* tx_fixed_delay */ 7683a749623SJacob Keller 1620, 7693a749623SJacob Keller /* pmd_adj_divisor */ 7703a749623SJacob Keller 206250000, 7713a749623SJacob Keller /* rx_fixed_delay */ 7723a749623SJacob Keller 7775, 7733a749623SJacob Keller }, 7743a749623SJacob Keller }; 7753a749623SJacob Keller 7763a749623SJacob Keller #endif /* _ICE_PTP_CONSTS_H_ */ 777