video: bridge-uclass: add inline fallbacks of video bridge functions
authorSvyatoslav Ryhel <clamor95@gmail.com>
Fri, 21 Feb 2025 11:09:30 +0000 (13:09 +0200)
committerSvyatoslav Ryhel <clamor95@gmail.com>
Sat, 8 Mar 2025 14:35:46 +0000 (16:35 +0200)
Hide video bridge functions behind config condition and add inline
fallbacks to avoid erroring out when using header without config
enabled.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
include/video_bridge.h

index 7158deb..00e9804 100644 (file)
@@ -80,6 +80,7 @@ struct video_bridge_ops {
 #define video_bridge_get_ops(dev) \
                ((struct video_bridge_ops *)(dev)->driver->ops)
 
+#if CONFIG_IS_ENABLED(VIDEO_BRIDGE)
 /**
  * video_bridge_attach() - attach a video bridge
  *
@@ -128,5 +129,37 @@ int video_bridge_get_display_timing(struct udevice *dev,
  * Return: number of bytes read, <=0 for error
  */
 int video_bridge_read_edid(struct udevice *dev, u8 *buf, int buf_size);
+#else
+static inline int video_bridge_attach(struct udevice *dev)
+{
+       return -ENOSYS;
+}
+
+static inline int video_bridge_set_backlight(struct udevice *dev, int percent)
+{
+       return -ENOSYS;
+}
+
+static inline int video_bridge_set_active(struct udevice *dev, bool active)
+{
+       return -ENOSYS;
+}
+
+static inline int video_bridge_check_attached(struct udevice *dev)
+{
+       return -ENOSYS;
+}
+
+static inline int video_bridge_get_display_timing(struct udevice *dev,
+                                                 struct display_timing *timing)
+{
+       return -ENOSYS;
+}
+
+static inline int video_bridge_read_edid(struct udevice *dev, u8 *buf, int buf_size)
+{
+       return -ENOSYS;
+}
+#endif /* CONFIG_VIDEO_BRIDGE */
 
 #endif