• Mauro Carvalho Chehab's avatar
    [media] bdisp-debug: don't try to divide by s64 · 82d229cd
    Mauro Carvalho Chehab authored
    There are several warnings there, on some architectures, related
    to dividing a s32 by a s64 value:
    
    drivers/media/platform/sti/bdisp/bdisp-debug.c:594: warning: comparison of distinct pointer types lacks a cast
    drivers/media/platform/sti/bdisp/bdisp-debug.c:594: warning: right shift count >= width of type
    drivers/media/platform/sti/bdisp/bdisp-debug.c:594: warning: passing argument 1 of '__div64_32' from incompatible pointer type
    drivers/media/platform/sti/bdisp/bdisp-debug.c:595: warning: comparison of distinct pointer types lacks a cast
    drivers/media/platform/sti/bdisp/bdisp-debug.c:595: warning: right shift count >= width of type
    drivers/media/platform/sti/bdisp/bdisp-debug.c:595: warning: passing argument 1 of '__div64_32' from incompatible pointer type  CC [M]  drivers/media/tuners/mt2060.o
    drivers/media/platform/sti/bdisp/bdisp-debug.c:596: warning: comparison of distinct pointer types lacks a cast
    drivers/media/platform/sti/bdisp/bdisp-debug.c:596: warning: right shift count >= width of type
    drivers/media/platform/sti/bdisp/bdisp-debug.c:596: warning: passing argument 1 of '__div64_32' from incompatible pointer type
    drivers/media/platform/sti/bdisp/bdisp-debug.c:597: warning: comparison of distinct pointer types lacks a cast
    drivers/media/platform/sti/bdisp/bdisp-debug.c:597: warning: right shift count >= width of type
    drivers/media/platform/sti/bdisp/bdisp-debug.c:597: warning: passing argument 1 of '__div64_32' from incompatible pointer type
    
    That doesn't make much sense. What the driver is actually trying
    to do is to divide one second by a value. So, check the range
    before dividing. That warrants the right result and will remove
    the warnings on non-64 bits archs.
    
    Also fixes this warning:
    drivers/media/platform/sti/bdisp/bdisp-debug.c:588: warning: comparison of distinct pointer types lacks a cast
    
    by using div64_s64() instead of calling do_div() directly.
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
    82d229cd
bdisp-debug.c 16.1 KB