More workarounds for building with 6.14+ kernels
diff --git a/include/linux/device.h b/include/linux/device.h
index d678995..b67d270 100644
--- a/include/linux/device.h
+++ b/include/linux/device.h
@@ -87,7 +87,7 @@
 struct bus_type {
 	const char		*name;
 
-	int (*match)(struct device *dev, struct device_driver *drv);
+	int (*match)(struct device *dev, const struct device_driver *drv);
 	int (*uevent)(const struct device *dev, struct kobj_uevent_env *env);
 	int (*probe)(struct device *dev);
 	int (*remove)(struct device *dev);
diff --git a/include/linux/pm.h b/include/linux/pm.h
index 0dd7c3b..0c23593 100644
--- a/include/linux/pm.h
+++ b/include/linux/pm.h
@@ -81,6 +81,11 @@
 	.runtime_resume = resume_fn, \
 	.runtime_idle = idle_fn,
 
+#define SYSTEM_SLEEP_PM_OPS(suspend_fn, resume_fn) \
+	SET_SYSTEM_SLEEP_PM_OPS(suspend_fn, resume_fn)
+#define RUNTIME_PM_OPS(suspend_fn, resume_fn, idle_fn) \
+	SET_RUNTIME_PM_OPS(suspend_fn, resume_fn, idle_fn)
+
 #define pm_sleep_ptr(x)		(x)
 #define pm_ptr(x)		(x)
 
diff --git a/include/wrapper.h b/include/wrapper.h
index 46a2ba6..5cff53e 100644
--- a/include/wrapper.h
+++ b/include/wrapper.h
@@ -448,4 +448,6 @@
 #define device_property_count_u32(dev, p)	0
 #define fwnode_property_count_u32(fw, p)	0
 
+#define str_yes_no(x)	((x) ? "yes" : "no")
+
 #endif /* __HDA_WRAPPER_H */
diff --git a/snd-wrapper.c b/snd-wrapper.c
index 0c4a6a0..a084e7a 100644
--- a/snd-wrapper.c
+++ b/snd-wrapper.c
@@ -1007,3 +1007,22 @@
 	cdev->brightness_set_blocking(cdev, *vals);
 }
 #endif
+
+/* XXX */
+
+struct snd_parsed_hdmi_eld;
+
+int snd_parse_eld(struct device *dev, struct snd_parsed_hdmi_eld *e,
+		  const unsigned char *buf, int size)
+{
+	return 0;
+}
+
+void snd_show_eld(struct device *dev, struct snd_parsed_hdmi_eld *e)
+{
+}
+
+void snd_print_eld_info(struct snd_parsed_hdmi_eld *e,
+			struct snd_info_buffer *buffer)
+{
+}