Hi Yang, > static gboolean sim_status_poll(gpointer user_data) > @@ -317,3 +266,4 @@ void atmodem_poll_enable(struct ofono_modem *modem, GAtChat *chat) > sim_watch(sim_atom, > OFONO_ATOM_WATCH_CONDITION_REGISTERED, spd); > } > + Please note that I also get an error applying this patch: Applying: Make fetch command function as external /home/denkenz/ofono-master/.git/rebase-apply/patch:101: new blank line at EOF. + fatal: 1 line adds whitespace errors. > +void at_sim_fetch_command(GAtChat *chat, struct ofono_stk *stk, int length) > +{ > + char buf[64]; > + struct cb_data *cbd = cb_data_new(chat, stk); > + > + snprintf(buf, sizeof(buf), "AT+CSIM=10,A0120000%02hhX", length); > + g_at_chat_send(chat, buf, csim_prefix, csim_fetch_cb, cbd, g_free); > +} > + There's no reason to pass in the chat object. The stk_data hanging off ofono_stk object already has a chat inside it. So simply using that one is enough. This also means you don't need to create a cbd, passing stk into g_at_chat_send is enough. Regards, -Denis