media: uvcvideo: New macro uvc_trace_cont
authorRicardo Ribalda <ribalda@chromium.org>
Wed, 23 Dec 2020 13:35:25 +0000 (14:35 +0100)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Wed, 27 Jan 2021 14:06:47 +0000 (15:06 +0100)
Remove all the duplicated code around printk(KERN_CONT, with a new macro.

Suggested-by: Joe Perches <joe@perches.com>
Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/media/usb/uvc/uvc_driver.c
drivers/media/usb/uvc/uvcvideo.h

index 9705641..902c3c0 100644 (file)
@@ -1606,8 +1606,7 @@ static int uvc_scan_chain_entity(struct uvc_video_chain *chain,
 {
        switch (UVC_ENTITY_TYPE(entity)) {
        case UVC_VC_EXTENSION_UNIT:
-               if (uvc_trace_param & UVC_TRACE_PROBE)
-                       printk(KERN_CONT " <- XU %d", entity->id);
+               uvc_trace_cont(UVC_TRACE_PROBE, " <- XU %d", entity->id);
 
                if (entity->bNrInPins != 1) {
                        uvc_trace(UVC_TRACE_DESCR, "Extension unit %d has more "
@@ -1618,8 +1617,7 @@ static int uvc_scan_chain_entity(struct uvc_video_chain *chain,
                break;
 
        case UVC_VC_PROCESSING_UNIT:
-               if (uvc_trace_param & UVC_TRACE_PROBE)
-                       printk(KERN_CONT " <- PU %d", entity->id);
+               uvc_trace_cont(UVC_TRACE_PROBE, " <- PU %d", entity->id);
 
                if (chain->processing != NULL) {
                        uvc_trace(UVC_TRACE_DESCR, "Found multiple "
@@ -1631,8 +1629,7 @@ static int uvc_scan_chain_entity(struct uvc_video_chain *chain,
                break;
 
        case UVC_VC_SELECTOR_UNIT:
-               if (uvc_trace_param & UVC_TRACE_PROBE)
-                       printk(KERN_CONT " <- SU %d", entity->id);
+               uvc_trace_cont(UVC_TRACE_PROBE, " <- SU %d", entity->id);
 
                /* Single-input selector units are ignored. */
                if (entity->bNrInPins == 1)
@@ -1650,27 +1647,22 @@ static int uvc_scan_chain_entity(struct uvc_video_chain *chain,
        case UVC_ITT_VENDOR_SPECIFIC:
        case UVC_ITT_CAMERA:
        case UVC_ITT_MEDIA_TRANSPORT_INPUT:
-               if (uvc_trace_param & UVC_TRACE_PROBE)
-                       printk(KERN_CONT " <- IT %d\n", entity->id);
+               uvc_trace_cont(UVC_TRACE_PROBE, " <- IT %d\n", entity->id);
 
                break;
 
        case UVC_OTT_VENDOR_SPECIFIC:
        case UVC_OTT_DISPLAY:
        case UVC_OTT_MEDIA_TRANSPORT_OUTPUT:
-               if (uvc_trace_param & UVC_TRACE_PROBE)
-                       printk(KERN_CONT " OT %d", entity->id);
+               uvc_trace_cont(UVC_TRACE_PROBE, " OT %d", entity->id);
 
                break;
 
        case UVC_TT_STREAMING:
-               if (UVC_ENTITY_IS_ITERM(entity)) {
-                       if (uvc_trace_param & UVC_TRACE_PROBE)
-                               printk(KERN_CONT " <- IT %d\n", entity->id);
-               } else {
-                       if (uvc_trace_param & UVC_TRACE_PROBE)
-                               printk(KERN_CONT " OT %d", entity->id);
-               }
+               if (UVC_ENTITY_IS_ITERM(entity))
+                       uvc_trace_cont(UVC_TRACE_PROBE, " <- IT %d\n", entity->id);
+               else
+                       uvc_trace_cont(UVC_TRACE_PROBE, " OT %d", entity->id);
 
                break;
 
@@ -1717,13 +1709,11 @@ static int uvc_scan_chain_forward(struct uvc_video_chain *chain,
                        }
 
                        list_add_tail(&forward->chain, &chain->entities);
-                       if (uvc_trace_param & UVC_TRACE_PROBE) {
-                               if (!found)
-                                       printk(KERN_CONT " (->");
+                       if (!found)
+                               uvc_trace_cont(UVC_TRACE_PROBE, " (->");
 
-                               printk(KERN_CONT " XU %d", forward->id);
-                               found = 1;
-                       }
+                       uvc_trace_cont(UVC_TRACE_PROBE, " XU %d", forward->id);
+                       found = 1;
                        break;
 
                case UVC_OTT_VENDOR_SPECIFIC:
@@ -1737,18 +1727,16 @@ static int uvc_scan_chain_forward(struct uvc_video_chain *chain,
                        }
 
                        list_add_tail(&forward->chain, &chain->entities);
-                       if (uvc_trace_param & UVC_TRACE_PROBE) {
-                               if (!found)
-                                       printk(KERN_CONT " (->");
+                       if (!found)
+                               uvc_trace_cont(UVC_TRACE_PROBE, " (->");
 
-                               printk(KERN_CONT " OT %d", forward->id);
-                               found = 1;
-                       }
+                       uvc_trace_cont(UVC_TRACE_PROBE, " OT %d", forward->id);
+                       found = 1;
                        break;
                }
        }
        if (found)
-               printk(KERN_CONT ")");
+               uvc_trace_cont(UVC_TRACE_PROBE, ")");
 
        return 0;
 }
@@ -1773,8 +1761,7 @@ static int uvc_scan_chain_backward(struct uvc_video_chain *chain,
                        break;
                }
 
-               if (uvc_trace_param & UVC_TRACE_PROBE)
-                       printk(KERN_CONT " <- IT");
+               uvc_trace_cont(UVC_TRACE_PROBE, " <- IT");
 
                chain->selector = entity;
                for (i = 0; i < entity->bNrInPins; ++i) {
@@ -1794,15 +1781,13 @@ static int uvc_scan_chain_backward(struct uvc_video_chain *chain,
                                return -EINVAL;
                        }
 
-                       if (uvc_trace_param & UVC_TRACE_PROBE)
-                               printk(KERN_CONT " %d", term->id);
+                       uvc_trace_cont(UVC_TRACE_PROBE, " %d", term->id);
 
                        list_add_tail(&term->chain, &chain->entities);
                        uvc_scan_chain_forward(chain, term, entity);
                }
 
-               if (uvc_trace_param & UVC_TRACE_PROBE)
-                       printk(KERN_CONT "\n");
+               uvc_trace_cont(UVC_TRACE_PROBE, "\n");
 
                id = 0;
                break;
index 11f61ff..6687949 100644 (file)
@@ -758,6 +758,12 @@ do {                                                                       \
                printk(KERN_DEBUG "uvcvideo: " fmt, ##__VA_ARGS__);     \
 } while (0)
 
+#define uvc_trace_cont(flag, fmt, ...)                                 \
+do {                                                                   \
+       if (uvc_trace_param & flag)                                     \
+               pr_cont(fmt, ##__VA_ARGS__);                            \
+} while (0)
+
 #define uvc_warn_once(_dev, warn, fmt, ...)                            \
 do {                                                                   \
        if (!test_and_set_bit(warn, &(_dev)->warnings))                 \