16 Oct
2023
16 Oct
'23
5:55 p.m.
On Mon, Oct 16, 2023 at 01:47:28PM +0100, Mark Brown wrote:
On Sat, Oct 14, 2023 at 07:26:22PM +0200, Otto Pflüger wrote:
for (i = 0; i < g_core->svc_version->num_services; i++) {
struct avcs_svc_info *info;
info = &g_core->svc_version->svc_api_info[i];
if (info->service_id != APR_SVC_ADSP_CORE)
continue;
switch (info->version) {
case AVCS_CMDRSP_Q6_ID_2_6:
core->adsp_version = Q6_ADSP_VERSION_2_6;
break;
case AVCS_CMDRSP_Q6_ID_2_7:
core->adsp_version = Q6_ADSP_VERSION_2_7;
break;
case AVCS_CMDRSP_Q6_ID_2_8:
core->adsp_version = Q6_ADSP_VERSION_2_8;
break;
}
This doesn't handle unknown versions at all.
The adsp_version is initialized to Q6_ADSP_VERSION_UNKNOWN in q6core_probe, so it should stay unknown if it doesn't match any of these values. I don't see any big problems here, but I agree that some additional handling such as a warning message could be useful.