diff --git a/drivers/firewire/fw-cdev.c b/drivers/firewire/fw-cdev.c
index a1637a86da3d49a5d99824b866710ab823ead1c7..d48fa1c23a7703bf0460b2461fd598027258ddd7 100644
--- a/drivers/firewire/fw-cdev.c
+++ b/drivers/firewire/fw-cdev.c
@@ -1245,6 +1245,10 @@ static int ioctl_send_broadcast_request(struct client *client, void *buffer)
 		return -EINVAL;
 	}
 
+	/* Security policy: Only allow accesses to Units Space. */
+	if (request->offset < CSR_REGISTER_BASE + CSR_CONFIG_ROM_END)
+		return -EACCES;
+
 	return init_request(client, request, LOCAL_BUS | 0x3f, SCODE_100);
 }