/linux/drivers/nvmem/ |
H A D | rockchip-efuse.c | 58 struct rockchip_efuse_chip *efuse = context; in rockchip_rk3288_efuse_read() local 62 ret = clk_prepare_enable(efuse->clk); in rockchip_rk3288_efuse_read() 64 dev_err(efuse->dev, "failed to prepare/enable efuse clk\n"); in rockchip_rk3288_efuse_read() 68 writel(RK3288_LOAD | RK3288_PGENB, efuse->base + REG_EFUSE_CTRL); in rockchip_rk3288_efuse_read() 71 writel(readl(efuse->base + REG_EFUSE_CTRL) & in rockchip_rk3288_efuse_read() 73 efuse->base + REG_EFUSE_CTRL); in rockchip_rk3288_efuse_read() 74 writel(readl(efuse->base + REG_EFUSE_CTRL) | in rockchip_rk3288_efuse_read() 76 efuse->base + REG_EFUSE_CTRL); in rockchip_rk3288_efuse_read() 78 writel(readl(efuse->base + REG_EFUSE_CTRL) | in rockchip_rk3288_efuse_read() 79 RK3288_STROBE, efuse->base + REG_EFUSE_CTRL); in rockchip_rk3288_efuse_read() [all …]
|
H A D | jz4780-efuse.c | 72 struct jz4780_efuse *efuse = context; in jz4780_efuse_read() local 87 regmap_update_bits(efuse->map, JZ_EFUCTRL, in jz4780_efuse_read() 94 ret = regmap_read_poll_timeout(efuse->map, JZ_EFUSTATE, in jz4780_efuse_read() 99 dev_err(efuse->dev, "Time out while reading efuse data"); in jz4780_efuse_read() 103 ret = regmap_bulk_read(efuse->map, JZ_EFUDATA(0), in jz4780_efuse_read() 142 struct jz4780_efuse *efuse; in jz4780_efuse_probe() local 151 efuse = devm_kzalloc(dev, sizeof(*efuse), GFP_KERNEL); in jz4780_efuse_probe() 152 if (!efuse) in jz4780_efuse_probe() 159 efuse->map = devm_regmap_init_mmio(dev, regs, in jz4780_efuse_probe() 161 if (IS_ERR(efuse->map)) in jz4780_efuse_probe() [all …]
|
H A D | zynqmp_nvmem.c | 64 struct xilinx_efuse *efuse; in zynqmp_efuse_access() local 98 efuse = dma_alloc_coherent(dev, sizeof(struct xilinx_efuse), in zynqmp_efuse_access() 100 if (!efuse) in zynqmp_efuse_access() 112 efuse->flag = EFUSE_WRITE; in zynqmp_efuse_access() 114 efuse->flag = EFUSE_READ; in zynqmp_efuse_access() 117 efuse->src = dma_buf; in zynqmp_efuse_access() 118 efuse->size = words; in zynqmp_efuse_access() 119 efuse->offset = offset; in zynqmp_efuse_access() 120 efuse->pufuserfuse = pufflag; in zynqmp_efuse_access() 141 efuse, dma_addr); in zynqmp_efuse_access()
|
/linux/drivers/net/wireless/realtek/rtl8xxxu/ |
H A D | 8192c.c | 416 struct rtl8192cu_efuse *efuse = &priv->efuse_wifi.efuse8192; in rtl8192cu_parse_efuse() local 418 if (efuse->rtl_id != cpu_to_le16(0x8129)) in rtl8192cu_parse_efuse() 421 ether_addr_copy(priv->mac_addr, efuse->mac_addr); in rtl8192cu_parse_efuse() 424 efuse->cck_tx_power_index_A, in rtl8192cu_parse_efuse() 425 sizeof(efuse->cck_tx_power_index_A)); in rtl8192cu_parse_efuse() 427 efuse->cck_tx_power_index_B, in rtl8192cu_parse_efuse() 428 sizeof(efuse->cck_tx_power_index_B)); in rtl8192cu_parse_efuse() 431 efuse->ht40_1s_tx_power_index_A, in rtl8192cu_parse_efuse() 432 sizeof(efuse->ht40_1s_tx_power_index_A)); in rtl8192cu_parse_efuse() 434 efuse->ht40_1s_tx_power_index_B, in rtl8192cu_parse_efuse() [all …]
|
H A D | 8723a.c | 192 struct rtl8723au_efuse *efuse = &priv->efuse_wifi.efuse8723; in rtl8723au_parse_efuse() local 194 if (efuse->rtl_id != cpu_to_le16(0x8129)) in rtl8723au_parse_efuse() 197 ether_addr_copy(priv->mac_addr, efuse->mac_addr); in rtl8723au_parse_efuse() 200 efuse->cck_tx_power_index_A, in rtl8723au_parse_efuse() 201 sizeof(efuse->cck_tx_power_index_A)); in rtl8723au_parse_efuse() 203 efuse->cck_tx_power_index_B, in rtl8723au_parse_efuse() 204 sizeof(efuse->cck_tx_power_index_B)); in rtl8723au_parse_efuse() 207 efuse->ht40_1s_tx_power_index_A, in rtl8723au_parse_efuse() 208 sizeof(efuse->ht40_1s_tx_power_index_A)); in rtl8723au_parse_efuse() 210 efuse->ht40_1s_tx_power_index_B, in rtl8723au_parse_efuse() [all …]
|
H A D | 8192e.c | 590 struct rtl8192eu_efuse *efuse = &priv->efuse_wifi.efuse8192eu; in rtl8192eu_parse_efuse() local 593 if (efuse->rtl_id != cpu_to_le16(0x8129)) in rtl8192eu_parse_efuse() 596 ether_addr_copy(priv->mac_addr, efuse->mac_addr); in rtl8192eu_parse_efuse() 598 memcpy(priv->cck_tx_power_index_A, efuse->tx_power_index_A.cck_base, in rtl8192eu_parse_efuse() 599 sizeof(efuse->tx_power_index_A.cck_base)); in rtl8192eu_parse_efuse() 600 memcpy(priv->cck_tx_power_index_B, efuse->tx_power_index_B.cck_base, in rtl8192eu_parse_efuse() 601 sizeof(efuse->tx_power_index_B.cck_base)); in rtl8192eu_parse_efuse() 604 efuse->tx_power_index_A.ht40_base, in rtl8192eu_parse_efuse() 605 sizeof(efuse->tx_power_index_A.ht40_base)); in rtl8192eu_parse_efuse() 607 efuse->tx_power_index_B.ht40_base, in rtl8192eu_parse_efuse() [all …]
|
H A D | 8723b.c | 429 struct rtl8723bu_efuse *efuse = &priv->efuse_wifi.efuse8723bu; in rtl8723bu_parse_efuse() local 432 if (efuse->rtl_id != cpu_to_le16(0x8129)) in rtl8723bu_parse_efuse() 435 ether_addr_copy(priv->mac_addr, efuse->mac_addr); in rtl8723bu_parse_efuse() 437 memcpy(priv->cck_tx_power_index_A, efuse->tx_power_index_A.cck_base, in rtl8723bu_parse_efuse() 438 sizeof(efuse->tx_power_index_A.cck_base)); in rtl8723bu_parse_efuse() 439 memcpy(priv->cck_tx_power_index_B, efuse->tx_power_index_B.cck_base, in rtl8723bu_parse_efuse() 440 sizeof(efuse->tx_power_index_B.cck_base)); in rtl8723bu_parse_efuse() 443 efuse->tx_power_index_A.ht40_base, in rtl8723bu_parse_efuse() 444 sizeof(efuse->tx_power_index_A.ht40_base)); in rtl8723bu_parse_efuse() 446 efuse->tx_power_index_B.ht40_base, in rtl8723bu_parse_efuse() [all …]
|
H A D | 8192f.c | 684 struct rtl8192fu_efuse *efuse = &priv->efuse_wifi.efuse8192fu; in rtl8192fu_parse_efuse() local 687 if (efuse->rtl_id != cpu_to_le16(0x8129)) in rtl8192fu_parse_efuse() 690 ether_addr_copy(priv->mac_addr, efuse->mac_addr); in rtl8192fu_parse_efuse() 692 memcpy(priv->cck_tx_power_index_A, efuse->tx_power_index_A.cck_base, in rtl8192fu_parse_efuse() 693 sizeof(efuse->tx_power_index_A.cck_base)); in rtl8192fu_parse_efuse() 694 memcpy(priv->cck_tx_power_index_B, efuse->tx_power_index_B.cck_base, in rtl8192fu_parse_efuse() 695 sizeof(efuse->tx_power_index_B.cck_base)); in rtl8192fu_parse_efuse() 698 efuse->tx_power_index_A.ht40_base, in rtl8192fu_parse_efuse() 699 sizeof(efuse->tx_power_index_A.ht40_base)); in rtl8192fu_parse_efuse() 701 efuse->tx_power_index_B.ht40_base, in rtl8192fu_parse_efuse() [all …]
|
/linux/Documentation/devicetree/bindings/regulator/ |
H A D | ti-abb-regulator.txt | 35 efuse: (see Optional properties) 36 RBB enable efuse Mask: (See Optional properties) 37 FBB enable efuse Mask: (See Optional properties) 38 Vset value efuse Mask: (See Optional properties) 47 - "efuse-address" - Contains efuse base address used to pick up ABB info. 49 "efuse-address" is required for this. 55 efuse: Mandatory if 'efuse-address' register is defined. Provides offset 56 from efuse-address to pick up ABB characteristics. Set to 0 if 57 'efuse-address' is not defined. 58 RBB enable efuse Mask: Optional if 'efuse-address' register is defined. [all …]
|
/linux/drivers/phy/mediatek/ |
H A D | phy-mtk-pcie.c | 77 struct mtk_pcie_lane_efuse *efuse; member 83 struct mtk_pcie_lane_efuse *data = &pcie_phy->efuse[lane]; in mtk_pcie_efuse_set_lane() 136 struct mtk_pcie_lane_efuse *efuse = &pcie_phy->efuse[lane]; in mtk_pcie_efuse_read_for_lane() local 142 ret = nvmem_cell_read_variable_le_u32(dev, efuse_id, &efuse->tx_pmos); in mtk_pcie_efuse_read_for_lane() 147 ret = nvmem_cell_read_variable_le_u32(dev, efuse_id, &efuse->tx_nmos); in mtk_pcie_efuse_read_for_lane() 152 ret = nvmem_cell_read_variable_le_u32(dev, efuse_id, &efuse->rx_data); in mtk_pcie_efuse_read_for_lane() 156 if (!(efuse->tx_pmos || efuse->tx_nmos || efuse->rx_data)) in mtk_pcie_efuse_read_for_lane() 161 efuse->lane_efuse_supported = true; in mtk_pcie_efuse_read_for_lane() 184 pcie_phy->efuse = devm_kzalloc(dev, pcie_phy->data->num_lanes * in mtk_pcie_read_efuse() 185 sizeof(*pcie_phy->efuse), GFP_KERNEL); in mtk_pcie_read_efuse() [all …]
|
/linux/drivers/net/wireless/mediatek/mt76/mt7603/ |
H A D | eeprom.c | 67 mt7603_has_cal_free_data(struct mt7603_dev *dev, u8 *efuse) in mt7603_has_cal_free_data() argument 69 if (!efuse[MT_EE_TEMP_SENSOR_CAL]) in mt7603_has_cal_free_data() 72 if (get_unaligned_le16(efuse + MT_EE_TX_POWER_0_START_2G) == 0) in mt7603_has_cal_free_data() 75 if (get_unaligned_le16(efuse + MT_EE_TX_POWER_1_START_2G) == 0) in mt7603_has_cal_free_data() 78 if (!efuse[MT_EE_CP_FT_VERSION]) in mt7603_has_cal_free_data() 81 if (!efuse[MT_EE_XTAL_FREQ_OFFSET]) in mt7603_has_cal_free_data() 84 if (!efuse[MT_EE_XTAL_WF_RFCAL]) in mt7603_has_cal_free_data() 91 mt7603_apply_cal_free_data(struct mt7603_dev *dev, u8 *efuse) in mt7603_apply_cal_free_data() argument 112 if (!mt7603_has_cal_free_data(dev, efuse)) in mt7603_apply_cal_free_data() 121 eeprom[offset] = efuse[offset]; in mt7603_apply_cal_free_data()
|
/linux/drivers/net/wireless/mediatek/mt76/mt76x2/ |
H A D | eeprom.c | 24 mt76x2_has_cal_free_data(struct mt76x02_dev *dev, u8 *efuse) in mt76x2_has_cal_free_data() argument 26 u16 *efuse_w = (u16 *)efuse; in mt76x2_has_cal_free_data() 50 mt76x2_apply_cal_free_data(struct mt76x02_dev *dev, u8 *efuse) in mt76x2_apply_cal_free_data() argument 94 if (!mt76x2_has_cal_free_data(dev, efuse)) in mt76x2_apply_cal_free_data() 100 eeprom[offset] = efuse[offset]; in mt76x2_apply_cal_free_data() 103 if (!(efuse[MT_EE_TX_POWER_0_START_5G] | in mt76x2_apply_cal_free_data() 104 efuse[MT_EE_TX_POWER_0_START_5G + 1])) in mt76x2_apply_cal_free_data() 106 if (!(efuse[MT_EE_TX_POWER_1_START_5G] | in mt76x2_apply_cal_free_data() 107 efuse[MT_EE_TX_POWER_1_START_5G + 1])) in mt76x2_apply_cal_free_data() 110 val = get_unaligned_le16(efuse + MT_EE_BT_RCAL_RESULT); in mt76x2_apply_cal_free_data() [all …]
|
/linux/drivers/net/wireless/realtek/rtw88/ |
H A D | efuse.c | 43 u32 physical_size = rtwdev->efuse.physical_size; in rtw_dump_logical_efuse_map() 44 u32 protect_size = rtwdev->efuse.protect_size; in rtw_dump_logical_efuse_map() 45 u32 logical_size = rtwdev->efuse.logical_size; in rtw_dump_logical_efuse_map() 90 u32 size = rtwdev->efuse.physical_size; in rtw_dump_physical_efuse_map() 149 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw_parse_efuse_map() local 150 u32 phy_size = efuse->physical_size; in rtw_parse_efuse_map() 151 u32 log_size = efuse->logical_size; in rtw_parse_efuse_map()
|
H A D | coex.c | 117 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw_coex_freerun_check() local 124 if (efuse->share_ant || ant_distance <= 5 || !coex_stat->wl_gl_busy) in rtw_coex_freerun_check() 827 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw_coex_update_wl_ch_info() local 841 (efuse->share_ant && center_chan <= 14 && in rtw_coex_update_wl_ch_info() 1008 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw_btc_wltoggle_table_a() local 1016 if (efuse->share_ant) { in rtw_btc_wltoggle_table_a() 1094 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw_coex_table() local 1101 if (efuse->share_ant) { in rtw_coex_table() 1223 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw_coex_tdma() local 1259 if (efuse->share_ant) { in rtw_coex_tdma() [all …]
|
H A D | phy.h | 118 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw_get_rfe_def() local 124 if (efuse->rfe_option < chip->rfe_defs_size) in rtw_get_rfe_def() 125 rfe_def = &chip->rfe_defs[efuse->rfe_option]; in rtw_get_rfe_def() 127 rtw_dbg(rtwdev, RTW_DBG_PHY, "use rfe_def[%d]\n", efuse->rfe_option); in rtw_get_rfe_def() 137 rtwdev->efuse.rfe_option); in rtw_check_supported_rfe()
|
H A D | regd.c | 284 struct rtw_efuse *efuse = &rtwdev->efuse; in rtw_regd_apply_hw_cap_flags() local 287 if (efuse->hw_cap.bw & BIT(RTW_CHANNEL_WIDTH_80)) in rtw_regd_apply_hw_cap_flags() 346 chip_reg = rtw_reg_find_by_name(rtwdev->efuse.country_code); in rtw_regd_init() 380 rtwdev->efuse.country_code[0], in rtw_regd_hint() 381 rtwdev->efuse.country_code[1]); in rtw_regd_hint() 383 ret = regulatory_hint(wiphy, rtwdev->efuse.country_code); in rtw_regd_hint() 416 rtw_reg_match(next_regd->regulatory, rtwdev->efuse.country_code)) { in rtw_regd_mgmt_programmed()
|
/linux/Documentation/devicetree/bindings/edac/ |
H A D | apm-xgene-edac.txt | 18 - regmap-efuse : Regmap of the PMD efuse resource. 66 efuse: efuse@1054a000 { 67 compatible = "apm,xgene-efuse", "syscon"; 84 regmap-efuse = <&efuse>;
|
/linux/drivers/net/wireless/realtek/rtlwifi/rtl8192d/ |
H A D | hw_common.c | 366 u8 *efuse, bool autoloadfail) in _rtl92d_readpowervalue_fromprom() argument 411 efuse[eeaddr] == 0xFF ? in _rtl92d_readpowervalue_fromprom() 415 efuse[eeaddr]; in _rtl92d_readpowervalue_fromprom() 426 efuse[eeaddr] == 0xFF ? in _rtl92d_readpowervalue_fromprom() 430 efuse[eeaddr]; in _rtl92d_readpowervalue_fromprom() 441 val8 = efuse[EEPROM_HT40_2S_TX_PWR_INX_DIFF_2G + offset]; in _rtl92d_readpowervalue_fromprom() 449 val8 = efuse[EEPROM_HT20_TX_PWR_INX_DIFF_2G + offset]; in _rtl92d_readpowervalue_fromprom() 457 val8 = efuse[EEPROM_OFDM_TX_PWR_INX_DIFF_2G + offset]; in _rtl92d_readpowervalue_fromprom() 465 val8 = efuse[EEPROM_HT40_MAX_PWR_OFFSET_2G + offset]; in _rtl92d_readpowervalue_fromprom() 473 val8 = efuse[EEPROM_HT20_MAX_PWR_OFFSET_2G + offset]; in _rtl92d_readpowervalue_fromprom() [all …]
|
/linux/arch/arm/boot/dts/ti/omap/ |
H A D | omap4460.dtsi | 48 "efuse-address"; 51 /*uV ABB efuse rbb_m fbb_m vset_m*/ 66 "efuse-address"; 69 /*uV ABB efuse rbb_m fbb_m vset_m*/
|
/linux/Documentation/ABI/testing/ |
H A D | sysfs-driver-jz4780-efuse | 4 Description: read-only access to the efuse on the Ingenic JZ4780 SoC 5 The SoC has a one time programmable 8K efuse that is
|
/linux/arch/arm/boot/dts/socionext/ |
H A D | uniphier-pro5.dtsi | 394 efuse@100 { 395 compatible = "socionext,uniphier-efuse"; 399 efuse@130 { 400 compatible = "socionext,uniphier-efuse"; 404 efuse@200 { 405 compatible = "socionext,uniphier-efuse"; 409 efuse@300 { 410 compatible = "socionext,uniphier-efuse"; 414 efuse@400 { 415 compatible = "socionext,uniphier-efuse";
|
/linux/arch/arm64/boot/dts/xilinx/ |
H A D | zynqmp.dtsi | 225 /* efuse access */ 226 efuse_dna: efuse-dna@c { 229 efuse_usr0: efuse-usr0@20 { 232 efuse_usr1: efuse-usr1@24 { 235 efuse_usr2: efuse-usr2@28 { 238 efuse_usr3: efuse-usr3@2c { 241 efuse_usr4: efuse-usr4@30 { 244 efuse_usr5: efuse-usr5@34 { 247 efuse_usr6: efuse-usr6@38 { 250 efuse_usr7: efuse-usr7@3c { [all …]
|
/linux/Documentation/devicetree/bindings/net/ |
H A D | keystone-netcp.txt | 149 - efuse-mac: If this is 1, then the MAC address for the interface is 150 obtained from the device efuse mac address register. 154 when it obtains the mac address from efuse. 159 ethernet.txt and only if efuse-mac is set to 0. If all of the optional MAC 167 reg-names = "efuse"; 238 efuse-mac = <1>; 250 efuse-mac = <0>;
|
/linux/drivers/net/wireless/realtek/rtlwifi/rtl8192de/ |
H A D | led.c | 23 if ((rtlpriv->efuse.eeprom_did == 0x8176) || in rtl92de_sw_led_on() 24 (rtlpriv->efuse.eeprom_did == 0x8193)) in rtl92de_sw_led_on()
|
/linux/arch/arm/boot/dts/ti/keystone/ |
H A D | keystone-k2l-netcp.dtsi | 129 reg-names = "efuse"; 209 efuse-mac = <1>; 221 efuse-mac = <0>;
|