|
@@ -64,9 +64,21 @@ static int hda_bus_match(struct device *dev, struct device_driver *drv)
|
|
|
return 1;
|
|
return 1;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+static int hda_uevent(struct device *dev, struct kobj_uevent_env *env)
|
|
|
|
|
+{
|
|
|
|
|
+ char modalias[32];
|
|
|
|
|
+
|
|
|
|
|
+ snd_hdac_codec_modalias(dev_to_hdac_dev(dev), modalias,
|
|
|
|
|
+ sizeof(modalias));
|
|
|
|
|
+ if (add_uevent_var(env, "MODALIAS=%s", modalias))
|
|
|
|
|
+ return -ENOMEM;
|
|
|
|
|
+ return 0;
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
struct bus_type snd_hda_bus_type = {
|
|
struct bus_type snd_hda_bus_type = {
|
|
|
.name = "hdaudio",
|
|
.name = "hdaudio",
|
|
|
.match = hda_bus_match,
|
|
.match = hda_bus_match,
|
|
|
|
|
+ .uevent = hda_uevent,
|
|
|
};
|
|
};
|
|
|
EXPORT_SYMBOL_GPL(snd_hda_bus_type);
|
|
EXPORT_SYMBOL_GPL(snd_hda_bus_type);
|
|
|
|
|
|