From: Jeff Garzik <jeff@garzik.org>
To: Arjan van de Ven <arjan@linux.intel.com>
Cc: netdev@vger.kernel.org
Subject: Re: [patch 04/14] e1000: consolidate managability enabling/disabling
Date: Fri, 15 Dec 2006 09:32:30 -0500 [thread overview]
Message-ID: <4582B1FE.5070801@garzik.org> (raw)
In-Reply-To: <1166175176.3365.118.camel@laptopd505.fenrus.org>
Arjan van de Ven wrote:
> +static void
> +e1000_init_manageability(struct e1000_adapter *adapter)
> +{
> + if (adapter->en_mng_pt) {
> + uint32_t manc2h = E1000_READ_REG(&adapter->hw, MANC2H);
> + uint32_t manc = E1000_READ_REG(&adapter->hw, MANC);
> +
> + /* disable hardware interception of ARP */
> + manc &= ~(E1000_MANC_ARP_EN);
> +
> + /* enable receiving management packets to the host */
> + /* this will probably generate destination unreachable messages
> + * from the host OS, but the packets will be handled on SMBUS */
> + if (adapter->hw.mac_type >= e1000_82571) {
> + manc |= E1000_MANC_EN_MNG2HOST;
> +#define E1000_MNG2HOST_PORT_623 (1 << 5)
> +#define E1000_MNG2HOST_PORT_664 (1 << 6)
> + manc2h |= E1000_MNG2HOST_PORT_623;
> + manc2h |= E1000_MNG2HOST_PORT_664;
> + E1000_WRITE_REG(&adapter->hw, MANC2H, manc2h);
> + }
> +
> + E1000_WRITE_REG(&adapter->hw, MANC, manc);
> + }
> +}
> +
> +static void
> +e1000_release_manageability(struct e1000_adapter *adapter)
> +{
> + if (adapter->en_mng_pt) {
> + uint32_t manc = E1000_READ_REG(&adapter->hw, MANC);
> +
> + /* re-enable hardware interception of ARP */
> + manc |= E1000_MANC_ARP_EN;
> +
> + if (adapter->hw.mac_type >= e1000_82571)
> + manc &= ~E1000_MANC_EN_MNG2HOST;
> +
> + /* don't explicitly have to mess with MANC2H since
> + * MANC has an enable disable that gates MANC2H */
> +
> + E1000_WRITE_REG(&adapter->hw, MANC, manc);
> + }
> +}
This patch adds more error-probe mac_type tests, rather than a simple
and tough-to-screw-up E1000_HAS_MGMT feature bit.
> + /* If the controller is 82573 and f/w is AMT, do not set
> + * DRV_LOAD until the interface is up. For all other cases,
> + * let the f/w know that the h/w is now under the control
> + * of the driver. */
> + if (adapter->hw.mac_type != e1000_82573 ||
> + !e1000_check_mng_mode(&adapter->hw))
> + e1000_get_hw_control(adapter);
>
> - if (netif_running(netdev))
> - mod_timer(&adapter->watchdog_timer, jiffies);
ditto
next prev parent reply other threads:[~2006-12-15 14:32 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-12-15 9:28 [patch 00/14] E1000 bugfix series for 2.6.20 Arjan van de Ven
2006-12-15 9:29 ` [patch 01/14] e1000: The user-supplied itr setting needs the lower 2 bits masked off Arjan van de Ven
2006-12-15 9:30 ` [patch 02/14] e1000: dynamic itr: take TSO and jumbo into account Arjan van de Ven
2006-12-15 9:31 ` [patch 03/14] e1000: omit stats for broken counter in 82543 Arjan van de Ven
2006-12-15 14:30 ` Jeff Garzik
2006-12-15 14:33 ` Arjan van de Ven
2006-12-15 14:50 ` Jeff Garzik
2006-12-15 15:37 ` Jeff Garzik
2006-12-15 9:32 ` [patch 04/14] e1000: consolidate managability enabling/disabling Arjan van de Ven
2006-12-15 14:32 ` Jeff Garzik [this message]
2006-12-15 15:57 ` Jeff Garzik
2006-12-15 9:33 ` [patch 05/14] e1000: Fix Wake-on-Lan with forced gigabit speed Arjan van de Ven
2006-12-15 14:33 ` Jeff Garzik
2006-12-15 16:00 ` Jeff Garzik
2006-12-15 9:34 ` [patch 06/14] e1000: disable TSO on the 82544 with slab debugging Arjan van de Ven
2006-12-15 14:33 ` Jeff Garzik
2006-12-16 1:04 ` Herbert Xu
2006-12-16 20:18 ` Jesse Brandeburg
2006-12-26 21:28 ` Jeff Garzik
2006-12-15 9:35 ` [patch 07/14] e1000: workaround for the ESB2 NIC RX unit issue Arjan van de Ven
2006-12-15 14:33 ` Jeff Garzik
2006-12-15 9:36 ` [patch 08/14] e1000: fix to set the new max frame size before resetting the adapter Arjan van de Ven
2006-12-15 9:37 ` [patch 09/14] e1000: fix ethtool reported bus type for older adapters Arjan van de Ven
2006-12-15 14:34 ` Jeff Garzik
2006-12-15 9:38 ` [patch 10/14] e1000: narrow down the scope of the tipg timer tweak Arjan van de Ven
2006-12-15 14:34 ` Jeff Garzik
2006-12-15 9:39 ` [patch 11/14] e1000: Fix PBA allocation calculations Arjan van de Ven
2006-12-15 9:40 ` [patch 12/14] e1000: Make the copybreak value a module parameter Arjan van de Ven
2006-12-15 14:35 ` Jeff Garzik
2006-12-15 16:09 ` Jeff Garzik
2006-12-15 9:41 ` [patch 13/14] e1000: 3 new driver stats for managability testing Arjan van de Ven
2006-12-15 14:35 ` Jeff Garzik
2006-12-15 16:17 ` Jeff Garzik
2006-12-15 9:42 ` [patch 14/14] e1000: No-delay link detection at interface up Arjan van de Ven
2006-12-15 14:36 ` Jeff Garzik
2006-12-15 14:37 ` Arjan van de Ven
2006-12-15 14:50 ` Jeff Garzik
2006-12-15 14:02 ` [patch 00/14] E1000 bugfix series for 2.6.20 Jeff Garzik
2006-12-15 14:04 ` Arjan van de Ven
2006-12-15 14:07 ` Jeff Garzik
2006-12-15 14:08 ` Arjan van de Ven
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4582B1FE.5070801@garzik.org \
--to=jeff@garzik.org \
--cc=arjan@linux.intel.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).