* [PATCH 1/3] NetXen: Fix MSI issues by using PCI function 0
@ 2007-06-22 8:40 Mithlesh Thukral
2007-06-22 11:08 ` Michael Buesch
0 siblings, 1 reply; 2+ messages in thread
From: Mithlesh Thukral @ 2007-06-22 8:40 UTC (permalink / raw)
To: netdev; +Cc: amitkale, jeff, netxenproj, rob
NetXen: Fix issue of MSI not working correctly
NetXen driver uses PCI function 0 to provide the functionality of MSI.
The patch makes driver check the bus master bit for function 0 and
enable it after the card initialization.
Signed-off-by: Milan Bag <mbag@netxen.com>
Signed-off-by: Wen Xiong <wenxiong@us.ibm.com>
Signed-off-by: Mithlesh Thukral <mithlesh@netxen.com>
---
drivers/net/netxen/netxen_nic_main.c | 13 ++++++-------
1 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/drivers/net/netxen/netxen_nic_main.c b/drivers/net/netxen/netxen_nic_main.c
index 6167b58..e68356b 100644
--- a/drivers/net/netxen/netxen_nic_main.c
+++ b/drivers/net/netxen/netxen_nic_main.c
@@ -355,13 +355,6 @@ #endif
/* initialize the adapter */
netxen_initialize_adapter_hw(adapter);
-#ifdef CONFIG_PPC
- if ((adapter->ahw.boardcfg.board_type ==
- NETXEN_BRDTYPE_P2_SB31_10G_IMEZ) &&
- (pci_func_id == 2))
- goto err_out_free_adapter;
-#endif /* CONFIG_PPC */
-
/*
* Adapter in our case is quad port so initialize it before
* initializing the ports
@@ -509,6 +502,12 @@ #endif
NETXEN_CAM_RAM(0x1fc)));
if (val == 0x55555555) {
/* This is the first boot after power up */
+ netxen_nic_read_w0(adapter, NETXEN_PCIE_REG(0x4), &val);
+ if (!(val & 0x4)) {
+ val |= 0x4;
+ netxen_nic_write_w0(adapter, NETXEN_PCIE_REG(0x4), val);
+ mdelay(100);
+ }
val = readl(NETXEN_CRB_NORMALIZE(adapter,
NETXEN_ROMUSB_GLB_SW_RESET));
printk(KERN_INFO"NetXen: read 0x%08x for reset reg.\n",val);
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH 1/3] NetXen: Fix MSI issues by using PCI function 0
2007-06-22 8:40 [PATCH 1/3] NetXen: Fix MSI issues by using PCI function 0 Mithlesh Thukral
@ 2007-06-22 11:08 ` Michael Buesch
0 siblings, 0 replies; 2+ messages in thread
From: Michael Buesch @ 2007-06-22 11:08 UTC (permalink / raw)
To: Mithlesh Thukral; +Cc: netdev, amitkale, jeff, netxenproj, rob
On Friday 22 June 2007 10:40:41 Mithlesh Thukral wrote:
> NetXen: Fix issue of MSI not working correctly
> NetXen driver uses PCI function 0 to provide the functionality of MSI.
> The patch makes driver check the bus master bit for function 0 and
> enable it after the card initialization.
>
> Signed-off-by: Milan Bag <mbag@netxen.com>
> Signed-off-by: Wen Xiong <wenxiong@us.ibm.com>
> Signed-off-by: Mithlesh Thukral <mithlesh@netxen.com>
>
> ---
>
> drivers/net/netxen/netxen_nic_main.c | 13 ++++++-------
> 1 files changed, 6 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/net/netxen/netxen_nic_main.c b/drivers/net/netxen/netxen_nic_main.c
> index 6167b58..e68356b 100644
> --- a/drivers/net/netxen/netxen_nic_main.c
> +++ b/drivers/net/netxen/netxen_nic_main.c
> @@ -355,13 +355,6 @@ #endif
> /* initialize the adapter */
> netxen_initialize_adapter_hw(adapter);
>
> -#ifdef CONFIG_PPC
> - if ((adapter->ahw.boardcfg.board_type ==
> - NETXEN_BRDTYPE_P2_SB31_10G_IMEZ) &&
> - (pci_func_id == 2))
> - goto err_out_free_adapter;
> -#endif /* CONFIG_PPC */
> -
> /*
> * Adapter in our case is quad port so initialize it before
> * initializing the ports
> @@ -509,6 +502,12 @@ #endif
> NETXEN_CAM_RAM(0x1fc)));
> if (val == 0x55555555) {
> /* This is the first boot after power up */
> + netxen_nic_read_w0(adapter, NETXEN_PCIE_REG(0x4), &val);
> + if (!(val & 0x4)) {
> + val |= 0x4;
> + netxen_nic_write_w0(adapter, NETXEN_PCIE_REG(0x4), val);
> + mdelay(100);
> + }
msleep()?
Or wait, what is this delay trying to do? Commit the register access?
The better way to commit a register write is to read-back the value, usually.
--
Greetings Michael.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2007-06-22 11:09 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-06-22 8:40 [PATCH 1/3] NetXen: Fix MSI issues by using PCI function 0 Mithlesh Thukral
2007-06-22 11:08 ` Michael Buesch
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).