diff --git a/soc/swr-mstr-ctrl.c b/soc/swr-mstr-ctrl.c index 2379df88b837..fd77cf59dffa 100644 --- a/soc/swr-mstr-ctrl.c +++ b/soc/swr-mstr-ctrl.c @@ -24,11 +24,12 @@ #include <dsp/msm-audio-event-notify.h> #include "swrm_registers.h" #include "swr-mstr-ctrl.h" -#include "swrm_port_config.h" #define SWRM_SYSTEM_RESUME_TIMEOUT_MS 700 #define SWRM_SYS_SUSPEND_WAIT 1 +#define SWRM_DSD_PARAMS_PORT 4 + #define SWR_BROADCAST_CMD_ID 0x0F #define SWR_AUTO_SUSPEND_DELAY 3 /* delay in sec */ #define SWR_DEV_ID_MASK 0xFFFFFFFFFFFF @@ -378,27 +379,16 @@ static void copy_port_tables(struct swr_mstr_ctrl *swrm, static int swrm_get_port_config(struct swr_mstr_ctrl *swrm) { struct port_params *params; + u32 usecase = 0; - switch (swrm->master_id) { - case MASTER_ID_WSA: - params = wsa_frame_superset; - break; - case MASTER_ID_RX: - /* Two RX tables for dsd and without dsd enabled */ - if (swrm->mport_cfg[4].port_en) - params = rx_frame_params_dsd; - else - params = rx_frame_params; - break; - case MASTER_ID_TX: - params = tx_frame_params_superset; - break; - default: /* MASTER_GENERIC*/ - /* computer generic frame parameters */ - return -EINVAL; - } + /* TODO - Send usecase information to avoid checking for master_id */ + if (swrm->mport_cfg[SWRM_DSD_PARAMS_PORT].port_en && + (swrm->master_id == MASTER_ID_RX)) + usecase = 1; + params = swrm->port_param[usecase]; copy_port_tables(swrm, params); + return 0; } diff --git a/soc/swrm_port_config.h b/soc/swrm_port_config.h deleted file mode 100644 index 0458696380eb..000000000000 --- a/soc/swrm_port_config.h +++ /dev/null @@ -1,51 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0-only */ -/* - * Copyright (c) 2018 The Linux Foundation. All rights reserved. - */ - -#ifndef _SWRM_PORT_CONFIG -#define _SWRM_PORT_CONFIG - -#define WSA_MSTR_PORT_MASK 0xFF - - -/* - * Add port configuration in the format - *{ si, off1, off2, hstart, hstop, wd_len, bp_mode, bgp_ctrl, lane_ctrl} - */ - -struct port_params wsa_frame_superset[SWR_MSTR_PORT_LEN] = { - {7, 1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, - {31, 2, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, - {63, 12, 31, 0xFF, 0xFF, 0xFF, 0x1, 0xFF, 0xFF}, - {7, 6, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, - {31, 18, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, - {63, 13, 31, 0xFF, 0xFF, 0xFF, 0x1, 0xFF, 0xFF}, - {15, 7, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, - {15, 10, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, -}; - -struct port_params rx_frame_params[SWR_MSTR_PORT_LEN] = { - {3, 0, 0, 0xFF, 0xFF, 1, 0xFF, 0xFF, 1}, - {31, 0, 0, 3, 6, 7, 0, 0xFF, 0}, - {31, 11, 11, 0xFF, 0xFF, 4, 1, 0xFF, 0}, - {3, 1, 0, 0xFF, 0xFF, 0xFF, 0xFF, 1, 0}, - {0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0, 0}, -}; - -struct port_params rx_frame_params_dsd[SWR_MSTR_PORT_LEN] = { - {3, 0, 0, 0xFF, 0xFF, 1, 0xFF, 0xFF, 1}, - {31, 0, 0, 3, 6, 7, 0, 0xFF, 0}, - {31, 11, 11, 0xFF, 0xFF, 4, 1, 0xFF, 0}, - {7, 9, 0, 0xFF, 0xFF, 0xFF, 0xFF, 1, 0}, - {3, 1, 0, 0xFF, 0xFF, 0xFF, 0xFF, 3, 0}, -}; - -struct port_params tx_frame_params_superset[SWR_MSTR_PORT_LEN] = { - {1, 1, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0}, - {1, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 1}, - {3, 1, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0}, - {3, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 1}, -}; - -#endif /* _SWRM_REGISTERS_H */