Getting startedSee Kernel-building for the HTC Dream: the basics Work in progress
I have a directory, android, in which is rooted the android sources,
the SDK, various other odds and ends, and this script, called 'env',
which I use as
There appears to be a bunch of cruft built into the kernel wasting memory. This could just be the case for the JesusFreke build I pulled the config from, but probably most of it came from the vanilla Android. There is for example to reason to have both ext2 and ext3 compiled in (ext3 is backwards-compatible). Once 2.6.29 builds, there will be no excuse for anything but ext4, which again can mount ext2 and ext3 (via 'mount -t ext4'). Unfortunately the Wifi code appears to come from HTC as a
binary module, and more unfortunately it uses symbols defined in the
SLAB allocator (there is an option for a SLOB allocator which would
probably be much more appropriate), and even more unfortunately is
built with preemption debugging code, requiring the whole damn kernel
have either preemption debugging or preemption tracing, neither of
which anyone but kernel debuggers want. From include/linux/preempt.h:
This latter is probably because I am using the HTC radio release for the Android Developer Phone (ADP). Hopefully they turn this cruft off for the G1 (I added PREEMPT_TRACER as the lesser evil and it still bloated the kernel a whole bunch).
... Oh bloody hell, the thing apparently hung trying to boot with PREEMPT_TRACER. Let's try DEBUG_PREEMPT instead...
Switched to the 2.6.29 code and have that at least partially working (no Wifi yet). |