Lines Matching defs:osc
694 struct acpidisp_out_softc *osc = device_private(self);
702 osc->sc_dev = self;
703 osc->sc_node = ad;
704 osc->sc_log = NULL;
705 osc->sc_mtx = aa->aa_mtx;
706 osc->sc_caps = acpidisp_out_capabilities(ad);
707 osc->sc_brctl = NULL;
709 acpidisp_out_print_capabilities(self, osc->sc_caps);
711 osc->sc_brctl = acpidisp_init_brctl(osc);
712 bc = osc->sc_brctl;
720 if (acpidisp_get_brightness(osc, &bc->bc_current) &&
721 acpidisp_set_brightness(osc, bc->bc_current)) {
725 osc->sc_brctl = NULL;
727 if (acpidisp_quirk_get_brightness(osc)) {
731 acpidisp_print_brctl(self, osc->sc_brctl);
736 (void)acpi_register_notify(osc->sc_node, acpidisp_out_notify_handler);
739 acpidisp_out_sysctl_setup(osc);
750 struct acpidisp_out_softc *osc = device_private(self);
751 struct acpidisp_brctl *bc = osc->sc_brctl;
755 if (osc->sc_log != NULL)
756 sysctl_teardown(&osc->sc_log);
758 acpi_deregister_notify(osc->sc_node);
788 struct acpidisp_out_softc *osc = device_private(self);
790 mutex_enter(osc->sc_mtx);
791 if (osc->sc_brctl != NULL)
792 (void)acpidisp_get_brightness(osc, &osc->sc_brctl->bc_current);
793 mutex_exit(osc->sc_mtx);
801 struct acpidisp_out_softc *osc = device_private(self);
803 mutex_enter(osc->sc_mtx);
804 if (osc->sc_brctl != NULL)
805 (void)acpidisp_set_brightness(osc, osc->sc_brctl->bc_current);
806 mutex_exit(osc->sc_mtx);
948 struct acpidisp_out_softc *osc = device_private(context);
967 aprint_debug_dev(osc->sc_dev,
971 aprint_error_dev(osc->sc_dev,
977 (void)AcpiOsExecute(OSL_NOTIFY_HANDLER, callback, osc);
997 struct acpidisp_out_softc *osc, *last_osc;
1018 osc = device_private(od->od_device);
1020 if (!(osc->sc_caps & ACPI_DISP_OUT_CAP__DSS))
1022 if (acpidisp_get_state(osc, &state.raw))
1025 if (acpidisp_get_status(osc, &status.raw)) {
1041 last_osc = osc;
1087 struct acpidisp_out_softc *osc = arg;
1088 struct acpidisp_brctl *bc = osc->sc_brctl;
1098 mutex_enter(osc->sc_mtx);
1100 if (acpidisp_get_brightness(osc, &bc->bc_current))
1106 if (acpidisp_set_brightness(osc, bc->bc_current))
1108 if (acpidisp_get_brightness(osc, &bc->bc_current))
1113 out: mutex_exit(osc->sc_mtx);
1119 struct acpidisp_out_softc *osc = arg;
1120 struct acpidisp_brctl *bc = osc->sc_brctl;
1130 mutex_enter(osc->sc_mtx);
1132 if (acpidisp_get_brightness(osc, &bc->bc_current))
1138 if (acpidisp_set_brightness(osc, bc->bc_current))
1140 if (acpidisp_get_brightness(osc, &bc->bc_current))
1145 out: mutex_exit(osc->sc_mtx);
1151 struct acpidisp_out_softc *osc = arg;
1152 struct acpidisp_brctl *bc = osc->sc_brctl;
1160 mutex_enter(osc->sc_mtx);
1162 (void)acpidisp_get_brightness(osc, &bc->bc_current);
1172 (void)acpidisp_set_brightness(osc, bc->bc_current);
1174 mutex_exit(osc->sc_mtx);
1180 struct acpidisp_out_softc *osc = arg;
1181 struct acpidisp_brctl *bc = osc->sc_brctl;
1190 mutex_enter(osc->sc_mtx);
1193 (void)acpidisp_set_brightness(osc, bc->bc_current);
1195 mutex_exit(osc->sc_mtx);
1243 acpidisp_out_sysctl_setup(struct acpidisp_out_softc *osc)
1248 if ((osc->sc_brctl != NULL) ||
1249 (osc->sc_caps & ACPI_DISP_OUT_CAP__DCS) ||
1250 (osc->sc_caps & ACPI_DISP_OUT_CAP__DGS)) {
1252 if (osc->sc_brctl != NULL) {
1254 if ((sysctl_createv(&osc->sc_log, 0, NULL, &rnode,
1260 if ((sysctl_createv(&osc->sc_log, 0, &rnode, &rnode,
1261 0, CTLTYPE_NODE, device_xname(osc->sc_dev),
1268 if (osc->sc_brctl != NULL) {
1269 (void)sysctl_createv(&osc->sc_log, 0, &rnode, NULL,
1272 acpidisp_out_sysctl_brightness, 0, (void *)osc, 0,
1277 if (osc->sc_caps & ACPI_DISP_OUT_CAP__DCS) {
1278 (void)sysctl_createv(&osc->sc_log, 0, &rnode, NULL,
1281 acpidisp_out_sysctl_status, 0, (void *)osc, 0,
1285 if (osc->sc_caps & ACPI_DISP_OUT_CAP__DGS) {
1288 if (osc->sc_caps & ACPI_DISP_OUT_CAP__DSS)
1293 (void)sysctl_createv(&osc->sc_log, 0, &rnode, NULL,
1296 acpidisp_out_sysctl_state, 0, (void *)osc, 0,
1304 aprint_error_dev(osc->sc_dev, "couldn't add sysctl nodes\n");
1380 struct acpidisp_out_softc *osc;
1385 osc = node.sysctl_data;
1387 mutex_enter(osc->sc_mtx);
1388 error = acpidisp_get_status(osc, &val);
1389 mutex_exit(osc->sc_mtx);
1406 struct acpidisp_out_softc *osc;
1411 osc = node.sysctl_data;
1413 mutex_enter(osc->sc_mtx);
1414 error = acpidisp_get_state(osc, &val);
1415 mutex_exit(osc->sc_mtx);
1425 mutex_enter(osc->sc_mtx);
1426 error = acpidisp_set_state(osc, val);
1427 mutex_exit(osc->sc_mtx);
1437 struct acpidisp_out_softc *osc;
1443 osc = node.sysctl_data;
1444 bc = osc->sc_brctl;
1448 mutex_enter(osc->sc_mtx);
1449 (void)acpidisp_get_brightness(osc, &bc->bc_current);
1451 mutex_exit(osc->sc_mtx);
1464 mutex_enter(osc->sc_mtx);
1466 error = acpidisp_set_brightness(osc, bc->bc_current);
1467 mutex_exit(osc->sc_mtx);
1578 struct acpidisp_out_softc *osc;
1604 osc = device_private(ad->ad_device);
1611 hdl = osc->sc_node->ad_handle;
1632 device_xname(osc->sc_dev),
1635 od->od_device = osc->sc_dev;
1642 device_xname(osc->sc_dev));
1658 acpidisp_init_brctl(const struct acpidisp_out_softc *osc)
1660 ACPI_HANDLE hdl = osc->sc_node->ad_handle;
1670 if (!(osc->sc_caps & ACPI_DISP_OUT_CAP__BCL))
1743 aprint_error_dev(osc->sc_dev, "failed to evaluate %s.%s: %s\n",
1785 acpidisp_get_status(const struct acpidisp_out_softc *osc, uint32_t *valuep)
1787 ACPI_HANDLE hdl = osc->sc_node->ad_handle;
1791 if (!(osc->sc_caps & ACPI_DISP_OUT_CAP__DCS))
1796 aprint_error_dev(osc->sc_dev, "failed to evaluate %s.%s: %s\n",
1807 device_xname(osc->sc_dev), "status", *valuep));
1813 acpidisp_get_state(const struct acpidisp_out_softc *osc, uint32_t *valuep)
1815 ACPI_HANDLE hdl = osc->sc_node->ad_handle;
1819 if (!(osc->sc_caps & ACPI_DISP_OUT_CAP__DGS))
1824 aprint_error_dev(osc->sc_dev, "failed to evaluate %s.%s: %s\n",
1835 device_xname(osc->sc_dev), "state", *valuep));
1841 acpidisp_set_state(const struct acpidisp_out_softc *osc, uint32_t value)
1843 ACPI_HANDLE hdl = osc->sc_node->ad_handle;
1848 device_xname(osc->sc_dev), "state", value));
1850 if (!(osc->sc_caps & ACPI_DISP_OUT_CAP__DSS))
1856 aprint_error_dev(osc->sc_dev, "failed to evaluate %s.%s: %s\n",
1865 acpidisp_get_brightness(const struct acpidisp_out_softc *osc, uint8_t *valuep)
1867 ACPI_HANDLE hdl = osc->sc_node->ad_handle;
1871 if (!(osc->sc_caps & ACPI_DISP_OUT_CAP__BQC))
1874 if (osc->sc_brctl->bc_bqc_broken) {
1875 *valuep = osc->sc_brctl->bc_current;
1881 aprint_error_dev(osc->sc_dev, "failed to evaluate %s.%s: %s\n",
1892 device_xname(osc->sc_dev), "brightness", *valuep));
1903 acpidisp_quirk_get_brightness(const struct acpidisp_out_softc *osc)
1909 bc = osc->sc_brctl;
1914 error = acpidisp_get_brightness(osc, &bc->bc_current);
1925 aprint_error_dev(osc->sc_dev,
1932 error = acpidisp_set_brightness(osc, bc->bc_current);
1936 error = acpidisp_get_brightness(osc, &bc->bc_current);
1942 aprint_normal_dev(osc->sc_dev, "_BQC broken, enabling quirk\n");
1948 return acpidisp_set_brightness(osc, bc->bc_current);
1952 acpidisp_set_brightness(const struct acpidisp_out_softc *osc, uint8_t value)
1954 ACPI_HANDLE hdl = osc->sc_node->ad_handle;
1959 device_xname(osc->sc_dev), "brightness", value));
1961 if (!(osc->sc_caps & ACPI_DISP_OUT_CAP__BCM))
1967 aprint_error_dev(osc->sc_dev, "failed to evaluate %s.%s: %s\n",