summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHui Wang <jason77.wang@gmail.com>2012-06-27 16:19:18 +0800
committerMarc Kleine-Budde <mkl@pengutronix.de>2012-06-27 11:12:07 +0200
commit85f2f834e85517307f13e30e630a5fc86f757cb5 (patch)
tree397706dd2e9e5d3189ab7d7756dd6f7b0e55eee0
parent6bc96d047fe32d76ef79f3195c52a542edf7c705 (diff)
downloadlinux-85f2f834e85517307f13e30e630a5fc86f757cb5.tar.bz2
can: flexcan: use be32_to_cpup to handle the value of dt entry
The freescale arm i.MX series platform can support this driver, and usually the arm cpu works in the little endian mode by default, while device tree entry value is stored in big endian format, we should use be32_to_cpup() to handle them, after modification, it can work well both on the le cpu and be cpu. Cc: stable <stable@vger.kernel.org> # v3.2+ Cc: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: Hui Wang <jason77.wang@gmail.com> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
-rw-r--r--drivers/net/can/flexcan.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/can/flexcan.c b/drivers/net/can/flexcan.c
index 38c0690df5c8..81d474102378 100644
--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
@@ -939,12 +939,12 @@ static int __devinit flexcan_probe(struct platform_device *pdev)
return PTR_ERR(pinctrl);
if (pdev->dev.of_node) {
- const u32 *clock_freq_p;
+ const __be32 *clock_freq_p;
clock_freq_p = of_get_property(pdev->dev.of_node,
"clock-frequency", NULL);
if (clock_freq_p)
- clock_freq = *clock_freq_p;
+ clock_freq = be32_to_cpup(clock_freq_p);
}
if (!clock_freq) {