summaryrefslogtreecommitdiff
path: root/src/gsmd/gsmd.c
diff options
context:
space:
mode:
authorlaforge <laforge@99fdad57-331a-0410-800a-d7fa5415bdb3>2006-10-23 21:55:39 +0000
committerlaforge <laforge@99fdad57-331a-0410-800a-d7fa5415bdb3>2006-10-23 21:55:39 +0000
commit457c6293505e37da59a8af0338dd8688ba8acf13 (patch)
tree5cbbb7a33e505debab3f5601c173ac4536b7c238 /src/gsmd/gsmd.c
parentcbffc8d64707828b045b679e8db0269ae362ffcf (diff)
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
Diffstat (limited to 'src/gsmd/gsmd.c')
-rw-r--r--src/gsmd/gsmd.c30
1 files changed, 10 insertions, 20 deletions
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) {
personal git repositories of Harald Welte. Your mileage may vary