Home
last modified time | relevance | path

Searched refs:eeprom (Results 1 – 25 of 525) sorted by relevance

12345678910>>...21

/Linux-v5.4/drivers/misc/eeprom/
Deeprom_93cx6.c21 static inline void eeprom_93cx6_pulse_high(struct eeprom_93cx6 *eeprom) in eeprom_93cx6_pulse_high() argument
23 eeprom->reg_data_clock = 1; in eeprom_93cx6_pulse_high()
24 eeprom->register_write(eeprom); in eeprom_93cx6_pulse_high()
34 static inline void eeprom_93cx6_pulse_low(struct eeprom_93cx6 *eeprom) in eeprom_93cx6_pulse_low() argument
36 eeprom->reg_data_clock = 0; in eeprom_93cx6_pulse_low()
37 eeprom->register_write(eeprom); in eeprom_93cx6_pulse_low()
47 static void eeprom_93cx6_startup(struct eeprom_93cx6 *eeprom) in eeprom_93cx6_startup() argument
52 eeprom->register_read(eeprom); in eeprom_93cx6_startup()
53 eeprom->reg_data_in = 0; in eeprom_93cx6_startup()
54 eeprom->reg_data_out = 0; in eeprom_93cx6_startup()
[all …]
/Linux-v5.4/drivers/i2c/
Di2c-slave-eeprom.c48 struct eeprom_data *eeprom = i2c_get_clientdata(client); in i2c_slave_eeprom_slave_cb() local
52 if (eeprom->idx_write_cnt < eeprom->num_address_bytes) { in i2c_slave_eeprom_slave_cb()
53 if (eeprom->idx_write_cnt == 0) in i2c_slave_eeprom_slave_cb()
54 eeprom->buffer_idx = 0; in i2c_slave_eeprom_slave_cb()
55 eeprom->buffer_idx = *val | (eeprom->buffer_idx << 8); in i2c_slave_eeprom_slave_cb()
56 eeprom->idx_write_cnt++; in i2c_slave_eeprom_slave_cb()
58 if (!eeprom->read_only) { in i2c_slave_eeprom_slave_cb()
59 spin_lock(&eeprom->buffer_lock); in i2c_slave_eeprom_slave_cb()
60 eeprom->buffer[eeprom->buffer_idx++ & eeprom->address_mask] = *val; in i2c_slave_eeprom_slave_cb()
61 spin_unlock(&eeprom->buffer_lock); in i2c_slave_eeprom_slave_cb()
[all …]
/Linux-v5.4/drivers/nvmem/
Dlpc18xx_eeprom.c54 static inline void lpc18xx_eeprom_writel(struct lpc18xx_eeprom_dev *eeprom, in lpc18xx_eeprom_writel() argument
57 writel(val, eeprom->reg_base + reg); in lpc18xx_eeprom_writel()
60 static inline u32 lpc18xx_eeprom_readl(struct lpc18xx_eeprom_dev *eeprom, in lpc18xx_eeprom_readl() argument
63 return readl(eeprom->reg_base + reg); in lpc18xx_eeprom_readl()
66 static int lpc18xx_eeprom_busywait_until_prog(struct lpc18xx_eeprom_dev *eeprom) in lpc18xx_eeprom_busywait_until_prog() argument
75 val = lpc18xx_eeprom_readl(eeprom, LPC18XX_EEPROM_INTSTAT); in lpc18xx_eeprom_busywait_until_prog()
78 lpc18xx_eeprom_writel(eeprom, LPC18XX_EEPROM_INTSTATCLR, in lpc18xx_eeprom_busywait_until_prog()
93 struct lpc18xx_eeprom_dev *eeprom = context; in lpc18xx_eeprom_gather_write() local
101 if ((reg > eeprom->size - LPC18XX_EEPROM_PAGE_SIZE) || in lpc18xx_eeprom_gather_write()
102 (reg + bytes > eeprom->size - LPC18XX_EEPROM_PAGE_SIZE)) in lpc18xx_eeprom_gather_write()
[all …]
Drave-sp-eeprom.c90 static int rave_sp_eeprom_io(struct rave_sp_eeprom *eeprom, in rave_sp_eeprom_io() argument
97 const unsigned int cmd_size = eeprom->header_size + data_size; in rave_sp_eeprom_io()
107 cmd[offset++] = eeprom->address; in rave_sp_eeprom_io()
117 if (offset < eeprom->header_size) in rave_sp_eeprom_io()
126 ret = rave_sp_exec(eeprom->sp, cmd, cmd_size, page, rsp_size); in rave_sp_eeprom_io()
156 rave_sp_eeprom_page_access(struct rave_sp_eeprom *eeprom, in rave_sp_eeprom_page_access() argument
181 ret = rave_sp_eeprom_io(eeprom, RAVE_SP_EEPROM_READ, in rave_sp_eeprom_page_access()
190 ret = rave_sp_eeprom_io(eeprom, type, page_nr, &page); in rave_sp_eeprom_page_access()
220 static int rave_sp_eeprom_access(struct rave_sp_eeprom *eeprom, in rave_sp_eeprom_access() argument
230 mutex_lock(&eeprom->mutex); in rave_sp_eeprom_access()
[all …]
Dnvmem-sysfs.c229 nvmem->eeprom = bin_attr_ro_root_nvmem; in nvmem_sysfs_setup_compat()
231 nvmem->eeprom = bin_attr_ro_nvmem; in nvmem_sysfs_setup_compat()
234 nvmem->eeprom = bin_attr_rw_root_nvmem; in nvmem_sysfs_setup_compat()
236 nvmem->eeprom = bin_attr_rw_nvmem; in nvmem_sysfs_setup_compat()
238 nvmem->eeprom.attr.name = "eeprom"; in nvmem_sysfs_setup_compat()
239 nvmem->eeprom.size = nvmem->size; in nvmem_sysfs_setup_compat()
241 nvmem->eeprom.attr.key = &eeprom_lock_key; in nvmem_sysfs_setup_compat()
243 nvmem->eeprom.private = &nvmem->dev; in nvmem_sysfs_setup_compat()
246 rval = device_create_bin_file(nvmem->base_dev, &nvmem->eeprom); in nvmem_sysfs_setup_compat()
262 device_remove_bin_file(nvmem->base_dev, &nvmem->eeprom); in nvmem_sysfs_remove_compat()
/Linux-v5.4/drivers/net/wireless/mediatek/mt7601u/
Deeprom.c98 mt7601u_has_tssi(struct mt7601u_dev *dev, u8 *eeprom) in mt7601u_has_tssi() argument
100 u16 nic_conf1 = get_unaligned_le16(eeprom + MT_EE_NIC_CONF_1); in mt7601u_has_tssi()
106 mt7601u_set_chip_cap(struct mt7601u_dev *dev, u8 *eeprom) in mt7601u_set_chip_cap() argument
108 u16 nic_conf0 = get_unaligned_le16(eeprom + MT_EE_NIC_CONF_0); in mt7601u_set_chip_cap()
109 u16 nic_conf1 = get_unaligned_le16(eeprom + MT_EE_NIC_CONF_1); in mt7601u_set_chip_cap()
114 dev->ee->tssi_enabled = mt7601u_has_tssi(dev, eeprom) && in mt7601u_set_chip_cap()
131 u8 *eeprom, u8 max_pwr) in mt7601u_set_channel_target_power() argument
133 u8 trgt_pwr = eeprom[MT_EE_TX_TSSI_TARGET_POWER]; in mt7601u_set_channel_target_power()
145 mt7601u_set_channel_power(struct mt7601u_dev *dev, u8 *eeprom) in mt7601u_set_channel_power() argument
153 if (mt7601u_has_tssi(dev, eeprom)) { in mt7601u_set_channel_power()
[all …]
/Linux-v5.4/drivers/net/wireless/ralink/rt2x00/
Drt2800pci.c79 static void rt2800pci_eepromregister_read(struct eeprom_93cx6 *eeprom) in rt2800pci_eepromregister_read() argument
81 struct rt2x00_dev *rt2x00dev = eeprom->data; in rt2800pci_eepromregister_read()
86 eeprom->reg_data_in = !!rt2x00_get_field32(reg, E2PROM_CSR_DATA_IN); in rt2800pci_eepromregister_read()
87 eeprom->reg_data_out = !!rt2x00_get_field32(reg, E2PROM_CSR_DATA_OUT); in rt2800pci_eepromregister_read()
88 eeprom->reg_data_clock = in rt2800pci_eepromregister_read()
90 eeprom->reg_chip_select = in rt2800pci_eepromregister_read()
94 static void rt2800pci_eepromregister_write(struct eeprom_93cx6 *eeprom) in rt2800pci_eepromregister_write() argument
96 struct rt2x00_dev *rt2x00dev = eeprom->data; in rt2800pci_eepromregister_write()
99 rt2x00_set_field32(&reg, E2PROM_CSR_DATA_IN, !!eeprom->reg_data_in); in rt2800pci_eepromregister_write()
100 rt2x00_set_field32(&reg, E2PROM_CSR_DATA_OUT, !!eeprom->reg_data_out); in rt2800pci_eepromregister_write()
[all …]
/Linux-v5.4/include/linux/
Deeprom_93cx6.h49 void (*register_read)(struct eeprom_93cx6 *eeprom);
50 void (*register_write)(struct eeprom_93cx6 *eeprom);
61 extern void eeprom_93cx6_read(struct eeprom_93cx6 *eeprom,
63 extern void eeprom_93cx6_multiread(struct eeprom_93cx6 *eeprom,
65 extern void eeprom_93cx6_readb(struct eeprom_93cx6 *eeprom,
67 extern void eeprom_93cx6_multireadb(struct eeprom_93cx6 *eeprom,
70 extern void eeprom_93cx6_wren(struct eeprom_93cx6 *eeprom, bool enable);
72 extern void eeprom_93cx6_write(struct eeprom_93cx6 *eeprom,
/Linux-v5.4/drivers/media/usb/pvrusb2/
Dpvrusb2-eeprom.c34 u8 *eeprom; in pvr2_eeprom_fetch() local
42 eeprom = kzalloc(EEPROM_SIZE, GFP_KERNEL); in pvr2_eeprom_fetch()
43 if (!eeprom) { in pvr2_eeprom_fetch()
88 msg[1].buf = eeprom+tcnt; in pvr2_eeprom_fetch()
93 kfree(eeprom); in pvr2_eeprom_fetch()
97 return eeprom; in pvr2_eeprom_fetch()
104 u8 *eeprom; in pvr2_eeprom_analyze() local
109 eeprom = pvr2_eeprom_fetch(hdw); in pvr2_eeprom_analyze()
110 if (!eeprom) in pvr2_eeprom_analyze()
113 tveeprom_hauppauge_analog(&tvdata, eeprom); in pvr2_eeprom_analyze()
[all …]
/Linux-v5.4/arch/mips/txx9/generic/
Dspi_eeprom.c32 struct spi_eeprom *eeprom; in spi_eeprom_register() local
33 eeprom = kzalloc(sizeof(*eeprom), GFP_KERNEL); in spi_eeprom_register()
34 if (!eeprom) in spi_eeprom_register()
36 strcpy(eeprom->name, "at250x0"); in spi_eeprom_register()
37 eeprom->byte_len = size; in spi_eeprom_register()
38 eeprom->page_size = AT250X0_PAGE_SIZE; in spi_eeprom_register()
39 eeprom->flags = EE_ADDR1; in spi_eeprom_register()
40 info.platform_data = eeprom; in spi_eeprom_register()
/Linux-v5.4/drivers/net/wireless/intel/iwlwifi/
Diwl-eeprom-parse.c203 static u16 iwl_eeprom_query16(const u8 *eeprom, size_t eeprom_size, int offset) in iwl_eeprom_query16() argument
207 return le16_to_cpup((__le16 *)(eeprom + offset)); in iwl_eeprom_query16()
210 static u32 eeprom_indirect_address(const u8 *eeprom, size_t eeprom_size, in eeprom_indirect_address() argument
220 offset = iwl_eeprom_query16(eeprom, eeprom_size, in eeprom_indirect_address()
224 offset = iwl_eeprom_query16(eeprom, eeprom_size, in eeprom_indirect_address()
228 offset = iwl_eeprom_query16(eeprom, eeprom_size, in eeprom_indirect_address()
232 offset = iwl_eeprom_query16(eeprom, eeprom_size, in eeprom_indirect_address()
236 offset = iwl_eeprom_query16(eeprom, eeprom_size, in eeprom_indirect_address()
240 offset = iwl_eeprom_query16(eeprom, eeprom_size, in eeprom_indirect_address()
244 offset = iwl_eeprom_query16(eeprom, eeprom_size, in eeprom_indirect_address()
[all …]
/Linux-v5.4/drivers/net/ethernet/intel/ixgb/
Dixgb_ethtool.c350 struct ethtool_eeprom *eeprom, u8 *bytes) in ixgb_get_eeprom() argument
358 if (eeprom->len == 0) { in ixgb_get_eeprom()
363 eeprom->magic = hw->vendor_id | (hw->device_id << 16); in ixgb_get_eeprom()
367 if (eeprom->offset > eeprom->offset + eeprom->len) { in ixgb_get_eeprom()
372 if ((eeprom->offset + eeprom->len) > max_len) in ixgb_get_eeprom()
373 eeprom->len = (max_len - eeprom->offset); in ixgb_get_eeprom()
375 first_word = eeprom->offset >> 1; in ixgb_get_eeprom()
376 last_word = (eeprom->offset + eeprom->len - 1) >> 1; in ixgb_get_eeprom()
388 memcpy(bytes, (u8 *)eeprom_buff + (eeprom->offset & 1), eeprom->len); in ixgb_get_eeprom()
397 struct ethtool_eeprom *eeprom, u8 *bytes) in ixgb_set_eeprom() argument
[all …]
/Linux-v5.4/drivers/net/ethernet/atheros/atl1e/
Datl1e_ethtool.c205 struct ethtool_eeprom *eeprom, u8 *bytes) in atl1e_get_eeprom() argument
214 if (eeprom->len == 0) in atl1e_get_eeprom()
220 eeprom->magic = hw->vendor_id | (hw->device_id << 16); in atl1e_get_eeprom()
222 first_dword = eeprom->offset >> 2; in atl1e_get_eeprom()
223 last_dword = (eeprom->offset + eeprom->len - 1) >> 2; in atl1e_get_eeprom()
237 memcpy(bytes, (u8 *)eeprom_buff + (eeprom->offset & 3), in atl1e_get_eeprom()
238 eeprom->len); in atl1e_get_eeprom()
245 struct ethtool_eeprom *eeprom, u8 *bytes) in atl1e_set_eeprom() argument
255 if (eeprom->len == 0) in atl1e_set_eeprom()
258 if (eeprom->magic != (hw->vendor_id | (hw->device_id << 16))) in atl1e_set_eeprom()
[all …]
/Linux-v5.4/drivers/net/wireless/marvell/libertas/
Dethtool.c39 struct ethtool_eeprom *eeprom, u8 * bytes) in lbs_ethtool_get_eeprom() argument
45 if (eeprom->offset + eeprom->len > LBS_EEPROM_LEN || in lbs_ethtool_get_eeprom()
46 eeprom->len > LBS_EEPROM_READ_LEN) { in lbs_ethtool_get_eeprom()
52 LBS_EEPROM_READ_LEN + eeprom->len); in lbs_ethtool_get_eeprom()
54 cmd.offset = cpu_to_le16(eeprom->offset); in lbs_ethtool_get_eeprom()
55 cmd.len = cpu_to_le16(eeprom->len); in lbs_ethtool_get_eeprom()
58 memcpy(bytes, cmd.value, eeprom->len); in lbs_ethtool_get_eeprom()
/Linux-v5.4/drivers/net/wireless/mediatek/mt76/mt7615/
Deeprom.c83 u16 val = get_unaligned_le16(dev->eeprom.data); in mt7615_check_eeprom()
95 u8 val, *eeprom = dev->mt76.eeprom.data; in mt7615_eeprom_parse_hw_cap() local
98 eeprom[MT_EE_WIFI_CONF]); in mt7615_eeprom_parse_hw_cap()
175 u8 *eeprom = dev->mt76.eeprom.data; in mt7615_apply_cal_free_data() local
187 eeprom[ical[i]] = otp[ical[i]]; in mt7615_apply_cal_free_data()
190 eeprom[ical_nocheck[i]] = otp[ical_nocheck[i]]; in mt7615_apply_cal_free_data()
203 memcpy(dev->mt76.eeprom.data, dev->mt76.otp.data, in mt7615_eeprom_init()
209 memcpy(dev->mt76.macaddr, dev->mt76.eeprom.data + MT_EE_MAC_ADDR, in mt7615_eeprom_init()
/Linux-v5.4/Documentation/devicetree/bindings/nvmem/
Dlpc1857-eeprom.txt4 - compatible: Should be "nxp,lpc1857-eeprom"
12 - eeprom: EEPROM operating clock.
19 eeprom: eeprom@4000e000 {
20 compatible = "nxp,lpc1857-eeprom";
25 clock-names = "eeprom";
Dzii,rave-sp-eeprom.txt11 - compatible: Should be "zii,rave-sp-eeprom"
15 - zii,eeprom-name: Unique EEPROM identifier describing its function in the
29 eeprom@a4 {
30 compatible = "zii,rave-sp-eeprom";
34 zii,eeprom-name = "main-eeprom";
/Linux-v5.4/drivers/gpu/drm/panel/
Dpanel-olimex-lcd-olinuxino.c75 struct lcd_olinuxino_eeprom eeprom; member
148 struct lcd_olinuxino_info *lcd_info = &lcd->eeprom.info; in lcd_olinuxino_get_modes()
154 for (i = 0; i < lcd->eeprom.num_modes; i++) { in lcd_olinuxino_get_modes()
156 &lcd->eeprom.reserved[i * sizeof(*lcd_mode)]; in lcd_olinuxino_get_modes()
241 (u8 *)&lcd->eeprom + i); in lcd_olinuxino_probe()
250 checksum = ~crc32(~0, (u8 *)&lcd->eeprom, 252); in lcd_olinuxino_probe()
251 if (checksum != lcd->eeprom.checksum) { in lcd_olinuxino_probe()
257 if (lcd->eeprom.header != LCD_OLINUXINO_HEADER_MAGIC) { in lcd_olinuxino_probe()
263 lcd->eeprom.info.name, in lcd_olinuxino_probe()
264 lcd->eeprom.revision, in lcd_olinuxino_probe()
[all …]
/Linux-v5.4/Documentation/devicetree/bindings/eeprom/
Dat25.txt13 - pagesize : size of the eeprom page
14 - size : total eeprom size in bytes
22 - read-only : this parameter-less property disables writes to the eeprom
26 - at25,byte-len : total eeprom size in bytes
27 - at25,addr-mode : addr-mode flags, as defined in include/linux/spi/eeprom.h
28 - at25,page-size : size of the eeprom page
33 eeprom@0 {
/Linux-v5.4/drivers/net/usb/
Dasix_common.c617 int asix_get_eeprom(struct net_device *net, struct ethtool_eeprom *eeprom, in asix_get_eeprom() argument
625 if (eeprom->len == 0) in asix_get_eeprom()
628 eeprom->magic = AX_EEPROM_MAGIC; in asix_get_eeprom()
630 first_word = eeprom->offset >> 1; in asix_get_eeprom()
631 last_word = (eeprom->offset + eeprom->len - 1) >> 1; in asix_get_eeprom()
647 memcpy(data, (u8 *)eeprom_buff + (eeprom->offset & 1), eeprom->len); in asix_get_eeprom()
652 int asix_set_eeprom(struct net_device *net, struct ethtool_eeprom *eeprom, in asix_set_eeprom() argument
662 eeprom->len, eeprom->offset, eeprom->magic); in asix_set_eeprom()
664 if (eeprom->len == 0) in asix_set_eeprom()
667 if (eeprom->magic != AX_EEPROM_MAGIC) in asix_set_eeprom()
[all …]
/Linux-v5.4/drivers/net/wireless/mediatek/mt76/mt76x2/
Deeprom.c16 void *src = dev->mt76.eeprom.data + MT_EE_MAC_ADDR; in mt76x2_eeprom_get_macaddr()
79 u8 *eeprom = dev->mt76.eeprom.data; in mt76x2_apply_cal_free_data() local
81 eeprom[MT_EE_TX_POWER_0_START_5G], in mt76x2_apply_cal_free_data()
82 eeprom[MT_EE_TX_POWER_0_START_5G + 1], in mt76x2_apply_cal_free_data()
83 eeprom[MT_EE_TX_POWER_1_START_5G], in mt76x2_apply_cal_free_data()
84 eeprom[MT_EE_TX_POWER_1_START_5G + 1] in mt76x2_apply_cal_free_data()
95 eeprom[offset] = efuse[offset]; in mt76x2_apply_cal_free_data()
100 memcpy(eeprom + MT_EE_TX_POWER_0_START_5G, prev_grp0, 2); in mt76x2_apply_cal_free_data()
103 memcpy(eeprom + MT_EE_TX_POWER_1_START_5G, prev_grp0 + 2, 2); in mt76x2_apply_cal_free_data()
107 eeprom[MT_EE_BT_RCAL_RESULT] = val & 0xff; in mt76x2_apply_cal_free_data()
[all …]
/Linux-v5.4/arch/arm/boot/dts/
Daspeed-bmc-quanta-q71l.dts180 eeprom@54 {
186 eeprom@57 {
302 eeprom@56 {
380 eeprom@52 {
390 eeprom@50 {
465 eeprom@50 {
471 eeprom@51 {
477 eeprom@52 {
483 eeprom@53 {
495 eeprom@50 {
[all …]
/Linux-v5.4/drivers/net/ethernet/intel/e1000/
De1000_hw.c3452 struct e1000_eeprom_info *eeprom = &hw->eeprom; in e1000_init_eeprom_params() local
3462 eeprom->type = e1000_eeprom_microwire; in e1000_init_eeprom_params()
3463 eeprom->word_size = 64; in e1000_init_eeprom_params()
3464 eeprom->opcode_bits = 3; in e1000_init_eeprom_params()
3465 eeprom->address_bits = 6; in e1000_init_eeprom_params()
3466 eeprom->delay_usec = 50; in e1000_init_eeprom_params()
3473 eeprom->type = e1000_eeprom_microwire; in e1000_init_eeprom_params()
3474 eeprom->opcode_bits = 3; in e1000_init_eeprom_params()
3475 eeprom->delay_usec = 50; in e1000_init_eeprom_params()
3477 eeprom->word_size = 256; in e1000_init_eeprom_params()
[all …]
/Linux-v5.4/Documentation/devicetree/bindings/net/
Dvia-velocity.txt9 - no-eeprom : PCI network cards use an external EEPROM to store data. Embedded
10 devices quite often set this data in uboot and do not provide an eeprom.
11 Specify this option if you have no external eeprom.
19 no-eeprom;
/Linux-v5.4/drivers/net/ethernet/intel/ixgbe/
Dixgbe_common.c506 ret_val = hw->eeprom.ops.read(hw, IXGBE_PBANUM0_PTR, &data); in ixgbe_read_pba_string_generic()
512 ret_val = hw->eeprom.ops.read(hw, IXGBE_PBANUM1_PTR, &pba_ptr); in ixgbe_read_pba_string_generic()
558 ret_val = hw->eeprom.ops.read(hw, pba_ptr, &length); in ixgbe_read_pba_string_generic()
580 ret_val = hw->eeprom.ops.read(hw, pba_ptr + offset, &data); in ixgbe_read_pba_string_generic()
697 hw->eeprom.ops.read(hw, IXGBE_EEPROM_CTRL_4, &ee_ctrl_4); in ixgbe_set_lan_id_multi_port_pcie()
849 struct ixgbe_eeprom_info *eeprom = &hw->eeprom; in ixgbe_init_eeprom_params_generic() local
853 if (eeprom->type == ixgbe_eeprom_uninitialized) { in ixgbe_init_eeprom_params_generic()
854 eeprom->type = ixgbe_eeprom_none; in ixgbe_init_eeprom_params_generic()
857 eeprom->semaphore_delay = 10; in ixgbe_init_eeprom_params_generic()
859 eeprom->word_page_size = 0; in ixgbe_init_eeprom_params_generic()
[all …]

12345678910>>...21