Home
last modified time | relevance | path

Searched refs:nvm (Results 1 – 25 of 59) sorted by relevance

123

/Linux-v6.6/drivers/thunderbolt/
Dnvm.c38 int (*read_version)(struct tb_nvm *nvm);
39 int (*validate)(struct tb_nvm *nvm);
40 int (*write_headers)(struct tb_nvm *nvm);
56 static int intel_switch_nvm_version(struct tb_nvm *nvm) in intel_switch_nvm_version() argument
58 struct tb_switch *sw = tb_to_switch(nvm->dev); in intel_switch_nvm_version()
82 nvm->major = (val >> 16) & 0xff; in intel_switch_nvm_version()
83 nvm->minor = (val >> 8) & 0xff; in intel_switch_nvm_version()
84 nvm->active_size = nvm_size; in intel_switch_nvm_version()
89 static int intel_switch_nvm_validate(struct tb_nvm *nvm) in intel_switch_nvm_validate() argument
91 struct tb_switch *sw = tb_to_switch(nvm->dev); in intel_switch_nvm_validate()
[all …]
Dretimer.c37 struct tb_nvm *nvm = priv; in nvm_read() local
38 struct tb_retimer *rt = tb_to_retimer(nvm->dev); in nvm_read()
60 struct tb_nvm *nvm = priv; in nvm_write() local
61 struct tb_retimer *rt = tb_to_retimer(nvm->dev); in nvm_write()
67 ret = tb_nvm_write_buf(nvm, offset, val, bytes); in nvm_write()
75 struct tb_nvm *nvm; in tb_retimer_nvm_add() local
78 nvm = tb_nvm_alloc(&rt->dev); in tb_retimer_nvm_add()
79 if (IS_ERR(nvm)) { in tb_retimer_nvm_add()
80 ret = PTR_ERR(nvm) == -EOPNOTSUPP ? 0 : PTR_ERR(nvm); in tb_retimer_nvm_add()
84 ret = tb_nvm_read_version(nvm); in tb_retimer_nvm_add()
[all …]
Dswitch.c104 ret = tb_nvm_validate(sw->nvm); in nvm_validate_and_write()
108 ret = tb_nvm_write_headers(sw->nvm); in nvm_validate_and_write()
112 buf = sw->nvm->buf_data_start; in nvm_validate_and_write()
113 image_size = sw->nvm->buf_data_size; in nvm_validate_and_write()
122 sw->nvm->flushed = true; in nvm_validate_and_write()
268 sw->nvm->authenticating = true; in nvm_authenticate()
274 sw->nvm->authenticating = true; in nvm_authenticate()
306 struct tb_nvm *nvm = priv; in nvm_read() local
307 struct tb_switch *sw = tb_to_switch(nvm->dev); in nvm_read()
329 struct tb_nvm *nvm = priv; in nvm_write() local
[all …]
Dtb.h194 struct tb_nvm *nvm; member
332 struct tb_nvm *nvm; member
770 int tb_nvm_read_version(struct tb_nvm *nvm);
771 int tb_nvm_validate(struct tb_nvm *nvm);
772 int tb_nvm_write_headers(struct tb_nvm *nvm);
773 int tb_nvm_add_active(struct tb_nvm *nvm, nvmem_reg_read_t reg_read);
774 int tb_nvm_write_buf(struct tb_nvm *nvm, unsigned int offset, void *val,
776 int tb_nvm_add_non_active(struct tb_nvm *nvm, nvmem_reg_write_t reg_write);
777 void tb_nvm_free(struct tb_nvm *nvm);
DMakefile5 thunderbolt-objs += usb4_port.o nvm.o retimer.o quirks.o clx.o
/Linux-v6.6/drivers/net/ethernet/intel/igb/
De1000_nvm.c22 udelay(hw->nvm.delay_usec); in igb_raise_eec_clk()
37 udelay(hw->nvm.delay_usec); in igb_lower_eec_clk()
52 struct e1000_nvm_info *nvm = &hw->nvm; in igb_shift_out_eec_bits() local
57 if (nvm->type == e1000_nvm_eeprom_spi) in igb_shift_out_eec_bits()
69 udelay(nvm->delay_usec); in igb_shift_out_eec_bits()
194 struct e1000_nvm_info *nvm = &hw->nvm; in igb_standby_nvm() local
197 if (nvm->type == e1000_nvm_eeprom_spi) { in igb_standby_nvm()
202 udelay(nvm->delay_usec); in igb_standby_nvm()
206 udelay(nvm->delay_usec); in igb_standby_nvm()
221 if (hw->nvm.type == e1000_nvm_eeprom_spi) { in e1000_stop_nvm()
[all …]
De1000_i210.c25 s32 timeout = hw->nvm.word_size + 1; in igb_get_hw_semaphore_i210()
200 if (!(hw->nvm.ops.acquire(hw))) { in igb_read_nvm_srrd_i210()
203 hw->nvm.ops.release(hw); in igb_read_nvm_srrd_i210()
230 struct e1000_nvm_info *nvm = &hw->nvm; in igb_write_nvm_srwr() local
238 if ((offset >= nvm->word_size) || (words > (nvm->word_size - offset)) || in igb_write_nvm_srwr()
300 if (!(hw->nvm.ops.acquire(hw))) { in igb_write_nvm_srwr_i210()
303 hw->nvm.ops.release(hw); in igb_write_nvm_srwr_i210()
543 if (!(hw->nvm.ops.acquire(hw))) { in igb_validate_nvm_checksum_i210()
549 read_op_ptr = hw->nvm.ops.read; in igb_validate_nvm_checksum_i210()
550 hw->nvm.ops.read = igb_read_nvm_eerd; in igb_validate_nvm_checksum_i210()
[all …]
De1000_82575.c329 struct e1000_nvm_info *nvm = &hw->nvm; in igb_init_nvm_params_82575() local
347 nvm->word_size = BIT(size); in igb_init_nvm_params_82575()
348 nvm->opcode_bits = 8; in igb_init_nvm_params_82575()
349 nvm->delay_usec = 1; in igb_init_nvm_params_82575()
351 switch (nvm->override) { in igb_init_nvm_params_82575()
353 nvm->page_size = 32; in igb_init_nvm_params_82575()
354 nvm->address_bits = 16; in igb_init_nvm_params_82575()
357 nvm->page_size = 8; in igb_init_nvm_params_82575()
358 nvm->address_bits = 8; in igb_init_nvm_params_82575()
361 nvm->page_size = eecd & E1000_EECD_ADDR_BITS ? 32 : 8; in igb_init_nvm_params_82575()
[all …]
/Linux-v6.6/drivers/net/ethernet/intel/e1000e/
Dnvm.c18 udelay(hw->nvm.delay_usec); in e1000_raise_eec_clk()
33 udelay(hw->nvm.delay_usec); in e1000_lower_eec_clk()
48 struct e1000_nvm_info *nvm = &hw->nvm; in e1000_shift_out_eec_bits() local
53 if (nvm->type == e1000_nvm_eeprom_spi) in e1000_shift_out_eec_bits()
65 udelay(nvm->delay_usec); in e1000_shift_out_eec_bits()
184 struct e1000_nvm_info *nvm = &hw->nvm; in e1000_standby_nvm() local
187 if (nvm->type == e1000_nvm_eeprom_spi) { in e1000_standby_nvm()
192 udelay(nvm->delay_usec); in e1000_standby_nvm()
196 udelay(nvm->delay_usec); in e1000_standby_nvm()
211 if (hw->nvm.type == e1000_nvm_eeprom_spi) { in e1000_stop_nvm()
[all …]
D82571.c122 struct e1000_nvm_info *nvm = &hw->nvm; in e1000_init_nvm_params_82571() local
126 nvm->opcode_bits = 8; in e1000_init_nvm_params_82571()
127 nvm->delay_usec = 1; in e1000_init_nvm_params_82571()
128 switch (nvm->override) { in e1000_init_nvm_params_82571()
130 nvm->page_size = 32; in e1000_init_nvm_params_82571()
131 nvm->address_bits = 16; in e1000_init_nvm_params_82571()
134 nvm->page_size = 8; in e1000_init_nvm_params_82571()
135 nvm->address_bits = 8; in e1000_init_nvm_params_82571()
138 nvm->page_size = eecd & E1000_EECD_ADDR_BITS ? 32 : 8; in e1000_init_nvm_params_82571()
139 nvm->address_bits = eecd & E1000_EECD_ADDR_BITS ? 16 : 8; in e1000_init_nvm_params_82571()
[all …]
Dich8lan.c600 struct e1000_nvm_info *nvm = &hw->nvm; in e1000_init_nvm_params_ich8lan() local
606 nvm->type = e1000_nvm_flash_sw; in e1000_init_nvm_params_ich8lan()
615 nvm->flash_base_addr = 0; in e1000_init_nvm_params_ich8lan()
618 nvm->flash_bank_size = nvm_size / 2; in e1000_init_nvm_params_ich8lan()
620 nvm->flash_bank_size /= sizeof(u16); in e1000_init_nvm_params_ich8lan()
640 nvm->flash_base_addr = sector_base_addr in e1000_init_nvm_params_ich8lan()
646 nvm->flash_bank_size = ((sector_end_addr - sector_base_addr) in e1000_init_nvm_params_ich8lan()
648 nvm->flash_bank_size /= 2; in e1000_init_nvm_params_ich8lan()
650 nvm->flash_bank_size /= sizeof(u16); in e1000_init_nvm_params_ich8lan()
653 nvm->word_size = E1000_ICH8_SHADOW_RAM_WORDS; in e1000_init_nvm_params_ich8lan()
[all …]
D80003es2lan.c72 struct e1000_nvm_info *nvm = &hw->nvm; in e1000_init_nvm_params_80003es2lan() local
76 nvm->opcode_bits = 8; in e1000_init_nvm_params_80003es2lan()
77 nvm->delay_usec = 1; in e1000_init_nvm_params_80003es2lan()
78 switch (nvm->override) { in e1000_init_nvm_params_80003es2lan()
80 nvm->page_size = 32; in e1000_init_nvm_params_80003es2lan()
81 nvm->address_bits = 16; in e1000_init_nvm_params_80003es2lan()
84 nvm->page_size = 8; in e1000_init_nvm_params_80003es2lan()
85 nvm->address_bits = 8; in e1000_init_nvm_params_80003es2lan()
88 nvm->page_size = eecd & E1000_EECD_ADDR_BITS ? 32 : 8; in e1000_init_nvm_params_80003es2lan()
89 nvm->address_bits = eecd & E1000_EECD_ADDR_BITS ? 16 : 8; in e1000_init_nvm_params_80003es2lan()
[all …]
De1000.h554 return hw->nvm.ops.validate(hw); in e1000_validate_nvm_checksum()
559 return hw->nvm.ops.update(hw); in e1000e_update_nvm_checksum()
565 return hw->nvm.ops.read(hw, offset, words, data); in e1000_read_nvm()
571 return hw->nvm.ops.write(hw, offset, words, data); in e1000_write_nvm()
DMakefile14 mac.o manage.o nvm.o phy.o \
/Linux-v6.6/drivers/net/ethernet/intel/igc/
Digc_i225.c42 s32 timeout = hw->nvm.word_size + 1; in igc_get_hw_semaphore_i225()
200 status = hw->nvm.ops.acquire(hw); in igc_read_nvm_srrd_i225()
205 hw->nvm.ops.release(hw); in igc_read_nvm_srrd_i225()
228 struct igc_nvm_info *nvm = &hw->nvm; in igc_write_nvm_srwr() local
236 if (offset >= nvm->word_size || (words > (nvm->word_size - offset)) || in igc_write_nvm_srwr()
298 status = hw->nvm.ops.acquire(hw); in igc_write_nvm_srwr_i225()
303 hw->nvm.ops.release(hw); in igc_write_nvm_srwr_i225()
324 status = hw->nvm.ops.acquire(hw); in igc_validate_nvm_checksum_i225()
332 read_op_ptr = hw->nvm.ops.read; in igc_validate_nvm_checksum_i225()
333 hw->nvm.ops.read = igc_read_nvm_eerd; in igc_validate_nvm_checksum_i225()
[all …]
Digc_base.c67 struct igc_nvm_info *nvm = &hw->nvm; in igc_init_nvm_params_base() local
85 nvm->type = igc_nvm_eeprom_spi; in igc_init_nvm_params_base()
86 nvm->word_size = BIT(size); in igc_init_nvm_params_base()
87 nvm->opcode_bits = 8; in igc_init_nvm_params_base()
88 nvm->delay_usec = 1; in igc_init_nvm_params_base()
90 nvm->page_size = eecd & IGC_EECD_ADDR_BITS ? 32 : 8; in igc_init_nvm_params_base()
91 nvm->address_bits = eecd & IGC_EECD_ADDR_BITS ? in igc_init_nvm_params_base()
94 if (nvm->word_size == BIT(15)) in igc_init_nvm_params_base()
95 nvm->page_size = 128; in igc_init_nvm_params_base()
Digc_nvm.c99 struct igc_nvm_info *nvm = &hw->nvm; in igc_read_nvm_eerd() local
106 if (offset >= nvm->word_size || (words > (nvm->word_size - offset)) || in igc_read_nvm_eerd()
168 ret_val = hw->nvm.ops.read(hw, i, 1, &nvm_data); in igc_validate_nvm_checksum()
201 ret_val = hw->nvm.ops.read(hw, i, 1, &nvm_data); in igc_update_nvm_checksum()
209 ret_val = hw->nvm.ops.write(hw, NVM_CHECKSUM_REG, 1, &checksum); in igc_update_nvm_checksum()
/Linux-v6.6/drivers/media/i2c/
Dov2740.c346 struct nvm_data *nvm; member
651 static int ov2740_load_otp_data(struct nvm_data *nvm) in ov2740_load_otp_data() argument
653 struct device *dev = regmap_get_device(nvm->regmap); in ov2740_load_otp_data()
659 if (nvm->nvm_buffer) in ov2740_load_otp_data()
662 nvm->nvm_buffer = kzalloc(CUSTOMER_USE_OTP_SIZE, GFP_KERNEL); in ov2740_load_otp_data()
663 if (!nvm->nvm_buffer) in ov2740_load_otp_data()
707 ret = regmap_bulk_read(nvm->regmap, OV2740_REG_OTP_CUSTOMER, in ov2740_load_otp_data()
708 nvm->nvm_buffer, CUSTOMER_USE_OTP_SIZE); in ov2740_load_otp_data()
735 kfree(nvm->nvm_buffer); in ov2740_load_otp_data()
736 nvm->nvm_buffer = NULL; in ov2740_load_otp_data()
[all …]
/Linux-v6.6/drivers/net/ethernet/intel/i40e/
Di40e_nvm.c18 struct i40e_nvm_info *nvm = &hw->nvm; in i40e_init_nvm() local
30 nvm->sr_size = BIT(sr_size) * I40E_SR_WORDS_IN_1KB; in i40e_init_nvm()
36 nvm->timeout = I40E_MAX_NVM_TIMEOUT; in i40e_init_nvm()
37 nvm->blank_nvm_mode = false; in i40e_init_nvm()
39 nvm->blank_nvm_mode = true; in i40e_init_nvm()
62 if (hw->nvm.blank_nvm_mode) in i40e_acquire_nvm()
71 hw->nvm.hw_semaphore_timeout = I40E_MS_TO_GTIME(time_left) + gtime; in i40e_acquire_nvm()
89 hw->nvm.hw_semaphore_timeout = in i40e_acquire_nvm()
95 hw->nvm.hw_semaphore_timeout = 0; in i40e_acquire_nvm()
117 if (hw->nvm.blank_nvm_mode) in i40e_release_nvm()
[all …]
/Linux-v6.6/drivers/net/wireless/intel/iwlwifi/
Diwl-nvm-parse.c1963 struct iwl_nvm_data *nvm; in iwl_get_nvm() local
2004 nvm = kzalloc(struct_size(nvm, channels, IWL_NUM_CHANNELS), GFP_KERNEL); in iwl_get_nvm()
2005 if (!nvm) { in iwl_get_nvm()
2010 iwl_set_hw_address_from_csr(trans, nvm); in iwl_get_nvm()
2013 if (!is_valid_ether_addr(nvm->hw_addr)) { in iwl_get_nvm()
2019 IWL_INFO(trans, "base HW address: %pM\n", nvm->hw_addr); in iwl_get_nvm()
2022 nvm->nvm_version = le16_to_cpu(rsp->general.nvm_version); in iwl_get_nvm()
2023 nvm->n_hw_addrs = rsp->general.n_hw_addrs; in iwl_get_nvm()
2024 if (nvm->n_hw_addrs == 0) in iwl_get_nvm()
2031 nvm->sku_cap_11ac_enable = in iwl_get_nvm()
[all …]
/Linux-v6.6/drivers/net/ethernet/intel/ice/
Dice_nvm.c29 cmd = &desc.params.nvm; in ice_aq_read_nvm()
132 cmd = &desc.params.nvm; in ice_aq_update_nvm()
168 cmd = &desc.params.nvm; in ice_aq_erase_nvm()
563 ice_get_nvm_ver_info(struct ice_hw *hw, enum ice_bank_select bank, struct ice_nvm_info *nvm) in ice_get_nvm_ver_info() argument
574 nvm->major = (ver & ICE_NVM_VER_HI_MASK) >> ICE_NVM_VER_HI_SHIFT; in ice_get_nvm_ver_info()
575 nvm->minor = (ver & ICE_NVM_VER_LO_MASK) >> ICE_NVM_VER_LO_SHIFT; in ice_get_nvm_ver_info()
588 nvm->eetrack = (eetrack_hi << 16) | eetrack_lo; in ice_get_nvm_ver_info()
602 int ice_get_inactive_nvm_ver(struct ice_hw *hw, struct ice_nvm_info *nvm) in ice_get_inactive_nvm_ver() argument
604 return ice_get_nvm_ver_info(hw, ICE_INACTIVE_FLASH_BANK, nvm); in ice_get_inactive_nvm_ver()
1058 status = ice_get_nvm_ver_info(hw, ICE_ACTIVE_FLASH_BANK, &flash->nvm); in ice_init_nvm()
[all …]
Dice_devlink.c100 struct ice_nvm_info *nvm = &pf->hw.flash.nvm; in ice_info_nvm_ver() local
102 snprintf(ctx->buf, sizeof(ctx->buf), "%x.%02x", nvm->major, nvm->minor); in ice_info_nvm_ver()
109 struct ice_nvm_info *nvm = &ctx->pending_nvm; in ice_info_pending_nvm_ver() local
113 nvm->major, nvm->minor); in ice_info_pending_nvm_ver()
118 struct ice_nvm_info *nvm = &pf->hw.flash.nvm; in ice_info_eetrack() local
120 snprintf(ctx->buf, sizeof(ctx->buf), "0x%08x", nvm->eetrack); in ice_info_eetrack()
126 struct ice_nvm_info *nvm = &ctx->pending_nvm; in ice_info_pending_eetrack() local
129 snprintf(ctx->buf, sizeof(ctx->buf), "0x%08x", nvm->eetrack); in ice_info_pending_eetrack()
Dice_fw_update.c332 completion_module = le16_to_cpu(desc->params.nvm.module_typeid); in ice_write_one_nvm_block()
335 completion_offset = le16_to_cpu(desc->params.nvm.offset_low); in ice_write_one_nvm_block()
336 completion_offset |= desc->params.nvm.offset_high << 16; in ice_write_one_nvm_block()
368 *reset_level = desc->params.nvm.cmd_flags & in ice_write_one_nvm_block()
517 completion_module = le16_to_cpu(desc->params.nvm.module_typeid); in ice_erase_nvm_module()
/Linux-v6.6/drivers/net/wireless/intel/iwlwifi/mei/
Dmain.c176 struct iwl_mei_nvm *nvm; member
860 kfree(mei->nvm); in iwl_mei_handle_nvm()
861 mei->nvm = kzalloc(sizeof(*mei_nvm), GFP_KERNEL); in iwl_mei_handle_nvm()
862 if (!mei->nvm) in iwl_mei_handle_nvm()
865 ether_addr_copy(mei->nvm->hw_addr, sap_nvm->hw_addr); in iwl_mei_handle_nvm()
866 mei->nvm->n_hw_addrs = sap_nvm->n_hw_addrs; in iwl_mei_handle_nvm()
867 mei->nvm->radio_cfg = le32_to_cpu(sap_nvm->radio_cfg); in iwl_mei_handle_nvm()
868 mei->nvm->caps = le32_to_cpu(sap_nvm->caps); in iwl_mei_handle_nvm()
869 mei->nvm->nvm_version = le32_to_cpu(sap_nvm->nvm_version); in iwl_mei_handle_nvm()
871 for (i = 0; i < ARRAY_SIZE(mei->nvm->channels); i++) in iwl_mei_handle_nvm()
[all …]
/Linux-v6.6/Documentation/networking/devlink/
Dice.rst204 * - ``nvm-flash``
216 Both the ``nvm-flash`` and ``shadow-ram`` regions can be accessed without a
226 pci/0000:01:00.0/nvm-flash: size 10485760 snapshot [] max 1
229 $ devlink region new pci/0000:01:00.0/nvm-flash snapshot 1
230 $ devlink region dump pci/0000:01:00.0/nvm-flash snapshot 1
232 $ devlink region dump pci/0000:01:00.0/nvm-flash snapshot 1
238 $ devlink region read pci/0000:01:00.0/nvm-flash snapshot 1 address 0 length 16
241 $ devlink region delete pci/0000:01:00.0/nvm-flash snapshot 1

123