diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-12-26 15:06:56 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-12-26 15:06:56 -0500 |
| commit | d7c1255a3a21e98bdc64df8ccf005a174d7e6289 (patch) | |
| tree | ded861029cdacd09b6c2e2de2896a671f71b02cf | |
| parent | d3c7e1ab043abd7706db4fbccf327df9e62f7990 (diff) | |
| parent | fc75fc8339e7727167443469027540b283daac71 (diff) | |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (42 commits)
ipv4: dont create routes on down devices
epic100: hamachi: yellowfin: Fix skb allocation size
sundance: Fix oopses with corrupted skb_shared_info
Revert "ipv4: Allow configuring subnets as local addresses"
USB: mcs7830: return negative if auto negotiate fails
irda: prevent integer underflow in IRLMP_ENUMDEVICES
tcp: fix listening_get_next()
atl1c: Do not use legacy PCI power management
mac80211: fix mesh forwarding
MAINTAINERS: email address change
net: Fix range checks in tcf_valid_offset().
net_sched: sch_sfq: fix allot handling
hostap: remove netif_stop_queue from init
mac80211/rt2x00: add ieee80211_tx_status_ni()
typhoon: memory corruption in typhoon_get_drvinfo()
net: Add USB PID for new MOSCHIP USB ethernet controller MCS7832 variant
net_sched: always clone skbs
ipv6: Fragment locally generated tunnel-mode IPSec6 packets as needed.
netlink: fix gcc -Wconversion compilation warning
asix: add USB ID for Logitec LAN-GTJ U2A
...
60 files changed, 413 insertions, 190 deletions
diff --git a/MAINTAINERS b/MAINTAINERS index 239782e51f77..71e40f9118df 100644 --- a/MAINTAINERS +++ b/MAINTAINERS | |||
| @@ -4590,7 +4590,7 @@ F: drivers/pcmcia/ | |||
| 4590 | F: include/pcmcia/ | 4590 | F: include/pcmcia/ |
| 4591 | 4591 | ||
| 4592 | PCNET32 NETWORK DRIVER | 4592 | PCNET32 NETWORK DRIVER |
| 4593 | M: Don Fry <pcnet32@verizon.net> | 4593 | M: Don Fry <pcnet32@frontier.com> |
| 4594 | L: netdev@vger.kernel.org | 4594 | L: netdev@vger.kernel.org |
| 4595 | S: Maintained | 4595 | S: Maintained |
| 4596 | F: drivers/net/pcnet32.c | 4596 | F: drivers/net/pcnet32.c |
diff --git a/drivers/bluetooth/hci_ldisc.c b/drivers/bluetooth/hci_ldisc.c index 720148294e64..3c6cabcb7d84 100644 --- a/drivers/bluetooth/hci_ldisc.c +++ b/drivers/bluetooth/hci_ldisc.c | |||
| @@ -311,8 +311,10 @@ static void hci_uart_tty_close(struct tty_struct *tty) | |||
| 311 | 311 | ||
| 312 | if (test_and_clear_bit(HCI_UART_PROTO_SET, &hu->flags)) { | 312 | if (test_and_clear_bit(HCI_UART_PROTO_SET, &hu->flags)) { |
| 313 | hu->proto->close(hu); | 313 | hu->proto->close(hu); |
| 314 | hci_unregister_dev(hdev); | 314 | if (hdev) { |
| 315 | hci_free_dev(hdev); | 315 | hci_unregister_dev(hdev); |
| 316 | hci_free_dev(hdev); | ||
| 317 | } | ||
| 316 | } | 318 | } |
| 317 | } | 319 | } |
| 318 | } | 320 | } |
diff --git a/drivers/net/atl1c/atl1c_main.c b/drivers/net/atl1c/atl1c_main.c index 09b099bfab2b..bdf11d89a499 100644 --- a/drivers/net/atl1c/atl1c_main.c +++ b/drivers/net/atl1c/atl1c_main.c | |||
| @@ -702,6 +702,7 @@ static int __devinit atl1c_sw_init(struct atl1c_adapter *adapter) | |||
| 702 | 702 | ||
| 703 | 703 | ||
| 704 | adapter->wol = 0; | 704 | adapter->wol = 0; |
| 705 | device_set_wakeup_enable(&pdev->dev, false); | ||
| 705 | adapter->link_speed = SPEED_0; | 706 | adapter->link_speed = SPEED_0; |
| 706 | adapter->link_duplex = FULL_DUPLEX; | 707 | adapter->link_duplex = FULL_DUPLEX; |
| 707 | adapter->num_rx_queues = AT_DEF_RECEIVE_QUEUE; | 708 | adapter->num_rx_queues = AT_DEF_RECEIVE_QUEUE; |
| @@ -2444,8 +2445,9 @@ static int atl1c_close(struct net_device *netdev) | |||
| 2444 | return 0; | 2445 | return 0; |
| 2445 | } | 2446 | } |
| 2446 | 2447 | ||
| 2447 | static int atl1c_suspend(struct pci_dev *pdev, pm_message_t state) | 2448 | static int atl1c_suspend(struct device *dev) |
| 2448 | { | 2449 | { |
| 2450 | struct pci_dev *pdev = to_pci_dev(dev); | ||
| 2449 | struct net_device *netdev = pci_get_drvdata(pdev); | 2451 | struct net_device *netdev = pci_get_drvdata(pdev); |
| 2450 | struct atl1c_adapter *adapter = netdev_priv(netdev); | 2452 | struct atl1c_adapter *adapter = netdev_priv(netdev); |
| 2451 | struct atl1c_hw *hw = &adapter->hw; | 2453 | struct atl1c_hw *hw = &adapter->hw; |
| @@ -2454,7 +2456,6 @@ static int atl1c_suspend(struct pci_dev *pdev, pm_message_t state) | |||
| 2454 | u32 wol_ctrl_data = 0; | 2456 | u32 wol_ctrl_data = 0; |
| 2455 | u16 mii_intr_status_data = 0; | 2457 | u16 mii_intr_status_data = 0; |
| 2456 | u32 wufc = adapter->wol; | 2458 | u32 wufc = adapter->wol; |
| 2457 | int retval = 0; | ||
| 2458 | 2459 | ||
| 2459 | atl1c_disable_l0s_l1(hw); | 2460 | atl1c_disable_l0s_l1(hw); |
| 2460 | if (netif_running(netdev)) { | 2461 | if (netif_running(netdev)) { |
| @@ -2462,9 +2463,6 @@ static int atl1c_suspend(struct pci_dev *pdev, pm_message_t state) | |||
| 2462 | atl1c_down(adapter); | 2463 | atl1c_down(adapter); |
| 2463 | } | 2464 | } |
| 2464 | netif_device_detach(netdev); | 2465 | netif_device_detach(netdev); |
| 2465 | retval = pci_save_state(pdev); | ||
| 2466 | if (retval) | ||
| 2467 | return retval; | ||
| 2468 | 2466 | ||
| 2469 | if (wufc) | 2467 | if (wufc) |
| 2470 | if (atl1c_phy_power_saving(hw) != 0) | 2468 | if (atl1c_phy_power_saving(hw) != 0) |
| @@ -2525,12 +2523,8 @@ static int atl1c_suspend(struct pci_dev *pdev, pm_message_t state) | |||
| 2525 | AT_WRITE_REG(hw, REG_WOL_CTRL, wol_ctrl_data); | 2523 | AT_WRITE_REG(hw, REG_WOL_CTRL, wol_ctrl_data); |
| 2526 | AT_WRITE_REG(hw, REG_MAC_CTRL, mac_ctrl_data); | 2524 | AT_WRITE_REG(hw, REG_MAC_CTRL, mac_ctrl_data); |
| 2527 | 2525 | ||
| 2528 | /* pcie patch */ | ||
| 2529 | device_set_wakeup_enable(&pdev->dev, 1); | ||
| 2530 | |||
| 2531 | AT_WRITE_REG(hw, REG_GPHY_CTRL, GPHY_CTRL_DEFAULT | | 2526 | AT_WRITE_REG(hw, REG_GPHY_CTRL, GPHY_CTRL_DEFAULT | |
| 2532 | GPHY_CTRL_EXT_RESET); | 2527 | GPHY_CTRL_EXT_RESET); |
| 2533 | pci_prepare_to_sleep(pdev); | ||
| 2534 | } else { | 2528 | } else { |
| 2535 | AT_WRITE_REG(hw, REG_GPHY_CTRL, GPHY_CTRL_POWER_SAVING); | 2529 | AT_WRITE_REG(hw, REG_GPHY_CTRL, GPHY_CTRL_POWER_SAVING); |
| 2536 | master_ctrl_data |= MASTER_CTRL_CLK_SEL_DIS; | ||
