| /linux/drivers/misc/eeprom/ |
| H A D | eeprom_93cx6.c | 22 static inline void eeprom_93cx6_pulse_high(struct eeprom_93cx6 *eeprom) in eeprom_93cx6_pulse_high() argument 24 eeprom->reg_data_clock = 1; in eeprom_93cx6_pulse_high() 25 eeprom->register_write(eeprom); in eeprom_93cx6_pulse_high() 35 static inline void eeprom_93cx6_pulse_low(struct eeprom_93cx6 *eeprom) in eeprom_93cx6_pulse_low() argument 37 eeprom->reg_data_clock = 0; in eeprom_93cx6_pulse_low() 38 eeprom->register_write(eeprom); in eeprom_93cx6_pulse_low() 48 static void eeprom_93cx6_startup(struct eeprom_93cx6 *eeprom) in eeprom_93cx6_startup() argument 53 eeprom->register_read(eeprom); in eeprom_93cx6_startup() 54 eeprom->reg_data_in = 0; in eeprom_93cx6_startup() 55 eeprom->reg_data_out = 0; in eeprom_93cx6_startup() [all …]
|
| /linux/drivers/nvmem/ |
| H A D | lpc18xx_eeprom.c | 54 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 …]
|
| H A D | rave-sp-eeprom.c | 90 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 …]
|
| /linux/drivers/i2c/ |
| H A D | i2c-slave-eeprom.c | 48 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/drivers/net/wireless/mediatek/mt7601u/ |
| H A D | eeprom.c | 98 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/include/linux/ |
| H A D | eeprom_93cx6.h | 52 void (*register_read)(struct eeprom_93cx6 *eeprom); 53 void (*register_write)(struct eeprom_93cx6 *eeprom); 67 extern void eeprom_93cx6_read(struct eeprom_93cx6 *eeprom, 69 extern void eeprom_93cx6_multiread(struct eeprom_93cx6 *eeprom, 71 extern void eeprom_93cx6_readb(struct eeprom_93cx6 *eeprom, 73 extern void eeprom_93cx6_multireadb(struct eeprom_93cx6 *eeprom, 76 extern void eeprom_93cx6_wren(struct eeprom_93cx6 *eeprom, bool enable); 78 extern void eeprom_93cx6_write(struct eeprom_93cx6 *eeprom, 81 static inline bool has_quirk_extra_read_cycle(struct eeprom_93cx6 *eeprom) in has_quirk_extra_read_cycle() argument 83 return eeprom->quirks & PCI_EEPROM_QUIRK_EXTRA_READ_CYCLE; in has_quirk_extra_read_cycle()
|
| /linux/drivers/media/usb/pvrusb2/ |
| H A D | pvrusb2-eeprom.c | 34 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/drivers/net/ethernet/atheros/atl1e/ |
| H A D | atl1e_ethtool.c | 205 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/drivers/net/wireless/marvell/libertas/ |
| H A D | ethtool.c | 39 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() 50 LBS_EEPROM_READ_LEN + eeprom->len); in lbs_ethtool_get_eeprom() 52 cmd.offset = cpu_to_le16(eeprom->offset); in lbs_ethtool_get_eeprom() 53 cmd.len = cpu_to_le16(eeprom->len); in lbs_ethtool_get_eeprom() 56 memcpy(bytes, cmd.value, eeprom->len); in lbs_ethtool_get_eeprom()
|
| /linux/arch/arm/boot/dts/aspeed/ |
| H A D | aspeed-bmc-facebook-yosemite4.dts | 614 eeprom@50 { 619 eeprom@51 { 624 eeprom@54 { 641 eeprom@50 { 646 eeprom@51 { 651 eeprom@54 { 668 eeprom@50 { 673 eeprom@51 { 678 eeprom@54 { 695 eeprom@50 { [all …]
|
| H A D | aspeed-bmc-quanta-q71l.dts | 180 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 …]
|
| H A D | aspeed-bmc-facebook-clemente.dts | 297 eeprom@56 { 393 eeprom@50 { 399 eeprom@52 { 479 eeprom@56 { 575 eeprom@50 { 581 eeprom@52 { 703 eeprom@50 { 770 eeprom@54 { 811 eeprom@51 { 897 eeprom@50 { [all …]
|
| H A D | aspeed-bmc-ibm-everest.dts | 325 eeprom@51 { 396 eeprom@54 { 459 eeprom@52 { 495 eeprom@50 { 531 eeprom@51 { 604 eeprom@50 { 640 eeprom@51 { 676 eeprom@52 { 712 eeprom@53 { 761 eeprom@50 { [all …]
|
| /linux/drivers/net/usb/ |
| H A D | asix_common.c | 618 int asix_get_eeprom(struct net_device *net, struct ethtool_eeprom *eeprom, in asix_get_eeprom() argument 626 if (eeprom->len == 0) in asix_get_eeprom() 629 eeprom->magic = AX_EEPROM_MAGIC; in asix_get_eeprom() 631 first_word = eeprom->offset >> 1; in asix_get_eeprom() 632 last_word = (eeprom->offset + eeprom->len - 1) >> 1; in asix_get_eeprom() 648 memcpy(data, (u8 *)eeprom_buff + (eeprom->offset & 1), eeprom->len); in asix_get_eeprom() 653 int asix_set_eeprom(struct net_device *net, struct ethtool_eeprom *eeprom, in asix_set_eeprom() argument 663 eeprom->len, eeprom->offset, eeprom->magic); in asix_set_eeprom() 665 if (eeprom->len == 0) in asix_set_eeprom() 668 if (eeprom->magic != AX_EEPROM_MAGIC) in asix_set_eeprom() [all …]
|
| /linux/net/ethtool/ |
| H A D | eeprom.c | 31 struct ethtool_eeprom *eeprom) in fallback_set_params() argument 46 eeprom->cmd = ETHTOOL_GMODULEEEPROM; in fallback_set_params() 47 eeprom->len = length; in fallback_set_params() 48 eeprom->offset = offset; in fallback_set_params() 58 struct ethtool_eeprom eeprom = {0}; in eeprom_fallback() local 67 err = fallback_set_params(request, &modinfo, &eeprom); in eeprom_fallback() 71 data = kmalloc(eeprom.len, GFP_KERNEL); in eeprom_fallback() 74 err = ethtool_get_module_eeprom_call(dev, &eeprom, data); in eeprom_fallback() 79 reply->length = eeprom.len; in eeprom_fallback()
|
| /linux/drivers/net/wireless/ralink/rt2x00/ |
| H A D | rt61pci.c | 166 static void rt61pci_eepromregister_read(struct eeprom_93cx6 *eeprom) in rt61pci_eepromregister_read() argument 168 struct rt2x00_dev *rt2x00dev = eeprom->data; in rt61pci_eepromregister_read() 173 eeprom->reg_data_in = !!rt2x00_get_field32(reg, E2PROM_CSR_DATA_IN); in rt61pci_eepromregister_read() 174 eeprom->reg_data_out = !!rt2x00_get_field32(reg, E2PROM_CSR_DATA_OUT); in rt61pci_eepromregister_read() 175 eeprom->reg_data_clock = in rt61pci_eepromregister_read() 177 eeprom->reg_chip_select = in rt61pci_eepromregister_read() 181 static void rt61pci_eepromregister_write(struct eeprom_93cx6 *eeprom) in rt61pci_eepromregister_write() argument 183 struct rt2x00_dev *rt2x00dev = eeprom->data; in rt61pci_eepromregister_write() 186 rt2x00_set_field32(®, E2PROM_CSR_DATA_IN, !!eeprom->reg_data_in); in rt61pci_eepromregister_write() 187 rt2x00_set_field32(®, E2PROM_CSR_DATA_OUT, !!eeprom->reg_data_out); in rt61pci_eepromregister_write() [all …]
|
| H A D | rt2400pci.c | 128 static void rt2400pci_eepromregister_read(struct eeprom_93cx6 *eeprom) in rt2400pci_eepromregister_read() argument 130 struct rt2x00_dev *rt2x00dev = eeprom->data; in rt2400pci_eepromregister_read() 135 eeprom->reg_data_in = !!rt2x00_get_field32(reg, CSR21_EEPROM_DATA_IN); in rt2400pci_eepromregister_read() 136 eeprom->reg_data_out = !!rt2x00_get_field32(reg, CSR21_EEPROM_DATA_OUT); in rt2400pci_eepromregister_read() 137 eeprom->reg_data_clock = in rt2400pci_eepromregister_read() 139 eeprom->reg_chip_select = in rt2400pci_eepromregister_read() 143 static void rt2400pci_eepromregister_write(struct eeprom_93cx6 *eeprom) in rt2400pci_eepromregister_write() argument 145 struct rt2x00_dev *rt2x00dev = eeprom->data; in rt2400pci_eepromregister_write() 148 rt2x00_set_field32(®, CSR21_EEPROM_DATA_IN, !!eeprom->reg_data_in); in rt2400pci_eepromregister_write() 149 rt2x00_set_field32(®, CSR21_EEPROM_DATA_OUT, !!eeprom->reg_data_out); in rt2400pci_eepromregister_write() [all …]
|
| H A D | rt2500pci.c | 128 static void rt2500pci_eepromregister_read(struct eeprom_93cx6 *eeprom) in rt2500pci_eepromregister_read() argument 130 struct rt2x00_dev *rt2x00dev = eeprom->data; in rt2500pci_eepromregister_read() 135 eeprom->reg_data_in = !!rt2x00_get_field32(reg, CSR21_EEPROM_DATA_IN); in rt2500pci_eepromregister_read() 136 eeprom->reg_data_out = !!rt2x00_get_field32(reg, CSR21_EEPROM_DATA_OUT); in rt2500pci_eepromregister_read() 137 eeprom->reg_data_clock = in rt2500pci_eepromregister_read() 139 eeprom->reg_chip_select = in rt2500pci_eepromregister_read() 143 static void rt2500pci_eepromregister_write(struct eeprom_93cx6 *eeprom) in rt2500pci_eepromregister_write() argument 145 struct rt2x00_dev *rt2x00dev = eeprom->data; in rt2500pci_eepromregister_write() 148 rt2x00_set_field32(®, CSR21_EEPROM_DATA_IN, !!eeprom->reg_data_in); in rt2500pci_eepromregister_write() 149 rt2x00_set_field32(®, CSR21_EEPROM_DATA_OUT, !!eeprom->reg_data_out); in rt2500pci_eepromregister_write() [all …]
|
| /linux/drivers/net/dsa/mv88e6xxx/ |
| H A D | global2.c | 449 struct ethtool_eeprom *eeprom, u8 *data) in mv88e6xxx_g2_get_eeprom8() argument 451 unsigned int offset = eeprom->offset; in mv88e6xxx_g2_get_eeprom8() 452 unsigned int len = eeprom->len; in mv88e6xxx_g2_get_eeprom8() 455 eeprom->len = 0; in mv88e6xxx_g2_get_eeprom8() 462 eeprom->len++; in mv88e6xxx_g2_get_eeprom8() 472 struct ethtool_eeprom *eeprom, u8 *data) in mv88e6xxx_g2_set_eeprom8() argument 474 unsigned int offset = eeprom->offset; in mv88e6xxx_g2_set_eeprom8() 475 unsigned int len = eeprom->len; in mv88e6xxx_g2_set_eeprom8() 478 eeprom->len = 0; in mv88e6xxx_g2_set_eeprom8() 485 eeprom->len++; in mv88e6xxx_g2_set_eeprom8() [all …]
|
| /linux/drivers/net/wireless/admtek/ |
| H A D | adm8211.c | 74 static void adm8211_eeprom_register_read(struct eeprom_93cx6 *eeprom) in adm8211_eeprom_register_read() argument 76 struct adm8211_priv *priv = eeprom->data; in adm8211_eeprom_register_read() 79 eeprom->reg_data_in = reg & ADM8211_SPR_SDI; in adm8211_eeprom_register_read() 80 eeprom->reg_data_out = reg & ADM8211_SPR_SDO; in adm8211_eeprom_register_read() 81 eeprom->reg_data_clock = reg & ADM8211_SPR_SCLK; in adm8211_eeprom_register_read() 82 eeprom->reg_chip_select = reg & ADM8211_SPR_SCS; in adm8211_eeprom_register_read() 85 static void adm8211_eeprom_register_write(struct eeprom_93cx6 *eeprom) in adm8211_eeprom_register_write() argument 87 struct adm8211_priv *priv = eeprom->data; in adm8211_eeprom_register_write() 90 if (eeprom->reg_data_in) in adm8211_eeprom_register_write() 92 if (eeprom->reg_data_out) in adm8211_eeprom_register_write() [all …]
|
| /linux/Documentation/devicetree/bindings/net/ |
| H A D | via-velocity.txt | 9 - 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/drivers/scsi/ |
| H A D | dc395x.c | 262 struct NvRamType eeprom; /* eeprom settings for this adapter */ member 547 static void eeprom_index_to_delay(struct NvRamType *eeprom) in eeprom_index_to_delay() argument 549 eeprom->delay_time = eeprom_index_to_delay_map[eeprom->delay_time]; in eeprom_index_to_delay() 576 static void eeprom_override(struct NvRamType *eeprom) in eeprom_override() argument 582 eeprom->scsi_id = (u8)cfg_data[CFG_ADAPTER_ID].value; in eeprom_override() 585 eeprom->channel_cfg = (u8)cfg_data[CFG_ADAPTER_MODE].value; in eeprom_override() 588 eeprom->delay_time = delay_to_eeprom_index( in eeprom_override() 592 eeprom->max_tag = (u8)cfg_data[CFG_TAGS].value; in eeprom_override() 597 eeprom->target[id].cfg0 = in eeprom_override() 601 eeprom->target[id].period = in eeprom_override() [all …]
|
| /linux/drivers/mtd/maps/ |
| H A D | pismo.c | 212 struct pismo_eeprom eeprom; in pismo_probe() local 232 ret = pismo_eeprom_read(client, &eeprom, 0, sizeof(eeprom)); in pismo_probe() 238 dev_info(&client->dev, "%.15s board found\n", eeprom.board); in pismo_probe() 240 for (i = 0; i < ARRAY_SIZE(eeprom.cs); i++) in pismo_probe() 241 if (eeprom.cs[i].type != 0xff) in pismo_probe() 242 pismo_add_one(pismo, i, &eeprom.cs[i], in pismo_probe()
|
| /linux/drivers/net/ethernet/atheros/atl1c/ |
| H A D | atl1c_ethtool.c | 177 struct ethtool_eeprom *eeprom, u8 *bytes) in atl1c_get_eeprom() argument 186 if (eeprom->len == 0) in atl1c_get_eeprom() 192 eeprom->magic = adapter->pdev->vendor | in atl1c_get_eeprom() 195 first_dword = eeprom->offset >> 2; in atl1c_get_eeprom() 196 last_dword = (eeprom->offset + eeprom->len - 1) >> 2; in atl1c_get_eeprom() 210 memcpy(bytes, (u8 *)eeprom_buff + (eeprom->offset & 3), in atl1c_get_eeprom() 211 eeprom->len); in atl1c_get_eeprom()
|
| /linux/drivers/net/wireless/ath/carl9170/ |
| H A D | phy.c | 440 struct ar9170_eeprom_modal *m = &ar->eeprom.modal_header[is_2ghz]; in carl9170_init_phy_from_eeprom() 536 carl9170_regwrite(AR9170_PHY_REG_RX_CHAINMASK, ar->eeprom.rx_mask); in carl9170_init_phy_from_eeprom() 537 carl9170_regwrite(AR9170_PHY_REG_CAL_CHAINMASK, ar->eeprom.rx_mask); in carl9170_init_phy_from_eeprom() 1130 cal_freq_pier = ar->eeprom.cal_freq_pier_2G; in carl9170_set_freq_cal_data() 1136 cal_freq_pier = ar->eeprom.cal_freq_pier_5G; in carl9170_set_freq_cal_data() 1162 cal_pier_data = &ar->eeprom. in carl9170_set_freq_cal_data() 1167 cal_pier_data = &ar->eeprom. in carl9170_set_freq_cal_data() 1320 #define EDGES(c, n) (ar->eeprom.ctl_data[c].control_edges[n]) in carl9170_calc_ctl() 1354 if (c == ar->eeprom.ctl_index[ctl_idx]) in carl9170_calc_ctl() 1452 ctpl = &ar->eeprom.cal_tgt_pwr_5G[0]; in carl9170_set_power_cal() [all …]
|