diff --git a/drivers/firewire/core-device.c b/drivers/firewire/core-device.c
index 150a8ba974885148cda64f22d6b8df0b1980f5aa..f61211977d3352b1949688d157df9281f98d9ab2 100644
--- a/drivers/firewire/core-device.c
+++ b/drivers/firewire/core-device.c
@@ -514,6 +514,7 @@ static int read_bus_info_block(struct fw_device *device, int generation)
 		return -ENOMEM;
 
 	stack = &rom[READ_BIB_ROM_SIZE];
+	memset(rom, 0, sizeof(*rom) * READ_BIB_ROM_SIZE);
 
 	device->max_speed = SCODE_100;