Hi,

This patch replaces a switch statement using 64 bit values with the
if/else equivalent in order to prevent a call __ucmpdi2 generated by
some versions of gcc (verified with gcc-4.1.2 20060928):

        drivers/built-in.o: In function `v4l2_norm_to_name':
        (.text+0x71100): undefined reference to `__ucmpdi2'

Signed-off-by: Stelian Pop <[EMAIL PROTECTED]>

---

 drivers/media/video/v4l2-common.c |  126 ++++++++++++++++++-------------------
 1 files changed, 62 insertions(+), 64 deletions(-)

diff --git a/drivers/media/video/v4l2-common.c 
b/drivers/media/video/v4l2-common.c
index 752c82c..0c3c2f6 100644
--- a/drivers/media/video/v4l2-common.c
+++ b/drivers/media/video/v4l2-common.c
@@ -91,70 +91,68 @@ char *v4l2_norm_to_name(v4l2_std_id id)
 {
        char *name;
 
-       switch (id) {
-       case V4L2_STD_PAL:
-               name="PAL";             break;
-       case V4L2_STD_PAL_BG:
-               name="PAL-BG";          break;
-       case V4L2_STD_PAL_DK:
-               name="PAL-DK";          break;
-       case V4L2_STD_PAL_B:
-               name="PAL-B";           break;
-       case V4L2_STD_PAL_B1:
-               name="PAL-B1";          break;
-       case V4L2_STD_PAL_G:
-               name="PAL-G";           break;
-       case V4L2_STD_PAL_H:
-               name="PAL-H";           break;
-       case V4L2_STD_PAL_I:
-               name="PAL-I";           break;
-       case V4L2_STD_PAL_D:
-               name="PAL-D";           break;
-       case V4L2_STD_PAL_D1:
-               name="PAL-D1";          break;
-       case V4L2_STD_PAL_K:
-               name="PAL-K";           break;
-       case V4L2_STD_PAL_M:
-               name="PAL-M";           break;
-       case V4L2_STD_PAL_N:
-               name="PAL-N";           break;
-       case V4L2_STD_PAL_Nc:
-               name="PAL-Nc";          break;
-       case V4L2_STD_PAL_60:
-               name="PAL-60";          break;
-       case V4L2_STD_NTSC:
-               name="NTSC";            break;
-       case V4L2_STD_NTSC_M:
-               name="NTSC-M";          break;
-       case V4L2_STD_NTSC_M_JP:
-               name="NTSC-M-JP";       break;
-       case V4L2_STD_NTSC_443:
-               name="NTSC-443";        break;
-       case V4L2_STD_NTSC_M_KR:
-               name="NTSC-M-KR";       break;
-       case V4L2_STD_SECAM:
-               name="SECAM";           break;
-       case V4L2_STD_SECAM_DK:
-               name="SECAM-DK";        break;
-       case V4L2_STD_SECAM_B:
-               name="SECAM-B";         break;
-       case V4L2_STD_SECAM_D:
-               name="SECAM-D";         break;
-       case V4L2_STD_SECAM_G:
-               name="SECAM-G";         break;
-       case V4L2_STD_SECAM_H:
-               name="SECAM-H";         break;
-       case V4L2_STD_SECAM_K:
-               name="SECAM-K";         break;
-       case V4L2_STD_SECAM_K1:
-               name="SECAM-K1";        break;
-       case V4L2_STD_SECAM_L:
-               name="SECAM-L";         break;
-       case V4L2_STD_SECAM_LC:
-               name="SECAM-LC";        break;
-       default:
-               name="Unknown";         break;
-       }
+       if (id == V4L2_STD_PAL)
+               name = "PAL";
+       else if (id == V4L2_STD_PAL_BG)
+               name = "PAL-BG";
+       else if (id == V4L2_STD_PAL_DK)
+               name = "PAL-DK";
+       else if (id == V4L2_STD_PAL_B)
+               name = "PAL-B";
+       else if (id == V4L2_STD_PAL_B1)
+               name = "PAL-B1";
+       else if (id == V4L2_STD_PAL_G)
+               name = "PAL-G";
+       else if (id == V4L2_STD_PAL_H)
+               name = "PAL-H";
+       else if (id == V4L2_STD_PAL_I)
+               name = "PAL-I";
+       else if (id == V4L2_STD_PAL_D)
+               name = "PAL-D";
+       else if (id == V4L2_STD_PAL_D1)
+               name = "PAL-D1";
+       else if (id == V4L2_STD_PAL_K)
+               name = "PAL-K";
+       else if (id == V4L2_STD_PAL_M)
+               name = "PAL-M";
+       else if (id == V4L2_STD_PAL_N)
+               name = "PAL-N";
+       else if (id == V4L2_STD_PAL_Nc)
+               name = "PAL-Nc";
+       else if (id == V4L2_STD_PAL_60)
+               name = "PAL-60";
+       else if (id == V4L2_STD_NTSC)
+               name = "NTSC";
+       else if (id == V4L2_STD_NTSC_M)
+               name = "NTSC-M";
+       else if (id == V4L2_STD_NTSC_M_JP)
+               name = "NTSC-M-JP";
+       else if (id == V4L2_STD_NTSC_443)
+               name = "NTSC-443";
+       else if (id == V4L2_STD_NTSC_M_KR)
+               name = "NTSC-M-KR";
+       else if (id == V4L2_STD_SECAM)
+               name = "SECAM";
+       else if (id == V4L2_STD_SECAM_DK)
+               name = "SECAM-DK";
+       else if (id == V4L2_STD_SECAM_B)
+               name = "SECAM-B";
+       else if (id == V4L2_STD_SECAM_D)
+               name = "SECAM-D";
+       else if (id == V4L2_STD_SECAM_G)
+               name = "SECAM-G";
+       else if (id == V4L2_STD_SECAM_H)
+               name = "SECAM-H";
+       else if (id == V4L2_STD_SECAM_K)
+               name = "SECAM-K";
+       else if (id == V4L2_STD_SECAM_K1)
+               name = "SECAM-K1";
+       else if (id == V4L2_STD_SECAM_L)
+               name = "SECAM-L";
+       else if (id == V4L2_STD_SECAM_LC)
+               name = "SECAM-LC";
+       else
+               name = "Unknown";
 
        return name;
 }

-- 
Stelian Pop <[EMAIL PROTECTED]>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to