davinci: aemif: signedness bug in davinci_aemif_setup_timing()
authorNicolas Kaiser <nikai@nikai.net>
Mon, 15 Nov 2010 18:40:28 +0000 (19:40 +0100)
committerKevin Hilman <khilman@deeprootsystems.com>
Fri, 10 Dec 2010 15:33:51 +0000 (07:33 -0800)
aemif_calc_rate() can return a negative error value, so all the
variables that get tested for this value need to be signed.

The maximum bit width of WSETUP(WSETUP_MAX) appears to be 30 bits
(0xf << 26). Using a signed instead of an unsigned integer
shouldn't make a difference here.

Signed-off-by: Nicolas Kaiser <nikai@nikai.net>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
arch/arm/mach-davinci/aemif.c

index 9c3f500..1ce70a9 100644 (file)
@@ -90,7 +90,7 @@ int davinci_aemif_setup_timing(struct davinci_aemif_timing *t,
                                        void __iomem *base, unsigned cs)
 {
        unsigned set, val;
-       unsigned ta, rhold, rstrobe, rsetup, whold, wstrobe, wsetup;
+       int ta, rhold, rstrobe, rsetup, whold, wstrobe, wsetup;
        unsigned offset = A1CR_OFFSET + cs * 4;
        struct clk *aemif_clk;
        unsigned long clkrate;