diff options
author | Christophe JAILLET <christophe.jaillet@wanadoo.fr> | 2023-02-14 11:58:59 +0300 |
---|---|---|
committer | Lee Jones <lee@kernel.org> | 2023-04-26 13:40:27 +0300 |
commit | 86c6bb0edffa9fc02b4e3801b48c8e82114f1352 (patch) | |
tree | b7cd3c5128a36c20c87a6c64e0e1cf4d0cb010ea /include | |
parent | b09ed62f2d985c8eb2d5d5b560bebac653fdba20 (diff) | |
download | linux-86c6bb0edffa9fc02b4e3801b48c8e82114f1352.tar.xz |
mfd: core: Reorder fields in 'struct mfd_cell' to save some memory
Group some variables based on their sizes to reduce hole and avoid padding.
On x86_64, this shrinks the size from 144 to 128 bytes.
As an example:
$ size drivers/mfd/as3722.o (Before)
text data bss dec hex filename
9441 680 16 10137 2799 drivers/mfd/as3722.o
$ size drivers/mfd/as3722.o (After)
text data bss dec hex filename
9345 680 16 10041 2739 drivers/mfd/as3722.o
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: Lee Jones <lee@kernel.org>
Link: https://lore.kernel.org/r/bb631974888dfe1af593b6280cf30fb913d2d1a4.1676365116.git.christophe.jaillet@wanadoo.fr
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/mfd/core.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/include/linux/mfd/core.h b/include/linux/mfd/core.h index 14ca7b471576..fc4a0e9fb3bb 100644 --- a/include/linux/mfd/core.h +++ b/include/linux/mfd/core.h @@ -78,6 +78,9 @@ struct mfd_cell { void *platform_data; size_t pdata_size; + /* Matches ACPI */ + const struct mfd_cell_acpi_match *acpi_match; + /* Software node for the device. */ const struct software_node *swnode; @@ -97,9 +100,6 @@ struct mfd_cell { /* Set to 'true' to use 'of_reg' (above) - allows for of_reg=0 */ bool use_of_reg; - /* Matches ACPI */ - const struct mfd_cell_acpi_match *acpi_match; - /* * These resources can be specified relative to the parent device. * For accessing hardware you should use resources from the platform dev @@ -119,8 +119,8 @@ struct mfd_cell { /* A list of regulator supplies that should be mapped to the MFD * device rather than the child device when requested */ - const char * const *parent_supplies; int num_parent_supplies; + const char * const *parent_supplies; }; /* |