video: xilinxfb: Fix OF probing on little-endian systems
authorMichal Simek <monstr@monstr.eu>
Mon, 3 Jun 2013 10:13:16 +0000 (12:13 +0200)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Wed, 26 Jun 2013 10:31:28 +0000 (13:31 +0300)
DTB is always big-endian that's why it is necessary
to properly convert value (*p).
It is automatically done in of_property_read_u32().

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/video/xilinxfb.c

index af0b4fd..aecd15d 100644 (file)
@@ -406,8 +406,7 @@ static int xilinxfb_release(struct device *dev)
 static int xilinxfb_of_probe(struct platform_device *op)
 {
        const u32 *prop;
-       u32 *p;
-       u32 tft_access;
+       u32 tft_access = 0;
        struct xilinxfb_platform_data pdata;
        struct resource res;
        int size, rc;
@@ -427,8 +426,8 @@ static int xilinxfb_of_probe(struct platform_device *op)
         * To check whether the core is connected directly to DCR or PLB
         * interface and initialize the tft_access accordingly.
         */
-       p = (u32 *)of_get_property(op->dev.of_node, "xlnx,dcr-splb-slave-if", NULL);
-       tft_access = p ? *p : 0;
+       of_property_read_u32(op->dev.of_node, "xlnx,dcr-splb-slave-if",
+                            &tft_access);
 
        /*
         * Fill the resource structure if its direct PLB interface