Home
last modified time | relevance | path

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

123

/openbmc/linux/drivers/thunderbolt/
H A 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 …]
H A 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 …]
H A 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 …]
H A Dtb.h191 struct tb_nvm *nvm; member
331 struct tb_nvm *nvm; member
769 int tb_nvm_read_version(struct tb_nvm *nvm);
770 int tb_nvm_validate(struct tb_nvm *nvm);
771 int tb_nvm_write_headers(struct tb_nvm *nvm);
772 int tb_nvm_add_active(struct tb_nvm *nvm, nvmem_reg_read_t reg_read);
773 int tb_nvm_write_buf(struct tb_nvm *nvm, unsigned int offset, void *val,
775 int tb_nvm_add_non_active(struct tb_nvm *nvm, nvmem_reg_write_t reg_write);
776 void tb_nvm_free(struct tb_nvm *nvm);
/openbmc/linux/drivers/net/ethernet/intel/igb/
H A 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 …]
H A 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()
544 if (!(hw->nvm.ops.acquire(hw))) { in igb_validate_nvm_checksum_i210()
550 read_op_ptr = hw->nvm.ops.read; in igb_validate_nvm_checksum_i210()
551 hw->nvm.ops.read = igb_read_nvm_eerd; in igb_validate_nvm_checksum_i210()
[all …]
H A De1000_82575.c328 struct e1000_nvm_info *nvm = &hw->nvm; in igb_init_nvm_params_82575() local
345 nvm->word_size = BIT(size); in igb_init_nvm_params_82575()
346 nvm->opcode_bits = 8; in igb_init_nvm_params_82575()
347 nvm->delay_usec = 1; in igb_init_nvm_params_82575()
349 switch (nvm->override) { in igb_init_nvm_params_82575()
351 nvm->page_size = 32; in igb_init_nvm_params_82575()
352 nvm->address_bits = 16; in igb_init_nvm_params_82575()
355 nvm->page_size = 8; in igb_init_nvm_params_82575()
356 nvm->address_bits = 8; in igb_init_nvm_params_82575()
359 nvm->page_size = eecd & E1000_EECD_ADDR_BITS ? 32 : 8; in igb_init_nvm_params_82575()
[all …]
/openbmc/linux/drivers/net/ethernet/intel/e1000e/
H A 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 …]
H A 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 …]
H A Dich8lan.c619 struct e1000_nvm_info *nvm = &hw->nvm; in e1000_init_nvm_params_ich8lan() local
625 nvm->type = e1000_nvm_flash_sw; in e1000_init_nvm_params_ich8lan()
634 nvm->flash_base_addr = 0; in e1000_init_nvm_params_ich8lan()
637 nvm->flash_bank_size = nvm_size / 2; in e1000_init_nvm_params_ich8lan()
639 nvm->flash_bank_size /= sizeof(u16); in e1000_init_nvm_params_ich8lan()
659 nvm->flash_base_addr = sector_base_addr in e1000_init_nvm_params_ich8lan()
665 nvm->flash_bank_size = ((sector_end_addr - sector_base_addr) in e1000_init_nvm_params_ich8lan()
667 nvm->flash_bank_size /= 2; in e1000_init_nvm_params_ich8lan()
669 nvm->flash_bank_size /= sizeof(u16); in e1000_init_nvm_params_ich8lan()
672 nvm->word_size = E1000_ICH8_SHADOW_RAM_WORDS; in e1000_init_nvm_params_ich8lan()
[all …]
H A 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 …]
H A De1000.h574 return hw->nvm.ops.validate(hw); in e1000_validate_nvm_checksum()
579 return hw->nvm.ops.update(hw); in e1000e_update_nvm_checksum()
585 return hw->nvm.ops.read(hw, offset, words, data); in e1000_read_nvm()
591 return hw->nvm.ops.write(hw, offset, words, data); in e1000_write_nvm()
/openbmc/linux/drivers/net/ethernet/intel/igc/
H A Digc_i225.c43 s32 timeout = hw->nvm.word_size + 1; in igc_get_hw_semaphore_i225()
201 status = hw->nvm.ops.acquire(hw); in igc_read_nvm_srrd_i225()
206 hw->nvm.ops.release(hw); in igc_read_nvm_srrd_i225()
229 struct igc_nvm_info *nvm = &hw->nvm; in igc_write_nvm_srwr() local
237 if (offset >= nvm->word_size || (words > (nvm->word_size - offset)) || in igc_write_nvm_srwr()
299 status = hw->nvm.ops.acquire(hw); in igc_write_nvm_srwr_i225()
304 hw->nvm.ops.release(hw); in igc_write_nvm_srwr_i225()
325 status = hw->nvm.ops.acquire(hw); in igc_validate_nvm_checksum_i225()
333 read_op_ptr = hw->nvm.ops.read; in igc_validate_nvm_checksum_i225()
334 hw->nvm.ops.read = igc_read_nvm_eerd; in igc_validate_nvm_checksum_i225()
[all …]
H A Digc_base.c67 struct igc_nvm_info *nvm = &hw->nvm; in igc_init_nvm_params_base() local
88 nvm->type = igc_nvm_eeprom_spi; in igc_init_nvm_params_base()
89 nvm->word_size = BIT(size); in igc_init_nvm_params_base()
90 nvm->opcode_bits = 8; in igc_init_nvm_params_base()
91 nvm->delay_usec = 1; in igc_init_nvm_params_base()
93 nvm->page_size = eecd & IGC_EECD_ADDR_BITS ? 32 : 8; in igc_init_nvm_params_base()
94 nvm->address_bits = eecd & IGC_EECD_ADDR_BITS ? in igc_init_nvm_params_base()
97 if (nvm->word_size == BIT(15)) in igc_init_nvm_params_base()
98 nvm->page_size = 128; in igc_init_nvm_params_base()
H A 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()
/openbmc/linux/drivers/media/i2c/
H A 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 …]
/openbmc/qemu/hw/arm/
H A Dnrf51_soc.c122 if (!object_property_set_uint(OBJECT(&s->nvm), "flash-size", in nrf51_soc_realize()
127 if (!sysbus_realize(SYS_BUS_DEVICE(&s->nvm), errp)) { in nrf51_soc_realize()
131 mr = sysbus_mmio_get_region(SYS_BUS_DEVICE(&s->nvm), 0); in nrf51_soc_realize()
133 mr = sysbus_mmio_get_region(SYS_BUS_DEVICE(&s->nvm), 1); in nrf51_soc_realize()
135 mr = sysbus_mmio_get_region(SYS_BUS_DEVICE(&s->nvm), 2); in nrf51_soc_realize()
137 mr = sysbus_mmio_get_region(SYS_BUS_DEVICE(&s->nvm), 3); in nrf51_soc_realize()
198 object_initialize_child(obj, "nvm", &s->nvm, TYPE_NRF51_NVM); in nrf51_soc_init()
H A Dmsf2-soc.c117 memory_region_init_rom(&s->nvm, OBJECT(dev_soc), "MSF2.eNVM", s->envm_size, in m2sxxx_soc_realize()
126 &s->nvm, 0, s->envm_size); in m2sxxx_soc_realize()
128 memory_region_add_subregion(system_memory, ENVM_BASE_ADDRESS, &s->nvm); in m2sxxx_soc_realize()
/openbmc/linux/drivers/net/ethernet/intel/i40e/
H A Di40e_nvm.c21 struct i40e_nvm_info *nvm = &hw->nvm; in i40e_init_nvm() local
33 nvm->sr_size = BIT(sr_size) * I40E_SR_WORDS_IN_1KB; in i40e_init_nvm()
39 nvm->timeout = I40E_MAX_NVM_TIMEOUT; in i40e_init_nvm()
40 nvm->blank_nvm_mode = false; in i40e_init_nvm()
42 nvm->blank_nvm_mode = true; in i40e_init_nvm()
65 if (hw->nvm.blank_nvm_mode) in i40e_acquire_nvm()
74 hw->nvm.hw_semaphore_timeout = I40E_MS_TO_GTIME(time_left) + gtime; in i40e_acquire_nvm()
92 hw->nvm.hw_semaphore_timeout = in i40e_acquire_nvm()
98 hw->nvm.hw_semaphore_timeout = 0; in i40e_acquire_nvm()
120 if (hw->nvm.blank_nvm_mode) in i40e_release_nvm()
[all …]
/openbmc/linux/drivers/net/wireless/intel/iwlwifi/
H A Diwl-nvm-parse.c1961 struct iwl_nvm_data *nvm; in iwl_get_nvm() local
2002 nvm = kzalloc(struct_size(nvm, channels, IWL_NUM_CHANNELS), GFP_KERNEL); in iwl_get_nvm()
2003 if (!nvm) { in iwl_get_nvm()
2008 iwl_set_hw_address_from_csr(trans, nvm); in iwl_get_nvm()
2011 if (!is_valid_ether_addr(nvm->hw_addr)) { in iwl_get_nvm()
2017 IWL_INFO(trans, "base HW address: %pM\n", nvm->hw_addr); in iwl_get_nvm()
2020 nvm->nvm_version = le16_to_cpu(rsp->general.nvm_version); in iwl_get_nvm()
2021 nvm->n_hw_addrs = rsp->general.n_hw_addrs; in iwl_get_nvm()
2022 if (nvm->n_hw_addrs == 0) in iwl_get_nvm()
2029 nvm->sku_cap_11ac_enable = in iwl_get_nvm()
[all …]
/openbmc/qemu/docs/system/devices/
H A Dnvme.rst34 -drive file=nvm.img,if=none,id=nvm
35 -device nvme,serial=deadbeef,drive=nvm
66 -drive file=nvm-1.img,if=none,id=nvm-1
67 -device nvme-ns,drive=nvm-1
68 -drive file=nvm-2.img,if=none,id=nvm-2
69 -device nvme-ns,drive=nvm-2
136 -drive file=nvm-1.img,if=none,id=nvm-1
137 -device nvme-ns,drive=nvm-1,nsid=1
138 -drive file=nvm-2.img,if=none,id=nvm-2
139 -device nvme-ns,drive=nvm-2,nsid=3,shared=off,detached=on
[all …]
/openbmc/linux/drivers/net/ethernet/intel/ice/
H A 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()
577 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
588 nvm->major = (ver & ICE_NVM_VER_HI_MASK) >> ICE_NVM_VER_HI_SHIFT; in ice_get_nvm_ver_info()
589 nvm->minor = (ver & ICE_NVM_VER_LO_MASK) >> ICE_NVM_VER_LO_SHIFT; in ice_get_nvm_ver_info()
602 nvm->eetrack = (eetrack_hi << 16) | eetrack_lo; in ice_get_nvm_ver_info()
616 int ice_get_inactive_nvm_ver(struct ice_hw *hw, struct ice_nvm_info *nvm) in ice_get_inactive_nvm_ver() argument
618 return ice_get_nvm_ver_info(hw, ICE_INACTIVE_FLASH_BANK, nvm); in ice_get_inactive_nvm_ver()
1072 status = ice_get_nvm_ver_info(hw, ICE_ACTIVE_FLASH_BANK, &flash->nvm); in ice_init_nvm()
[all …]
H A 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()
/openbmc/linux/drivers/net/wireless/intel/iwlwifi/mei/
H A 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 …]
/openbmc/linux/Documentation/networking/devlink/
H A 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