Use appropriate types for the control register value as well as the capability position. Constify a pointer. Use "else" in favor of encoding the opposite condition of the earlier if().
Signed-off-by: Jan Beulich <[email protected]> --- v2: New. --- a/xen/drivers/passthrough/ats.c +++ b/xen/drivers/passthrough/ats.c @@ -23,10 +23,9 @@ boolean_param("ats", opt_ats); int enable_ats_device(struct pci_dev *pdev, struct list_head *ats_list) { - u32 value; - int pos; + uint16_t value; + unsigned int pos = pci_find_ext_capability(pdev->sbdf, PCI_EXT_CAP_ID_ATS); - pos = pci_find_ext_capability(pdev->sbdf, PCI_EXT_CAP_ID_ATS); BUG_ON(!pos); if ( iommu_verbose ) @@ -35,7 +34,7 @@ int enable_ats_device(struct pci_dev *pd value = pci_conf_read16(pdev->sbdf, pos + ATS_REG_CTL); if ( value & ATS_ENABLE ) { - struct pci_dev *other; + const struct pci_dev *other; list_for_each_entry ( other, ats_list, ats.list ) if ( other == pdev ) @@ -44,8 +43,7 @@ int enable_ats_device(struct pci_dev *pd break; } } - - if ( !(value & ATS_ENABLE) ) + else { value |= ATS_ENABLE; pci_conf_write16(pdev->sbdf, pos + ATS_REG_CTL, value); @@ -69,7 +67,7 @@ int enable_ats_device(struct pci_dev *pd void disable_ats_device(struct pci_dev *pdev) { - u32 value; + uint16_t value; BUG_ON(!pdev->ats.cap_pos);
