Home
last modified time | relevance | path

Searched refs:otp (Results 1 – 25 of 58) sorted by relevance

123

/linux-6.1.9/drivers/nvmem/
Drockchip-otp.c74 static int rockchip_otp_reset(struct rockchip_otp *otp) in rockchip_otp_reset() argument
78 ret = reset_control_assert(otp->rst); in rockchip_otp_reset()
80 dev_err(otp->dev, "failed to assert otp phy %d\n", ret); in rockchip_otp_reset()
86 ret = reset_control_deassert(otp->rst); in rockchip_otp_reset()
88 dev_err(otp->dev, "failed to deassert otp phy %d\n", ret); in rockchip_otp_reset()
95 static int rockchip_otp_wait_status(struct rockchip_otp *otp, u32 flag) in rockchip_otp_wait_status() argument
100 ret = readl_poll_timeout_atomic(otp->base + OTPC_INT_STATUS, status, in rockchip_otp_wait_status()
106 writel(flag, otp->base + OTPC_INT_STATUS); in rockchip_otp_wait_status()
111 static int rockchip_otp_ecc_enable(struct rockchip_otp *otp, bool enable) in rockchip_otp_ecc_enable() argument
116 otp->base + OTPC_SBPI_CTRL); in rockchip_otp_ecc_enable()
[all …]
Dlan9662-otpc.c47 static int lan9662_otp_power(struct lan9662_otp *otp, bool up) in lan9662_otp_power() argument
49 void __iomem *pwrdn = OTP_OTP_PWR_DN(otp->base); in lan9662_otp_power()
53 if (lan9662_otp_wait_flag_clear(OTP_OTP_STATUS(otp->base), in lan9662_otp_power()
63 static int lan9662_otp_execute(struct lan9662_otp *otp) in lan9662_otp_execute() argument
65 if (lan9662_otp_wait_flag_clear(OTP_OTP_CMD_GO(otp->base), in lan9662_otp_execute()
69 if (lan9662_otp_wait_flag_clear(OTP_OTP_STATUS(otp->base), in lan9662_otp_execute()
76 static void lan9662_otp_set_address(struct lan9662_otp *otp, u32 offset) in lan9662_otp_set_address() argument
78 writel(0xff & (offset >> 8), OTP_OTP_ADDR_HI(otp->base)); in lan9662_otp_set_address()
79 writel(0xff & offset, OTP_OTP_ADDR_LO(otp->base)); in lan9662_otp_set_address()
82 static int lan9662_otp_read_byte(struct lan9662_otp *otp, u32 offset, u8 *dst) in lan9662_otp_read_byte() argument
[all …]
Dmxs-ocotp.c36 static int mxs_ocotp_wait(struct mxs_ocotp *otp) in mxs_ocotp_wait() argument
42 status = readl(otp->base); in mxs_ocotp_wait()
61 struct mxs_ocotp *otp = context; in mxs_ocotp_read() local
65 ret = clk_enable(otp->clk); in mxs_ocotp_read()
69 writel(BM_OCOTP_CTRL_ERROR, otp->base + STMP_OFFSET_REG_CLR); in mxs_ocotp_read()
71 ret = mxs_ocotp_wait(otp); in mxs_ocotp_read()
76 writel(BM_OCOTP_CTRL_RD_BANK_OPEN, otp->base + STMP_OFFSET_REG_SET); in mxs_ocotp_read()
81 ret = mxs_ocotp_wait(otp); in mxs_ocotp_read()
90 *buf++ = readl(otp->base + offset); in mxs_ocotp_read()
99 writel(BM_OCOTP_CTRL_RD_BANK_OPEN, otp->base + STMP_OFFSET_REG_CLR); in mxs_ocotp_read()
[all …]
Dsunplus-ocotp.c78 static int sp_otp_read_real(struct sp_ocotp_priv *otp, int addr, char *value) in sp_otp_read_real() argument
94 writel(readl(otp->base[OTPRX] + OTP_STATUS) & OTP_READ_DONE_MASK & in sp_otp_read_real()
95 OTP_LOAD_SECURE_DONE_MASK, otp->base[OTPRX] + OTP_STATUS); in sp_otp_read_real()
96 writel(addr, otp->base[OTPRX] + OTP_READ_ADDRESS); in sp_otp_read_real()
97 writel(readl(otp->base[OTPRX] + OTP_CONTROL_2) | OTP_READ, in sp_otp_read_real()
98 otp->base[OTPRX] + OTP_CONTROL_2); in sp_otp_read_real()
99 writel(readl(otp->base[OTPRX] + OTP_CONTROL_2) & SEL_BAK_KEY2_MASK & SW_TRIM_EN_MASK in sp_otp_read_real()
101 otp->base[OTPRX] + OTP_CONTROL_2); in sp_otp_read_real()
102 writel((readl(otp->base[OTPRX] + OTP_CONTROL_2) & OTP_RD_PERIOD_MASK) | CPU_CLOCK, in sp_otp_read_real()
103 otp->base[OTPRX] + OTP_CONTROL_2); in sp_otp_read_real()
[all …]
Dlpc18xx_otp.c44 struct lpc18xx_otp *otp = context; in lpc18xx_otp_read() local
54 *buf++ = readl(otp->base + i * LPC18XX_OTP_WORD_SIZE); in lpc18xx_otp_read()
70 struct lpc18xx_otp *otp; in lpc18xx_otp_probe() local
73 otp = devm_kzalloc(&pdev->dev, sizeof(*otp), GFP_KERNEL); in lpc18xx_otp_probe()
74 if (!otp) in lpc18xx_otp_probe()
78 otp->base = devm_ioremap_resource(&pdev->dev, res); in lpc18xx_otp_probe()
79 if (IS_ERR(otp->base)) in lpc18xx_otp_probe()
80 return PTR_ERR(otp->base); in lpc18xx_otp_probe()
84 lpc18xx_otp_nvmem_config.priv = otp; in lpc18xx_otp_probe()
Dstm32-romem.c50 static int stm32_bsec_smc(u8 op, u32 otp, u32 data, u32 *result) in stm32_bsec_smc() argument
55 arm_smccc_smc(STM32_SMC_BSEC, op, otp, data, 0, 0, 0, 0, &res); in stm32_bsec_smc()
86 u32 otp = i >> 2; in stm32_bsec_read() local
88 if (otp < STM32MP15_BSEC_NUM_LOWER) { in stm32_bsec_read()
93 ret = stm32_bsec_smc(STM32_SMC_READ_SHADOW, otp, 0, in stm32_bsec_read()
96 dev_err(dev, "Can't read data%d (%d)\n", otp, in stm32_bsec_read()
DMakefile42 obj-$(CONFIG_NVMEM_NINTENDO_OTP) += nvmem-nintendo-otp.o
43 nvmem-nintendo-otp-y := nintendo-otp.o
52 obj-$(CONFIG_NVMEM_ROCKCHIP_OTP) += nvmem-rockchip-otp.o
53 nvmem-rockchip-otp-y := rockchip-otp.o
/linux-6.1.9/drivers/net/wireless/mediatek/mt76/mt7615/
Deeprom.c54 dev->mt76.otp.data = devm_kzalloc(dev->mt76.dev, len, GFP_KERNEL); in mt7615_efuse_init()
55 dev->mt76.otp.size = len; in mt7615_efuse_init()
56 if (!dev->mt76.otp.data) in mt7615_efuse_init()
59 buf = dev->mt76.otp.data; in mt7615_efuse_init()
273 u8 *otp = dev->mt76.otp.data; in mt7615_apply_cal_free_data() local
276 if (!otp) in mt7615_apply_cal_free_data()
280 if (!otp[ical[i]]) in mt7615_apply_cal_free_data()
284 eeprom[ical[i]] = otp[ical[i]]; in mt7615_apply_cal_free_data()
287 eeprom[ical_nocheck[i]] = otp[ical_nocheck[i]]; in mt7615_apply_cal_free_data()
296 u8 *otp = dev->mt76.otp.data; in mt7622_apply_cal_free_data() local
[all …]
/linux-6.1.9/Documentation/devicetree/bindings/nvmem/
Drockchip-otp.txt5 - "rockchip,px30-otp" - for PX30 SoCs.
6 - "rockchip,rk3308-otp" - for RK3308 SoCs.
9 - clock-names: Should be "otp", "apb_pclk" and "phy".
17 otp: otp@ff290000 {
18 compatible = "rockchip,px30-otp";
24 clock-names = "otp", "apb_pclk", "phy";
Dnintendo-otp.yaml4 $id: http://devicetree.org/schemas/nvmem/nintendo-otp.yaml#
25 - nintendo,hollywood-otp
26 - nintendo,latte-otp
39 otp@d8001ec {
40 compatible = "nintendo,latte-otp";
Dlpc1850-otp.txt6 - compatible: Should be "nxp,lpc1850-otp"
15 otp: otp@40045000 {
16 compatible = "nxp,lpc1850-otp";
Dst,stm32-romem.yaml24 - st,stm32f4-otp
35 st,non-secure-otp:
53 compatible = "st,stm32f4-otp";
64 st,non-secure-otp;
Dbrcm,ocotp.txt13 otp: otp@301c800 {
Dsunplus,sp7021-ocotp.yaml63 otp: otp@9c00af00 {
/linux-6.1.9/Documentation/devicetree/bindings/mtd/
Dmtd.yaml25 "^otp(-[0-9]+)?$":
37 - user-otp
38 - factory-otp
67 otp-1 {
68 compatible = "factory-otp";
77 otp-2 {
78 compatible = "user-otp";
Dnand-macronix.txt17 - randomizer enable: should be "mxic,enable-randomizer-otp"
25 mxic,enable-randomizer-otp;
/linux-6.1.9/drivers/net/wireless/mediatek/mt76/mt7603/
Deeprom.c51 dev->mt76.otp.data = devm_kzalloc(dev->mt76.dev, len, GFP_KERNEL); in mt7603_efuse_init()
52 dev->mt76.otp.size = len; in mt7603_efuse_init()
53 if (!dev->mt76.otp.data) in mt7603_efuse_init()
56 buf = dev->mt76.otp.data; in mt7603_efuse_init()
165 if (dev->mt76.otp.data) { in mt7603_eeprom_init()
167 mt7603_apply_cal_free_data(dev, dev->mt76.otp.data); in mt7603_eeprom_init()
169 memcpy(dev->mt76.eeprom.data, dev->mt76.otp.data, in mt7603_eeprom_init()
/linux-6.1.9/drivers/mtd/spi-nor/
Dotp.c14 #define spi_nor_otp_region_len(nor) ((nor)->params->otp.org->len)
15 #define spi_nor_otp_n_regions(nor) ((nor)->params->otp.org->n_regions)
225 const struct spi_nor_otp_organization *org = nor->params->otp.org; in spi_nor_otp_region_start()
250 const struct spi_nor_otp_ops *ops = nor->params->otp.ops; in spi_nor_mtd_otp_info()
287 const struct spi_nor_otp_ops *ops = nor->params->otp.ops; in spi_nor_mtd_otp_range_is_locked()
312 const struct spi_nor_otp_ops *ops = nor->params->otp.ops; in spi_nor_mtd_otp_read_write()
398 const struct spi_nor_otp_ops *ops = nor->params->otp.ops; in spi_nor_mtd_otp_erase()
451 const struct spi_nor_otp_ops *ops = nor->params->otp.ops; in spi_nor_mtd_otp_lock()
487 if (!nor->params->otp.ops) in spi_nor_set_mtd_otp_ops()
Dwinbond.c223 if (nor->params->otp.org->n_regions) in winbond_nor_late_init()
224 nor->params->otp.ops = &winbond_nor_otp_ops; in winbond_nor_late_init()
/linux-6.1.9/drivers/net/wireless/broadcom/brcm80211/brcmfmac/
Dpcie.c342 struct brcmf_otp_params otp; member
1902 strscpy(devinfo->otp.module, p, len + 1); in brcmf_pcie_parse_otp_sys_vendor()
1905 strscpy(devinfo->otp.vendor, p, len + 1); in brcmf_pcie_parse_otp_sys_vendor()
1908 strscpy(devinfo->otp.version, p, len + 1); in brcmf_pcie_parse_otp_sys_vendor()
1917 devinfo->otp.module, devinfo->otp.vendor, in brcmf_pcie_parse_otp_sys_vendor()
1918 devinfo->otp.version); in brcmf_pcie_parse_otp_sys_vendor()
1920 if (!devinfo->otp.module[0] || in brcmf_pcie_parse_otp_sys_vendor()
1921 !devinfo->otp.vendor[0] || in brcmf_pcie_parse_otp_sys_vendor()
1922 !devinfo->otp.version[0]) in brcmf_pcie_parse_otp_sys_vendor()
1925 devinfo->otp.valid = true; in brcmf_pcie_parse_otp_sys_vendor()
[all …]
/linux-6.1.9/drivers/input/mouse/
Dalps.c2462 unsigned char index, unsigned char otp[]) in alps_get_otp_values_ss4_v2() argument
2470 ps2_command(ps2dev, otp, PSMOUSE_CMD_GETINFO)) in alps_get_otp_values_ss4_v2()
2478 ps2_command(ps2dev, otp, PSMOUSE_CMD_GETINFO)) in alps_get_otp_values_ss4_v2()
2487 static int alps_update_device_area_ss4_v2(unsigned char otp[][4], in alps_update_device_area_ss4_v2()
2496 SS4PLUS_NUMSENSOR_XOFFSET + (otp[0][2] & 0x0F); in alps_update_device_area_ss4_v2()
2498 SS4PLUS_NUMSENSOR_YOFFSET + ((otp[0][2] >> 4) & 0x0F); in alps_update_device_area_ss4_v2()
2505 x_pitch = (otp[0][1] & 0x0F) + SS4PLUS_MIN_PITCH_MM; in alps_update_device_area_ss4_v2()
2506 y_pitch = ((otp[0][1] >> 4) & 0x0F) + SS4PLUS_MIN_PITCH_MM; in alps_update_device_area_ss4_v2()
2510 SS4_NUMSENSOR_XOFFSET + (otp[1][0] & 0x0F); in alps_update_device_area_ss4_v2()
2512 SS4_NUMSENSOR_YOFFSET + ((otp[1][0] >> 4) & 0x0F); in alps_update_device_area_ss4_v2()
[all …]
/linux-6.1.9/arch/x86/crypto/
Dpoly1305-x86_64-cryptogams.pl3872 my ($out,$inp,$otp,$len)=$win64 ? ("%rcx","%rdx","%r8", "%r9") : # Win64 order
3879 sub $otp,$inp
3880 sub $otp,$out
3886 movdqu ($inp,$otp),%xmm0
3887 pxor ($otp),%xmm0
3888 movdqu %xmm0,($out,$otp)
3889 movdqa %xmm0,($otp)
3890 lea 16($otp),$otp
3902 mov ($inp,$otp),%al
3903 xor ($otp),%al
[all …]
/linux-6.1.9/drivers/iio/gyro/
Dmpu3050-core.c799 u64 otp; in mpu3050_hw_init() local
838 otp = le64_to_cpu(otp_le); in mpu3050_hw_init()
844 FIELD_GET(GENMASK_ULL(12, 0), otp), in mpu3050_hw_init()
846 FIELD_GET(GENMASK_ULL(17, 13), otp), in mpu3050_hw_init()
848 FIELD_GET(GENMASK_ULL(33, 18), otp), in mpu3050_hw_init()
850 FIELD_GET(GENMASK_ULL(45, 34), otp), in mpu3050_hw_init()
852 FIELD_GET(GENMASK_ULL(49, 47), otp), in mpu3050_hw_init()
854 FIELD_GET(GENMASK_ULL(55, 50), otp)); in mpu3050_hw_init()
/linux-6.1.9/drivers/net/wireless/mediatek/mt76/
Ddebugfs.c138 if (dev->otp.data) in mt76_register_debugfs_fops()
139 debugfs_create_blob("otp", 0400, dir, &dev->otp); in mt76_register_debugfs_fops()
/linux-6.1.9/drivers/net/wireless/mediatek/mt76/mt76x2/
Deeprom.c155 dev->mt76.otp.data = devm_kzalloc(dev->mt76.dev, MT7662_EEPROM_SIZE, in mt76x2_eeprom_load()
157 dev->mt76.otp.size = MT7662_EEPROM_SIZE; in mt76x2_eeprom_load()
158 if (!dev->mt76.otp.data) in mt76x2_eeprom_load()
161 efuse = dev->mt76.otp.data; in mt76x2_eeprom_load()

123