pm12x10.h (20183B)
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 * DO NOT EDIT THIS FILE! 11 */ 12 13 #ifndef _PM12X10_H__H_ 14 #define _PM12X10_H__H_ 15 16 #include <phymod/phymod.h> 17 #include <phymod/phymod_diagnostics.h> 18 #include <phymod/phymod_reg.h> 19 #include <soc/cprimod/cprimod.h> 20 #include <soc/portmod/portmod_defs.h> 21 /*Get whether the inerface type is supported by PM */ 22 int pm12x10_pm_interface_type_is_supported(int unit, soc_port_if_t interface, int* is_supported); 23 24 /*Add new pm.*/ 25 int pm12x10_pm_init(int unit, const portmod_pm_create_info_internal_t* pm_add_info, int wb_buffer_index, pm_info_t pm_info); 26 27 /*Release PM resources*/ 28 int pm12x10_pm_destroy(int unit, pm_info_t pm_info); 29 30 /*Add new port*/ 31 int pm12x10_port_attach(int unit, int port, pm_info_t pm_info, const portmod_port_add_info_t* add_info); 32 33 /*get port cores' phymod access*/ 34 int pm12x10_pm_core_info_get(int unit, pm_info_t pm_info, int phyn, portmod_pm_core_info_t* core_info); 35 36 /*Port remove in PM level*/ 37 int pm12x10_port_detach(int unit, int port, pm_info_t pm_info); 38 39 /*Port replace in PM level*/ 40 int pm12x10_port_replace(int unit, int port, pm_info_t pm_info, int new_port); 41 42 /*Port enable*/ 43 int pm12x10_port_enable_set(int unit, int port, pm_info_t pm_info, int flags, int enable); 44 int pm12x10_port_enable_get(int unit, int port, pm_info_t pm_info, int flags, int* enable); 45 46 /* set/get the interface, speed and encapsulation for the specified port. 47 For the First port within core this function initialize the PM, MAC and PHY before configure the port.*/ 48 int pm12x10_port_interface_config_set(int unit, int port, pm_info_t pm_info, const portmod_port_interface_config_t* config, int phy_init_flags); 49 int pm12x10_port_interface_config_get(int unit, int port, pm_info_t pm_info, portmod_port_interface_config_t* config, int phy_init_flags); 50 51 /* get the default line-side (outmost) interface type of a port based on its speed, encap, number of lanes, etc, when there is or there is not an ext PHY*/ 52 int pm12x10_port_default_interface_get(int unit, int port, pm_info_t pm_info, const portmod_port_interface_config_t* config, soc_port_if_t* interface); 53 54 /*Port cl72 set\get*/ 55 int pm12x10_port_cl72_set(int unit, int port, pm_info_t pm_info, uint32 enable); 56 int pm12x10_port_cl72_get(int unit, int port, pm_info_t pm_info, uint32* enable); 57 58 /*Port speed set\get*/ 59 int pm12x10_port_loopback_set(int unit, int port, pm_info_t pm_info, portmod_loopback_mode_t loopback_type, int enable); 60 int pm12x10_port_loopback_get(int unit, int port, pm_info_t pm_info, portmod_loopback_mode_t loopback_type, int* enable); 61 62 /*Port RX MAC ENABLE set\get*/ 63 int pm12x10_port_rx_mac_enable_set(int unit, int port, pm_info_t pm_info, int enable); 64 int pm12x10_port_rx_mac_enable_get(int unit, int port, pm_info_t pm_info, int* enable); 65 66 /*Port TX MAC ENABLE set\get*/ 67 int pm12x10_port_tx_mac_enable_set(int unit, int port, pm_info_t pm_info, int enable); 68 int pm12x10_port_tx_mac_enable_get(int unit, int port, pm_info_t pm_info, int* enable); 69 70 /*get port auto negotiation local ability*/ 71 int pm12x10_port_ability_local_get(int unit, int port, pm_info_t pm_info, uint32 phy_flags, portmod_port_ability_t* ability); 72 73 /*Set\Get autoneg*/ 74 int pm12x10_port_autoneg_set(int unit, int port, pm_info_t pm_info, uint32 phy_flags, const phymod_autoneg_control_t* an); 75 int pm12x10_port_autoneg_get(int unit, int port, pm_info_t pm_info, uint32 phy_flags, phymod_autoneg_control_t* an); 76 77 /*Get autoneg status*/ 78 int pm12x10_port_autoneg_status_get(int unit, int port, pm_info_t pm_info, phymod_autoneg_status_t* an_status); 79 80 /*get link status*/ 81 int pm12x10_port_link_get(int unit, int port, pm_info_t pm_info, int flags, int* link); 82 83 /* link up event */ 84 int pm12x10_port_phy_link_up_event(int unit, int port, pm_info_t pm_info); 85 86 /* link down event */ 87 int pm12x10_port_phy_link_down_event(int unit, int port, pm_info_t pm_info); 88 89 /*PRBS configuration set/get*/ 90 int pm12x10_port_prbs_config_set(int unit, int port, pm_info_t pm_info, portmod_prbs_mode_t mode, int flags, const phymod_prbs_t* config); 91 int pm12x10_port_prbs_config_get(int unit, int port, pm_info_t pm_info, portmod_prbs_mode_t mode, int flags, phymod_prbs_t* config); 92 93 /*PRBS enable set/get*/ 94 int pm12x10_port_prbs_enable_set(int unit, int port, pm_info_t pm_info, portmod_prbs_mode_t mode, int flags, int enable); 95 int pm12x10_port_prbs_enable_get(int unit, int port, pm_info_t pm_info, portmod_prbs_mode_t mode, int flags, int* enable); 96 97 /*PRBS status get*/ 98 int pm12x10_port_prbs_status_get(int unit, int port, pm_info_t pm_info, portmod_prbs_mode_t mode, int flags, phymod_prbs_status_t* status); 99 100 /*Set port PHYs' firmware mode*/ 101 int pm12x10_port_firmware_mode_set(int unit, int port, pm_info_t pm_info, phymod_firmware_mode_t fw_mode); 102 int pm12x10_port_firmware_mode_get(int unit, int port, pm_info_t pm_info, phymod_firmware_mode_t* fw_mode); 103 104 /*Filter packets smaller than the specified threshold*/ 105 int pm12x10_port_runt_threshold_set(int unit, int port, pm_info_t pm_info, int value); 106 int pm12x10_port_runt_threshold_get(int unit, int port, pm_info_t pm_info, int* value); 107 108 /*Filter packets bigger than the specified value*/ 109 int pm12x10_port_max_packet_size_set(int unit, int port, pm_info_t pm_info, int value); 110 int pm12x10_port_max_packet_size_get(int unit, int port, pm_info_t pm_info, int* value); 111 112 /*TX pad packets to the specified size. values smaller than 17 means pad is disabled.*/ 113 int pm12x10_port_pad_size_set(int unit, int port, pm_info_t pm_info, int value); 114 int pm12x10_port_pad_size_get(int unit, int port, pm_info_t pm_info, int* value); 115 116 /*set/get the MAC source address that will be sent in case of Pause/LLFC*/ 117 int pm12x10_port_tx_mac_sa_set(int unit, int port, pm_info_t pm_info, sal_mac_addr_t mac_sa); 118 int pm12x10_port_tx_mac_sa_get(int unit, int port, pm_info_t pm_info, sal_mac_addr_t mac_sa); 119 120 /*set/get Average inter-packet gap*/ 121 int pm12x10_port_tx_average_ipg_set(int unit, int port, pm_info_t pm_info, int value); 122 int pm12x10_port_tx_average_ipg_get(int unit, int port, pm_info_t pm_info, int* value); 123 124 /*local fault set/get*/ 125 int pm12x10_port_local_fault_control_set(int unit, int port, pm_info_t pm_info, const portmod_local_fault_control_t* control); 126 int pm12x10_port_local_fault_control_get(int unit, int port, pm_info_t pm_info, portmod_local_fault_control_t* control); 127 128 /*remote fault set/get*/ 129 int pm12x10_port_remote_fault_control_set(int unit, int port, pm_info_t pm_info, const portmod_remote_fault_control_t* control); 130 int pm12x10_port_remote_fault_control_get(int unit, int port, pm_info_t pm_info, portmod_remote_fault_control_t* control); 131 132 /*local fault steatus get*/ 133 int pm12x10_port_local_fault_status_get(int unit, int port, pm_info_t pm_info, int* value); 134 135 /*remote fault status get*/ 136 int pm12x10_port_remote_fault_status_get(int unit, int port, pm_info_t pm_info, int* value); 137 138 /*set/get Pause FC configuration*/ 139 int pm12x10_port_pause_control_set(int unit, int port, pm_info_t pm_info, const portmod_pause_control_t* control); 140 int pm12x10_port_pause_control_get(int unit, int port, pm_info_t pm_info, portmod_pause_control_t* control); 141 142 /*set/get PFC FC configuration*/ 143 int pm12x10_port_pfc_control_set(int unit, int port, pm_info_t pm_info, const portmod_pfc_control_t* control); 144 int pm12x10_port_pfc_control_get(int unit, int port, pm_info_t pm_info, portmod_pfc_control_t* control); 145 146 /*set/get LLFC FC configuration*/ 147 int pm12x10_port_llfc_control_set(int unit, int port, pm_info_t pm_info, const portmod_llfc_control_t* control); 148 int pm12x10_port_llfc_control_get(int unit, int port, pm_info_t pm_info, portmod_llfc_control_t* control); 149 150 /*Routine for MAC\PHY sync.*/ 151 int pm12x10_port_update(int unit, int port, pm_info_t pm_info, const portmod_port_update_control_t* update_control); 152 153 /*get port cores' phymod access*/ 154 int pm12x10_port_core_access_get(int unit, int port, pm_info_t pm_info, int phyn, int max_cores, phymod_core_access_t* core_access_arr, int* nof_cores, int* is_most_ext); 155 156 /*Get lane phymod access structure. can be used for per lane operations*/ 157 int pm12x10_port_phy_lane_access_get(int unit, int port, pm_info_t pm_info, const portmod_access_get_params_t* params, int max_phys, phymod_phy_access_t* access, int* nof_phys, int* is_most_ext); 158 159 /*Port duplex set\get*/ 160 int pm12x10_port_duplex_set(int unit, int port, pm_info_t pm_info, int enable); 161 int pm12x10_port_duplex_get(int unit, int port, pm_info_t pm_info, int* enable); 162 163 /*Port PHY Control register read*/ 164 int pm12x10_port_phy_reg_read(int unit, int port, pm_info_t pm_info, int lane, int flags, int reg_addr, uint32* value); 165 166 /*Port PHY Control register write*/ 167 int pm12x10_port_phy_reg_write(int unit, int port, pm_info_t pm_info, int lane, int flags, int reg_addr, uint32 value); 168 169 /*Port Reset set\get*/ 170 int pm12x10_port_reset_set(int unit, int port, pm_info_t pm_info, int mode, int opcode, int value); 171 int pm12x10_port_reset_get(int unit, int port, pm_info_t pm_info, int mode, int opcode, int* value); 172 173 /*Port remote Adv get*/ 174 int pm12x10_port_adv_remote_get(int unit, int port, pm_info_t pm_info, int* value); 175 176 /*Drv Name Get*/ 177 int pm12x10_port_drv_name_get(int unit, int port, pm_info_t pm_info, char* name, int len); 178 179 /*get port auto negotiation local ability*/ 180 int pm12x10_port_ability_advert_set(int unit, int port, pm_info_t pm_info, uint32 phy_flags, portmod_port_ability_t* ability); 181 int pm12x10_port_ability_advert_get(int unit, int port, pm_info_t pm_info, uint32 phy_flags, portmod_port_ability_t* ability); 182 183 /*Port ability remote Adv get*/ 184 int pm12x10_port_ability_remote_get(int unit, int port, pm_info_t pm_info, uint32 phy_flags, portmod_port_ability_t* ability); 185 186 /*Port Mac Control Spacing Stretch*/ 187 int pm12x10_port_frame_spacing_stretch_set(int unit, int port, pm_info_t pm_info, int spacing); 188 int pm12x10_port_frame_spacing_stretch_get(int unit, int port, pm_info_t pm_info, const int* spacing); 189 190 /*get port timestamps in fifo*/ 191 int pm12x10_port_diag_fifo_status_get(int unit, int port, pm_info_t pm_info, const portmod_fifo_status_t* diag_info); 192 193 /*set/get pass control frames.*/ 194 int pm12x10_port_rx_control_set(int unit, int port, pm_info_t pm_info, const portmod_rx_control_t* rx_ctrl); 195 int pm12x10_port_rx_control_get(int unit, int port, pm_info_t pm_info, portmod_rx_control_t* rx_ctrl); 196 197 /*set PFC config registers.*/ 198 int pm12x10_port_pfc_config_set(int unit, int port, pm_info_t pm_info, const portmod_pfc_config_t* pfc_cfg); 199 int pm12x10_port_pfc_config_get(int unit, int port, pm_info_t pm_info, portmod_pfc_config_t* pfc_cfg); 200 201 /*set EEE Config.*/ 202 int pm12x10_port_eee_set(int unit, int port, pm_info_t pm_info, const portmod_eee_t* eee); 203 int pm12x10_port_eee_get(int unit, int port, pm_info_t pm_info, portmod_eee_t* eee); 204 205 /*set EEE Config.*/ 206 int pm12x10_port_eee_clock_set(int unit, int port, pm_info_t pm_info, const portmod_eee_clock_t* eee_clk); 207 int pm12x10_port_eee_clock_get(int unit, int port, pm_info_t pm_info, portmod_eee_clock_t* eee_clk); 208 209 /*set Vlan Inner/Outer tag.*/ 210 int pm12x10_port_vlan_tag_set(int unit, int port, pm_info_t pm_info, const portmod_vlan_tag_t* vlan_tag); 211 int pm12x10_port_vlan_tag_get(int unit, int port, pm_info_t pm_info, portmod_vlan_tag_t* vlan_tag); 212 213 /*set modid field.*/ 214 int pm12x10_port_modid_set(int unit, int port, pm_info_t pm_info, int value); 215 216 /*set modid field.*/ 217 int pm12x10_port_clear_rx_lss_status_set(int unit, int port, pm_info_t pm_info, int lcl_fault, int rmt_fault); 218 int pm12x10_port_clear_rx_lss_status_get(int unit, int port, pm_info_t pm_info, int* lcl_fault, int* rmt_fault); 219 220 /*Attaches an external phy lane to a specific port macro*/ 221 int pm12x10_xphy_lane_attach_to_pm(int unit, pm_info_t pm_info, int iphy, int phyn, const portmod_xphy_lane_connection_t* lane_connection); 222 223 /*Attaches an external phy lane to a specific port macro*/ 224 int pm12x10_xphy_lane_detach_from_pm(int unit, pm_info_t pm_info, int iphy, int phyn, portmod_xphy_lane_connection_t* lane_connection); 225 226 /*Toggle Lag Failover Status.*/ 227 int pm12x10_port_lag_failover_status_toggle(int unit, int port, pm_info_t pm_info); 228 229 /*Toggle Lag Failover loopback set / get.*/ 230 int pm12x10_port_lag_failover_loopback_set(int unit, int port, pm_info_t pm_info, int value); 231 int pm12x10_port_lag_failover_loopback_get(int unit, int port, pm_info_t pm_info, int* value); 232 233 /*set port mode.*/ 234 int pm12x10_port_mode_set(int unit, int port, pm_info_t pm_info, const portmod_port_mode_info_t* mode); 235 int pm12x10_port_mode_get(int unit, int port, pm_info_t pm_info, portmod_port_mode_info_t* mode); 236 237 /*set port encap.*/ 238 int pm12x10_port_encap_set(int unit, int port, pm_info_t pm_info, int flags, portmod_encap_t encap); 239 int pm12x10_port_encap_get(int unit, int port, pm_info_t pm_info, int* flags, portmod_encap_t* encap); 240 241 /*set port register higig field.*/ 242 int pm12x10_port_higig_mode_set(int unit, int port, pm_info_t pm_info, int mode); 243 int pm12x10_port_higig_mode_get(int unit, int port, pm_info_t pm_info, int* mode); 244 245 /*set port register higig field.*/ 246 int pm12x10_port_higig2_mode_set(int unit, int port, pm_info_t pm_info, int mode); 247 int pm12x10_port_higig2_mode_get(int unit, int port, pm_info_t pm_info, int* mode); 248 249 /*set port register port type field.*/ 250 int pm12x10_port_config_port_type_set(int unit, int port, pm_info_t pm_info, int type); 251 int pm12x10_port_config_port_type_get(int unit, int port, pm_info_t pm_info, int* type); 252 253 /*set/get hwfailover for trident.*/ 254 int pm12x10_port_trunk_hwfailover_config_set(int unit, int port, pm_info_t pm_info, int hw_count); 255 int pm12x10_port_trunk_hwfailover_config_get(int unit, int port, pm_info_t pm_info, int* enable); 256 257 /*set/get hwfailover for trident.*/ 258 int pm12x10_port_trunk_hwfailover_status_get(int unit, int port, pm_info_t pm_info, int* loopback); 259 260 /*port diagnostics control.*/ 261 int pm12x10_port_diag_ctrl(int unit, int port, pm_info_t pm_info, uint32 inst, int op_type, int op_cmd, const void* arg); 262 263 /*Get the reference clock value 156 or 125.*/ 264 int pm12x10_port_ref_clk_get(int unit, int port, pm_info_t pm_info, int* ref_clk); 265 266 /*Disable lag failover.*/ 267 int pm12x10_port_lag_failover_disable(int unit, int port, pm_info_t pm_info); 268 269 /*Disable lag failover.*/ 270 int pm12x10_port_lag_remove_failover_lpbk_set(int unit, int port, pm_info_t pm_info, int val); 271 int pm12x10_port_lag_remove_failover_lpbk_get(int unit, int port, pm_info_t pm_info, int* val); 272 273 /*Disable lag failover.*/ 274 int pm12x10_port_cntmaxsize_set(int unit, int port, pm_info_t pm_info, int val); 275 int pm12x10_port_cntmaxsize_get(int unit, int port, pm_info_t pm_info, int* val); 276 277 /*Read multiple bytes get.*/ 278 int pm12x10_port_multi_get(int unit, int port, pm_info_t pm_info, portmod_multi_get_t* multi_get); 279 280 /*Get Info needed to restore after drain cells.*/ 281 int pm12x10_port_drain_cell_get(int unit, int port, pm_info_t pm_info, portmod_drain_cells_t* drain_cells); 282 283 /*Restore informaation after drain cells.*/ 284 int pm12x10_port_drain_cell_stop(int unit, int port, pm_info_t pm_info, const portmod_drain_cells_t* drain_cells); 285 286 /*Restore informaation after drain cells.*/ 287 int pm12x10_port_drain_cell_start(int unit, int port, pm_info_t pm_info); 288 289 /**/ 290 int pm12x10_port_drain_cells_rx_enable(int unit, int port, pm_info_t pm_info, int rx_en); 291 292 /**/ 293 int pm12x10_port_egress_queue_drain_rx_en(int unit, int port, pm_info_t pm_info, int rx_en); 294 295 /**/ 296 int pm12x10_port_mac_ctrl_set(int unit, int port, pm_info_t pm_info, uint64 ctrl); 297 298 /**/ 299 int pm12x10_port_txfifo_cell_cnt_get(int unit, int port, pm_info_t pm_info, uint32* cnt); 300 301 /**/ 302 int pm12x10_port_egress_queue_drain_get(int unit, int port, pm_info_t pm_info, uint64* ctrl, int* rxen); 303 304 /*Set/get port mac reset */ 305 int pm12x10_port_mac_reset_set(int unit, int port, pm_info_t pm_info, int val); 306 int pm12x10_port_mac_reset_get(int unit, int port, pm_info_t pm_info, int* val); 307 308 /**/ 309 int pm12x10_port_soft_reset_toggle(int unit, int port, pm_info_t pm_info, int idx); 310 311 /*Check if MAC needs to be reset.*/ 312 int pm12x10_port_mac_reset_check(int unit, int port, pm_info_t pm_info, int enable, int* reset); 313 314 /**/ 315 int pm12x10_port_core_num_get(int unit, int port, pm_info_t pm_info, int* core_num); 316 317 /*get the speed for the specified port*/ 318 int pm12x10_port_speed_get(int unit, int port, pm_info_t pm_info, int* speed); 319 320 /*Port discard set*/ 321 int pm12x10_port_discard_set(int unit, int port, pm_info_t pm_info, int discard); 322 323 /*Port soft reset set set*/ 324 int pm12x10_port_soft_reset_set(int unit, int port, pm_info_t pm_info, int idx, int val, int flags); 325 326 /*Port tx_en=0 and softreset mac*/ 327 int pm12x10_port_tx_down(int unit, int port, pm_info_t pm_info); 328 329 /*reconfig pgw.*/ 330 int pm12x10_port_pgw_reconfig(int unit, int port, pm_info_t pm_info, const portmod_port_mode_info_t* pmode, int phy_port, int flags); 331 332 /*Routine to notify internal phy of external phy link state.*/ 333 int pm12x10_port_notify(int unit, int port, pm_info_t pm_info, int link); 334 335 /*"port timestamp adjust set/get"*/ 336 int pm12x10_port_timestamp_adjust_set(int unit, int port, pm_info_t pm_info, const soc_port_timestamp_adjust_t* ts_adjust); 337 int pm12x10_port_timestamp_adjust_get(int unit, int port, pm_info_t pm_info, soc_port_timestamp_adjust_t* ts_adjust); 338 339 /*set/get interrupt enable value. */ 340 int pm12x10_port_interrupt_enable_set(int unit, int port, pm_info_t pm_info, int intr_type, uint32 val); 341 int pm12x10_port_interrupt_enable_get(int unit, int port, pm_info_t pm_info, int intr_type, uint32* val); 342 343 /*get interrupt status value. */ 344 int pm12x10_port_interrupt_get(int unit, int port, pm_info_t pm_info, int intr_type, uint32* val); 345 346 /*get interrupt value array. */ 347 int pm12x10_port_interrupts_get(int unit, int port, pm_info_t pm_info, int arr_max_size, uint32* intr_arr, uint32* size); 348 349 /* portmod check if external phy is legacy*/ 350 int pm12x10_port_check_legacy_phy(int unit, int port, pm_info_t pm_info, int* legacy_phy); 351 352 /* portmod phy failover mode*/ 353 int pm12x10_port_failover_mode_set(int unit, int port, pm_info_t pm_info, phymod_failover_mode_t failover); 354 int pm12x10_port_failover_mode_get(int unit, int port, pm_info_t pm_info, phymod_failover_mode_t* failover); 355 356 /* portmod port rsv mask set*/ 357 int pm12x10_port_mac_rsv_mask_set(int unit, int port, pm_info_t pm_info, uint32 rsv_mask); 358 359 /* portmod port mib reset toggle*/ 360 int pm12x10_port_mib_reset_toggle(int unit, int port, pm_info_t pm_info, int port_index); 361 362 /* portmod restore information after warmboot*/ 363 int pm12x10_port_warmboot_db_restore(int unit, int port, pm_info_t pm_info, const portmod_port_interface_config_t* intf_config, const portmod_port_init_config_t* init_config, phymod_operation_mode_t phy_op_mode); 364 365 /* portmod port flow control config*/ 366 int pm12x10_port_flow_control_set(int unit, int port, pm_info_t pm_info, int merge_mode_en, int parallel_fc_en); 367 368 /*Portmod state for any logical port dynamixc settings*/ 369 int pm12x10_port_update_dynamic_state(int unit, int port, pm_info_t pm_info, uint32_t port_dynamic_state); 370 371 /*get phy operation mode. */ 372 int pm12x10_port_phy_op_mode_get(int unit, int port, pm_info_t pm_info, phymod_operation_mode_t* val); 373 374 /*override function for board lane swap. */ 375 int pm12x10_port_lane_map_set(int unit, int port, pm_info_t pm_info, uint32 flags, const phymod_lane_map_t* lane_map); 376 int pm12x10_port_lane_map_get(int unit, int port, pm_info_t pm_info, uint32 flags, phymod_lane_map_t* lane_map); 377 378 /*set/get port medium type config. */ 379 int pm12x10_port_medium_config_set(int unit, int port, pm_info_t pm_info, soc_port_medium_t medium, soc_phy_config_t* config); 380 int pm12x10_port_medium_config_get(int unit, int port, pm_info_t pm_info, soc_port_medium_t medium, soc_phy_config_t* config); 381 382 /*get port medium type. */ 383 int pm12x10_port_medium_get(int unit, int port, pm_info_t pm_info, soc_port_medium_t* medium); 384 385 /*get pll multiplier*/ 386 int pm12x10_port_pll_div_get(int unit, int port, pm_info_t pm_info, const portmod_port_resources_t* port_resource, uint32_t* pll_div); 387 388 /*Get the number of lanes belong to a logical port.*/ 389 int pm12x10_port_lane_count_get(int unit, int port, pm_info_t pm_info, int line_side, int* num_lanes); 390 391 #endif /*_PM12X10_H_*/