aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Woodhouse <dwmw2@infradead.org>2007-04-23 07:07:17 -0400
committerDavid Woodhouse <dwmw2@infradead.org>2007-04-23 07:07:17 -0400
commit566865a2a4791c9290155f651ee0c2c606db0b1d (patch)
treee4dd0114aa60857937a98dc89aca201afc0c8595
parent3e67fe4543333048e486d7f360a0e2ae5d76c053 (diff)
[JFFS2] Fix cross-endian build.
When compiling a LE-capable JFFS2 on PowerPC, wbuf.c fails to compile: fs/jffs2/wbuf.c:973: error: braced-group within expression allowed only inside a function fs/jffs2/wbuf.c:973: error: initializer element is not constant fs/jffs2/wbuf.c:973: error: (near initialization for ‘oob_cleanmarker.magic’) fs/jffs2/wbuf.c:974: error: braced-group within expression allowed only inside a function fs/jffs2/wbuf.c:974: error: initializer element is not constant fs/jffs2/wbuf.c:974: error: (near initialization for ‘oob_cleanmarker.nodetype’) fs/jffs2/wbuf.c:975: error: braced-group within expression allowed only inside a function fs/jffs2/wbuf.c:976: error: initializer element is not constant fs/jffs2/wbuf.c:976: error: (near initialization for ‘oob_cleanmarker.totlen’) Provide constant_cpu_to_je{16,32} functions, and use them for initialising the offending structure. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
-rw-r--r--fs/jffs2/nodelist.h9
-rw-r--r--fs/jffs2/wbuf.c6
2 files changed, 12 insertions, 3 deletions
diff --git a/fs/jffs2/nodelist.h b/fs/jffs2/nodelist.h
index 4178b4b55948..382662cc61e7 100644
--- a/fs/jffs2/nodelist.h
+++ b/fs/jffs2/nodelist.h
@@ -40,6 +40,9 @@
40#define cpu_to_je32(x) ((jint32_t){x}) 40#define cpu_to_je32(x) ((jint32_t){x})
41#define cpu_to_jemode(x) ((jmode_t){os_to_jffs2_mode(x)}) 41#define cpu_to_jemode(x) ((jmode_t){os_to_jffs2_mode(x)})
42 42
43#define constant_cpu_to_je16(x) ((jint16_t){x})
44#define constant_cpu_to_je32(x) ((jint32_t){x})
45
43#define je16_to_cpu(x) ((x).v16) 46#define je16_to_cpu(x) ((x).v16)
44#define je32_to_cpu(x) ((x).v32) 47#define je32_to_cpu(x) ((x).v32)
45#define jemode_to_cpu(x) (jffs2_to_os_mode((x).m)) 48#define jemode_to_cpu(x) (jffs2_to_os_mode((x).m))
@@ -48,6 +51,9 @@
48#define cpu_to_je32(x) ((jint32_t){cpu_to_be32(x)}) 51#define cpu_to_je32(x) ((jint32_t){cpu_to_be32(x)})
49#define cpu_to_jemode(x) ((jmode_t){cpu_to_be32(os_to_jffs2_mode(x))}) 52#define cpu_to_jemode(x) ((jmode_t){cpu_to_be32(os_to_jffs2_mode(x))})
50 53
54#define constant_cpu_to_je16(x) ((jint16_t){__constant_cpu_to_be16(x)})
55#define constant_cpu_to_je32(x) ((jint32_t){__constant_cpu_to_be32(x)})
56
51#define je16_to_cpu(x) (be16_to_cpu(x.v16)) 57#define je16_to_cpu(x) (be16_to_cpu(x.v16))
52#define je32_to_cpu(x) (be32_to_cpu(x.v32)) 58#define je32_to_cpu(x) (be32_to_cpu(x.v32))
53#define jemode_to_cpu(x) (be32_to_cpu(jffs2_to_os_mode((x).m))) 59#define jemode_to_cpu(x) (be32_to_cpu(jffs2_to_os_mode((x).m)))
@@ -56,6 +62,9 @@
56#define cpu_to_je32(x) ((jint32_t){cpu_to_le32(x)}) 62#define cpu_to_je32(x) ((jint32_t){cpu_to_le32(x)})
57#define cpu_to_jemode(x) ((jmode_t){cpu_to_le32(os_to_jffs2_mode(x))}) 63#define cpu_to_jemode(x) ((jmode_t){cpu_to_le32(os_to_jffs2_mode(x))})
58 64
65#define constant_cpu_to_je16(x) ((jint16_t){__constant_cpu_to_le16(x)})
66#define constant_cpu_to_je32(x) ((jint32_t){__constant_cpu_to_le32(x)})
67
59#define je16_to_cpu(x) (le16_to_cpu(x.v16)) 68#define je16_to_cpu(x) (le16_to_cpu(x.v16))
60#define je32_to_cpu(x) (le32_to_cpu(x.v32)) 69#define je32_to_cpu(x) (le32_to_cpu(x.v32))
61#define jemode_to_cpu(x) (le32_to_cpu(jffs2_to_os_mode((x).m))) 70#define jemode_to_cpu(x) (le32_to_cpu(jffs2_to_os_mode((x).m)))
diff --git a/fs/jffs2/wbuf.c b/fs/jffs2/wbuf.c
index f9da0e755a3e..f87f11af7086 100644
--- a/fs/jffs2/wbuf.c
+++ b/fs/jffs2/wbuf.c
@@ -970,9 +970,9 @@ exit:
970 970
971static const struct jffs2_unknown_node oob_cleanmarker = 971static const struct jffs2_unknown_node oob_cleanmarker =
972{ 972{
973 .magic = cpu_to_je16(JFFS2_MAGIC_BITMASK), 973 .magic = constant_cpu_to_je16(JFFS2_MAGIC_BITMASK),
974 .nodetype = cpu_to_je16(JFFS2_NODETYPE_CLEANMARKER), 974 .nodetype = constant_cpu_to_je16(JFFS2_NODETYPE_CLEANMARKER),
975 .totlen = cpu_to_je32(8) 975 .totlen = constant_cpu_to_je32(8)
976}; 976};
977 977
978/* 978/*