Skip to content

Commit c05bfbd

Browse files
committed
Merge branch 'fixes' into next
This resolves dependecy for the series 20230602101140.2040141-1-ckeepax@opensource.cirrus.com
2 parents 94f8995 + 58d9588 commit c05bfbd

3 files changed

Lines changed: 23 additions & 5 deletions

File tree

drivers/soundwire/dmi-quirks.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,13 @@ static const struct dmi_system_id adr_remap_quirk_table[] = {
9999
},
100100
.driver_data = (void *)intel_tgl_bios,
101101
},
102+
{
103+
.matches = {
104+
DMI_MATCH(DMI_SYS_VENDOR, "HP"),
105+
DMI_MATCH(DMI_BOARD_NAME, "8709"),
106+
},
107+
.driver_data = (void *)intel_tgl_bios,
108+
},
102109
{
103110
/* quirk used for NUC15 'Bishop County' LAPBC510 and LAPBC710 skews */
104111
.matches = {

drivers/soundwire/qcom.c

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1268,8 +1268,10 @@ static int qcom_swrm_startup(struct snd_pcm_substream *substream,
12681268
}
12691269

12701270
sruntime = sdw_alloc_stream(dai->name);
1271-
if (!sruntime)
1272-
return -ENOMEM;
1271+
if (!sruntime) {
1272+
ret = -ENOMEM;
1273+
goto err_alloc;
1274+
}
12731275

12741276
ctrl->sruntime[dai->id] = sruntime;
12751277

@@ -1279,12 +1281,19 @@ static int qcom_swrm_startup(struct snd_pcm_substream *substream,
12791281
if (ret < 0 && ret != -ENOTSUPP) {
12801282
dev_err(dai->dev, "Failed to set sdw stream on %s\n",
12811283
codec_dai->name);
1282-
sdw_release_stream(sruntime);
1283-
return ret;
1284+
goto err_set_stream;
12841285
}
12851286
}
12861287

12871288
return 0;
1289+
1290+
err_set_stream:
1291+
sdw_release_stream(sruntime);
1292+
err_alloc:
1293+
pm_runtime_mark_last_busy(ctrl->dev);
1294+
pm_runtime_put_autosuspend(ctrl->dev);
1295+
1296+
return ret;
12881297
}
12891298

12901299
static void qcom_swrm_shutdown(struct snd_pcm_substream *substream,

drivers/soundwire/stream.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2021,8 +2021,10 @@ int sdw_stream_add_slave(struct sdw_slave *slave,
20212021

20222022
skip_alloc_master_rt:
20232023
s_rt = sdw_slave_rt_find(slave, stream);
2024-
if (s_rt)
2024+
if (s_rt) {
2025+
alloc_slave_rt = false;
20252026
goto skip_alloc_slave_rt;
2027+
}
20262028

20272029
s_rt = sdw_slave_rt_alloc(slave, m_rt);
20282030
if (!s_rt) {

0 commit comments

Comments
 (0)