mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 19:08:57 +09:00
Merge tag 'soundwire-6.5-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/soundwire
Pull soundwire fixes from Vinod Koul: - Core fix for enumeration completion - Qualcomm driver fix to update status - AMD driver fix for probe error check * tag 'soundwire-6.5-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/soundwire: soundwire: amd: Fix a check for errors in probe() soundwire: qcom: update status correctly with mask soundwire: fix enumeration completion
This commit is contained in:
@@ -910,9 +910,9 @@ static int amd_sdw_manager_probe(struct platform_device *pdev)
|
||||
return -ENOMEM;
|
||||
|
||||
amd_manager->acp_mmio = devm_ioremap(dev, res->start, resource_size(res));
|
||||
if (IS_ERR(amd_manager->mmio)) {
|
||||
if (!amd_manager->acp_mmio) {
|
||||
dev_err(dev, "mmio not found\n");
|
||||
return PTR_ERR(amd_manager->mmio);
|
||||
return -ENOMEM;
|
||||
}
|
||||
amd_manager->instance = pdata->instance;
|
||||
amd_manager->mmio = amd_manager->acp_mmio +
|
||||
|
||||
@@ -922,8 +922,8 @@ static void sdw_modify_slave_status(struct sdw_slave *slave,
|
||||
"initializing enumeration and init completion for Slave %d\n",
|
||||
slave->dev_num);
|
||||
|
||||
init_completion(&slave->enumeration_complete);
|
||||
init_completion(&slave->initialization_complete);
|
||||
reinit_completion(&slave->enumeration_complete);
|
||||
reinit_completion(&slave->initialization_complete);
|
||||
|
||||
} else if ((status == SDW_SLAVE_ATTACHED) &&
|
||||
(slave->status == SDW_SLAVE_UNATTACHED)) {
|
||||
@@ -931,7 +931,7 @@ static void sdw_modify_slave_status(struct sdw_slave *slave,
|
||||
"signaling enumeration completion for Slave %d\n",
|
||||
slave->dev_num);
|
||||
|
||||
complete(&slave->enumeration_complete);
|
||||
complete_all(&slave->enumeration_complete);
|
||||
}
|
||||
slave->status = status;
|
||||
mutex_unlock(&bus->bus_lock);
|
||||
@@ -1951,7 +1951,7 @@ int sdw_handle_slave_status(struct sdw_bus *bus,
|
||||
"signaling initialization completion for Slave %d\n",
|
||||
slave->dev_num);
|
||||
|
||||
complete(&slave->initialization_complete);
|
||||
complete_all(&slave->initialization_complete);
|
||||
|
||||
/*
|
||||
* If the manager became pm_runtime active, the peripherals will be
|
||||
|
||||
@@ -540,7 +540,7 @@ static int qcom_swrm_get_alert_slave_dev_num(struct qcom_swrm_ctrl *ctrl)
|
||||
status = (val >> (dev_num * SWRM_MCP_SLV_STATUS_SZ));
|
||||
|
||||
if ((status & SWRM_MCP_SLV_STATUS_MASK) == SDW_SLAVE_ALERT) {
|
||||
ctrl->status[dev_num] = status;
|
||||
ctrl->status[dev_num] = status & SWRM_MCP_SLV_STATUS_MASK;
|
||||
return dev_num;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user