From 457c6293505e37da59a8af0338dd8688ba8acf13 Mon Sep 17 00:00:00 2001 From: laforge Date: Mon, 23 Oct 2006 21:55:39 +0000 Subject: first working revision of gsmd, libgsmd and libgsmd-tool git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@115 99fdad57-331a-0410-800a-d7fa5415bdb3 --- src/gsmd/gsmd.c | 30 ++++++++++-------------------- 1 file changed, 10 insertions(+), 20 deletions(-) (limited to 'src/gsmd/gsmd.c') diff --git a/src/gsmd/gsmd.c b/src/gsmd/gsmd.c index c8a3b3f..9595d4b 100644 --- a/src/gsmd/gsmd.c +++ b/src/gsmd/gsmd.c @@ -26,32 +26,24 @@ static int gsmd_test_atcb(struct gsmd_atcmd *cmd, void *ctx, char *resp) return 0; } -static int gsmd_test(struct gsmd *gsmd) +static int gsmd_simplecmd(struct gsmd *gsmd, char *cmdtxt) { struct gsmd_atcmd *cmd; - cmd = atcmd_fill("AT+CRC?", 255, &gsmd_test_atcb, NULL, 0); - return atcmd_submit(gsmd, cmd); -} - -static int atcmd_test(struct gsmd *gsmd) -{ - struct gsmd_atcmd *cmd; - cmd = atcmd_fill("ATE0", 255, &gsmd_test_atcb, NULL, 0); + cmd = atcmd_fill(cmdtxt, strlen(cmdtxt)+1, &gsmd_test_atcb, NULL, 0); + if (!cmd) + return -ENOMEM; + return atcmd_submit(gsmd, cmd); } -static int gsmd_initsettings(struct gsmd *gsmd) +int gsmd_initsettings(struct gsmd *gsmd) { int rc; - struct gsmd_atcmd *cmd; - - cmd = atcmd_fill("ATV1", 255, &gsmd_test_atcb, NULL, 0); - rc = atcmd_submit(gsmd, cmd); - if (rc < 0) - return rc; + + rc |= gsmd_simplecmd(gsmd, "ATE0V1"); + rc |= gsmd_simplecmd(gsmd, "AT+CRC=1;+CREG=2;+CMEE=1;+CLIP=1;+COLP=1;+CTZR=1;+CFUN=1"); - cmd = atcmd_fill("+CRC=1;+CREG=2;+CMEE=2;+CLIP=1;+COLP=1;+CTZR=1", 255, &gsmd_test_atcb, NULL, 0); - return atcmd_submit(gsmd, cmd); + return rc; } struct bdrt { @@ -207,8 +199,6 @@ int main(int argc, char **argv) setsid(); } - atcmd_test(&g); - gsmd_test(&g); gsmd_initsettings(&g); while (1) { -- cgit v1.2.3