---------- Forwarded message ----------
From: Jacky.Seraph Mun <jackyser...@gmail.com>
Date: 2011/5/11
Subject: Re: [android-porting] RIL stalls when setting /dev/ttyS0
permisions in init.rc
To: jehangir parvereshi <jehangir.parvere...@avagotech.com>


First of all
>>> > 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:

Did you check the owner ship of /dev/ttyS0 again after you set it in
the init.rc and restarted? Was it the correct value still?


Secondly
According to your log, there should be 2 problems:

1.

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

The last line above indicates that RIL.java has created the socket to
RIL daemon and received the first Unsolicited command from the daemon
to ask RIL.java to reset the Radio Power to be off. So in the next
normal step, the RIL.java should call

   private void setRadioStateFromRILInt(int state) {
       ...
       if (mInitialRadioStateChange) {
           mInitialRadioStateChange = false;
           if (newState.isOn()) {
               /* If this is our first notification, make sure the radio
                * is powered off.  This gets the radio into a known state,
                * since it's possible for the phone proc to have restarted
                * (eg, if it or the runtime crashed) without the RIL
                * and/or radio knowing.
                */
               if (DBG) Log.d(LOG_TAG, "Radio ON @ init; reset to OFF");
               setRadioPower(false, null);
               return;
           }
       }
       ...
   }

By default in froyo (android 2.2 or eclair 2.1), both the DBG and the
mInitialRadioStateChange should be true at that time. So there is
supposed to be the log as below:
D/RILJ    (..): Radio ON @ init; reset to OFF
after the last line of the above 3.

I am not sure why this log is missing in yours and neither do I check
the 2.3 code. So maybe you have to check that part.


2.

I/RIL     (  986): Opening tty device /dev/ttyS0

According the line, the RIL daemon is trying to open ttyS0 as to
connect to the GSM modem. If it is successfully opened, it should do
the AT handshake subsequently and there should be the log info as
"AT>...". So maybe you have to either add more log info in reference-ril.c

static void *
mainLoop(void *param)
{
...
           } else if (s_device_path != NULL) {
               fd = open (s_device_path, O_RDWR);
               if ( fd >= 0 && !memcmp( s_device_path, "/dev/ttyS", 9 ) ) {
                   /* disable echo on serial ports */
                   struct termios  ios;
                   tcgetattr( fd, &ios );
                   ios.c_lflag = 0;  /* disable ECHO, ICANON, etc... */
                   if( cfsetispeed( &ios, B115200) != 0 )
                       printf("Failed to set in speed\n");
                   if ( cfsetospeed( &ios, B115200) != 0 )
                       printf("Failed to set out speed\n");
                   tcsetattr( fd, TCSANOW, &ios );
               }
           }

           ////////////////// add here!
           // log the the fd and the "errno" if fd < 0
           // LOGI("Opened tty device %d, errno=%d", fd, errno);
           //////////////////

           if (fd < 0) {
               perror ("opening AT interface. retrying...");
               sleep(10);
               /* never returns */
           }
...
}

or make sure the atchannel.c can out put the related "AT>" log.


Jack


2011/5/11 jehangir parvereshi <jehangir.parvere...@avagotech.com>:
> Hi Jack,
> I am also attaching the  reference-ril.c file.
> Thanks,
> JP
>
> On Tue, May 10, 2011 at 10:05 AM, jehangir parvereshi
> <jehangir.parvere...@avagotech.com> wrote:
>>
>> 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

Reply via email to