[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240827130707.298477-7-yung-chuan.liao@linux.intel.com>
Date: Tue, 27 Aug 2024 21:06:59 +0800
From: Bard Liao <yung-chuan.liao@...ux.intel.com>
To: linux-sound@...r.kernel.org,
vkoul@...nel.org
Cc: vinod.koul@...aro.org,
linux-kernel@...r.kernel.org,
pierre-louis.bossart@...ux.intel.com,
bard.liao@...el.com
Subject: [PATCH 06/14] soundwire: optimize sdw_dp0_prop
From: Pierre-Louis Bossart <pierre-louis.bossart@...ux.intel.com>
Move pointers and booleans.
Before:
struct sdw_dp0_prop {
u32 max_word; /* 0 4 */
u32 min_word; /* 4 4 */
u32 num_words; /* 8 4 */
/* XXX 4 bytes hole, try to pack */
u32 * words; /* 16 8 */
bool BRA_flow_controlled; /* 24 1 */
bool simple_ch_prep_sm; /* 25 1 */
/* XXX 2 bytes hole, try to pack */
u32 ch_prep_timeout; /* 28 4 */
bool imp_def_interrupts; /* 32 1 */
/* size: 40, cachelines: 1, members: 8 */
/* sum members: 27, holes: 2, sum holes: 6 */
/* padding: 7 */
/* last cacheline: 40 bytes */
};
after:
struct sdw_dp0_prop {
u32 * words; /* 0 8 */
u32 max_word; /* 8 4 */
u32 min_word; /* 12 4 */
u32 num_words; /* 16 4 */
u32 ch_prep_timeout; /* 20 4 */
bool BRA_flow_controlled; /* 24 1 */
bool simple_ch_prep_sm; /* 25 1 */
bool imp_def_interrupts; /* 26 1 */
/* size: 32, cachelines: 1, members: 8 */
/* padding: 5 */
/* last cacheline: 32 bytes */
};
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@...ux.intel.com>
Signed-off-by: Bard Liao <yung-chuan.liao@...ux.intel.com>
---
include/linux/soundwire/sdw.h | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/include/linux/soundwire/sdw.h b/include/linux/soundwire/sdw.h
index 38db81f5bdb9..c72095137a35 100644
--- a/include/linux/soundwire/sdw.h
+++ b/include/linux/soundwire/sdw.h
@@ -226,16 +226,16 @@ enum sdw_clk_stop_mode {
/**
* struct sdw_dp0_prop - DP0 properties
- * @max_word: Maximum number of bits in a Payload Channel Sample, 1 to 64
- * (inclusive)
- * @min_word: Minimum number of bits in a Payload Channel Sample, 1 to 64
- * (inclusive)
- * @num_words: number of wordlengths supported
* @words: wordlengths supported
+ * @max_word: Maximum number of bits in a Payload Channel Sample, 1 to 64
+ * (inclusive)
+ * @min_word: Minimum number of bits in a Payload Channel Sample, 1 to 64
+ * (inclusive)
+ * @num_words: number of wordlengths supported
+ * @ch_prep_timeout: Port-specific timeout value, in milliseconds
* @BRA_flow_controlled: Slave implementation results in an OK_NotReady
* response
* @simple_ch_prep_sm: If channel prepare sequence is required
- * @ch_prep_timeout: Port-specific timeout value, in milliseconds
* @imp_def_interrupts: If set, each bit corresponds to support for
* implementation-defined interrupts
*
@@ -244,13 +244,13 @@ enum sdw_clk_stop_mode {
* support
*/
struct sdw_dp0_prop {
+ u32 *words;
u32 max_word;
u32 min_word;
u32 num_words;
- u32 *words;
+ u32 ch_prep_timeout;
bool BRA_flow_controlled;
bool simple_ch_prep_sm;
- u32 ch_prep_timeout;
bool imp_def_interrupts;
};
--
2.43.0
Powered by blists - more mailing lists