hc
2024-01-03 2f7c68cb55ecb7331f2381deb497c27155f32faf
kernel/arch/mips/cavium-octeon/executive/cvmx-helper-sgmii.c
....@@ -200,7 +200,7 @@
200200 */
201201 static int __cvmx_helper_sgmii_hardware_init_link_speed(int interface,
202202 int index,
203
- cvmx_helper_link_info_t
203
+ union cvmx_helper_link_info
204204 link_info)
205205 {
206206 int is_enabled;
....@@ -394,9 +394,9 @@
394394 *
395395 * Returns Link state
396396 */
397
-cvmx_helper_link_info_t __cvmx_helper_sgmii_link_get(int ipd_port)
397
+union cvmx_helper_link_info __cvmx_helper_sgmii_link_get(int ipd_port)
398398 {
399
- cvmx_helper_link_info_t result;
399
+ union cvmx_helper_link_info result;
400400 union cvmx_pcsx_miscx_ctl_reg pcs_misc_ctl_reg;
401401 int interface = cvmx_helper_get_interface_num(ipd_port);
402402 int index = cvmx_helper_get_interface_index_num(ipd_port);
....@@ -505,49 +505,11 @@
505505 * Returns Zero on success, negative on failure
506506 */
507507 int __cvmx_helper_sgmii_link_set(int ipd_port,
508
- cvmx_helper_link_info_t link_info)
508
+ union cvmx_helper_link_info link_info)
509509 {
510510 int interface = cvmx_helper_get_interface_num(ipd_port);
511511 int index = cvmx_helper_get_interface_index_num(ipd_port);
512512 __cvmx_helper_sgmii_hardware_init_link(interface, index);
513513 return __cvmx_helper_sgmii_hardware_init_link_speed(interface, index,
514514 link_info);
515
-}
516
-
517
-/**
518
- * Configure a port for internal and/or external loopback. Internal
519
- * loopback causes packets sent by the port to be received by
520
- * Octeon. External loopback causes packets received from the wire to
521
- * sent out again.
522
- *
523
- * @ipd_port: IPD/PKO port to loopback.
524
- * @enable_internal:
525
- * Non zero if you want internal loopback
526
- * @enable_external:
527
- * Non zero if you want external loopback
528
- *
529
- * Returns Zero on success, negative on failure.
530
- */
531
-int __cvmx_helper_sgmii_configure_loopback(int ipd_port, int enable_internal,
532
- int enable_external)
533
-{
534
- int interface = cvmx_helper_get_interface_num(ipd_port);
535
- int index = cvmx_helper_get_interface_index_num(ipd_port);
536
- union cvmx_pcsx_mrx_control_reg pcsx_mrx_control_reg;
537
- union cvmx_pcsx_miscx_ctl_reg pcsx_miscx_ctl_reg;
538
-
539
- pcsx_mrx_control_reg.u64 =
540
- cvmx_read_csr(CVMX_PCSX_MRX_CONTROL_REG(index, interface));
541
- pcsx_mrx_control_reg.s.loopbck1 = enable_internal;
542
- cvmx_write_csr(CVMX_PCSX_MRX_CONTROL_REG(index, interface),
543
- pcsx_mrx_control_reg.u64);
544
-
545
- pcsx_miscx_ctl_reg.u64 =
546
- cvmx_read_csr(CVMX_PCSX_MISCX_CTL_REG(index, interface));
547
- pcsx_miscx_ctl_reg.s.loopbck2 = enable_external;
548
- cvmx_write_csr(CVMX_PCSX_MISCX_CTL_REG(index, interface),
549
- pcsx_miscx_ctl_reg.u64);
550
-
551
- __cvmx_helper_sgmii_hardware_init_link(interface, index);
552
- return 0;
553515 }