openbcm

Git mirror of https://github.com/Broadcom-Network-Switching-Software/OpenBCM
git clone git://git.finwo.net/mirror/broadcom/openbcm
Log | Files | Refs | README

pm4x25_shared.h (1432B)


      1 /*
      2  *         
      3  * 
      4  * 
      5  * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file.
      6  * 
      7  * Copyright 2007-2019 Broadcom Inc. All rights reserved.
      8  */
      9 
     10 #ifndef _PM4X25TD_SHARED_H_
     11 #define _PM4X25TD_SHARED_H_
     12 
     13 #define PM4X25_LANES_PER_CORE (4)
     14 #define MAX_PORTS_PER_PM4X25 (4)
     15 #define NUM_VSD_ACTIVE_GROUP_WORD  4
     16 
     17 struct pm4x25_s{
     18     portmod_pbmp_t phys;
     19     int first_phy;
     20     phymod_ref_clk_t ref_clk;
     21     phymod_polarity_t polarity;
     22     phymod_lane_map_t lane_map;
     23     phymod_firmware_load_method_t fw_load_method;
     24     phymod_firmware_loader_f external_fw_loader;
     25     phymod_core_access_t int_core_access;
     26     int nof_phys[PM4X25_LANES_PER_CORE] ; /* internal + external phys for each lane */
     27     uint8 in_pm12x10;
     28     uint8 core_num;
     29     portmod_mac_soft_reset_f portmod_mac_soft_reset;
     30     portmod_xphy_lane_connection_t lane_conn[MAX_PHYN][PM4X25_LANES_PER_CORE];
     31     phymod_afe_pll_t afe_pll;
     32     int warmboot_skip_db_restore;
     33     int rescal;
     34     int is_mixed_mode;
     35 };
     36 
     37 #define PM_4x25_INFO(pm_info) ((pm_info)->pm_data.pm4x25_db)
     38 
     39 
     40 int _pm4x25_txpi_sdm_scheme_set(int unit, int port, pm_info_t pm_info, portmod_txpi_sdm_type_t type);
     41 int _pm4x25_txpi_lane_select_set(int unit, int port, pm_info_t pm_info, uint32_t *lane_select);
     42 int _pm4x25_port_phy_txpi_mode_set(int unit, int port, pm_info_t pm_info, uint32 mode);
     43 
     44 #endif /*_PM4X25TD_SHARED_H_*/