Android 2.2 on SmartQ V7 Attempt #2
This time I started with Android 2.1v3 (I think it works better on V7 than Corvus Mod 4 or 5)
Procedure:
Changes to rootfs.tgz
Copied all system files over except wifi
In inti.rc I set ANDROID_BOOTLOGO to 0 (I hope that turns the console on)
In build.prop I changed device identification to my liking, and made sure that the Additional build Properties from the V7 were included
Alsa and gralloc.default libraries were moved from V7 to /lib/hw
Moved 2.6.29 folder to /lib/modules
Changes to homefs.tgz
Removed everything from the Dalvik-cache directory
Set persist.sys.country to US
Set persist.sys.language to en
(I wonder what other variables can be set in ./property/persist.sys.******* ?)
Results:
I got almost the same results as the first attempt. The first boot locked at the end of the loading bar, but it did not shut down. Second boot also locked up, but did not shut down. I am going out on a limb (more accurately clutching at straws) and call that an improvement.
Analysis:
None of the display messages showed up, so I will assume that it either did not get to the portion of the init files or it is only displaying on the serial console. It looks like I need to disassemble the device and hook up the Bus Pirate to the serial output on the board. I don't know enough about what does or does not work so far to try anything reasonably planned.
Hypothesis:
I thought I understood the boot process and how to read the init.rc files. I know I am at a loss when it comes to knowing which libraries are called it what order, so I can't tell if this is a kernel library that is messed up, an init file that is wrong, or if one of the .jar framework files is the issue.
Rant:
I need a more complete reference for Android. I want a chapter on what programs are called up in which order during boot. I want a reference for each library file that shows what it does, who calls it, and what it depends on. Theoretically, Android should be able to be modular enough that the initrd is completely separate from the the rest of the operating system. You could build your root system for the specific hardware and build Android for the class of device. This is the way that the work on porting Android to the HTC Vogue worked, and it spread out to several other devices by using this modular design. I suppose I should go through the development notes there to see if they have a reference like this. It would certainly speed up porting Android to new devices!
Next Time:
For the next attempt I will disassemble my V7 and hook up the bus pirate. Technick on the SmartQMid.com forum posted the settings so that step should be less painful. I need a safer space to work (or fewer cats) and leave the device open so it will be a while. With the lack of Flash for this processor and Netflix's recent announcement of carrier specific Android devices only, my enthusiasm for the Telechips based devices has ebbed a bit.
Generic Plea for Help:
So that you can play along at home, I've uploaded the V7 firmware file to Mediafire. You can use the SmartQV SDK to uncompress the files in Linux, so feel free to make and suggest changes (I ain't doing this blog to look smart!)
http://www.mediafire.com/?z1b6kpimbh9cbja
Procedure:
Changes to rootfs.tgz
Copied all system files over except wifi
In inti.rc I set ANDROID_BOOTLOGO to 0 (I hope that turns the console on)
In build.prop I changed device identification to my liking, and made sure that the Additional build Properties from the V7 were included
Alsa and gralloc.default libraries were moved from V7 to /lib/hw
Moved 2.6.29 folder to /lib/modules
Changes to homefs.tgz
Removed everything from the Dalvik-cache directory
Set persist.sys.country to US
Set persist.sys.language to en
(I wonder what other variables can be set in ./property/persist.sys.******* ?)
Results:
I got almost the same results as the first attempt. The first boot locked at the end of the loading bar, but it did not shut down. Second boot also locked up, but did not shut down. I am going out on a limb (more accurately clutching at straws) and call that an improvement.
Analysis:
None of the display messages showed up, so I will assume that it either did not get to the portion of the init files or it is only displaying on the serial console. It looks like I need to disassemble the device and hook up the Bus Pirate to the serial output on the board. I don't know enough about what does or does not work so far to try anything reasonably planned.
Hypothesis:
I thought I understood the boot process and how to read the init.rc files. I know I am at a loss when it comes to knowing which libraries are called it what order, so I can't tell if this is a kernel library that is messed up, an init file that is wrong, or if one of the .jar framework files is the issue.
Rant:
I need a more complete reference for Android. I want a chapter on what programs are called up in which order during boot. I want a reference for each library file that shows what it does, who calls it, and what it depends on. Theoretically, Android should be able to be modular enough that the initrd is completely separate from the the rest of the operating system. You could build your root system for the specific hardware and build Android for the class of device. This is the way that the work on porting Android to the HTC Vogue worked, and it spread out to several other devices by using this modular design. I suppose I should go through the development notes there to see if they have a reference like this. It would certainly speed up porting Android to new devices!
Next Time:
For the next attempt I will disassemble my V7 and hook up the bus pirate. Technick on the SmartQMid.com forum posted the settings so that step should be less painful. I need a safer space to work (or fewer cats) and leave the device open so it will be a while. With the lack of Flash for this processor and Netflix's recent announcement of carrier specific Android devices only, my enthusiasm for the Telechips based devices has ebbed a bit.
Generic Plea for Help:
So that you can play along at home, I've uploaded the V7 firmware file to Mediafire. You can use the SmartQV SDK to uncompress the files in Linux, so feel free to make and suggest changes (I ain't doing this blog to look smart!)
http://www.mediafire.com/?z1b6kpimbh9cbja
not work
ReplyDeleteAndy, hi:
ReplyDeleteDid you continue to "work" with this?
Regards
Hi Andy,
ReplyDeleteDid you try to continue this project ?
Thanks
No, I stopped working on this when the SmartQMid message board went down. I understand that Rockchip released a newer kernel, and that it's working for Gingerbread on some other tablets. I got distracted with Android x86 for a while and have not gone back to see if I can do anything with this. Given the tablet's age and lack of support for newer kernels, combined with the relatively inexpensive Android 4.x tablets that are coming out, I don't think I will be doing anything further on this tablet. At least until the Kindle app stops working. . .
ReplyDelete