Thread (8 messages) flat view 8 messages, 4 authors, 2011-06-28

[RFC 1/8] drivers: add generic remoteproc framework

From: Russell King - ARM Linux <hidden>
Date: 2011-06-27 23:31:15
Also in: linux-omap, lkml

On Mon, Jun 27, 2011 at 02:49:58PM -0600, Grant Likely wrote:
quoted
+struct {
+      char magic[4] = { 'R', 'P', 'R', 'C' };
+      u32 version;
+      u32 header_len;
+      char header[...] = { header_len bytes of unformatted, textual header };
+      struct section {
+          u32 type;
+          u64 da;
+          u32 len;
+          u8 content[...] = { len bytes of binary data };
+      } [ no limit on number of sections ];
+} __packed;
Other have commented on the image format, so I'll skip this bit other
than saying that I agree it would be great to have a common format.
(Don't have the original message to reply to...)

Do we really want to end up with header being 5 bytes, header_len set
as 5, and having to load/store all this data using byte loads/stores ?

If we don't want that, then I suggest we get rid of the packed attribute,
and require stuff to be naturally aligned.

First issue is that struct section could be much better layed out:

struct section {
	u32 type;
	u32 len;
	u64 da;
	u8 content[];
};

and require sizeof(struct section) % sizeof(u64) == 0 - iow, to find
the next section, round len up to sizeof(u64).  Ditto for the header.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help