firewire: mark some structs const
Instances of struct file_operations and struct fw_card_driver can be
qualified as "const". Ditto with struct fw_descriptor.data, struct
fw_device_id, and predefined instances of struct fw_address_region,
at least in the current implementation.
Data qualified as const is placed into the .rodata section which won't
be mixed with dirty data.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
diff --git a/drivers/firewire/fw-card.c b/drivers/firewire/fw-card.c
index 7977390..82a9243 100644
--- a/drivers/firewire/fw-card.c
+++ b/drivers/firewire/fw-card.c
@@ -257,7 +257,7 @@
}
void
-fw_card_initialize(struct fw_card *card, struct fw_card_driver *driver,
+fw_card_initialize(struct fw_card *card, const struct fw_card_driver *driver,
struct device *device)
{
static int index;
diff --git a/drivers/firewire/fw-device-cdev.c b/drivers/firewire/fw-device-cdev.c
index c10e332..117bc6db 100644
--- a/drivers/firewire/fw-device-cdev.c
+++ b/drivers/firewire/fw-device-cdev.c
@@ -602,7 +602,7 @@
return 0;
}
-struct file_operations fw_device_ops = {
+const struct file_operations fw_device_ops = {
.owner = THIS_MODULE,
.open = fw_device_op_open,
.read = fw_device_op_read,
diff --git a/drivers/firewire/fw-device.c b/drivers/firewire/fw-device.c
index ec1cb7f..e541daa 100644
--- a/drivers/firewire/fw-device.c
+++ b/drivers/firewire/fw-device.c
@@ -49,7 +49,7 @@
static int is_fw_unit(struct device *dev);
-static int match_unit_directory(u32 * directory, struct fw_device_id *id)
+static int match_unit_directory(u32 * directory, const struct fw_device_id *id)
{
struct fw_csr_iterator ci;
int key, value, match;
diff --git a/drivers/firewire/fw-device.h b/drivers/firewire/fw-device.h
index 731abbe..f39cf6a 100644
--- a/drivers/firewire/fw-device.h
+++ b/drivers/firewire/fw-device.h
@@ -113,7 +113,7 @@
struct device_driver driver;
/* Called when the parent device sits through a bus reset. */
void (*update) (struct fw_unit *unit);
- struct fw_device_id *id_table;
+ const struct fw_device_id *id_table;
};
static inline struct fw_driver *
@@ -122,6 +122,6 @@
return container_of(drv, struct fw_driver, driver);
}
-extern struct file_operations fw_device_ops;
+extern const struct file_operations fw_device_ops;
#endif /* __fw_device_h */
diff --git a/drivers/firewire/fw-ohci.c b/drivers/firewire/fw-ohci.c
index 5d42d18..d3750a2 100644
--- a/drivers/firewire/fw-ohci.c
+++ b/drivers/firewire/fw-ohci.c
@@ -1146,7 +1146,7 @@
return 0;
}
-static struct fw_card_driver ohci_driver = {
+static const struct fw_card_driver ohci_driver = {
.name = ohci_driver_name,
.enable = ohci_enable,
.update_phy_reg = ohci_update_phy_reg,
diff --git a/drivers/firewire/fw-sbp2.c b/drivers/firewire/fw-sbp2.c
index ce9c41f..28acae8 100644
--- a/drivers/firewire/fw-sbp2.c
+++ b/drivers/firewire/fw-sbp2.c
@@ -681,7 +681,7 @@
#define SBP2_UNIT_SPEC_ID_ENTRY 0x0000609e
#define SBP2_SW_VERSION_ENTRY 0x00010483
-static struct fw_device_id sbp2_id_table[] = {
+static const struct fw_device_id sbp2_id_table[] = {
{
.match_flags = FW_MATCH_SPECIFIER_ID | FW_MATCH_VERSION,
.specifier_id = SBP2_UNIT_SPEC_ID_ENTRY,
diff --git a/drivers/firewire/fw-transaction.c b/drivers/firewire/fw-transaction.c
index affd420..a72f502 100644
--- a/drivers/firewire/fw-transaction.c
+++ b/drivers/firewire/fw-transaction.c
@@ -331,15 +331,15 @@
static DEFINE_SPINLOCK(address_handler_lock);
static LIST_HEAD(address_handler_list);
-struct fw_address_region fw_low_memory_region =
+const struct fw_address_region fw_low_memory_region =
{ 0x000000000000ull, 0x000100000000ull };
-struct fw_address_region fw_high_memory_region =
+const struct fw_address_region fw_high_memory_region =
{ 0x000100000000ull, 0xffffe0000000ull };
-struct fw_address_region fw_private_region =
+const struct fw_address_region fw_private_region =
{ 0xffffe0000000ull, 0xfffff0000000ull };
-struct fw_address_region fw_csr_region =
+const struct fw_address_region fw_csr_region =
{ 0xfffff0000000ULL, 0xfffff0000800ull };
-struct fw_address_region fw_unit_space_region =
+const struct fw_address_region fw_unit_space_region =
{ 0xfffff0000900ull, 0x1000000000000ull };
EXPORT_SYMBOL(fw_low_memory_region);
@@ -358,7 +358,7 @@
int
fw_core_add_address_handler(struct fw_address_handler *handler,
- struct fw_address_region *region)
+ const struct fw_address_region *region)
{
struct fw_address_handler *other;
unsigned long flags;
@@ -684,7 +684,7 @@
MODULE_DESCRIPTION("Core IEEE1394 transaction logic");
MODULE_LICENSE("GPL");
-static u32 vendor_textual_descriptor_data[] = {
+static const u32 vendor_textual_descriptor_data[] = {
/* textual descriptor leaf () */
0x00080000,
0x00000000,
diff --git a/drivers/firewire/fw-transaction.h b/drivers/firewire/fw-transaction.h
index 292add5..2f849c8 100644
--- a/drivers/firewire/fw-transaction.h
+++ b/drivers/firewire/fw-transaction.h
@@ -133,7 +133,7 @@
struct list_head link;
size_t length;
u32 key;
- u32 *data;
+ const u32 *data;
};
int fw_core_add_descriptor (struct fw_descriptor *desc);
@@ -218,14 +218,14 @@
u64 end;
};
-extern struct fw_address_region fw_low_memory_region;
-extern struct fw_address_region fw_high_memory_region;
-extern struct fw_address_region fw_private_region;
-extern struct fw_address_region fw_csr_region;
-extern struct fw_address_region fw_unit_space_region;
+extern const struct fw_address_region fw_low_memory_region;
+extern const struct fw_address_region fw_high_memory_region;
+extern const struct fw_address_region fw_private_region;
+extern const struct fw_address_region fw_csr_region;
+extern const struct fw_address_region fw_unit_space_region;
int fw_core_add_address_handler(struct fw_address_handler *handler,
- struct fw_address_region *region);
+ const struct fw_address_region *region);
void fw_core_remove_address_handler(struct fw_address_handler *handler);
void fw_send_response(struct fw_card *card,
struct fw_request *request, int rcode);
@@ -233,7 +233,7 @@
extern struct bus_type fw_bus_type;
struct fw_card {
- struct fw_card_driver *driver;
+ const struct fw_card_driver *driver;
struct device *device;
int node_id;
@@ -399,7 +399,7 @@
/* Do we need phy speed here also? If we add more args, maybe we
should go back to struct fw_card_info. */
void
-fw_card_initialize(struct fw_card *card, struct fw_card_driver *driver,
+fw_card_initialize(struct fw_card *card, const struct fw_card_driver *driver,
struct device *device);
int
fw_card_add(struct fw_card *card,