/Linux-v6.1/Documentation/devicetree/bindings/nvmem/ |
D | imx-ocotp.yaml | 4 $id: http://devicetree.org/schemas/nvmem/imx-ocotp.yaml# 7 title: Freescale i.MX6 On-Chip OTP Controller (OCOTP) 25 - fsl,imx6q-ocotp 26 - fsl,imx6sl-ocotp 27 - fsl,imx6sx-ocotp 28 - fsl,imx6ul-ocotp 29 - fsl,imx6ull-ocotp 30 - fsl,imx7d-ocotp 31 - fsl,imx6sll-ocotp 32 - fsl,imx7ulp-ocotp [all …]
|
D | fsl,scu-ocotp.yaml | 4 $id: http://devicetree.org/schemas/nvmem/fsl,scu-ocotp.yaml# 7 title: i.MX SCU Client Device Node - OCOTP bindings based on SCU Message Protocol 21 - fsl,imx8qm-scu-ocotp 22 - fsl,imx8qxp-scu-ocotp 33 Byte offset within OCOTP where the MAC address is stored 48 ocotp { 49 compatible = "fsl,imx8qxp-scu-ocotp";
|
D | brcm,ocotp.txt | 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 9 - brcm,ocotp-size: Amount of memory available, in 32 bit words 14 compatible = "brcm,ocotp"; 16 brcm,ocotp-size = <2048>;
|
D | vf610-ocotp.txt | 5 - "fsl,vf610-ocotp", "syscon" for VF5xx/VF6xx 9 clocks : ipg clock we associate with the OCOTP peripheral 13 ocotp: ocotp@400a5000 { 14 compatible = "fsl,vf610-ocotp", "syscon";
|
D | mxs-ocotp.yaml | 4 $id: http://devicetree.org/schemas/nvmem/mxs-ocotp.yaml# 18 - fsl,imx23-ocotp 19 - fsl,imx28-ocotp 42 ocotp: efuse@8002c000 { 43 compatible = "fsl,imx28-ocotp";
|
D | sunplus,sp7021-ocotp.yaml | 5 $id: http://devicetree.org/schemas/nvmem/sunplus,sp7021-ocotp.yaml# 18 const: sunplus,sp7021-ocotp 64 compatible = "sunplus,sp7021-ocotp";
|
/Linux-v6.1/drivers/soc/imx/ |
D | soc-imx.c | 32 struct regmap *ocotp = NULL; in imx_soc_device_init() local 86 ocotp_compat = "fsl,imx6sl-ocotp"; in imx_soc_device_init() 90 ocotp_compat = "fsl,imx6q-ocotp"; in imx_soc_device_init() 94 ocotp_compat = "fsl,imx6sx-ocotp"; in imx_soc_device_init() 98 ocotp_compat = "fsl,imx6q-ocotp"; in imx_soc_device_init() 102 ocotp_compat = "fsl,imx6ul-ocotp"; in imx_soc_device_init() 106 ocotp_compat = "fsl,imx6ull-ocotp"; in imx_soc_device_init() 110 ocotp_compat = "fsl,imx6ull-ocotp"; in imx_soc_device_init() 114 ocotp_compat = "fsl,imx6sll-ocotp"; in imx_soc_device_init() 118 ocotp_compat = "fsl,imx7d-ocotp"; in imx_soc_device_init() [all …]
|
D | soc-imx8m.c | 62 np = of_find_compatible_node(NULL, NULL, "fsl,imx8mq-ocotp"); in imx8mq_soc_revision() 106 np = of_find_compatible_node(NULL, NULL, "fsl,imx8mm-ocotp"); in imx8mm_soc_uid()
|
/Linux-v6.1/drivers/nvmem/ |
D | Makefile | 12 obj-$(CONFIG_NVMEM_BCM_OCOTP) += nvmem-bcm-ocotp.o 13 nvmem-bcm-ocotp-y := bcm-ocotp.o 18 obj-$(CONFIG_NVMEM_IMX_OCOTP) += nvmem-imx-ocotp.o 19 nvmem-imx-ocotp-y := imx-ocotp.o 20 obj-$(CONFIG_NVMEM_IMX_OCOTP_SCU) += nvmem-imx-ocotp-scu.o 21 nvmem-imx-ocotp-scu-y := imx-ocotp-scu.o 40 obj-$(CONFIG_NVMEM_MXS_OCOTP) += nvmem-mxs-ocotp.o 41 nvmem-mxs-ocotp-y := mxs-ocotp.o 65 nvmem_sunplus_ocotp-y := sunplus-ocotp.o 72 obj-$(CONFIG_NVMEM_VF610_OCOTP) += nvmem-vf610-ocotp.o [all …]
|
D | vf610-ocotp.c | 7 * Based on the barebox ocotp driver, 22 /* OCOTP Register Offsets */ 31 /* OCOTP Register bits and masks */ 149 struct vf610_ocotp *ocotp = context; in vf610_ocotp_read() local 150 void __iomem *base = ocotp->base; in vf610_ocotp_read() 158 writel(ocotp->timing, base + OCOTP_TIMING); in vf610_ocotp_read() 176 dev_dbg(ocotp->dev, "Error reading from fuse address %x\n", in vf610_ocotp_read() 200 .name = "ocotp", 207 { .compatible = "fsl,vf610-ocotp", }, 248 .name = "vf610-ocotp", [all …]
|
D | imx-ocotp.c | 3 * i.MX6 OCOTP fusebox driver 9 * Based on the barebox ocotp driver, 186 dev_err(priv->dev, "failed to prepare/enable ocotp clk\n"); in imx_ocotp_read() 338 dev_err(priv->dev, "failed to prepare/enable ocotp clk\n"); in imx_ocotp_write() 392 * protect programming same OTP bit twice, before program OCOTP will in imx_ocotp_write() 485 .name = "imx-ocotp", 582 { .compatible = "fsl,imx6q-ocotp", .data = &imx6q_params }, 583 { .compatible = "fsl,imx6sl-ocotp", .data = &imx6sl_params }, 584 { .compatible = "fsl,imx6sx-ocotp", .data = &imx6sx_params }, 585 { .compatible = "fsl,imx6ul-ocotp", .data = &imx6ul_params }, [all …]
|
D | mxs-ocotp.c | 21 /* OCOTP registers and bits */ 75 /* open OCOTP banks for read */ in mxs_ocotp_read() 108 .name = "mxs-ocotp", 127 { .compatible = "fsl,imx23-ocotp", .data = &imx23_data }, 128 { .compatible = "fsl,imx28-ocotp", .data = &imx28_data }, 189 .name = "mxs-ocotp", 196 MODULE_DESCRIPTION("driver for OCOTP in i.MX23/i.MX28");
|
D | Kconfig | 48 will be called nvmem-bcm-ocotp. 74 This is a driver for the On-Chip OTP Controller (OCOTP) available on 79 will be called nvmem-imx-ocotp. 86 This is a driver for the SCU On-Chip OTP Controller (OCOTP) 190 will be called nvmem-mxs-ocotp. 308 This is a driver for the On-chip OTP controller (OCOTP) available 313 will be called nvmem-sunplus-ocotp. 350 tristate "VF610 SoC OCOTP support" 354 This is a driver for the 'OCOTP' peripheral available on Vybrid 358 be called nvmem-vf610-ocotp.
|
D | imx-ocotp-scu.c | 3 * i.MX8 OCOTP fusebox driver 222 .name = "imx-scu-ocotp", 232 { .compatible = "fsl,imx8qxp-scu-ocotp", (void *)&imx8qxp_data }, 233 { .compatible = "fsl,imx8qm-scu-ocotp", (void *)&imx8qm_data }, 273 MODULE_DESCRIPTION("i.MX8 SCU OCOTP fuse box driver");
|
D | sunplus-ocotp.c | 4 * The OCOTP driver for Sunplus SP7021 147 .name = "sp-ocotp", 209 { .compatible = "sunplus,sp7021-ocotp", .data = &sp_otp_v0 }, 217 .name = "sunplus,sp7021-ocotp",
|
D | bcm-ocotp.c | 222 .name = "bcm-ocotp", 231 { .compatible = "brcm,ocotp", .data = &otp_map }, 232 { .compatible = "brcm,ocotp-v2", .data = &otp_map_v2 }, 276 err = device_property_read_u32(dev, "brcm,ocotp-size", &num_words); in bcm_otpc_probe()
|
D | lpc18xx_otp.c | 7 * Based on the imx ocotp driver,
|
/Linux-v6.1/arch/arm/mach-mxs/ |
D | mach-mxs.c | 99 np = of_find_compatible_node(NULL, NULL, "fsl,ocotp"); in mxs_get_ocotp() 106 * clk_enable(hbus_clk) for ocotp can be skipped in mxs_get_ocotp() 121 /* open OCOTP banks for read */ in mxs_get_ocotp() 150 pr_err("%s: timeout in reading OCOTP\n", __func__); in mxs_get_ocotp() 166 const u32 *ocotp = mxs_get_ocotp(); in update_fec_mac_prop() local 194 * OCOTP only stores the last 4 octets for each mac address, in update_fec_mac_prop() 225 val = ocotp[i]; in update_fec_mac_prop() 387 const u32 *ocotp = mxs_get_ocotp(); in mxs_machine_init() local 406 soc_uid = system_serial_low = ocotp[HW_OCOTP_OPS3]; in mxs_machine_init() 408 soc_uid = system_serial_high = ocotp[HW_OCOTP_OPS2]; in mxs_machine_init() [all …]
|
/Linux-v6.1/Documentation/devicetree/bindings/thermal/ |
D | imx-thermal.yaml | 34 - description: Phandle to the calibration data provided by ocotp 35 - description: Phandle to the temperature grade provided by ocotp 50 TEMPMON calibration data, e.g. OCOTP on imx6q. The details about 74 compatible = "fsl,imx6sx-ocotp", "syscon";
|
/Linux-v6.1/Documentation/devicetree/bindings/firmware/ |
D | fsl,scu.yaml | 38 ocotp: 40 OCOTP controller node provided by the SCU 41 $ref: /schemas/nvmem/fsl,scu-ocotp.yaml 181 ocotp { 182 compatible = "fsl,imx8qxp-scu-ocotp";
|
/Linux-v6.1/drivers/cpufreq/ |
D | imx6q-cpufreq.c | 230 np = of_find_compatible_node(NULL, NULL, "fsl,imx6q-ocotp"); in imx6q_opp_check_speed_grading() 237 dev_err(dev, "failed to map ocotp\n"); in imx6q_opp_check_speed_grading() 290 np = of_find_compatible_node(NULL, NULL, "fsl,imx6ul-ocotp"); in imx6ul_opp_check_speed_grading() 293 "fsl,imx6ull-ocotp"); in imx6ul_opp_check_speed_grading() 300 dev_err(dev, "failed to map ocotp\n"); in imx6ul_opp_check_speed_grading() 399 dev_err_probe(cpu_dev, ret, "failed to read ocotp\n"); in imx6q_cpufreq_probe()
|
/Linux-v6.1/arch/arm/boot/dts/ |
D | imx6ull.dtsi | 34 &ocotp { 35 compatible = "fsl,imx6ull-ocotp", "syscon";
|
D | vfxxx.dtsi | 497 ocotp: ocotp@400a5000 { label 498 compatible = "fsl,vf610-ocotp", "syscon";
|
/Linux-v6.1/arch/arm64/boot/dts/freescale/ |
D | imx8dxl.dtsi | 140 ocotp: ocotp { label 141 compatible = "fsl,imx8qxp-scu-ocotp";
|
D | imx8qxp.dtsi | 227 ocotp: ocotp { label 228 compatible = "fsl,imx8qxp-scu-ocotp";
|