Lines Matching defs:sc
74 struct syscon_softc *sc = (struct syscon_softc *)self;
87 sc->sc_iot = faa->fa_iot;
89 if (bus_space_map(sc->sc_iot, faa->fa_reg[0].addr,
90 faa->fa_reg[0].size, 0, &sc->sc_ioh)) {
95 regmap_register(faa->fa_node, sc->sc_iot, sc->sc_ioh,
100 simplebus_attach(parent, &sc->sc_sbus.sc_dev, faa);
106 sc->sc_regmap = OF_getpropint(faa->fa_node, "regmap", 0);
107 if (sc->sc_regmap == 0)
118 sc->sc_offset = OF_getpropint(faa->fa_node, "offset", 0);
119 sc->sc_mask = OF_getpropint(faa->fa_node, "mask", 0xffffffff);
120 sc->sc_value = OF_getpropint(faa->fa_node, "value", 0);
127 sc->sc_value = sc->sc_mask;
128 sc->sc_mask = 0xffffffff;
132 syscon_reboot_sc = sc;
135 syscon_poweroff_sc = sc;
144 struct syscon_softc *sc = syscon_reboot_sc;
148 rm = regmap_byphandle(sc->sc_regmap);
152 value = regmap_read_4(rm, sc->sc_offset);
153 value &= ~sc->sc_mask;
154 value |= sc->sc_value;
155 regmap_write_4(rm, sc->sc_offset, value);
162 struct syscon_softc *sc = syscon_poweroff_sc;
166 rm = regmap_byphandle(sc->sc_regmap);
170 value = regmap_read_4(rm, sc->sc_offset);
171 value &= ~sc->sc_mask;
172 value |= sc->sc_value;
173 regmap_write_4(rm, sc->sc_offset, value);