Hi Jack, Here's the log file: ===== # logcat -b radio logcat -b radio I/RIL ( 986): Hello World I/RIL ( 986): Opening tty device /dev/ttyS0 I/PHONE ( 1145): Network Mode set to 0 I/PHONE ( 1145): Cdma Subscription set to 1 I/RILC ( 986): libril: new connection I/RILC ( 986): RIL Daemon version: android reference-ril 1.0 I/RILJ ( 1145): Connected to 'rild' socket D/RILJ ( 1145): [UNSL]< UNSOL_RESPONSE_RADIO_STATE_CHANGED RADIO_UNAVAILABLE I/PHONE ( 1145): Creating GSMPhone D/PHONE ( 1145): mDoesRilSendMultipleCallRing=true D/PHONE ( 1145): mCallRingDelay=3000 W/GSM ( 1145): Can't open /system/etc/voicemail-conf.xml W/GSM ( 1145): Can't open /system/etc/spn-conf.xml D/GSM ( 1145): [DSAC DEB] registerForPsRestrictedEnabled D/GSM ( 1145): [DSAC DEB] registerForPsRestrictedDisabled D/GSM ( 1145): [GsmDataConnection-1] DataConnection constructor E D/GSM ( 1145): [GsmDataConnection-1] clearSettings D/GSM ( 1145): [GsmDataConnection-1] DataConnection constructor X D/GSM ( 1145): [GsmDataConnection-1] Made GsmDataConnection-1 D/RILJ ( 1145): [0000]> RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING D/STK ( 1145): StkService: StkService: is running D/STK ( 1145): StkService: NEW sInstance E/RILJ ( 1145): ERROR: mReqPending is NOT 0 but1 at TIMEOUT, reset! D/RIL ( 986): onRequest: REPORT_STK_SERVICE_IS_RUNNING D/RILJ ( 1145): [0000]< RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING error: com. android.internal.telephony.CommandException: RADIO_NOT_AVAILABLE D/RILJ ( 1145): [0001]> GET_CURRENT_CALLS E/RILJ ( 1145): ERROR: mReqPending is NOT 0 but1 at TIMEOUT, reset! E/GSM ( 1145): Wrong network type: 0 E/GSM ( 1145): Wrong network type: 0 D/GSM ( 1145): Poll ServiceState done: oldSS=[1 home null null null Unknow n CSS not supported 0 0RoamInd: 0DefRoamInd: 0EmergOnly: false] newSS=[1 home nu ll null null Unknown CSS not supported -1 -1RoamInd: -1DefRoamInd: -1EmergOnly: false] oldGprs=1 newGprs=1 oldType=unknown newType=unknown D/RIL ( 986): onRequest: GET_CURRENT_CALLS D/RILJ ( 1145): [0001]< GET_CURRENT_CALLS error: com.android.internal.telepho ny.CommandException: RADIO_NOT_AVAILABLE D/GSM ( 1145): [GsmDataConnection-1] DcInactiveState: msg.what=EVENT_RESET, ignore we're already reset D/GSM ( 1145): [GsmDataConnection-1] NotifyDisconnectCompleted D/GSM ( 1145): [GsmDataConnection-1] clearSettings D/GSM ( 1145): [DataConnection] Stop poll NetStat D/GSM ( 1145): [DataConnection] Stop poll NetStat D/GSM ( 1145): [DSAC DEB] trySetupData with mIsPsRestricted=false D/GSM ( 1145): [IccCard] Broadcasting intent ACTION_SIM_STATE_CHANGED NOT_RE ADY reason null D/RILJ ( 1145): [0002]> SCREEN_STATE: true E/RILJ ( 1145): ERROR: mReqPending is NOT 0 but1 at TIMEOUT, reset! D/RIL ( 986): onRequest: SCREEN_STATE D/RILJ ( 1145): [0002]< SCREEN_STATE error: com.android.internal.telephony.Co mmandException: RADIO_NOT_AVAILABLE D/GSM ( 1145): [DataConnection] Stop poll NetStat ========================= Thank, JP
On Tue, May 10, 2011 at 9:02 AM, Jacky.Seraph Mun <jackyser...@gmail.com>wrote: > Are you sure it's the permission problem that resulted in the failure > of enabling RIL daemon? What's the radio log saying? > And maybe you can try "chown radio /dev/..." instead. > > Jack > > 2011/5/10 JP <j...@avagotech.com>: > > Hi All, > > I'm new to Android and am confounded with this RIL/phone services > > issue in Gingerbread 2.3.3. > > Kernel : 2.6.32. Any help/guidance will be much appreciated. > > > > From adb shell: > > $chown system.radio /dev/ttyS0 > > enables RIL services and can make phone calls. > > > > Similar entry in init.rc : > > chown system radio /dev/ttyS0 > > does not enable RIL services: > > > > adb_shell> logcat -b radio > > D/RILJ> WAKE_LOCK_TIMEOUT mRequestList=5 > > > > I've attached the init.rc file, below. > > > > If init.rc is not the right location, please suggest which file should > > I set "chown for /dev/ttyS0" in. > > > > Thanks, > > JP > > > > on early-init > > symlink /initlogo.rle.keep /initlogo.rle > > start ueventd > > > > on init > > sysclktz 0 > > loglevel 3 > > > > # 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 /mnt/sdcard > > export ASEC_MOUNTPOINT /mnt/asec > > export BOOTCLASSPATH /system/framework/core.jar:/system/framework/ > > bouncycastle.jar:/system/framework/ext.jar:/system/framework/ > > framework.jar:/system/framework/android.policy.jar:/system/framework/ > > services.jar:/system/framework/core-junit.jar > > > > # fake some battery state > > setprop status.battery.state Slow > > setprop status.battery.level 5 > > setprop status.battery.level_raw 50 > > setprop status.battery.level_scale 9 > > > > # Backward compatibility > > symlink /system/etc /etc > > symlink /sys/kernel/debug /d > > > > # create mountpoints > > mkdir /mnt 0775 root system > > mkdir /mnt/sdcard 0000 system system > > > > # Create cgroup mount point for cpu accounting > > mkdir /acct > > mount cgroup none /acct cpuacct > > mkdir /acct/uid > > > > # Backwards Compat - XXX: Going away in G* > > symlink /mnt/sdcard /sdcard > > > > mkdir /system > > mkdir /data 0771 system system > > mkdir /cache 0770 system cache > > mkdir /config 0500 root root > > > > # Directory for putting things only root should see. > > mkdir /mnt/secure 0700 root root > > > > # Directory for staging bindmounts > > mkdir /mnt/secure/staging 0700 root root > > > > # Directory-target for where the secure container > > # imagefile directory will be bind-mounted > > mkdir /mnt/secure/asec 0700 root root > > > > # Secure container public mount points. > > mkdir /mnt/asec 0700 root system > > mount tmpfs tmpfs /mnt/asec mode=0755,gid=1000 > > > > ## 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 > > write /proc/sys/kernel/sched_child_runs_first 0 > > > > # Create cgroup mount points for process groups > > mkdir /dev/cpuctl > > mount cgroup none /dev/cpuctl cpu > > chown system 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 > > > > # Power Management Patches > > chmod 0777 /sys/power/state > > chmod 0777 /sys/power/wake_lock > > chmod 0777 /sys/power/wake_unlock > > chmod 0777 /sys/power/wait_for_fb_sleep > > chmod 0777 /sys/power/wait_for_fb_wake > > chmod 0777 /sys/power/r_vdd1_autocomp > > chmod 0777 /sys/power/sr_vdd2_autocomp > > > > # Brightness Control Patches > > chmod 0777 /sys/devices/platform/omapdss/generic-bl/backlight/ > > omap3evm-bklight/brightness > > > > # mount sdcard third partition on /part-3 > > mkdir /part-3 > > mount vfat /dev/block/mmcblk0p3 /part-3/ > > > > # mount mtd partitions > > > > # We chown/chmod /data again so because mount is run as root + > > defaults > > chown system system /data > > chmod 0771 /data > > > > # Create dump dir and collect dumps. > > # Do this before we mount cache so eventually we can use cache for > > # storing dumps on platforms which do not have a dedicated dump > > partition. > > > > mkdir /data/dontpanic > > chown root log /data/dontpanic > > chmod 0750 /data/dontpanic > > > > # Collect apanic data, free resources and re-arm trigger > > copy /proc/apanic_console /data/dontpanic/apanic_console > > chown root log /data/dontpanic/apanic_console > > chmod 0640 /data/dontpanic/apanic_console > > > > copy /proc/apanic_threads /data/dontpanic/apanic_threads > > chown root log /data/dontpanic/apanic_threads > > chmod 0640 /data/dontpanic/apanic_threads > > > > write /proc/apanic_console 1 > > > > # Same reason as /data above > > chown system cache /cache > > chmod 0770 /cache > > > > # This may have been created by the recovery system with odd > > permissions > > chown system cache /cache/recovery > > chmod 0770 /cache/recovery > > > > # change permissions on vmallocinfo so we can grab it from > > bugreports > > chown root log /proc/vmallocinfo > > chmod 0440 /proc/vmallocinfo > > > > #change permissions on kmsg & sysrq-trigger so bugreports can grab > > kthread stacks > > chown root system /proc/kmsg > > chmod 0440 /proc/kmsg > > chown root system /proc/sysrq-trigger > > chmod 0220 /proc/sysrq-trigger > > > > # change permissions for Camera > > chmod 0777 /dev/video0 > > chmod 0777 /dev/video3 > > > > # change permissions for Overlay > > chmod 0777 /dev/video1 > > chmod 0777 /dev/video2 > > chmod 0777 /dev/omap-resizer > > > > # create basic filesystem structure > > mkdir /data/misc 0771 system misc > > mkdir /data/misc/bluetoothd 0770 bluetooth bluetooth > > mkdir /data/misc/bluetooth 0770 system system > > mkdir /data/misc/keystore 0700 keystore keystore > > mkdir /data/misc/vpn 0770 system system > > mkdir /data/misc/systemkeys 0700 system system > > mkdir /data/misc/vpn/profiles 0770 system system > > > > # give system access to wpa_supplicant.conf for backup and restore > > mkdir /system/etc/wifi 0771 wifi wifi > > chmod 0660 /system/etc/wifi/wpa_supplicant.conf > > chown wifi wifi /system/etc/wifi/wpa_supplicant.conf > > # need a socket > > mkdir /data/misc/wifi 0770 wifi wifi > > mkdir /data/misc/wifi/sockets 0770 wifi wifi > > > > 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 > > mkdir /data/misc/dhcp 0770 dhcp dhcp > > > > # 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 > > > > #Owners, Modes for Bluetooth > > chmod 0660 /dev/ttyS1 > > chown bluetooth bluetooth /dev/ttyS1 > > chmod 0660 sys/class/rfkill/rfkill0/state > > chown bluetooth bluetooth /sys/class/rfkill/rfkill0/state > > write sys/class/rfkill/rfkill0/state 0 > > > > > > on boot > > # basic network init > > ifup lo > > hostname localhost > > domainname localdomain > > > > # set RLIMIT_NICE to allow priorities from 19 to -20 > > setrlimit 13 40 40 > > > > # No battery information present > > setprop hw.nobattery true > > > > # if hw.nopm is true, Settings->Application->Development->Stay Awake > > is enabled > > setprop hw.nopm true > > > > # Enable gps > > setprop ro.kernel.android.gps ttyS1 > > > > # 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.PERCEPTIBLE_APP_ADJ 2 > > setprop ro.HEAVY_WEIGHT_APP_ADJ 3 > > setprop ro.SECONDARY_SERVER_ADJ 4 > > setprop ro.BACKUP_APP_ADJ 5 > > setprop ro.HOME_APP_ADJ 6 > > setprop ro.HIDDEN_APP_MIN_ADJ 7 > > 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 2048 > > setprop ro.VISIBLE_APP_MEM 3072 > > setprop ro.PERCEPTIBLE_APP_MEM 4096 > > setprop ro.HEAVY_WEIGHT_APP_MEM 4096 > > setprop ro.SECONDARY_SERVER_MEM 6144 > > setprop ro.BACKUP_APP_MEM 6144 > > setprop ro.HOME_APP_MEM 6144 > > setprop ro.HIDDEN_APP_MEM 5120 > > 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,4,7,15 > > > > write /proc/sys/vm/overcommit_memory 1 > > write /proc/sys/vm/min_free_order_shift 4 > > write /sys/module/lowmemorykiller/parameters/minfree > > 2048,3072,4096,6144,7168,8192 > > > > # Set init its forked children's oom_adj. > > write /proc/1/oom_adj -16 > > > > # Tweak background writeout > > write /proc/sys/vm/dirty_expire_centisecs 200 > > write /proc/sys/vm/dirty_background_ratio 5 > > > > # 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 > > # Power Management patches > > chown radio system /sys/power/wait_for_fb_sleep > > chown radio system /sys/power/wait_for_fb_wake > > chmod 0660 /sys/power/state > > chmod 0660 /sys/power/wake_lock > > chmod 0660 /sys/power/wake_unlock > > > > > > 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 > > > > #JP - change uid gid to system radio for /dev/ttyS0 > > chown system radio /dev/ttyS0 > > chmod 0660 /dev/ttyS0 > > > > > > # Define TCP buffer sizes for various networks > > # ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax, > > setprop net.tcp.buffersize.default > > 4096,87380,110208,4096,16384,110208 > > setprop net.tcp.buffersize.wifi > > 4095,87380,110208,4096,16384,110208 > > setprop net.tcp.buffersize.umts > > 4094,87380,110208,4096,16384,110208 > > setprop net.tcp.buffersize.edge > > 4093,26280,35040,4096,16384,35040 > > setprop net.tcp.buffersize.gprs 4092,8760,11680,4096,8760,11680 > > > > setprop wifi.interface "wlan0" > > setprop wlan.driver.status "ok" > > class_start default > > > > ## Daemon processes to be run by init. > > ## > > service ueventd /sbin/ueventd > > critical > > > > service console /system/bin/sh > > console > > > > # Start PowerVR SGX DDK > > service pvr /system/bin/sgx/rc.pvr start > > > > # Start WiFi > > service libertas /system/bin/libertas/rc.libertas start > > disabled > > > > # adbd is controlled by the persist.service.adb.enable system property > > service adbd /sbin/adbd > > disabled > > > > on property:persist.service.adb.enable=1 > > start adbd > > > > on property:persist.service.adb.enable=0 > > stop adbd > > > > service servicemanager /system/bin/servicemanager > > user system > > critical > > onrestart restart zygote > > onrestart restart media > > > > service vold /system/bin/vold > > socket vold stream 0660 root mount > > ioprio be 2 > > > > service netd /system/bin/netd > > socket netd stream 0660 root system > > > > service debuggerd /system/bin/debuggerd > > > > service ril-daemon /system/bin/rild -l /system/lib/libreference-ril.so > > -- -d /dev/ttyS0 > > socket rild stream 660 root radio > > socket rild-debug stream 660 radio system > > user root > > group radio cache inet misc audio > > > > service zygote /system/bin/app_process -Xzygote /system/bin --zygote -- > > start-system-server > > socket zygote stream 666 > > onrestart write /sys/android_power/request_state wake > > onrestart write /sys/power/state on > > onrestart restart media > > > > service media /system/bin/mediaserver > > user media > > group system audio camera graphics inet net_bt net_bt_admin > > net_raw sdcard_rw > > ioprio rt 4 > > > > service bootanim /system/bin/bootanimation > > user graphics > > group graphics > > disabled > > oneshot > > > > service dbus /system/bin/dbus-daemon --system --nofork > > socket dbus stream 660 bluetooth bluetooth > > user bluetooth > > group bluetooth net_bt_admin > > > > service bluetoothd /system/bin/bluetoothd -n > > socket bluetooth stream 660 bluetooth bluetooth > > socket dbus_bluetooth stream 660 bluetooth bluetooth > > > > # init.rc does not yet support applying capabilities, so run as root > > and > > # let bluetoothd drop uid to bluetooth with the right linux > > capabilities > > group bluetooth net_bt_admin misc > > disabled > > > > service hfag /system/bin/sdptool add --channel=10 HFAG > > user bluetooth > > group bluetooth net_bt_admin > > disabled > > oneshot > > > > service hsag /system/bin/sdptool add --channel=11 HSAG > > user bluetooth > > group bluetooth net_bt_admin > > disabled > > oneshot > > > > service opush /system/bin/sdptool add --channel=12 OPUSH > > user bluetooth > > group bluetooth net_bt_admin > > disabled > > oneshot > > > > service pbap /system/bin/sdptool add --channel=19 PBAP > > user bluetooth > > group bluetooth net_bt_admin > > disabled > > oneshot > > > > service installd /system/bin/installd > > socket installd stream 600 system system > > > > service racoon /system/bin/racoon > > socket racoon stream 600 system system > > # racoon will setuid to vpn after getting necessary resources. > > group net_admin > > disabled > > oneshot > > > > service mtpd /system/bin/mtpd > > socket mtpd stream 600 system system > > user vpn > > group vpn net_admin net_raw > > disabled > > oneshot > > > > service keystore /system/bin/keystore /data/misc/keystore > > user keystore > > group keystore > > socket keystore stream 666 > > > > service dumpstate /system/bin/dumpstate -s > > socket dumpstate stream 0660 shell log > > disabled > > oneshot > > > > service hciattach /system/bin/hciattach -n /dev/ttyS1 > > user root > > disabled > > > > # changing user to root from bluetooth is a potential security issue > > group bluetooth net_bt_admin misc > > disabled > > oneshot > > > > service wpa_supplicant /system/bin/wpa_supplicant -Dwext -dd -iwlan0 - > > c/data/misc/wifi/wpa_supplicant.conf > > socket wpa_wlan0 dgram 660 wifi wifi > > disabled > > oneshot > > > > service dhcpcd /system/bin/dhcpcd -ABKL wlan0 > > disabled > > oneshot > > > > > > > > > > > > > > -- > > unsubscribe: android-porting+unsubscr...@googlegroups.com > > website: http://groups.google.com/group/android-porting > > > -- unsubscribe: android-porting+unsubscr...@googlegroups.com website: http://groups.google.com/group/android-porting