thanks! Unfortunaly, memchunk.vpu=8m memchunk.veu0=4m extra boot options did not work as linux 'Unknown boot option'
i must admit the ramdisk usage and RAM location is a bit confusing to me. :-/ I moved the ramdisk loading init to 0x81008000 (RAM base address + more the 8MB) as you suggested : ## Booting kernel from Legacy Image at 80100000 ... Image Name: Android Linux Kernel Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 2045056 Bytes = 2 MB Load Address: 80008000 Entry Point: 80008000 Verifying Checksum ... OK ## Loading init Ramdisk from Legacy Image at 81008000 ... Image Name: Android Root Filesystem Image Type: ARM Linux RAMDisk Image (uncompressed) Data Size: 206260 Bytes = 201.4 kB Load Address: 80308000 Entry Point: 80308000 Verifying Checksum ... OK Loading Kernel Image ... OK Linux loading console message, shown below, seems to indicate that android ramDISK is mounted: Trying to unpack rootfs image as initramfs... Freeing initrd memory: 200K No "init.rc invalid option" logcat message. The ramdisk mounting issue prevent /init process to execute /init.rc script. This problem is solved. Well at least partially, since Android 2.1 Linux for iMX25 PDK is still in kernel panic state (with no console logcat message), but that is an other topic. I think the thread title "[Kernel 2.6.31 + Eclair 2.1 porting] init.rc commands not interpreted" will not be appropriated anymore. Thanks again. On 1 juil, 17:30, Subramani Venkatesh <[email protected]> wrote: > I suppose ramdisk mounting could be one of those reason why script > files are not able to execute, you better have to move the ramdisk > where it does not overlap with kernel and ram filesystem, as kernel > always relocates when it starts booting, therefore you better make > sure there is 8M to 16M difference between kernel and ramdisk. > > -Subbu > > On Thu, Jul 1, 2010 at 8:07 AM, fpirou <[email protected]> wrote: > > Thanks for your help. > > > below the u-boot command line I run : > > setenv bootargs_android 'setenv bootargs ${bootargs} init=/init > > androidboot.console=ttymxc0 wvga calibration' > > setenv bootargs_base 'setenv bootargs mem=64M rootwait > > console=ttymxc0,115200' > > setenv bootargs_SD 'setenv bootargs ${bootargs} root=/dev/mmcblk0p2' > > setenv bootcmd_SD1 'run bootargs_base bootargs_android bootargs_SD' > > setenv bootcmd_SD2 'mmc read 0 ${loadaddr} 0x800 0x1280;mmc read 0 $ > > {rd_loadaddr} 0x2000 0x258;bootm ${loadaddr} ${rd_loadaddr}' > > setenv bootcmd 'run bootcmd_SD1 bootcmd_SD2' > > setenv loadaddr 0x80100000 > > setenv rd_loadaddr 0x80400000 > > > About nfs, I don't is a root cause here, since I have the same error > > message (init.rc : invalid option) with android 2.1 file system on SD > > card ext2 partitionned (/dev/mmcblk0p2). > > > Do you think it can come from ramDisk mounting problem, because I have > > got this message at linux loading time? > > INITRD: 0x80400040+0x000325b4 overlaps in-use memory region - > > disabling initrd > > > I have read the Android 2.1 requires 128MB of SDRAM, this board has on > > 64MB? if yes, Which version of Android will I be able to run with 64MB > > SDRAM? > > > Find below my init.rc file: > > > on init > > > sysclktz 0 > > > loglevel 3 > > service logcat /system/bin/logcat -f /dev/kmsg > > > # setup the global environment > > export PATH /sbin:/system/sbin:/system/bin:/system/xbin > > export LD_LIBRARY_PATH /system/lib > > export ANDROID_BOOTLOGO 1 > > export ANDROID_ROOT /system > > export ANDROID_ASSETS /system/app > > export ANDROID_DATA /data > > export EXTERNAL_STORAGE /sdcard > > export BOOTCLASSPATH /system/framework/core.jar:/system/framework/ > > ext.jar:/system/framework/framework.jar:/system/framework/ > > android.policy.jar:/system/framework/services.jar > > > # Backward compatibility > > symlink /system/etc /etc > > > # create mountpoints and mount tmpfs on sqlite_stmt_journals > > mkdir /sdcard 0000 system system > > mkdir /system > > mkdir /data 0771 system system > > mkdir /cache 0770 system cache > > mkdir /sqlite_stmt_journals 01777 root root > > mount tmpfs tmpfs /sqlite_stmt_journals size=4m > > > # mount rootfs rootfs / ro remount > > > write /proc/sys/kernel/panic_on_oops 1 > > write /proc/sys/kernel/hung_task_timeout_secs 0 > > write /proc/cpu/alignment 4 > > write /proc/sys/kernel/sched_latency_ns 10000000 > > write /proc/sys/kernel/sched_wakeup_granularity_ns 2000000 > > write /proc/sys/kernel/sched_compat_yield 1 > > > # Create cgroup mount points for process groups > > mkdir /dev/cpuctl > > mount cgroup none /dev/cpuctl cpu > > chown sytem system /dev/cpuctl > > chown system system /dev/cpuctl/tasks > > chmod 0777 /dev/cpuctl/tasks > > write /dev/cpuctl/cpu.shares 1024 > > > mkdir /dev/cpuctl/fg_boost > > chown system system /dev/cpuctl/fg_boost/tasks > > chmod 0777 /dev/cpuctl/fg_boost/tasks > > write /dev/cpuctl/fg_boost/cpu.shares 1024 > > > mkdir /dev/cpuctl/bg_non_interactive > > chown system system /dev/cpuctl/bg_non_interactive/tasks > > chmod 0777 /dev/cpuctl/bg_non_interactive/tasks > > # 5.0 % > > write /dev/cpuctl/bg_non_interactive/cpu.shares 52 > > > # mount mtd partitions > > # Mount /system rw first to give the filesystem a chance to save a > > checkpoint > > mount ubifs ubi0:system /system > > # mount ubifs ubi0:system /system ro remount > > > # We chown/chmod /data again so because mount is run as root + > > defaults > > mount ubifs ubi0:data /data nosuid nodev > > chown system system /data > > chmod 0771 /data > > > # Same reason as /data above > > mount yaffs2 m...@cache /cache nosuid nodev > > chown system cache /cache > > chmod 0770 /cache > > > # This may have been created by the recovery system with odd > > permissions > > chown system system /cache/recovery > > chmod 0770 /cache/recovery > > > # create basic filesystem structure > > mkdir /data/misc 01771 system misc > > mkdir /data/misc/hcid 0770 bluetooth bluetooth > > mkdir /data/misc/keystore 0770 keystore keystore > > mkdir /data/misc/vpn 0770 system system > > mkdir /data/misc/vpn/profiles 0770 system system > > # give system access to wpa_supplicant.conf for backup and restore > > mkdir /data/misc/wifi 0770 wifi wifi > > chmod 0770 /data/misc/wifi > > chmod 0660 /data/misc/wifi/wpa_supplicant.conf > > mkdir /data/local 0771 shell shell > > mkdir /data/local/tmp 0771 shell shell > > mkdir /data/data 0771 system system > > mkdir /data/app-private 0771 system system > > mkdir /data/app 0771 system system > > mkdir /data/property 0700 root root > > > # create dalvik-cache and double-check the perms > > mkdir /data/dalvik-cache 0771 system system > > chown system system /data/dalvik-cache > > chmod 0771 /data/dalvik-cache > > > # create the lost+found directories, so as to enforce our > > permissions > > mkdir /data/lost+found 0770 > > mkdir /cache/lost+found 0770 > > > # double check the perms, in case lost+found already exists, and > > set owner > > chown root root /data/lost+found > > chmod 0770 /data/lost+found > > chown root root /cache/lost+found > > chmod 0770 /cache/lost+found > > > # change permission for keymap file temporarily > > # should be removed when working out keymap later > > chmod 0777 /system/usr/keychars/qwerty.kcm.bin > > chmod 0777 /system/usr/keychars/mxckpd.kcm.bin > > > on boot > > # basic network init > > ifup lo > > hostname localhost > > domainname localdomain > > > mkdir /data/system 0775 system system > > exec /sbin/ts_calibrator > > > # set RLIMIT_NICE to allow priorities from 19 to -20 > > setrlimit 13 40 40 > > > # Set timeout value for rmnet stats. > > write /sys/devices/virtual/net/rmnet0/timeout_suspend 5000000 > > > # Define the oom_adj values for the classes of processes that can be > > # killed by the kernel. These are used in ActivityManagerService. > > setprop ro.FOREGROUND_APP_ADJ 0 > > setprop ro.VISIBLE_APP_ADJ 1 > > setprop ro.SECONDARY_SERVER_ADJ 2 > > setprop ro.BACKUP_APP_ADJ 2 > > setprop ro.HOME_APP_ADJ 4 > > setprop ro.HIDDEN_APP_MIN_ADJ 7 > > setprop ro.CONTENT_PROVIDER_ADJ 14 > > setprop ro.EMPTY_APP_ADJ 15 > > > # Define the memory thresholds at which the above process classes will > > # be killed. These numbers are in pages (4k). > > setprop ro.FOREGROUND_APP_MEM 1536 > > setprop ro.VISIBLE_APP_MEM 2048 > > setprop ro.SECONDARY_SERVER_MEM 4096 > > setprop ro.BACKUP_APP_MEM 4096 > > setprop ro.HOME_APP_MEM 4096 > > setprop ro.HIDDEN_APP_MEM 5120 > > setprop ro.CONTENT_PROVIDER_MEM 5632 > > setprop ro.EMPTY_APP_MEM 6144 > > > # Write value must be consistent with the above properties. > > # Note that the driver only supports 6 slots, so we have HOME_APP at > > the > > # same memory level as services. > > write /sys/module/lowmemorykiller/parameters/adj 0,1,2,7,14,15 > > > write /proc/sys/vm/overcommit_memory 1 > > write /proc/sys/vm/min_free_order_shift 4 > > write /sys/module/lowmemorykiller/parameters/minfree > > 1536,2048,4096,5120,5632,6144 > > > # Set init its forked children's oom_adj. > > write /proc/1/oom_adj -16 > > > # Permissions for System Server and daemons. > > chown radio system /sys/android_power/state > > chown radio system /sys/android_power/request_state > > chown radio system /sys/android_power/acquire_full_wake_lock > > chown radio system /sys/android_power/acquire_partial_wake_lock > > chown radio system /sys/android_power/release_wake_lock > > chown radio system /sys/power/state > > chown radio system /sys/power/wake_lock > > chown radio system /sys/power/wake_unlock > > chmod 0660 /sys/power/state > > chmod 0660 /sys/power/wake_lock > > chmod 0660 /sys/power/wake_unlock > > chown system system /sys/class/timed_output/vibrator/enable > > chown system system /sys/class/leds/keyboard-backlight/brightness > > chown system system /sys/class/leds/lcd-backlight/brightness > > chown system system /sys/class/leds/button-backlight/brightness > > chown system system /sys/class/leds/jogball-backlight/brightness > > chown system system /sys/class/leds/red/brightness > > chown system system /sys/class/leds/green/brightness > > chown system system /sys/class/leds/blue/brightness > > chown system system /sys/class/leds/red/device/grpfreq > > chown system system /sys/class/leds/red/device/grppwm > > chown system system /sys/class/leds/red/device/blink > > chown system system /sys/class/leds/red/brightness > > chown system system /sys/class/leds/green/brightness > > chown system system /sys/class/leds/blue/brightness > > chown system system /sys/class/leds/red/device/grpfreq > > chown system system /sys/class/leds/red/device/grppwm > > chown system system /sys/class/leds/red/device/blink > > chown system system /sys/class/timed_output/vibrator/enable > > chown system system /sys/module/sco/parameters/disable_esco > > chown system system /sys/kernel/ipv4/tcp_wmem_min > > chown system system /sys/kernel/ipv4/tcp_wmem_def > > chown system system /sys/kernel/ipv4/tcp_wmem_max > > chown system system /sys/kernel/ipv4/tcp_rmem_min > > chown system system /sys/kernel/ipv4/tcp_rmem_def > > chown system system /sys/kernel/ipv4/tcp_rmem_max > > chown root radio /proc/cmdline > > > # Define TCP buffer sizes for various networks > > # ReadMin, ReadInitial, > > ... > > plus de détails » -- unsubscribe: [email protected] website: http://groups.google.com/group/android-porting
