diff options
| author | erin_yueh <erin_yueh@99fdad57-331a-0410-800a-d7fa5415bdb3> | 2008-03-18 05:35:59 +0000 | 
|---|---|---|
| committer | erin_yueh <erin_yueh@99fdad57-331a-0410-800a-d7fa5415bdb3> | 2008-03-18 05:35:59 +0000 | 
| commit | 98fd14b2b48c3387ca236d3a285158bef3597cd8 (patch) | |
| tree | 2d15be103d5b36ae65c35e227b48cc60c46fbb0f | |
| parent | 636e8ecfdf47c6441975e41ed3f39dace55485c6 (diff) | |
gsmd: add AT commands for GTA01 devices (Erin Yueh)
git-svn-id: http://svn.openmoko.org/trunk/src/target/gsm@4215 99fdad57-331a-0410-800a-d7fa5415bdb3
| -rw-r--r-- | include/gsmd/machineplugin.h | 1 | ||||
| -rw-r--r-- | src/gsmd/gsmd.c | 7 | ||||
| -rw-r--r-- | src/gsmd/machine_gta01.c | 14 | 
3 files changed, 20 insertions, 2 deletions
| diff --git a/include/gsmd/machineplugin.h b/include/gsmd/machineplugin.h index 8185fb6..73f834f 100644 --- a/include/gsmd/machineplugin.h +++ b/include/gsmd/machineplugin.h @@ -15,6 +15,7 @@ struct gsmd_machine_plugin {  	int (*ex_submit)(struct gsmd *g);  	int (*detect)(struct gsmd *g);  	int (*init)(struct gsmd *g, int fd); +	int (*initsettings)(struct gsmd *g);  };  extern int gsmd_machine_plugin_init(struct gsmd *g, diff --git a/src/gsmd/gsmd.c b/src/gsmd/gsmd.c index 2373a06..44dac60 100644 --- a/src/gsmd/gsmd.c +++ b/src/gsmd/gsmd.c @@ -196,8 +196,11 @@ static int gsmd_initsettings2(struct gsmd *gsmd)  	sms_cb_init(gsmd); -	if (gsmd->vendorpl && gsmd->vendorpl->initsettings) -		return gsmd->vendorpl->initsettings(gsmd); +	if (gsmd->vendorpl && gsmd->vendorpl->initsettings){ +		rc |= gsmd->vendorpl->initsettings(gsmd); +		rc |= gsmd->machinepl->initsettings(gsmd); +		return rc; +	}	  	else  		return rc;  } diff --git a/src/gsmd/machine_gta01.c b/src/gsmd/machine_gta01.c index c8a3681..85be9bf 100644 --- a/src/gsmd/machine_gta01.c +++ b/src/gsmd/machine_gta01.c @@ -171,10 +171,24 @@ static int gta01_init(struct gsmd *g, int fd)  	return 0;  } +static int gta01_initsettings(struct gsmd *g) +{ +	int rc = 0; +	struct gsmd_atcmd *cmd; + +	/* use @AUL: to load audio table */ +	rc |= gsmd_simplecmd(g, "AT@AUL=\"0\""); +	/* use @ST: configure the sidetone level */ +	rc |= gsmd_simplecmd(g, "AT@ST=\"-26\""); + +	return rc; +} +  struct gsmd_machine_plugin gsmd_machine_plugin = {  	.name = "TI Calypso / FIC firmware",  	.power = >a01_power,  	.ex_submit = &atcmd_wakeup_modem,  	.detect = >a01_detect,  	.init = >a01_init, +	.initsettings = >a01_initsettings,  }; | 
