From 937f687969f77bfeee5efd71cadfa6f1a813665e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristian=20H=C3=B8gsberg?= Date: Wed, 7 Mar 2007 12:12:36 -0500 Subject: firewire: Let an fw_descriptor specify a leading immediate key/value pair. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This lets us break out "Juju" as the model name in the config rom. Signed-off-by: Kristian Høgsberg Signed-off-by: Stefan Richter --- drivers/firewire/fw-card.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'drivers/firewire/fw-card.c') diff --git a/drivers/firewire/fw-card.c b/drivers/firewire/fw-card.c index 3f8661a52ac..8d7c12164bb 100644 --- a/drivers/firewire/fw-card.c +++ b/drivers/firewire/fw-card.c @@ -100,11 +100,12 @@ generate_config_rom (struct fw_card *card, size_t *config_rom_length) i = 5; config_rom[i++] = 0; config_rom[i++] = 0x0c0083c0; /* node capabilities */ - config_rom[i++] = 0x03d00d1e; /* vendor id */ j = i + descriptor_count; /* Generate root directory entries for descriptors. */ list_for_each_entry (desc, &descriptor_list, link) { + if (desc->immediate > 0) + config_rom[i++] = desc->immediate; config_rom[i] = desc->key | (j - i); i++; j += desc->length; @@ -165,6 +166,8 @@ fw_core_add_descriptor (struct fw_descriptor *desc) list_add_tail (&desc->link, &descriptor_list); descriptor_count++; + if (desc->immediate > 0) + descriptor_count++; update_config_roms(); up_write(&fw_bus_type.subsys.rwsem); @@ -180,6 +183,8 @@ fw_core_remove_descriptor (struct fw_descriptor *desc) list_del(&desc->link); descriptor_count--; + if (desc->immediate > 0) + descriptor_count--; update_config_roms(); up_write(&fw_bus_type.subsys.rwsem); -- cgit v1.2.3