Lines Matching +full:sys +full:- +full:syscon
1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
33 #include <sys/param.h>
34 #include <sys/systm.h>
35 #include <sys/bus.h>
36 #include <sys/rman.h>
37 #include <sys/kernel.h>
38 #include <sys/module.h>
39 #include <sys/gpio.h>
47 #include <dev/syscon/syscon.h>
102 { "rockchip,rk3399-emmc-phy", 1 },
107 struct syscon *syscon; member
112 #define LOWEST_SET_BIT(mask) ((((mask) - 1) & (mask)) ^ (mask))
150 SYSCON_WRITE_4(sc->syscon, GRF_EMMCPHY_CON6, in rk_emmcphy_enable()
156 SYSCON_WRITE_4(sc->syscon, GRF_EMMCPHY_CON0, in rk_emmcphy_enable()
163 SYSCON_WRITE_4(sc->syscon, GRF_EMMCPHY_CON6, (mask << 16) | val); in rk_emmcphy_enable()
168 sc->phy_conf = (struct rk_emmcphy_conf *)ofw_bus_search_compatible(dev, in rk_emmcphy_enable()
169 compat_data)->ocd_data; in rk_emmcphy_enable()
172 error = clk_get_by_ofw_name(dev, 0, "emmcclk", &sc->clk); in rk_emmcphy_enable()
175 sc->clk = NULL; in rk_emmcphy_enable()
179 if (sc->clk) { in rk_emmcphy_enable()
180 error = clk_get_freq(sc->clk, &rate); in rk_emmcphy_enable()
205 SYSCON_WRITE_4(sc->syscon, GRF_EMMCPHY_CON6, (mask << 16) | val); in rk_emmcphy_enable()
209 val = SYSCON_READ_4(sc->syscon, GRF_EMMCPHY_STATUS); in rk_emmcphy_enable()
218 SYSCON_WRITE_4(sc->syscon, GRF_EMMCPHY_CON0, (mask << 16) | val); in rk_emmcphy_enable()
223 SYSCON_WRITE_4(sc->syscon, GRF_EMMCPHY_CON6, (mask << 16) | val); in rk_emmcphy_enable()
245 val = SYSCON_READ_4(sc->syscon, GRF_EMMCPHY_STATUS); in rk_emmcphy_enable()
262 if (ofw_bus_search_compatible(dev, compat_data)->ocd_data == 0) in rk_emmcphy_probe()
289 if (OF_hasprop(xnode, "arasan,soc-ctl-syscon") && in rk_emmcphy_attach()
291 "arasan,soc-ctl-syscon", &sc->syscon) != 0) { in rk_emmcphy_attach()
296 if (sc->syscon == NULL) { in rk_emmcphy_attach()
297 device_printf(dev, "failed to get syscon\n"); in rk_emmcphy_attach()