[PATCH v2] gpio: sim: constify struct configfs_attribute

From: Bartosz Golaszewski

Date: Tue Oct 20 2026 - 08:42:19 EST


In preparation for the constification of configfs attributes, make the
existing instances of struct configfs_attribute in gpio-sim const and
use the new st_attrs_const field of struct config_item_type.

Suggested-by: Thomas Weißschuh <thomas.weissschuh@xxxxxxxxxxxxx>
Closes: https://lore.kernel.org/all/20261016105712-707634de-c955-4c66-957a-2bdb84bca3e4@xxxxxxxxxxxxx/
Reviewed-by: Thomas Weißschuh <thomas.weissschuh@xxxxxxxxxxxxx>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxxxxxxxx>
---
Changes in v2:
- Constify the pointer to configfs_attribute AND the data
- Link to v1: https://patch.msgid.link/20261019-gpio-sim-const-configfs-attrs-v1-1-e9f919b32f08@xxxxxxxxxxxxxxxx
---
drivers/gpio/gpio-sim.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/drivers/gpio/gpio-sim.c b/drivers/gpio/gpio-sim.c
index 0c73bec042670fc5706b4a93700e652cbaf3605e..8f587be8c5e4155290673d28fb048824f5bb8863 100644
--- a/drivers/gpio/gpio-sim.c
+++ b/drivers/gpio/gpio-sim.c
@@ -1037,7 +1037,7 @@ gpio_sim_device_config_live_store(struct config_item *item,

CONFIGFS_ATTR(gpio_sim_device_config_, live);

-static struct configfs_attribute *gpio_sim_device_config_attrs[] = {
+static const struct configfs_attribute *const gpio_sim_device_config_attrs[] = {
&gpio_sim_device_config_attr_dev_name,
&gpio_sim_device_config_attr_live,
NULL
@@ -1154,7 +1154,7 @@ gpio_sim_bank_config_num_lines_store(struct config_item *item,

CONFIGFS_ATTR(gpio_sim_bank_config_, num_lines);

-static struct configfs_attribute *gpio_sim_bank_config_attrs[] = {
+static const struct configfs_attribute *const gpio_sim_bank_config_attrs[] = {
&gpio_sim_bank_config_attr_chip_name,
&gpio_sim_bank_config_attr_label,
&gpio_sim_bank_config_attr_num_lines,
@@ -1228,7 +1228,7 @@ static ssize_t gpio_sim_line_config_valid_store(struct config_item *item,

CONFIGFS_ATTR(gpio_sim_line_config_, valid);

-static struct configfs_attribute *gpio_sim_line_config_attrs[] = {
+static const struct configfs_attribute *const gpio_sim_line_config_attrs[] = {
&gpio_sim_line_config_attr_name,
&gpio_sim_line_config_attr_valid,
NULL
@@ -1364,7 +1364,7 @@ gpio_sim_hog_config_active_low_store(struct config_item *item,

CONFIGFS_ATTR(gpio_sim_hog_config_, active_low);

-static struct configfs_attribute *gpio_sim_hog_config_attrs[] = {
+static const struct configfs_attribute *const gpio_sim_hog_config_attrs[] = {
&gpio_sim_hog_config_attr_name,
&gpio_sim_hog_config_attr_direction,
&gpio_sim_hog_config_attr_active_low,
@@ -1390,7 +1390,7 @@ static const struct configfs_item_operations gpio_sim_hog_config_item_ops = {

static const struct config_item_type gpio_sim_hog_config_type = {
.ct_item_ops = &gpio_sim_hog_config_item_ops,
- .ct_attrs = gpio_sim_hog_config_attrs,
+ .ct_attrs_const = gpio_sim_hog_config_attrs,
.ct_owner = THIS_MODULE,
};

@@ -1444,7 +1444,7 @@ static const struct configfs_group_operations gpio_sim_line_config_group_ops = {
static const struct config_item_type gpio_sim_line_config_type = {
.ct_item_ops = &gpio_sim_line_config_item_ops,
.ct_group_ops = &gpio_sim_line_config_group_ops,
- .ct_attrs = gpio_sim_line_config_attrs,
+ .ct_attrs_const = gpio_sim_line_config_attrs,
.ct_owner = THIS_MODULE,
};

@@ -1505,7 +1505,7 @@ static const struct configfs_group_operations gpio_sim_bank_config_group_ops = {
static const struct config_item_type gpio_sim_bank_config_group_type = {
.ct_item_ops = &gpio_sim_bank_config_item_ops,
.ct_group_ops = &gpio_sim_bank_config_group_ops,
- .ct_attrs = gpio_sim_bank_config_attrs,
+ .ct_attrs_const = gpio_sim_bank_config_attrs,
.ct_owner = THIS_MODULE,
};

@@ -1560,7 +1560,7 @@ static const struct configfs_group_operations gpio_sim_device_config_group_ops =
static const struct config_item_type gpio_sim_device_config_group_type = {
.ct_item_ops = &gpio_sim_device_config_item_ops,
.ct_group_ops = &gpio_sim_device_config_group_ops,
- .ct_attrs = gpio_sim_device_config_attrs,
+ .ct_attrs_const = gpio_sim_device_config_attrs,
.ct_owner = THIS_MODULE,
};


---
base-commit: 3d229ce89862b8e82d71a9e11d6f840ca272a6d6
change-id: 20261019-gpio-sim-const-configfs-attrs-60c742e31416

Best regards,
--
Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxxxxxxxx>