diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/pci_auto.c | 3 | ||||
-rw-r--r-- | drivers/rtl8139.c | 1 | ||||
-rw-r--r-- | drivers/tsec.c | 2 |
3 files changed, 4 insertions, 2 deletions
diff --git a/drivers/pci_auto.c b/drivers/pci_auto.c index 15f7432..9e921b2 100644 --- a/drivers/pci_auto.c +++ b/drivers/pci_auto.c @@ -102,7 +102,8 @@ void pciauto_setup_device(struct pci_controller *hose, /* Check the BAR type and set our address mask */ if (bar_response & PCI_BASE_ADDRESS_SPACE) { - bar_size = ~(bar_response & PCI_BASE_ADDRESS_IO_MASK) + 1; + bar_size = ((~(bar_response & PCI_BASE_ADDRESS_IO_MASK)) + & 0xffff) + 1; bar_res = io; DEBUGF("PCI Autoconfig: BAR %d, I/O, size=0x%x, ", bar_nr, bar_size); diff --git a/drivers/rtl8139.c b/drivers/rtl8139.c index a95f84e..848d1d1 100644 --- a/drivers/rtl8139.c +++ b/drivers/rtl8139.c @@ -196,6 +196,7 @@ static void rtl_disable(struct eth_device *dev); static struct pci_device_id supported[] = { {PCI_VENDOR_ID_REALTEK, PCI_DEVICE_ID_REALTEK_8139}, + {0x1186, 0x1300}, {} }; diff --git a/drivers/tsec.c b/drivers/tsec.c index 18778c2..a8a2ba2 100644 --- a/drivers/tsec.c +++ b/drivers/tsec.c @@ -372,7 +372,7 @@ uint mii_parse_sr(uint mii_reg, struct tsec_private *priv) if (i > PHY_AUTONEGOTIATE_TIMEOUT) { puts (" TIMEOUT !\n"); priv->link = 0; - break; + return 0; } if ((i++ % 1000) == 0) { |