Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ace3a85d authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "soc: soundwire: Update sample interval configuration"

parents bf289c71 b51f9594
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -106,7 +106,7 @@ struct swr_port_info {
	u8 slave_port_id;
	u8 offset1;
	u8 offset2;
	u8 sinterval;
	u16 sinterval;
	struct list_head list;
	u8 master_port_id;
	u8 hstart;
+2 −2
Original line number Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (c) 2015, 2017-2019 The Linux Foundation. All rights reserved.
 * Copyright (c) 2015, 2017-2020 The Linux Foundation. All rights reserved.
 */

#ifndef _LINUX_SWR_COMMON_H
@@ -17,7 +17,7 @@ enum {
};

struct port_params {
	u8 si;
	u16 si;
	u8 off1;
	u8 off2;
	u8 hstart;/* head start */
+6 −3
Original line number Diff line number Diff line
@@ -1140,7 +1140,7 @@ static void swrm_disable_ports(struct swr_master *master,
			(SWRM_DP_PORT_CTRL_BANK((i + 1), bank)), value);

		if (mport->stream_type == SWR_PCM)
			swrm_pcm_port_config(swrm, i, mport->dir, false);
			swrm_pcm_port_config(swrm, (i + 1), mport->dir, false);
	}
}

@@ -1213,7 +1213,7 @@ static void swrm_copy_data_port_config(struct swr_master *master, u8 bank)
			continue;

		if (mport->stream_type == SWR_PCM)
			swrm_pcm_port_config(swrm, i, mport->dir, true);
			swrm_pcm_port_config(swrm, (i + 1), mport->dir, true);

		list_for_each_entry(port_req, &mport->port_req_list, list) {
			slv_id = port_req->slave_port_id;
@@ -1303,7 +1303,7 @@ static void swrm_copy_data_port_config(struct swr_master *master, u8 bank)
					<< SWRM_DP_PORT_CTRL_OFFSET2_SHFT);
		value |= ((mport->offset1)
				<< SWRM_DP_PORT_CTRL_OFFSET1_SHFT);
		value |= mport->sinterval;
		value |= (mport->sinterval & 0xFF);


		reg[len] = SWRM_DP_PORT_CTRL_BANK((i + 1), bank);
@@ -1312,6 +1312,9 @@ static void swrm_copy_data_port_config(struct swr_master *master, u8 bank)
			__func__, i,
			(SWRM_DP_PORT_CTRL_BANK((i + 1), bank)), value);

		reg[len] = SWRM_DP_SAMPLECTRL2_BANK((i + 1), bank);
		val[len++] = ((mport->sinterval >> 8) & 0xFF);

		if (mport->lane_ctrl != SWR_INVALID_PARAM) {
			reg[len] = SWRM_DP_PORT_CTRL_2_BANK((i + 1), bank);
			val[len++] = mport->lane_ctrl;
+1 −1
Original line number Diff line number Diff line
@@ -89,7 +89,7 @@ struct swrm_mports {
	u8 req_ch;
	u8 offset1;
	u8 offset2;
	u8 sinterval;
	u16 sinterval;
	u8 hstart;
	u8 hstop;
	u8 blk_grp_count;