* ixgbe_init_ops_generic - Inits function ptrs * @hw: pointer to the hardware structure * * Initialize the function pointers. **/
| 37 | * Initialize the function pointers. |
| 38 | **/ |
| 39 | s32 ixgbe_init_ops_generic(struct ixgbe_hw *hw) |
| 40 | { |
| 41 | struct ixgbe_eeprom_info *eeprom = &hw->eeprom; |
| 42 | struct ixgbe_mac_info *mac = &hw->mac; |
| 43 | u32 eec = IXGBE_READ_REG(hw, IXGBE_EEC_BY_MAC(hw)); |
| 44 | |
| 45 | DEBUGFUNC("ixgbe_init_ops_generic"); |
| 46 | |
| 47 | /* EEPROM */ |
| 48 | eeprom->ops.init_params = ixgbe_init_eeprom_params_generic; |
| 49 | /* If EEPROM is valid (bit 8 = 1), use EERD otherwise use bit bang */ |
| 50 | if (eec & IXGBE_EEC_PRES) { |
| 51 | eeprom->ops.read = ixgbe_read_eerd_generic; |
| 52 | eeprom->ops.read_buffer = ixgbe_read_eerd_buffer_generic; |
| 53 | } else { |
| 54 | eeprom->ops.read = ixgbe_read_eeprom_bit_bang_generic; |
| 55 | eeprom->ops.read_buffer = |
| 56 | ixgbe_read_eeprom_buffer_bit_bang_generic; |
| 57 | } |
| 58 | eeprom->ops.write = ixgbe_write_eeprom_generic; |
| 59 | eeprom->ops.write_buffer = ixgbe_write_eeprom_buffer_bit_bang_generic; |
| 60 | eeprom->ops.validate_checksum = |
| 61 | ixgbe_validate_eeprom_checksum_generic; |
| 62 | eeprom->ops.update_checksum = ixgbe_update_eeprom_checksum_generic; |
| 63 | eeprom->ops.calc_checksum = ixgbe_calc_eeprom_checksum_generic; |
| 64 | |
| 65 | /* MAC */ |
| 66 | mac->ops.init_hw = ixgbe_init_hw_generic; |
| 67 | mac->ops.reset_hw = NULL; |
| 68 | mac->ops.start_hw = ixgbe_start_hw_generic; |
| 69 | mac->ops.clear_hw_cntrs = ixgbe_clear_hw_cntrs_generic; |
| 70 | mac->ops.get_media_type = NULL; |
| 71 | mac->ops.get_supported_physical_layer = NULL; |
| 72 | mac->ops.enable_rx_dma = ixgbe_enable_rx_dma_generic; |
| 73 | mac->ops.get_mac_addr = ixgbe_get_mac_addr_generic; |
| 74 | mac->ops.stop_adapter = ixgbe_stop_adapter_generic; |
| 75 | mac->ops.get_bus_info = ixgbe_get_bus_info_generic; |
| 76 | mac->ops.set_lan_id = ixgbe_set_lan_id_multi_port_pcie; |
| 77 | mac->ops.acquire_swfw_sync = ixgbe_acquire_swfw_sync; |
| 78 | mac->ops.release_swfw_sync = ixgbe_release_swfw_sync; |
| 79 | mac->ops.prot_autoc_read = prot_autoc_read_generic; |
| 80 | mac->ops.prot_autoc_write = prot_autoc_write_generic; |
| 81 | |
| 82 | /* LEDs */ |
| 83 | mac->ops.led_on = ixgbe_led_on_generic; |
| 84 | mac->ops.led_off = ixgbe_led_off_generic; |
| 85 | mac->ops.blink_led_start = ixgbe_blink_led_start_generic; |
| 86 | mac->ops.blink_led_stop = ixgbe_blink_led_stop_generic; |
| 87 | mac->ops.init_led_link_act = ixgbe_init_led_link_act_generic; |
| 88 | |
| 89 | /* RAR, Multicast, VLAN */ |
| 90 | mac->ops.set_rar = ixgbe_set_rar_generic; |
| 91 | mac->ops.clear_rar = ixgbe_clear_rar_generic; |
| 92 | mac->ops.insert_mac_addr = NULL; |
| 93 | mac->ops.set_vmdq = NULL; |
| 94 | mac->ops.clear_vmdq = NULL; |
| 95 | mac->ops.init_rx_addrs = ixgbe_init_rx_addrs_generic; |
| 96 | mac->ops.update_uc_addr_list = ixgbe_update_uc_addr_list_generic; |
no outgoing calls
no test coverage detected