questions about kernel patches - especially <mtdblock-jz>-related - binary code inside?

Mirko Vogt lists at nanl.de
Wed Aug 5 08:39:55 EDT 2009


Hey!

I ran over the patchset for the NanoNote for the linux kernel 2.6.28[1]
based on the original patchset for the kernel 2.6.24 provided by
ingenic[2] itself.

Scrolling through the original patch by ingenic[2] there seems to be
binary code in ELF-format within, e.g. line: 45430.

{{{
diff
-aurN /develop/source/02os/linux-2.6.24.3/drivers/mtd/mtdblock-jz.o.original linux-2.6.24.3/drivers/mtd/mtdblock-jz.o.original
--- /develop/source/02os/linux-2.6.24.3/drivers/mtd/mtdblock-jz.o.original	1970-01-01 08:00:00.000000000 +0800
+++ linux-2.6.24.3/drivers/mtd/mtdblock-jz.o.original	2009-05-04
10:14:04.000000000 +0800
@@ -0,0 +1,57 @@
+^?ELF^A^A^A@^@[..]
}}}

This file is referenced in the patched drivers/mtd/Makefile as you can
see in [2], line 45315 - it is intended to be used instead of the
vanilla mtdblock module of the vanilla kernel.

I looked and googled around for a "mtdblock-jz.c" but didn't find
anything.

So my questions now are (some depend on others):
a) is there a reason why there's binary code within the kernel patch?
b) is there source available?
c) what's the difference between mtdblock-jz and the vanilla mtdblock?

Afterwards I took a look at the patchset adjusted to work with kernel
2.6.28 and openwrt[1] - done by marek, xiangfu and florian to see,
whether they found the source, just took the binary code over, purged it
out, etc.

Looking at 200-drivers.patch[3] (line 11588), I have no clue what
happened :)

There is no ELF-file "mtdblock-jz.o.original" created - so far so good!
But there's another file touched (drivers/mtd/mtdblock-jz.uu) - which
isn't by the oringinal patch by ingenic and also does not look like
source code (line 11588).

{{{
--- /dev/null
+++ b/drivers/mtd/mtdblock-jz.uu
@@ -0,0 +1,535 @@
+begin 644 mtdblock-jz.o
+M?T5,1@$!`0````````````$`"``!```````````````T-0```1``4#0[..]
}}}

So I now have even more questions :)
a) what is the format of the mtdblock-jz.uu file?
b) is this derived from the original patch by ingenic / in which way it
relates to "mtdblock-jz.o.original" created by the original patch?
c) what is it good for?
d) if it is binary - is there source code available?


I'm confused about that and would be happy if anybody can help me
understanding what's the situation and what was done for what reason :)

Thanks a lot in advance!

mirko


[1]
http://github.com/lindnermarek/openwrt-x-burst/tree/e1d42be853e79b1b510fb89e9739216592d0dcba/target/linux/xburst/patches-2.6.28
[2]
ftp://ftp.ingenic.cn/3sw/01linux/02kernel/linux-2.6.24/linux-2.6.24.3-jz-20090506.patch.gz
[3]
http://github.com/lindnermarek/openwrt-x-burst/blob/e1d42be853e79b1b510fb89e9739216592d0dcba/target/linux/xburst/patches-2.6.28/200-drivers.patch


-- 
This email address is used for mailinglist purposes only.
Non-mailinglist emails will be dropped automatically.
If you want to get in contact with me personally, please mail to:
mirko.vogt <at> nanl <dot> de






More information about the discussion mailing list


interactive