I haven't met this issue. The first boot would take longer than later boot. So please be patient. You can also check by log(dmesg,logcat) and ps. -- Chen
On Sun, Feb 15, 2009 at 10:57 PM, liuhy <[email protected]> wrote: > > Hi , chen > Thanks for your help. > I followed your steps bellow. > I succeed running android in qemu , but failed running in vmware. > In my vmware, androidboot run well until the cmdline output "eth0 : > link up " , and then stop boot. > After that , I can just input cmdline in it. > > Do you meet this problem , how to slove it ? > Thanks! > > On 1月14日, 下午8时54分, "Chen Yang" <[email protected]> wrote: >> I was tempted to create the installed image directly and through some >> study, it seems that I have already got it. >> You may be able to use it directly with kvm and qemu, and by creating >> the related vmdk files or transform to virtual disks for virtualbox. >> I had thought that the make-live script may help, but it has some >> issues to the paritions. >> >> Here is the steps to create the installed_img directly. >> Before starting, you can add mydroid/out/host/linux-x86/bin to your >> path, thus you can use those host utilities directly. >> >> 1) do a make installer_img compilation, we need some files created to >> save some effort, then change the working directory to that: >> $cd mydroid/out/target/product/eee_701 >> >> 2) create a disk layout config file, you can reference the >> disk_layout.conf under vendor/asus/eee_701/disk_layout.conf >> $vim disk_layout.conf >> with the content: >> start here -- >> device { >> scheme mbr >> >> # bytes in a disk sector (== 1 LBA), must be a power of 2! >> sector_size 512 >> >> # What LBA should the partitions start at? >> start_lba 2048 >> >> # Autodetect disk size if == 0 >> num_lba 0 >> >> partitions { >> sysloader { >> active y >> type linux >> } >> >> recovery { >> active y >> type linux >> } >> >> boot { >> active y >> type linux >> } >> >> cache { >> type linux >> } >> >> system { >> type linux >> } >> >> third_party { >> type linux >> } >> >> data { >> type linux >> } >> }} >> >> --ends here >> >> 3. prepare one mbr file for your image file, >> $cp grub/grub.bin installed.img >> >> 4.prepare your boot.img: >> in boot.img, it basically contains three files: ramdisk, cmdline, kernel >> so you can do like this: >> $mkdir bootimg >> $cp -raf root rootimg >> Since by default, the system.img and userdata.img are built as ext2 >> image, so you can modify the rootimg/init.rc, change those ext3 to >> ext2 and comment those kernel modules. Then you can build the ramdisk >> file by utility mkboots: >> $mkbootfs rootimg | gzip -9 > bootimg/ramdisk >> $echo "console=tty0 console=ttyS1,115200n8 console=tty0 >> androidboot.hardware=eee_701 vga=788" > bootimg/cmdline >> $cp kernel bootimg/kernel >> $genext2fs -b 8192 -m 0 -d bootimg boot.img >> >> 5. prepare dummy image file for cache /third party (maybe optional): >> $mkdir dummy >> $genext2fs -b 8192 -m 0 -N 8 -d dummy dummy.img >> >> 6. create your data.img, the default userdata.img may be too small for >> dalvik-cache. >> $genext2fs -b 81920 -d data -N 512 -m 0 data.img >> >> 7. create your installed image: >> $editdisklbl -l d.conf -i installed.img boot=boot.img >> cache=dummy.img system=system.img third_party=dummy.img data=data.img >> ... >> I/diskutils(31943): Wrote 83886080 bytes to installed.img @ 181839872 >> File edit complete. Wrote 5 images. >> >> 8. accomplished and enjoy >> You can run the installed.img with kvm/qemu. Also you can use the >> installed.img with vmware and virtualbox. >> If you want to use network with kvm/qemu, you may need to compile >> the rtl8139 driver. >> If you want to use ext3, please apply "tune2fs -j your.img". >> >> Enjoy! >> -- >> ChenOn Sun, Jan 11, 2009 at 11:36 AM, Chen Yang <[email protected]> wrote: >> > It looks like that you are missing the vga=788 option, you can >> > reference my post: >> >http://groups.google.com/group/android-porting/msg/b9ffcb185b758b92 >> > to set it and to see whether it can start successfully. >> > Regarding building drivers, you can just issue the command: >> > $make modules >> > and then find those modules and put to the directory I have replied >> > earlier. >> > Hope it helps! >> > -- >> > Chen >> >> > On Sun, Jan 11, 2009 at 11:07 AM, gowtham gowda <[email protected]> wrote: >> >> >> i am running into a blank screen when i use the new kernel image. I >> >> think its because of the older kernel (2.6.25) used in the eee pc >> >> build. And the "menu makeconfig" is compiling the new 2.6.27 kernel, >> >> so the driver modules are mismatching Do you know how to build drivers >> >> for kernel 2.6.27? >> >> >> Thanks, >> >> Gowtham >> >> >> On Jan 10, 12:37 am, "Chen Yang" <[email protected]> wrote: >> >>> I remembered that pmem may be one issue with x86. So with the >> >>> kernel.config, >> >>> you need to disable it, otherwise, it may complain errors in compilation: >> >>> Device Drivers >> >>> [*] Misc devices ---> >> >>> [] Android pmem allocator >> >> >>> Please de-select the pmem part. >> >> >>> Hope it helps! >> >>> -- >> >>> Chen >> >> >>> On Sat, Jan 10, 2009 at 1:35 PM, gowtham gowda <[email protected]> >> >>> wrote: >> >> >>> > works, >> >> >>> > thank you very much. >> >> >>> > Gowtham >> >> >>> > On Jan 10, 12:31 am, "Chen Yang" <[email protected]> wrote: >> >>> >> how about: >> >>> >> $make bzImage >> >> >>> >> -- >> >>> >> Chen >> >> >>> >> On Sat, Jan 10, 2009 at 1:23 PM, gowtham gowda <[email protected]> >> >>> >> wrote: >> >> >>> >> > i am getting this error when i try >> >>> >> > #/mydroid/kernel$ make bzimage >> >>> >> > scripts/kconfig/conf -s arch/x86/Kconfig >> >>> >> > make: *** No rule to make target `bzimage'. Stop. >> >> >>> >> > how do i get past this. >> >> >>> >> > Thanks once again. >> >> >>> >> > Gowtham >> >> >>> >> > On Jan 10, 12:20 am, "Chen Yang" <[email protected]> wrote: >> >>> >> >> For modules, you may need to put under >> >>> >> >> vendor/asus/eee_701/modules directory. >> >>> >> >> You can add the insmod in init.rc >> >>> >> >> or in the init.eee_701.sh >> >>> >> >> It seems that you may need to comment the line in init.eee_701.sh: >> >>> >> >> setprop net.dns1 4.2.2.2 >> >> >>> >> >> For VESAFB, it seems you may need to make built-in, it may doesn't >> >>> >> >> work with modules. >> >>> >> >> For network card, it's ok to be modules. >> >>> >> >> Hope it helps. >> >>> >> >> -- >> >>> >> >> Chen >> >> >>> >> >> On Sat, Jan 10, 2009 at 12:53 PM, gowtham gowda >> >>> >> >> <[email protected]> wrote: >> >> >>> >> >> > Thanks for the reply, >> >> >>> >> >> > one more info, how do we add modules to compile the kernel when >> >>> >> >> > we >> >>> >> >> > select the <M> option in make menuconfig. >> >> >>> >> >> > Thanks, >> >>> >> >> > gowthsm >> >> >>> >> >> > On Jan 9, 11:44 pm, "Chen Yang" <[email protected]> wrote: >> >>> >> >> >> Sorry, I forgot to put the required information to that step: >> >> >>> >> >> >> After that, you should save the .config >> >>> >> >> >> $make bzImage >> >>> >> >> >> Then copy the kernel to vendor/asus/eee_701 >> >>> >> >> >> $cp arch/x86/boot/bzImage ../vendor/asus/eee_701/kernel >> >> >>> >> >> >> Then you can start build the installer_img again. After that >> >>> >> >> >> use your >> >>> >> >> >> installer.img to install in vmware/virtualbox again. >> >> >>> >> >> >> Hope it helps! >> >>> >> >> >> -- >> >>> >> >> >> Chen >> >> >>> >> >> >> On Sat, Jan 10, 2009 at 12:21 PM, gowtham gowda >> >>> >> >> >> <[email protected]> wrote: >> >> >>> >> >> >> > After "make menuconfig" >> >>> >> >> >> > should we just save .config file or should we run "make" to >> >>> >> >> >> > compile a >> >>> >> >> >> > new kernel. >> >> >>> >> >> >> > Thanks, >> >> >>> >> >> >> > Gowtham >> >> >>> >> >> >> > On Jan 9, 3:28 am, "Chen Yang" <[email protected]> wrote: >> >>> >> >> >> >> Some additions to build the kernel for VMWare/VirtualBox: >> >> >>> >> >> >> >> Hope it helps: >> >>> >> >> >> >> $cd mydroid >> >>> >> >> >> >> $cp vendor/asus/eee_701/kernel.config kernel/.config >> >>> >> >> >> >> $cd kernel >> >>> >> >> >> >> $make menuconfig >> >> >>> >> >> >> >> Select the device drivers: >> >> >>> >> >> >> >> For network card: >> >>> >> >> >> >> network device support -> >> >>> >> >> >> >> Ethernet (10 or 100Mbit) ---> >> >>> >> >> >> >> [*] EISA, VLB, PCI and on board controllers >> >>> >> >> >> >> <*> AMD PCnet32 PCI support >> >> >>> >> >> >> >> For VESAFB: >> >>> >> >> >> >> Graphics support ---> >> >>> >> >> >> >> <*> Support for frame buffer devices ---> >> >>> >> >> >> >> [*] VESA VGA graphics support >> >>> >> >> >> >> Console display driver support ---> >> >>> >> >> >> >> <*> Framebuffer Console support >> >>> >> >> >> >> [*] Select compiled-in fonts >> >>> >> >> >> >> [*] VGA 8x8 font >> >>> >> >> >> >> [*] VGA 8x16 font >> >> >>> >> >> >> >> In order to build correctly with 2.6.27, you may apply the >> >>> >> >> >> >> patch from here:http://review.source.android.com/6751 >> >> >>> >> >> >> >> For command line option of vga=788, several approaches: >> >>> >> >> >> >> 1. append the option when the system boots, when it shows >> >>> >> >> >> >> the menu, >> >>> >> >> >> >> you can press 'e' to edit the default entry(2). then 'd' to >> >>> >> >> >> >> delete the >> >>> >> >> >> >> first option line: "cmdline ... ", then 'e' the 0 entry, >> >>> >> >> >> >> which is the >> >>> >> >> >> >> line of " kernel --use-cmd ...", >> >>> >> >> >> >> remove the "--use-cmd-line" and append the option >> >>> >> >> >> >> "androidboot.hardware=eee_701 vga=788" at end of that line >> >>> >> >> >> >> then choose boot. It will enter the vesafb mode correctly. >> >>> >> >> >> >> But you >> >>> >> >> >> >> may need to edit it every time when boot. >> >> >>> >> >> >> >> 2. modify the cmdline in /dev/block/sda3, you can mount it >> >>> >> >> >> >> after you >> >>> >> >> >> >> have successfully boot. to append "vga=788" to cmdline file: >> >>> >> >> >> >> #mkdir /data/boot >> >>> >> >> >> >> #mount -t ext2 /dev/block/sda3 /data/boot >> >>> >> >> >> >> #echo " vga=788" >/data/boot/cmdline >> >>> >> >> >> >> #umount /data/boot >> >>> >> >> >> >> then reboot the vm >> >> >>> >> >> >> >> 3. modify the cmdline creation step in the build, i think >> >>> >> >> >> >> you can get >> >>> >> >> >> >> the in bootable/diskinstaller/config.mk, then you may need >> >>> >> >> >> >> to rebuild >> >>> >> >> >> >> the instaler.img and reinstall it to your vm. >> >> >>> >> >> >> >> Hope it helps! >> >>> >> >> >> >> -- >> >>> >> >> >> >> Chen >> >> >>> >> >> >> >> On Fri, Jan 9, 2009 at 9:23 AM, rukiman >> >>> >> >> >> >> <[email protected]> wrote: >> >> >>> >> >> >> >> > I have got as far as booting Android in VMware thanks to >> >>> >> >> >> >> > Chen Yang's >> >>> >> >> >> >> > post above. I replaced mydroid/vendor/asus/ >> >>> >> >> >> >> > eee_701/ kernel with that of Stargatto's posted above. >> >>> >> >> >> >> > However booting >> >>> >> >> >> >> > up Android with VMware keeps giving me the below error >> >>> >> >> >> >> > over and over. >> >> >>> >> >> >> >> > SurfaceFlinger[XXXX]: segfault at 38 ip XXXXXXXX sp >> >>> >> >> >> >> > XXXXXXXX error 4 >> >>> >> >> >> >> > in libc.so[80100000+49000] >> >> >>> >> >> >> >> > Perphaps my kernel is not ok? How do I build a kernel with >> >>> >> >> >> >> > VESAFB and >> >>> >> >> >> >> > network drivers and where do I specify vga=788? I do not >> >>> >> >> >> >> > know much >> >>> >> >> >> >> > about building kernels so if someone could provide a guide >> >>> >> >> >> >> > that would >> >>> >> >> >> >> > be great. >> >> >>> >> >> >> >> >> 1. Be sure to compile the kernel with VESAFB and add the >> >>> >> >> >> >> >> vga=788 with in >> >>> >> >> >> >> >> cmdline. 800x600 seems to be a quite usable resolution, >> >>> >> >> >> >> >> for 1024x768 and >> >>> >> >> >> >> >> above resolutions, you may meet some performance or >> >>> >> >> >> >> >> execution issues. >> >>> >> >> >> >> >> 2. If you want to use network, you may need to compile >> >>> >> >> >> >> >> the AMD PCNET32 >> >>> >> >> >> >> >> driver. > > > --~--~---------~--~----~------------~-------~--~----~ unsubscribe: [email protected] website: http://groups.google.com/group/android-porting -~----------~----~----~----~------~----~------~--~---
