soundwire: optimize sdw_dp0_prop
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Thu, 3 Oct 2024 07:06:42 +0000 (15:06 +0800)
committerVinod Koul <vkoul@kernel.org>
Thu, 3 Oct 2024 07:58:50 +0000 (13:28 +0530)
commit557e28f8b53243097162cf4d3e59bcee9fb9713b
tree5828840c7081efeb1a25e28405e4775bb1a4a397
parent1c758df5a83ea0c9b5055536336d8a586b5010b0
soundwire: optimize sdw_dp0_prop

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@linux.intel.com>
Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Link: https://lore.kernel.org/r/20241003070650.62787-7-yung-chuan.liao@linux.intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
include/linux/soundwire/sdw.h