[Nexus S Android Development] krohnjw:
Unfortunately no. I'm working with the guy that made it work with the N1 (thanks to him for reaching out to offer assistance).

when it was stuck enabling it was looping through a sequence of ganModes but never successfully connecting. So, we decompiled the wifi calling APK to find the enumeration of ganModes in the java source to see what was happening. It doesn't look too good for the RIL that the Nexus S uses.

Essentially it was looping through the following sequence

UI_GSM_IDLE = 80;
UI_SCHAN_STOP_REQ = 155;
UI_RELEASE_WAKELOCK = 148;
UI_ACQUIRE_WAKELOCK = 147;
UI_SCHAN_START_REQ = 154;
UI_FORCE_KILL = 48;
UI_GSM_IDLE = 80;

Taking this and looking at the radio output logcat there are some things that are disturbing in the sense that I'm not sure the RIL we have for the Nexus S is going to support the necessary functions for proper initialization / connection (hopefully I am wrong).

We have a working radio log from the G2, so I can step through the expected process and find deviations. Unfortunately the Samsung RIL and the HTC RIL don't have the same output (the HTC RIL is quite a bit more verbose), so a bit of it is left up to interpretation. However, this is concerning at this point:

From the Samsung RIL:

D/RILSWITCH( 129): Sending RIL_REQUEST_OEM_HOOK_RAW (GSM_AUTH) to vendor RIL
E/RIL ( 129): onRequest: OEM_HOOK_RAW
E/RIL ( 129): CreateRequest(): req(0x1be70), id(59), tok(0x80308284) - FUNC(0x8041fb85)
E/RIL ( 129): [EVT]:Req(1), RX(0)
E/RIL ( 129): requestOEMHookRaw
E/RIL ( 129): requestOemAuth: sub_id 0x01 len 16
E/RIL ( 129): requestOemAuth: Unknown Auth OEM sub_func_id 0x01
....
(no resp ever received)

The HTC RIL returns successfully and this is where the process starts to diverge.

D/RILSWITCH( 1364): GANSWITCH_GSM_AUTH_REQ
D/RILSWITCH( 1364): Sending RIL_REQUEST_OEM_HOOK_RAW (GSM_AUTH) to vendor RIL
D/HTC_RIL ( 1364): ril_func_oem_hook_raw():called
D/HTC_RIL ( 1364): oem_hook_raw_handler_smart_wifi_authenticate_gsm_context():called
D/HTC_RIL ( 1364): (t=1298409693)>> AT+CSIM=42,"A088000010BBA6D24D81166FDB9626FA69DC79EF69"\r
D/HTC_RIL ( 1364): RX::> +CSIM: 28,"353D24DC406070A19ED4DBDE9D/HTC_RIL ( 1364): (t=1298409693)<< +CSIM: 28,"353D24DC406070A19ED4DBDE9000"\r\n0\r
D/HTC_RIL ( 1364): smart_wifi_authenticate_gsm_3g_context_rsp_handler():Smart Wifi Response: String received from radio and before parsing 353D24DC406070A19ED4DBDE9000
D/HTC_RIL ( 1364): smart_wifi_authenticate_gsm_3g_context_rsp_handler():Smart Wifi Response: String received from radio and after parsing 0004353D24DC0008406070A19ED4DBDE
000"\r\n0\r
.......
D/RILSWITCH( 1364): Sending GANSWITCH_GSM_AUTH_RESP (result = SUCCESS)

I've posted a request in the Vibrant forum for someone to just connect to wifi calling and do a dump (logcat -b radio) so that we can identify what is a passable error and what is causing failure (as the RIL on the Vibrant should put out similar output to that of the NS for this process) as well as identify the correct initialization sequence it should be going through. I am getting no response over there though.....http://xdaforums.com/showthread.php?t=967462

If anyone has a vibrant sitting around (or knows someone who does) it could be quite helpful!