diff options
author | 2010-10-18 15:33:09 +1000 | |
---|---|---|
committer | 2010-10-18 09:50:09 -0600 | |
commit | bda80da469a93122121de601dd469ce1aaa6effa (patch) | |
tree | 415fed71efabd2b2c529ef489785794354cae58d /drivers/block | |
parent | of: use __be32 types for big-endian device tree data (diff) | |
download | linux-dev-bda80da469a93122121de601dd469ce1aaa6effa.tar.xz linux-dev-bda80da469a93122121de601dd469ce1aaa6effa.zip |
of/xsysace: Fix OF probing on little-endian systems
Convert big-endian DTB to little-endian if necessary.
Signed-off-by: Michal Simek <monstr@monstr.eu>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Diffstat (limited to 'drivers/block')
-rw-r--r-- | drivers/block/xsysace.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/block/xsysace.c b/drivers/block/xsysace.c index 057413bb16e2..66911d360ad6 100644 --- a/drivers/block/xsysace.c +++ b/drivers/block/xsysace.c @@ -1224,7 +1224,8 @@ ace_of_probe(struct platform_device *op, const struct of_device_id *match) bus_width = ACE_BUS_WIDTH_8; /* Call the bus-independant setup code */ - return ace_alloc(&op->dev, id ? *id : 0, physaddr, irq, bus_width); + return ace_alloc(&op->dev, id ? be32_to_cpup(id) : 0, + physaddr, irq, bus_width); } static int __devexit ace_of_remove(struct platform_device *op) |