/Linux-v4.19/drivers/nvmem/ |
D | meson-mx-efuse.c | 59 static void meson_mx_efuse_mask_bits(struct meson_mx_efuse *efuse, u32 reg, in meson_mx_efuse_mask_bits() argument 64 data = readl(efuse->base + reg); in meson_mx_efuse_mask_bits() 68 writel(data, efuse->base + reg); in meson_mx_efuse_mask_bits() 71 static int meson_mx_efuse_hw_enable(struct meson_mx_efuse *efuse) in meson_mx_efuse_hw_enable() argument 75 err = clk_prepare_enable(efuse->core_clk); in meson_mx_efuse_hw_enable() 80 meson_mx_efuse_mask_bits(efuse, MESON_MX_EFUSE_CNTL1, in meson_mx_efuse_hw_enable() 83 meson_mx_efuse_mask_bits(efuse, MESON_MX_EFUSE_CNTL4, in meson_mx_efuse_hw_enable() 89 static void meson_mx_efuse_hw_disable(struct meson_mx_efuse *efuse) in meson_mx_efuse_hw_disable() argument 91 meson_mx_efuse_mask_bits(efuse, MESON_MX_EFUSE_CNTL1, in meson_mx_efuse_hw_disable() 95 clk_disable_unprepare(efuse->core_clk); in meson_mx_efuse_hw_disable() [all …]
|
D | sc27xx-efuse.c | 65 static int sc27xx_efuse_lock(struct sc27xx_efuse *efuse) in sc27xx_efuse_lock() argument 69 mutex_lock(&efuse->mutex); in sc27xx_efuse_lock() 71 ret = hwspin_lock_timeout_raw(efuse->hwlock, in sc27xx_efuse_lock() 74 dev_err(efuse->dev, "timeout to get the hwspinlock\n"); in sc27xx_efuse_lock() 75 mutex_unlock(&efuse->mutex); in sc27xx_efuse_lock() 82 static void sc27xx_efuse_unlock(struct sc27xx_efuse *efuse) in sc27xx_efuse_unlock() argument 84 hwspin_unlock_raw(efuse->hwlock); in sc27xx_efuse_unlock() 85 mutex_unlock(&efuse->mutex); in sc27xx_efuse_unlock() 88 static int sc27xx_efuse_poll_status(struct sc27xx_efuse *efuse, u32 bits) in sc27xx_efuse_poll_status() argument 93 ret = regmap_read_poll_timeout(efuse->regmap, in sc27xx_efuse_poll_status() [all …]
|
D | rockchip-efuse.c | 66 struct rockchip_efuse_chip *efuse = context; in rockchip_rk3288_efuse_read() local 70 ret = clk_prepare_enable(efuse->clk); in rockchip_rk3288_efuse_read() 72 dev_err(efuse->dev, "failed to prepare/enable efuse clk\n"); in rockchip_rk3288_efuse_read() 76 writel(RK3288_LOAD | RK3288_PGENB, efuse->base + REG_EFUSE_CTRL); in rockchip_rk3288_efuse_read() 79 writel(readl(efuse->base + REG_EFUSE_CTRL) & in rockchip_rk3288_efuse_read() 81 efuse->base + REG_EFUSE_CTRL); in rockchip_rk3288_efuse_read() 82 writel(readl(efuse->base + REG_EFUSE_CTRL) | in rockchip_rk3288_efuse_read() 84 efuse->base + REG_EFUSE_CTRL); in rockchip_rk3288_efuse_read() 86 writel(readl(efuse->base + REG_EFUSE_CTRL) | in rockchip_rk3288_efuse_read() 87 RK3288_STROBE, efuse->base + REG_EFUSE_CTRL); in rockchip_rk3288_efuse_read() [all …]
|
D | Makefile | 22 obj-$(CONFIG_MTK_EFUSE) += nvmem_mtk-efuse.o 23 nvmem_mtk-efuse-y := mtk-efuse.o 27 nvmem_rockchip_efuse-y := rockchip-efuse.o 30 obj-$(CONFIG_UNIPHIER_EFUSE) += nvmem-uniphier-efuse.o 31 nvmem-uniphier-efuse-y := uniphier-efuse.o 35 nvmem_meson_efuse-y := meson-efuse.o 37 nvmem_meson_mx_efuse-y := meson-mx-efuse.o 42 obj-$(CONFIG_SC27XX_EFUSE) += nvmem-sc27xx-efuse.o 43 nvmem-sc27xx-efuse-y := sc27xx-efuse.o
|
/Linux-v4.19/drivers/net/wireless/realtek/rtl8xxxu/ |
D | rtl8xxxu_8192c.c | 356 struct rtl8192cu_efuse *efuse = &priv->efuse_wifi.efuse8192; in rtl8192cu_parse_efuse() local 359 if (efuse->rtl_id != cpu_to_le16(0x8129)) in rtl8192cu_parse_efuse() 362 ether_addr_copy(priv->mac_addr, efuse->mac_addr); in rtl8192cu_parse_efuse() 365 efuse->cck_tx_power_index_A, in rtl8192cu_parse_efuse() 366 sizeof(efuse->cck_tx_power_index_A)); in rtl8192cu_parse_efuse() 368 efuse->cck_tx_power_index_B, in rtl8192cu_parse_efuse() 369 sizeof(efuse->cck_tx_power_index_B)); in rtl8192cu_parse_efuse() 372 efuse->ht40_1s_tx_power_index_A, in rtl8192cu_parse_efuse() 373 sizeof(efuse->ht40_1s_tx_power_index_A)); in rtl8192cu_parse_efuse() 375 efuse->ht40_1s_tx_power_index_B, in rtl8192cu_parse_efuse() [all …]
|
D | rtl8xxxu_8723a.c | 142 struct rtl8723au_efuse *efuse = &priv->efuse_wifi.efuse8723; in rtl8723au_parse_efuse() local 144 if (efuse->rtl_id != cpu_to_le16(0x8129)) in rtl8723au_parse_efuse() 147 ether_addr_copy(priv->mac_addr, efuse->mac_addr); in rtl8723au_parse_efuse() 150 efuse->cck_tx_power_index_A, in rtl8723au_parse_efuse() 151 sizeof(efuse->cck_tx_power_index_A)); in rtl8723au_parse_efuse() 153 efuse->cck_tx_power_index_B, in rtl8723au_parse_efuse() 154 sizeof(efuse->cck_tx_power_index_B)); in rtl8723au_parse_efuse() 157 efuse->ht40_1s_tx_power_index_A, in rtl8723au_parse_efuse() 158 sizeof(efuse->ht40_1s_tx_power_index_A)); in rtl8723au_parse_efuse() 160 efuse->ht40_1s_tx_power_index_B, in rtl8723au_parse_efuse() [all …]
|
D | rtl8xxxu_8192e.c | 567 struct rtl8192eu_efuse *efuse = &priv->efuse_wifi.efuse8192eu; in rtl8192eu_parse_efuse() local 570 if (efuse->rtl_id != cpu_to_le16(0x8129)) in rtl8192eu_parse_efuse() 573 ether_addr_copy(priv->mac_addr, efuse->mac_addr); in rtl8192eu_parse_efuse() 575 memcpy(priv->cck_tx_power_index_A, efuse->tx_power_index_A.cck_base, in rtl8192eu_parse_efuse() 576 sizeof(efuse->tx_power_index_A.cck_base)); in rtl8192eu_parse_efuse() 577 memcpy(priv->cck_tx_power_index_B, efuse->tx_power_index_B.cck_base, in rtl8192eu_parse_efuse() 578 sizeof(efuse->tx_power_index_B.cck_base)); in rtl8192eu_parse_efuse() 581 efuse->tx_power_index_A.ht40_base, in rtl8192eu_parse_efuse() 582 sizeof(efuse->tx_power_index_A.ht40_base)); in rtl8192eu_parse_efuse() 584 efuse->tx_power_index_B.ht40_base, in rtl8192eu_parse_efuse() [all …]
|
D | rtl8xxxu_8723b.c | 406 struct rtl8723bu_efuse *efuse = &priv->efuse_wifi.efuse8723bu; in rtl8723bu_parse_efuse() local 409 if (efuse->rtl_id != cpu_to_le16(0x8129)) in rtl8723bu_parse_efuse() 412 ether_addr_copy(priv->mac_addr, efuse->mac_addr); in rtl8723bu_parse_efuse() 414 memcpy(priv->cck_tx_power_index_A, efuse->tx_power_index_A.cck_base, in rtl8723bu_parse_efuse() 415 sizeof(efuse->tx_power_index_A.cck_base)); in rtl8723bu_parse_efuse() 416 memcpy(priv->cck_tx_power_index_B, efuse->tx_power_index_B.cck_base, in rtl8723bu_parse_efuse() 417 sizeof(efuse->tx_power_index_B.cck_base)); in rtl8723bu_parse_efuse() 420 efuse->tx_power_index_A.ht40_base, in rtl8723bu_parse_efuse() 421 sizeof(efuse->tx_power_index_A.ht40_base)); in rtl8723bu_parse_efuse() 423 efuse->tx_power_index_B.ht40_base, in rtl8723bu_parse_efuse() [all …]
|
/Linux-v4.19/Documentation/devicetree/bindings/nvmem/ |
D | rockchip-efuse.txt | 5 - "rockchip,rk3066a-efuse" - for RK3066a SoCs. 6 - "rockchip,rk3188-efuse" - for RK3188 SoCs. 7 - "rockchip,rk3228-efuse" - for RK3228 SoCs. 8 - "rockchip,rk3288-efuse" - for RK3288 SoCs. 9 - "rockchip,rk3328-efuse" - for RK3328 SoCs. 10 - "rockchip,rk3368-efuse" - for RK3368 SoCs. 11 - "rockchip,rk3399-efuse" - for RK3399 SoCs. 17 - rockchip,efuse-size: Should be exact eFuse size in byte, the eFuse 21 - compatible: "rockchip,rockchip-efuse" 22 Old efuse compatible value compatible to rk3066a, rk3188 and rk3288 [all …]
|
D | mtk-efuse.txt | 7 "mediatek,mt7622-efuse", "mediatek,efuse": for MT7622 8 "mediatek,mt7623-efuse", "mediatek,efuse": for MT7623 9 "mediatek,mt8173-efuse" or "mediatek,efuse": for MT8173 18 efuse: efuse@10206000 { 19 compatible = "mediatek,mt8173-efuse";
|
D | amlogic-meson-mx-efuse.txt | 1 Amlogic Meson6/Meson8/Meson8b efuse 5 - "amlogic,meson6-efuse" 6 - "amlogic,meson8-efuse" 7 - "amlogic,meson8b-efuse" 8 - reg: base address and size of the efuse registers 9 - clocks: a reference to the efuse core gate clock 17 efuse: nvmem@0 { 18 compatible = "amlogic,meson8-efuse";
|
D | sc27xx-efuse.txt | 5 "sprd,sc2720-efuse" 6 "sprd,sc2721-efuse" 7 "sprd,sc2723-efuse" 8 "sprd,sc2730-efuse" 9 "sprd,sc2731-efuse" 10 - reg: Specify the address offset of efuse controller. 29 efuse@380 { 30 compatible = "sprd,sc2731-efuse";
|
D | uniphier-efuse.txt | 6 - compatible: should be "socionext,uniphier-efuse" 10 Are child nodes of efuse, bindings of which as described in 22 efuse@100 { 23 compatible = "socionext,uniphier-efuse"; 27 efuse@200 { 28 compatible = "socionext,uniphier-efuse";
|
D | amlogic-efuse.txt | 4 - compatible: should be "amlogic,meson-gxbb-efuse" 12 efuse: efuse { 13 compatible = "amlogic,meson-gxbb-efuse";
|
/Linux-v4.19/Documentation/devicetree/bindings/regulator/ |
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-v4.19/Documentation/devicetree/bindings/fuse/ |
D | nvidia,tegra20-fuse.txt | 4 - compatible : For Tegra20, must contain "nvidia,tegra20-efuse". For Tegra30, 5 must contain "nvidia,tegra30-efuse". For Tegra114, must contain 6 "nvidia,tegra114-efuse". For Tegra124, must contain "nvidia,tegra124-efuse". 7 Otherwise, must contain "nvidia,<chip>-efuse", plus one of the above, where 10 nvidia,tegra20-efuse: Tegra20 requires using APB DMA to read the fuse data 13 nvidia,tegra30-efuse, nvidia,tegra114-efuse and nvidia,tegra124-efuse: 14 The differences between these SoCs are the size of the efuse array, 31 compatible = "nvidia,tegra20-efuse";
|
/Linux-v4.19/drivers/cpufreq/ |
D | ti-cpufreq.c | 48 unsigned long efuse); 66 unsigned long efuse) in amx3_efuse_xlate() argument 68 if (!efuse) in amx3_efuse_xlate() 69 efuse = opp_data->soc_data->efuse_fallback; in amx3_efuse_xlate() 71 return ~efuse; in amx3_efuse_xlate() 75 unsigned long efuse) in dra7_efuse_xlate() argument 84 switch (efuse) { in dra7_efuse_xlate() 133 u32 efuse; in ti_cpufreq_get_efuse() local 137 &efuse); in ti_cpufreq_get_efuse() 145 efuse = (efuse & opp_data->soc_data->efuse_mask); in ti_cpufreq_get_efuse() [all …]
|
/Linux-v4.19/drivers/net/wireless/mediatek/mt76/ |
D | mt76x2_eeprom.c | 109 mt76x2_has_cal_free_data(struct mt76x2_dev *dev, u8 *efuse) in mt76x2_has_cal_free_data() argument 111 u16 *efuse_w = (u16 *) efuse; in mt76x2_has_cal_free_data() 135 mt76x2_apply_cal_free_data(struct mt76x2_dev *dev, u8 *efuse) in mt76x2_apply_cal_free_data() argument 175 if (!mt76x2_has_cal_free_data(dev, efuse)) in mt76x2_apply_cal_free_data() 181 eeprom[offset] = efuse[offset]; in mt76x2_apply_cal_free_data() 184 if (!(efuse[MT_EE_TX_POWER_0_START_5G] | in mt76x2_apply_cal_free_data() 185 efuse[MT_EE_TX_POWER_0_START_5G + 1])) in mt76x2_apply_cal_free_data() 187 if (!(efuse[MT_EE_TX_POWER_1_START_5G] | in mt76x2_apply_cal_free_data() 188 efuse[MT_EE_TX_POWER_1_START_5G + 1])) in mt76x2_apply_cal_free_data() 191 val = get_unaligned_le16(efuse + MT_EE_BT_RCAL_RESULT); in mt76x2_apply_cal_free_data() [all …]
|
/Linux-v4.19/Documentation/devicetree/bindings/opp/ |
D | ti-omap5-opp-supply.txt | 26 "ti,omap5-opp-supply" - OMAP5+ optimized voltages in efuse(class0)VDD 28 "ti,omap5-core-opp-supply" - OMAP5+ optimized voltages in efuse(class0) VDD 30 - reg: Address and length of the efuse register set for the device (mandatory 32 - ti,efuse-settings: An array of u32 tuple items providing information about 33 optimized efuse configuration. Each item consists of the following: 35 efuse_offseet: efuse offset from reg where the optimized voltage is stored. 56 ti,efuse-settings = <
|
/Linux-v4.19/Documentation/devicetree/bindings/edac/ |
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-v4.19/arch/arm/boot/dts/ |
D | uniphier-pro5.dtsi | 363 efuse@100 { 364 compatible = "socionext,uniphier-efuse"; 368 efuse@130 { 369 compatible = "socionext,uniphier-efuse"; 373 efuse@200 { 374 compatible = "socionext,uniphier-efuse"; 378 efuse@300 { 379 compatible = "socionext,uniphier-efuse"; 383 efuse@400 { 384 compatible = "socionext,uniphier-efuse";
|
D | omap4460.dtsi | 58 "efuse-address"; 61 /*uV ABB efuse rbb_m fbb_m vset_m*/ 76 "efuse-address"; 79 /*uV ABB efuse rbb_m fbb_m vset_m*/
|
D | uniphier-pro4.dtsi | 306 efuse@100 { 307 compatible = "socionext,uniphier-efuse"; 311 efuse@130 { 312 compatible = "socionext,uniphier-efuse"; 316 efuse@200 { 317 compatible = "socionext,uniphier-efuse";
|
/Linux-v4.19/Documentation/devicetree/bindings/phy/ |
D | phy-mtk-xsphy.txt | 49 - mediatek,efuse-intr : u32, the selection of Internal Resistor 52 - mediatek,efuse-intr : u32, the selection of Internal Resistor 53 - mediatek,efuse-tx-imp : u32, the selection of TX Impedance 54 - mediatek,efuse-rx-imp : u32, the selection of RX Impedance 106 mediatek,efuse-intr = <28>;
|
/Linux-v4.19/Documentation/devicetree/bindings/net/ |
D | keystone-netcp.txt | 132 - efuse-mac: If this is 1, then the MAC address for the interface is 133 obtained from the device efuse mac address register. 137 when it obtains the mac address from efuse. 139 only if efuse-mac is 0. When efuse-mac is 0, the MAC 150 reg-names = "efuse"; 204 efuse-mac = <1>; 216 efuse-mac = <0>;
|