1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
# This patch is not necessary but helps when debugging the build
--- ./ixp400_eth.c 2005-11-20 13:26:14.890767165 -0800
+++ ./ixp400_eth.c 2005-11-20 13:45:32.163589752 -0800
@@ -3249,6 +3249,8 @@ static int __devinit dev_eth_probe(struc
kmalloc(sizeof(struct semaphore), GFP_KERNEL);
if (!priv->maintenanceCheckThreadComplete)
{
+ P_ERROR("%s: Failed to allocate maintenance semaphore %d\n",
+ ndev->name, priv->port_id);
goto error;
}
priv->lock = SPIN_LOCK_UNLOCKED;
@@ -3355,7 +3361,11 @@ static int __devinit dev_eth_probe(struc
#if IS_KERNEL26
if (register_netdev(ndev))
+ {
+ P_ERROR("%s: Failed to register netdevice %d\n",
+ ndev->name, priv->port_id);
goto error;
+ }
#else
found_devices++;
#endif /* IS_KERNEL26 */
@@ -3365,6 +3375,8 @@ static int __devinit dev_eth_probe(struc
/* register EthAcc callbacks for this port */
if (dev_rxtxcallback_register(portId, (UINT32)ndev))
{
+ P_ERROR("%s: Failed to register callback %d\n",
+ ndev->name, priv->port_id);
goto error;
}
@@ -3388,6 +3400,7 @@ static int __devinit dev_eth_probe(struc
/* Error handling: enter here whenever error detected */
error:
+ P_ERROR("%s: dev_eth_probe fails\n", ndev->name);
TRACE;
#ifdef CONFIG_IXP400_ETH_QDISC_ENABLED
@@ -3523,6 +3536,9 @@ static int __init ixp400_eth_init(void)
TRACE;
P_INFO("Initializing IXP400 NPE Ethernet driver software v. " MOD_VERSION " \n");
+#ifdef IX_OSAL_ENSURE_ON
+ ixOsalLogLevelSet(IX_OSAL_LOG_LVL_ALL);
+#endif
TRACE;
|