Home
last modified time | relevance | path

Searched +full:otp +full:- +full:size (Results 1 – 25 of 358) sorted by relevance

12345678910>>...15

/OK3568_Linux_fs/u-boot/drivers/misc/
H A Drockchip-otp.c1 // SPDX-License-Identifier: GPL-2.0
15 #include <rockchip-otp.h>
19 int (*read)(struct udevice *dev, int offset, void *buf, int size);
22 static int rockchip_otp_wait_status(struct rockchip_otp_platdata *otp, in rockchip_otp_wait_status() argument
27 while (!(readl(otp->base + OTPC_INT_STATUS) & flag)) { in rockchip_otp_wait_status()
29 delay--; in rockchip_otp_wait_status()
32 return -ETIMEDOUT; in rockchip_otp_wait_status()
37 writel(flag, otp->base + OTPC_INT_STATUS); in rockchip_otp_wait_status()
42 static int rockchip_otp_ecc_enable(struct rockchip_otp_platdata *otp, in rockchip_otp_ecc_enable() argument
48 otp->base + OTPC_SBPI_CTRL); in rockchip_otp_ecc_enable()
[all …]
H A DKconfig62 bool "Rockchip e-fuse support"
65 Enable (read-only) access for the e-fuse block found in Rockchip
67 or through child-nodes that are generated based on the e-fuse map
75 bool "Rockchip OTP Support"
79 from otp, such as cpu-leakage.
85 This driver support Decompress IP built-in Rockchip SoC, support
92 This driver support Decompress IP built-in Rockchip SoC, support
96 bool "Rockchip Secure OTP Support"
99 Support read & write secure otp.
102 bool "Rockchip Secure OTP Support in spl"
[all …]
/OK3568_Linux_fs/kernel/drivers/nvmem/
H A Drockchip-otp.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Rockchip OTP Driver
6 * Author: Finley Xiao <finley.xiao@rock-chips.com>
15 #include <linux/nvmem-provider.h>
23 /* OTP Register Offsets */
56 /* OTP Register bits and masks */
108 * +----------+------------------+--------------------------+
110 * +----------+------------------+--------------------------+
112 * +----------+------------------+--------------------------+
114 * +----------+------------------+--------------------------+
[all …]
H A Dmxs-ocotp.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Freescale MXS On-Chip OTP driver
15 #include <linux/nvmem-provider.h>
36 static int mxs_ocotp_wait(struct mxs_ocotp *otp) in mxs_ocotp_wait() argument
41 while (timeout--) { in mxs_ocotp_wait()
42 status = readl(otp->base); in mxs_ocotp_wait()
51 return -EBUSY; in mxs_ocotp_wait()
53 return -EIO; 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()
[all …]
H A Drockchip-secure-otp.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Rockchip Secure OTP Driver
6 * Author: Hisping <hisping.lin@rock-chips.com>
15 #include <linux/nvmem-provider.h>
36 int size; member
39 int (*init)(struct rockchip_otp *otp);
44 if (ver->impl_id == TEE_IMPL_ID_OPTEE) in optee_ctx_match()
51 * func: read data from non-protected oem zone in secure otp
71 return -EINVAL; in rockchip_read_oem_non_protected_otp()
78 /* Open context with OP-TEE driver */ in rockchip_read_oem_non_protected_otp()
[all …]
H A Dstm32-romem.c1 // SPDX-License-Identifier: GPL-2.0
3 * STM32 Factory-programmed memory read access driver
5 * Copyright (C) 2017, STMicroelectronics - All Rights Reserved
9 #include <linux/arm-smccc.h>
12 #include <linux/nvmem-provider.h>
15 /* BSEC secure service access from non-secure */
25 /* 32 (x 32-bits) lower shadow registers */
29 int size; member
45 *buf8++ = readb_relaxed(priv->base + i); in stm32_romem_read()
50 static int stm32_bsec_smc(u8 op, u32 otp, u32 data, u32 *result) in stm32_bsec_smc() argument
[all …]
H A Dlpc18xx_otp.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * NXP LPC18xx/43xx OTP memory NVMEM driver
10 * TODO: add support for writing OTP register via API in boot ROM.
15 #include <linux/nvmem-provider.h>
22 * LPC18xx OTP memory contains 4 banks with 4 32-bit words. Bank 0 starts
44 struct lpc18xx_otp *otp = context; in lpc18xx_otp_read() local
50 if (count > (LPC18XX_OTP_SIZE - index)) in lpc18xx_otp_read()
51 count = LPC18XX_OTP_SIZE - index; in lpc18xx_otp_read()
54 *buf++ = readl(otp->base + i * LPC18XX_OTP_WORD_SIZE); in lpc18xx_otp_read()
60 .name = "lpc18xx-otp",
[all …]
H A Dbcm-ocotp.c19 #include <linux/nvmem-provider.h>
25 * # of tries for OTP Status. The time to execute a command varies. The slowest
31 /* Sequence to enable OTP program */
56 #define OTPC_CMD_MASK (BIT(OTPC_COMMAND_COMMAND_WIDTH) - 1)
57 #define OTPC_ADDR_MASK (BIT(OTPC_CPUADDR_REG_OTPC_CPU_ADDRESS_WIDTH) - 1)
125 return -EAGAIN; in poll_cpu_status()
168 u32 address = offset / priv->config->word_size; in bcm_otpc_read()
172 set_command(priv->base, OTPC_CMD_READ); in bcm_otpc_read()
173 set_cpu_address(priv->base, address++); in bcm_otpc_read()
174 set_start_bit(priv->base); in bcm_otpc_read()
[all …]
/OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/nvmem/
H A Drockchip-secure-otp.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/nvmem/rockchip-secure-otp.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Rockchip secure otp device tree bindings
10 - Hisping <hisping.lin@rock-chips.com>
13 - $ref: "nvmem.yaml#"
18 - rockchip,secure-otp
20 rockchip,otp-size:
22 size of non-protected oem zone in secure otp, In bytes.
[all …]
H A Drockchip-otp.txt1 Rockchip internal OTP (One Time Programmable) memory device tree bindings
4 - compatible: Should be one of the following.
5 - "rockchip,px30-otp" - for PX30 SoCs.
6 - "rockchip,rk3308-otp" - for RK3308 SoCs.
7 - reg: Should contain the registers location and size
8 - clocks: Must contain an entry for each entry in clock-names.
9 - clock-names: Should be "otp", "apb_pclk" and "phy".
12 - resets: Must contain an entry for each entry in reset-names.
14 - reset-names: Should be "phy".
19 otp: otp@ff290000 {
[all …]
H A Dlpc1850-otp.txt1 * NXP LPC18xx OTP memory
3 Internal OTP (One Time Programmable) memory for NXP LPC18xx/43xx devices.
6 - compatible: Should be "nxp,lpc1850-otp"
7 - reg: Must contain an entry with the physical base address and length
8 for each entry in reg-names.
9 - address-cells: must be set to 1.
10 - size-cells: must be set to 1.
15 otp: otp@40045000 {
16 compatible = "nxp,lpc1850-otp";
18 #address-cells = <1>;
[all …]
H A Dst,stm32-romem.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/nvmem/st,stm32-romem.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: STMicroelectronics STM32 Factory-programmed data bindings
10 This represents STM32 Factory-programmed read only non-volatile area: locked
11 flash, OTP, read-only HW regs... This contains various information such as:
16 - Fabrice Gasnier <fabrice.gasnier@st.com>
19 - $ref: "nvmem.yaml#"
24 - st,stm32f4-otp
[all …]
H A Dbrcm,ocotp.txt1 Broadcom OTP memory controller
4 - compatible: "brcm,ocotp" for the first generation Broadcom OTPC which is used
5 in Cygnus and supports 32 bit read/write. Use "brcm,ocotp-v2" for the second
7 64-bit read/write.
8 - reg: Base address of the OTP controller.
9 - brcm,ocotp-size: Amount of memory available, in 32 bit words
13 otp: otp@301c800 {
16 brcm,ocotp-size = <2048>;
/OK3568_Linux_fs/kernel/drivers/media/i2c/
H A Dotp_eeprom.c1 // SPDX-License-Identifier: GPL-2.0
11 * 1. fix otp info null issue.
13 * 1. add buf read optimize otp read speed.
14 * 2. add mutex for otp read.
22 #include <linux/rk-camera-module.h>
25 #include <media/v4l2-ctrls.h>
26 #include <media/v4l2-device.h>
50 return -EINVAL; in read_reg_otp()
54 msgs[0].addr = client->addr; in read_reg_otp()
60 msgs[1].addr = client->addr; in read_reg_otp()
[all …]
H A Dov5670.c1 // SPDX-License-Identifier: GPL-2.0
9 * V0.0X01.0X03 add otp function.
26 #include <media/v4l2-async.h>
27 #include <media/media-entity.h>
28 #include <media/v4l2-common.h>
29 #include <media/v4l2-ctrls.h>
30 #include <media/v4l2-device.h>
31 #include <media/v4l2-event.h>
32 #include <media/v4l2-fwnode.h>
33 #include <media/v4l2-image-sizes.h>
[all …]
/OK3568_Linux_fs/kernel/drivers/mtd/nand/onenand/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
43 bool "OneNAND OTP Support"
46 a One-Time Programmable Block memory area.
47 Also, 1st Block of NAND Flash Array can be used as OTP.
49 The OTP block can be read, programmed and locked using the same
51 OTP block cannot be erased.
53 OTP block is fully-guaranteed to be a valid block.
59 Since the device is equipped with two DataRAMs, and two-plane NAND
63 So MTD regards it as 4KiB page size and 256KiB block size
H A Donenand_base.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright © 2005-2009 Samsung Electronics
9 * Adrian Hunter <ext-adrian.hunter@nokia.com>:
10 * auto-placement support, read-while load support, various fixes
13 * Flex-OneNAND support
15 * OTP support
39 /* Default Flex-OneNAND boundary and lock respectively */
40 static int flex_bdry[MAX_DIES * 2] = { -1, 0, -1, 0 };
43 MODULE_PARM_DESC(flex_bdry, "SLC Boundary information for Flex-OneNAND"
47 " : 0->Set boundary in unlocked status"
[all …]
/OK3568_Linux_fs/kernel/drivers/net/wireless/intel/iwlwifi/
H A Diwl-eeprom-read.c8 * Copyright(c) 2008 - 2014 Intel Corporation. All rights reserved.
9 * Copyright(c) 2018 - 2019 Intel Corporation
25 * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497
29 * Copyright(c) 2005 - 2014 Intel Corporation. All rights reserved.
30 * Copyright(c) 2018 - 2019 Intel Corporation
63 #include "iwl-drv.h"
64 #include "iwl-debug.h"
65 #include "iwl-eeprom-read.h"
66 #include "iwl-io.h"
67 #include "iwl-prph.h"
[all …]
/OK3568_Linux_fs/u-boot/include/mtd/
H A Dmtd-abi.h2 * Copyright © 1999-2010 David Woodhouse <dwmw2@infradead.org> et al.
4 * SPDX-License-Identifier: GPL-2.0+
46 * @MTD_OPS_RAW: data are transferred as-is, with no error correction;
60 * struct mtd_write_req - data structure for requesting a write operation
65 * @usr_data: user-provided data buffer
66 * @usr_oob: user-provided OOB buffer
71 * writes in various modes. To write to OOB-only, set @usr_data == NULL, and to
72 * write data-only, set @usr_oob == NULL. However, setting both @usr_data and
112 /* OTP mode selection */
120 __u32 size; /* Total size of the MTD */ member
[all …]
/OK3568_Linux_fs/kernel/include/uapi/mtd/
H A Dmtd-abi.h1 /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
3 * Copyright © 1999-2010 David Woodhouse <dwmw2@infradead.org> et al.
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
55 * @MTD_OPS_RAW: data are transferred as-is, with no error correction;
69 * struct mtd_write_req - data structure for requesting a write operation
74 * @usr_data: user-provided data buffer
75 * @usr_oob: user-provided OOB buffer
80 * writes in various modes. To write to OOB-only, set @usr_data == NULL, and to
81 * write data-only, set @usr_oob == NULL. However, setting both @usr_data and
123 /* OTP mode selection */
[all …]
/OK3568_Linux_fs/prebuilts/gcc/linux-x86/arm/gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf/arm-none-linux-gnueabihf/libc/usr/include/mtd/
H A Dmtd-abi.h1 /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
3 * Copyright © 1999-2010 David Woodhouse <dwmw2@infradead.org> et al.
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
55 * @MTD_OPS_RAW: data are transferred as-is, with no error correction;
69 * struct mtd_write_req - data structure for requesting a write operation
74 * @usr_data: user-provided data buffer
75 * @usr_oob: user-provided OOB buffer
80 * writes in various modes. To write to OOB-only, set @usr_data == NULL, and to
81 * write data-only, set @usr_oob == NULL. However, setting both @usr_data and
122 /* OTP mode selection */
[all …]
/OK3568_Linux_fs/prebuilts/gcc/linux-x86/aarch64/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/aarch64-none-linux-gnu/libc/usr/include/mtd/
H A Dmtd-abi.h1 /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
3 * Copyright © 1999-2010 David Woodhouse <dwmw2@infradead.org> et al.
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
55 * @MTD_OPS_RAW: data are transferred as-is, with no error correction;
69 * struct mtd_write_req - data structure for requesting a write operation
74 * @usr_data: user-provided data buffer
75 * @usr_oob: user-provided OOB buffer
80 * writes in various modes. To write to OOB-only, set @usr_data == NULL, and to
81 * write data-only, set @usr_oob == NULL. However, setting both @usr_data and
122 /* OTP mode selection */
[all …]
/OK3568_Linux_fs/kernel/drivers/net/wireless/mediatek/mt76/mt7603/
H A Deeprom.c1 // SPDX-License-Identifier: ISC
21 return -ETIMEDOUT; in mt7603_efuse_read()
51 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()
54 return -ENOMEM; in mt7603_efuse_init()
56 buf = dev->mt76.otp.data; in mt7603_efuse_init()
104 struct device_node *np = dev->mt76.dev->of_node; in mt7603_apply_cal_free_data()
105 u8 *eeprom = dev->mt76.eeprom.data; in mt7603_apply_cal_free_data()
109 if (!np || !of_property_read_bool(np, "mediatek,eeprom-merge-otp")) in mt7603_apply_cal_free_data()
[all …]
/OK3568_Linux_fs/kernel/include/linux/ssb/
H A Dssb_driver_chipcommon.h1 /* SPDX-License-Identifier: GPL-2.0-only */
30 #define SSB_CHIPCO_CAP_UARTGPIO 0x00000020 /* UARTs on GPIO 15-12 */
47 #define SSB_CHIPCO_CAP_OTPS 0x00380000 /* OTP size */
52 #define SSB_CHIPCO_CAP_64BIT 0x08000000 /* 64-bit Backplane */
61 #define SSB_CHIPCO_OTPS 0x0010 /* OTP status */
67 #define SSB_CHIPCO_OTPC 0x0014 /* OTP control */
74 #define SSB_CHIPCO_OTPP 0x0018 /* OTP prog */
395 /** Chip specific Chip-Status register contents. */
398 #define SSB_CHIPCO_CHST_4325_DEFCIS_SEL 0 /* OTP is powered up, use def. CIS, no SPROM */
399 #define SSB_CHIPCO_CHST_4325_SPROM_SEL 1 /* OTP is powered up, SPROM is present */
[all …]
/OK3568_Linux_fs/kernel/drivers/net/wireless/mediatek/mt76/mt7615/
H A Deeprom.c1 // SPDX-License-Identifier: ISC
25 return -ETIMEDOUT; in mt7615_efuse_read()
54 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()
57 return -ENOMEM; in mt7615_efuse_init()
59 buf = dev->mt76.otp.data; in mt7615_efuse_init()
75 ret = mt76_eeprom_init(&dev->mt76, MT7615_EEPROM_FULL_SIZE); in mt7615_eeprom_load()
84 u16 val = get_unaligned_le16(dev->eeprom.data); in mt7615_check_eeprom()
92 return -EINVAL; in mt7615_check_eeprom()
[all …]

12345678910>>...15