summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPar-Gunnar Hjalmdahl <par-gunnar.p.hjalmdahl@stericsson.com>2011-04-05 09:04:01 +0200
committerPhilippe Langlais <philippe.langlais@stericsson.com>2012-05-22 11:05:52 +0200
commitf05326611584d6d9e5b8bf1ac4853682181daaa6 (patch)
treeda47d3ca774b59e41f5bb52aa7424deaf4c6fb73
parent77777b371caa25c973f61f987f01f9bd1e820f49 (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> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/29800 Reviewed-by: Virupax SADASHIVPETIMATH <virupax.sadashivpetimath@stericsson.com> Tested-by: Virupax SADASHIVPETIMATH <virupax.sadashivpetimath@stericsson.com>
-rw-r--r--drivers/staging/cg2900/mfd/cg2900_audio.c11
-rw-r--r--drivers/staging/cg2900/mfd/cg2900_chip.h3
2 files changed, 7 insertions, 7 deletions
diff --git a/drivers/staging/cg2900/mfd/cg2900_audio.c b/drivers/staging/cg2900/mfd/cg2900_audio.c
index a7b8eda4305..2f00d79ed1e 100644
--- a/drivers/staging/cg2900/mfd/cg2900_audio.c
+++ b/drivers/staging/cg2900/mfd/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
@@ -2040,7 +2044,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;
@@ -2116,8 +2120,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/staging/cg2900/mfd/cg2900_chip.h b/drivers/staging/cg2900/mfd/cg2900_chip.h
index 886015976d3..a53009f99d1 100644
--- a/drivers/staging/cg2900/mfd/cg2900_chip.h
+++ b/drivers/staging/cg2900/mfd/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))