Lines Matching defs:wdev
33 struct wmi_device *wdev;
46 static int run_smbios_call(struct wmi_device *wdev)
54 priv = dev_get_drvdata(&wdev->dev);
58 dev_dbg(&wdev->dev, "evaluating: %u/%u [%x,%x,%x,%x]\n",
63 status = wmidev_evaluate_method(wdev, 0, 1, &input, &output);
68 dev_dbg(&wdev->dev, "received type: %d\n", obj->type);
70 dev_dbg(&wdev->dev, "SMBIOS call failed: %llu\n",
76 dev_dbg(&wdev->dev, "result: [%08x,%08x,%08x,%08x]\n",
103 ret = run_smbios_call(priv->wdev);
111 static long dell_smbios_wmi_filter(struct wmi_device *wdev, unsigned int cmd,
120 priv = dev_get_drvdata(&wdev->dev);
126 if (dell_smbios_call_filter(&wdev->dev, &priv->buf->std)) {
127 dev_err(&wdev->dev, "Invalid call %d/%d:%8x\n",
134 ret = run_smbios_call(priv->wdev);
147 static int dell_smbios_wmi_probe(struct wmi_device *wdev, const void *context)
150 container_of(wdev->dev.driver, struct wmi_driver, driver);
160 priv = devm_kzalloc(&wdev->dev, sizeof(struct wmi_smbios_priv),
173 dev_warn(&wdev->dev,
181 ret = set_required_buffer_size(wdev, priv->req_buf_size);
191 wdev->dev.id = 1;
192 ret = dell_smbios_register_device(&wdev->dev, &dell_smbios_wmi_call);
196 priv->wdev = wdev;
197 dev_set_drvdata(&wdev->dev, priv);
209 static int dell_smbios_wmi_remove(struct wmi_device *wdev)
211 struct wmi_smbios_priv *priv = dev_get_drvdata(&wdev->dev);
218 dell_smbios_unregister_device(&wdev->dev);