|
@@ -199,12 +199,14 @@ void uv_bios_init(void)
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
+ /* Starting with UV4 the UV systab size is variable */
|
|
|
if (uv_systab->revision >= UV_SYSTAB_VERSION_UV4) {
|
|
|
+ int size = uv_systab->size;
|
|
|
+
|
|
|
iounmap(uv_systab);
|
|
|
- uv_systab = ioremap(efi.uv_systab, uv_systab->size);
|
|
|
+ uv_systab = ioremap(efi.uv_systab, size);
|
|
|
if (!uv_systab) {
|
|
|
- pr_err("UV: UVsystab: ioremap(%d) failed!\n",
|
|
|
- uv_systab->size);
|
|
|
+ pr_err("UV: UVsystab: ioremap(%d) failed!\n", size);
|
|
|
return;
|
|
|
}
|
|
|
}
|