diff --git a/plugins/unifying/fu-plugin-unifying.c b/plugins/unifying/fu-plugin-unifying.c index 98a9c17fc..90a8e36a6 100644 --- a/plugins/unifying/fu-plugin-unifying.c +++ b/plugins/unifying/fu-plugin-unifying.c @@ -278,6 +278,17 @@ gboolean fu_plugin_startup (FuPlugin *plugin, GError **error) { FuPluginData *data = fu_plugin_get_data (plugin); + + /* check the kernel has CONFIG_HIDRAW */ + if (!g_file_test ("/sys/class/hidraw", G_FILE_TEST_IS_DIR)) { + g_set_error_literal (error, + FWUPD_ERROR, + FWUPD_ERROR_NOT_SUPPORTED, + "no kernel support for CONFIG_HIDRAW"); + return FALSE; + } + + /* coldplug */ g_signal_connect (data->ctx, "added", G_CALLBACK (fu_plugin_unifying_device_added_cb), plugin);