From: Andrew Cooper Date: Mon, 24 Sep 2018 10:39:46 +0000 (+0100) Subject: AMD/IOMMU: Drop get_field_from_byte() X-Git-Tag: archive/raspbian/4.14.0+80-gd101b417b7-1+rpi1^2~63^2~3183 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=cc6e309c6e4368a1094b5e7593cf8cf5803ed709;p=xen.git AMD/IOMMU: Drop get_field_from_byte() It is MASK_EXTR() in disguise, but less flexible. No functional change. Signed-off-by: Andrew Cooper Reviewed-by: Paul Durrant Reviewed-by: Jan Beulich Reviewed-by: Brian Woods Reviewed-by: Roger Pau Monné --- diff --git a/xen/drivers/passthrough/amd/iommu_map.c b/xen/drivers/passthrough/amd/iommu_map.c index 61ade71850..d039806927 100644 --- a/xen/drivers/passthrough/amd/iommu_map.c +++ b/xen/drivers/passthrough/amd/iommu_map.c @@ -220,7 +220,7 @@ void __init iommu_dte_add_device_entry(u32 *dte, struct ivrs_mappings *ivrs_dev) dte[7] = dte[6] = dte[4] = dte[2] = dte[1] = dte[0] = 0; flags = ivrs_dev->device_flags; - sys_mgt = get_field_from_byte(flags, ACPI_IVHD_SYSTEM_MGMT); + sys_mgt = MASK_EXTR(flags, ACPI_IVHD_SYSTEM_MGMT); dev_ex = ivrs_dev->dte_allow_exclusion; flags &= mask; diff --git a/xen/include/asm-x86/hvm/svm/amd-iommu-proto.h b/xen/include/asm-x86/hvm/svm/amd-iommu-proto.h index 99bc21c7b3..1b965e16f2 100644 --- a/xen/include/asm-x86/hvm/svm/amd-iommu-proto.h +++ b/xen/include/asm-x86/hvm/svm/amd-iommu-proto.h @@ -155,11 +155,6 @@ static inline u32 set_field_in_reg_u32(u32 field, u32 reg_value, return reg_value; } -static inline u8 get_field_from_byte(u8 value, u8 mask) -{ - return (value & mask) / (mask & -mask); -} - static inline unsigned long region_to_pages(unsigned long addr, unsigned long size) { return (PAGE_ALIGN(addr + size) - (addr & PAGE_MASK)) >> PAGE_SHIFT;