Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/platform/x86/intel/wmi/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 1 kB image not shown  

Quelle  thunderbolt.c   Sprache: C

 
// SPDX-License-Identifier: GPL-2.0
/*
 * WMI Thunderbolt driver
 *
 * Copyright (C) 2017 Dell Inc. All Rights Reserved.
 */


#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt

#include <linux/acpi.h>
#include <linux/device.h>
#include <linux/fs.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/string.h>
#include <linux/sysfs.h>
#include <linux/types.h>
#include <linux/wmi.h>

#define INTEL_WMI_THUNDERBOLT_GUID "86CCFD48-205E-4A77-9C48-2021CBEDE341"

static ssize_t force_power_store(struct device *dev,
     struct device_attribute *attr,
     const char *buf, size_t count)
{
 struct acpi_buffer input;
 acpi_status status;
 u8 mode;

 input.length = sizeof(u8);
 input.pointer = &mode;
 mode = hex_to_bin(buf[0]);
 dev_dbg(dev, "force_power: storing %#x\n", mode);
 if (mode == 0 || mode == 1) {
  status = wmidev_evaluate_method(to_wmi_device(dev), 0, 1, &input, NULL);
  if (ACPI_FAILURE(status)) {
   dev_dbg(dev, "force_power: failed to evaluate ACPI method\n");
   return -ENODEV;
  }
 } else {
  dev_dbg(dev, "force_power: unsupported mode\n");
  return -EINVAL;
 }
 return count;
}

static DEVICE_ATTR_WO(force_power);

static struct attribute *tbt_attrs[] = {
 &dev_attr_force_power.attr,
 NULL
};
ATTRIBUTE_GROUPS(tbt);

static const struct wmi_device_id intel_wmi_thunderbolt_id_table[] = {
 { .guid_string = INTEL_WMI_THUNDERBOLT_GUID },
 { },
};

static struct wmi_driver intel_wmi_thunderbolt_driver = {
 .driver = {
  .name = "intel-wmi-thunderbolt",
  .dev_groups = tbt_groups,
 },
 .id_table = intel_wmi_thunderbolt_id_table,
 .no_singleton = true,
};

module_wmi_driver(intel_wmi_thunderbolt_driver);

MODULE_DEVICE_TABLE(wmi, intel_wmi_thunderbolt_id_table);
MODULE_AUTHOR("Mario Limonciello ");
MODULE_DESCRIPTION("Intel WMI Thunderbolt force power driver");
MODULE_LICENSE("GPL v2");

Messung V0.5
C=97 H=98 G=97

¤ Dauer der Verarbeitung: 0.10 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.