]> pilppa.org Git - familiar-h63xx-build.git/blob - org.handhelds.familiar/packages/ixp425-eth/files/intdriven.patch
OE tree imported from monotone branch org.openembedded.oz354fam083 at revision 8b12e3...
[familiar-h63xx-build.git] / org.handhelds.familiar / packages / ixp425-eth / files / intdriven.patch
1 --- ixp425-eth-1.1-r4/ixp425_eth.c      2005-06-16 00:47:55.360598896 -0700
2 +++ ixp425-eth-1.1-r4/ixp425_eth.c      2005-06-16 18:42:09.840377651 -0700
3 @@ -1028,6 +1030,7 @@
4   */
5  
6  /* PMU Timer reload : this should be done at each interrupt */
7 +#if 0 /* UNUSED - used for polling */
8  static void dev_pmu_timer_restart(void)
9  {
10      __asm__(" mcr p14,0,%0,c1,c1,0\n"  /* write current counter */
11 @@ -1039,6 +1042,7 @@
12              " mcr p14,0,r1,c4,c1,0\n"  /* enable interrupts */
13              : : : "r1");
14  }
15 +#endif
16  
17  /* Internal ISR : run a few thousand times per second and calls 
18   * the queue manager dispatcher entry point.
19 @@ -1086,6 +1088,7 @@
20  /* Internal ISR : run a few thousand times per second and calls 
21   * the ethernet entry point.
22   */
23 +#if 0 /* UNUSED - used for polling */
24  static irqreturn_t dev_poll_os_isr(int irg, void *dev_id, struct pt_regs *regs)
25  {
26      int qlevel = __get_cpu_var(softnet_data).input_pkt_queue.qlen;
27 @@ -1127,8 +1130,10 @@
28      ixEthTxFrameDoneQMCallback(0,0);
29      return IRQ_HANDLED;
30  }
31 +#endif
32  
33  /* initialize the PMU timer */
34 +#if 0 /* UNUSED - used for polling */
35  static int dev_pmu_timer_init(void)
36  {
37      UINT32 controlRegisterMask =
38 @@ -1164,6 +1169,7 @@
39      
40      return 0;
41  }
42 +#endif
43  
44  /* stops the timer when the module terminates */
45  static void dev_pmu_timer_disable(void)
46 @@ -1636,6 +1636,7 @@
47      return 0;
48  }
49  
50 +#if 0 /* UNUSED - used for polling */
51  /* The QMgr dispatch entry point can be called from the 
52   * IXP425_INT_LVL_QM1 irq (which will trigger
53   * an interrupt for every packet) or a timer (which will
54 @@ -1686,7 +1687,7 @@
55       */
56      if (request_irq(IXP425_INT_LVL_QM1,
57                      dev_qmgr_os_isr,
58 -                    SA_SHIRQ,
59 +                    SA_SHIRQ | SA_SAMPLE_RANDOM,
60                      DRV_NAME,
61                      (void *)IRQ_ANY_PARAMETER))
62      {
63 @@ -1710,6 +1711,7 @@
64    }
65    return 0;
66  }
67 +#endif
68  
69  /* Enable the MAC port.
70   * Called on do_dev_open, dev_tx_timeout and mtu size changes
71 @@ -2234,7 +2236,7 @@
72       */
73      if (request_irq(IXP425_INT_LVL_QM1,
74                      dev_qmgr_os_isr,
75 -                    SA_SHIRQ,
76 +                    SA_SHIRQ | SA_SAMPLE_RANDOM,
77                      DRV_NAME,
78                      (void *)IRQ_ANY_PARAMETER))
79      {
80 @@ -2669,6 +2671,10 @@
81  
82      TRACE;
83  
84 +#if 0 /* DISABLE polling */
85 +    /* Enable Interrupt driven driver
86 +     * see http://www.nslu2-linux.org/wiki/OpenSlug/StabilizeEthernetDriver
87 +     */
88      if (no_csr_init == 0) /* module parameter */
89      {
90        /* The QMgr dispatch entry point is called from the IXP425_INT_LVL_QM1 irq
91 @@ -2681,6 +2687,7 @@
92             return res;
93         }
94      }
95 +#endif
96  
97      TRACE;
98