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..117bc6d 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,