Lines Matching +full:dev +full:- +full:ctrl

1 // SPDX-License-Identifier: GPL-2.0+
6 * Written by Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
31 u32 ctrl; /* 0x00 efuse control register */ member
55 struct udevice *dev; in dump_efuses() local
61 DM_GET_DRIVER(rockchip_efuse), &dev); in dump_efuses()
63 printf("%s: no misc-device found\n", __func__); in dump_efuses()
67 ret = misc_read(dev, 0, &fuses, sizeof(fuses)); in dump_efuses()
73 printf("efuse-contents:\n"); in dump_efuses()
86 static int rockchip_rk3399_efuse_read(struct udevice *dev, int offset, in rockchip_rk3399_efuse_read() argument
89 struct rockchip_efuse_platdata *plat = dev_get_platdata(dev); in rockchip_rk3399_efuse_read()
91 (struct rockchip_efuse_regs *)plat->base; in rockchip_rk3399_efuse_read()
108 &efuse->ctrl); in rockchip_rk3399_efuse_read()
111 setbits_le32(&efuse->ctrl, in rockchip_rk3399_efuse_read()
114 out_value = readl(&efuse->dout); in rockchip_rk3399_efuse_read()
115 clrbits_le32(&efuse->ctrl, RK3399_STROBE); in rockchip_rk3399_efuse_read()
123 writel(RK3399_PD | RK3399_CSB, &efuse->ctrl); in rockchip_rk3399_efuse_read()
130 static int rockchip_efuse_read(struct udevice *dev, int offset, in rockchip_efuse_read() argument
133 return rockchip_rk3399_efuse_read(dev, offset, buf, size); in rockchip_efuse_read()
140 static int rockchip_efuse_ofdata_to_platdata(struct udevice *dev) in rockchip_efuse_ofdata_to_platdata() argument
142 struct rockchip_efuse_platdata *plat = dev_get_platdata(dev); in rockchip_efuse_ofdata_to_platdata()
144 plat->base = dev_read_addr_ptr(dev); in rockchip_efuse_ofdata_to_platdata()
149 { .compatible = "rockchip,rk3399-efuse" },