diff --git a/src/devices/hypertransport.c b/src/devices/hypertransport.c index a75550cdae..411e7542c0 100644 --- a/src/devices/hypertransport.c +++ b/src/devices/hypertransport.c @@ -71,7 +71,7 @@ static int ht_setup_link(struct prev_link *prev, device_t dev, unsigned pos) /* Set the hypertransport link width and frequency */ reset_needed = 0; - linkb_to_host = pci_read_config16(dev, pos + PCI_CAP_FLAGS) & (1<<10); + linkb_to_host = (pci_read_config16(dev, pos + PCI_CAP_FLAGS) >> 10) & 1; /* Read the capabilities */ present_freq_cap = ht_read_freq_cap(dev, pos + (linkb_to_host ? PCI_HT_CAP_SLAVE_FREQ_CAP1: PCI_HT_CAP_SLAVE_FREQ_CAP0)); diff --git a/src/northbridge/amd/amdk8/incoherent_ht.c b/src/northbridge/amd/amdk8/incoherent_ht.c index e348b67286..f5cd5aa70f 100644 --- a/src/northbridge/amd/amdk8/incoherent_ht.c +++ b/src/northbridge/amd/amdk8/incoherent_ht.c @@ -242,7 +242,7 @@ static int ht_setup_chain(device_t udev, uint8_t upos) } /* get ht direction */ - offs = (pci_read_config16(dev, pos + PCI_CAP_FLAGS) & (1<<10)) ? PCI_HT_SLAVE1_OFFS : PCI_HT_SLAVE0_OFFS; + offs = ( (pci_read_config16(dev, pos + PCI_CAP_FLAGS) >> 10) & 1) ? PCI_HT_SLAVE1_OFFS : PCI_HT_SLAVE0_OFFS; /* Setup the Hypertransport link */ reset_needed |= ht_optimize_link(udev, upos, uoffs, dev, pos, offs);