if (down_interruptible(&__efi_uv_runtime_lock)) return BIOS_STATUS_ABORT;
local_irq_save(bios_flags);
ret = __uv_bios_call(which, a1, a2, a3, a4, a5);
local_irq_restore(bios_flags);
up(&__efi_uv_runtime_lock);
return ret;
}
long sn_partition_id;
EXPORT_SYMBOL_GPL(sn_partition_id); long sn_coherency_id;
EXPORT_SYMBOL_GPL(sn_coherency_id); long sn_region_size;
EXPORT_SYMBOL_GPL(sn_region_size); long system_serial_number; int uv_type;
s64 uv_bios_get_sn_info(int fc, int *uvtype, long *partid, long *coher, long *region, long *ssn)
{
s64 ret;
u64 v0, v1; union partition_info_u part;
ret = uv_bios_call_irqsave(UV_BIOS_GET_SN_INFO, fc,
(u64)(&v0), (u64)(&v1), 0, 0); if (ret != BIOS_STATUS_SUCCESS) return ret;
part.val = v0; if (uvtype)
*uvtype = part.hub_version; if (partid)
*partid = part.partition_id; if (coher)
*coher = part.coherence_id; if (region)
*region = part.region_size; if (ssn)
*ssn = v1; return ret;
}
/* * uv_bios_set_legacy_vga_target - Set Legacy VGA I/O Target * @decode: true to enable target, false to disable target * @domain: PCI domain number * @bus: PCI bus number * * Returns: * 0: Success * -EINVAL: Invalid domain or bus number * -ENOSYS: Capability not available * -EBUSY: Legacy VGA I/O cannot be retargeted at this time
*/ int uv_bios_set_legacy_vga_target(bool decode, int domain, int bus)
{ return uv_bios_call(UV_BIOS_SET_LEGACY_VGA_TARGET,
(u64)decode, (u64)domain, (u64)bus, 0, 0);
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.