diff options
author | Par-Gunnar Hjalmdahl <par-gunnar.p.hjalmdahl@stericsson.com> | 2011-04-05 09:04:01 +0200 |
---|---|---|
committer | Jonas ABERG <jonas.aberg@stericsson.com> | 2011-04-07 11:28:47 +0200 |
commit | d6463b86cae0f825d6e93566eefd748f30e89b97 (patch) | |
tree | 92c0984aba82b6dbf27b0fb9c4be05be95c94bda /drivers/mfd | |
parent | 54c67ab181d546b4243a0304ae7c416d2c5008de (diff) |
cg2900: Use correct struct for SCO start stream
This patch corrects an issue where wrong structure was
used when starting a SCO stream.
ST-Ericsson Linux next: Not tested, ER 282957
ST-Ericsson ID: 333792
ST-Ericsson FOSS-OUT ID: Trivial
Change-Id: Ia36809fa623d4957f962410a3416beca2f657b9f
Signed-off-by: Par-Gunnar Hjalmdahl <par-gunnar.p.hjalmdahl@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/19948
Reviewed-by: Roger NILSSON1 <roger.xr.nilsson@stericsson.com>
Reviewed-by: Henrik POSSUNG <henrik.possung@stericsson.com>
Diffstat (limited to 'drivers/mfd')
-rw-r--r-- | drivers/mfd/cg2900/cg2900_audio.c | 11 | ||||
-rw-r--r-- | drivers/mfd/cg2900/cg2900_chip.h | 3 |
2 files changed, 7 insertions, 7 deletions
diff --git a/drivers/mfd/cg2900/cg2900_audio.c b/drivers/mfd/cg2900/cg2900_audio.c index a686aef88df..e11b5436594 100644 --- a/drivers/mfd/cg2900/cg2900_audio.c +++ b/drivers/mfd/cg2900/cg2900_audio.c @@ -33,7 +33,11 @@ #define MAX_NBR_OF_USERS 10 #define FIRST_USER 1 -#define DEFAULT_SCO_HANDLE 0x0008 +/* + * This is a default ACL handle. It is necessary to provide to the chip, but + * does not actually do anything. + */ +#define DEFAULT_ACL_HANDLE 0x0001 /* Use a timeout of 5 seconds when waiting for a command response */ #define RESP_TIMEOUT 5000 @@ -2038,7 +2042,7 @@ static void config_pcm_sco_stream(struct audio_info *info, void *_priv, /* codec mode and parameters not used */ cfg->inport.type = CG2900_BT_VP_TYPE_BT_SCO; - cfg->inport.sco.acl_handle = cpu_to_le16(DEFAULT_SCO_HANDLE); + cfg->inport.sco.acl_handle = cpu_to_le16(DEFAULT_ACL_HANDLE); cfg->outport.type = CG2900_BT_VP_TYPE_PCM; cfg->outport.pcm.index = CG2900_BT_SESSION_PCM_INDEX_PCM_I2S; @@ -2114,8 +2118,7 @@ static int conn_start_pcm_to_sco(struct audio_user *audio_user, /* zero codec params etc */ memset(&sco_cfg, 0, sizeof(sco_cfg)); - sco_cfg.acl_id = DEFAULT_SCO_HANDLE; - PORTCFG_SCO_SET_WBS(sco_cfg, 0); /* No WBS yet */ + sco_cfg.acl_id = DEFAULT_ACL_HANDLE; PORTCFG_SCO_SET_CODEC(sco_cfg, CG2900_CODEC_TYPE_NONE); err = send_vs_port_cfg(audio_user, CG2900_MC_PORT_BT_SCO, diff --git a/drivers/mfd/cg2900/cg2900_chip.h b/drivers/mfd/cg2900/cg2900_chip.h index 886015976d3..a53009f99d1 100644 --- a/drivers/mfd/cg2900/cg2900_chip.h +++ b/drivers/mfd/cg2900/cg2900_chip.h @@ -378,10 +378,7 @@ struct mc_vs_port_cfg_fm { struct mc_vs_port_cfg_sco { __le16 acl_id; __u8 wbs_codec; - __u8 sbc_params[3]; /* replace when we actually enable WBS... */ } __packed; -#define PORTCFG_SCO_SET_WBS(cfg, wbs) \ - set_low_nibble(&(cfg).wbs_codec, (wbs)) #define PORTCFG_SCO_SET_CODEC(cfg, codec) \ set_high_nibble(&(cfg).wbs_codec, (codec)) |