ixp425-eth: patches for 2.6.13 kernels
authorJohn Bowler <jbowler@nslu2-linux.org>
Sat, 24 Sep 2005 02:44:11 +0000 (02:44 +0000)
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>
Sat, 24 Sep 2005 02:44:11 +0000 (02:44 +0000)
some structure changes, also remove unused statics caused by the intdriven
patch.

packages/ixp425-eth/files/2.6.13.patch [new file with mode: 0644]
packages/ixp425-eth/files/intdriven.patch
packages/ixp425-eth/ixp425-eth_1.1.bb

diff --git a/packages/ixp425-eth/files/2.6.13.patch b/packages/ixp425-eth/files/2.6.13.patch
new file mode 100644 (file)
index 0000000..7e8bea1
--- /dev/null
@@ -0,0 +1,41 @@
+# Patches for compilation with 2.6.13.2
+#
+--- dir/ixp425_eth.c   2005-09-23 18:34:54.753729121 -0700
++++ dir/ixp425_eth.c   2005-09-23 18:37:48.908688002 -0700
+@@ -659,7 +659,9 @@
+       skb->pkt_type = PACKET_HOST;    /* Default type */
+         skb->ip_summed = 0;
+         skb->priority = 0;
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,13)
+         skb->security = 0;
++#endif
+ /* Some packets may get incorrectly process by netfilter firewall software
+  * if CONFIG_NETFILTER is enabled and filtering is in use.  The solution is to
+@@ -2358,8 +2362,14 @@
+ }
+ /* set port MAC addr and update the dev struct if successfull */
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,13)
+ int dev_set_mac_address(struct net_device *dev, struct sockaddr *saddr)
+ {
++#else
++static int set_mac_address(struct net_device *dev, void *saddrIn)
++{
++    struct sockaddr *saddr = saddrIn;
++#endif
+     int res;
+     priv_data_t *priv = dev->priv;
+     IxEthAccMacAddr npeMacAddr;
+@@ -2476,7 +2486,11 @@
+     ndev->poll_controller = ixp425eth_poll_controller;
+ #endif
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,13)
+     ndev->set_mac_address = dev_set_mac_address;
++#else
++    ndev->set_mac_address = set_mac_address;
++#endif
+     memcpy(ndev->dev_addr, &default_mac_addr[priv->port_id].macAddress,
+            IX_IEEE803_MAC_ADDRESS_SIZE);
index af3452f..88b2444 100644 (file)
@@ -1,5 +1,48 @@
 --- ixp425-eth-1.1-r4/ixp425_eth.c     2005-06-16 00:47:55.360598896 -0700
 +++ ixp425-eth-1.1-r4/ixp425_eth.c     2005-06-16 18:42:09.840377651 -0700
+@@ -1028,6 +1030,7 @@
+  */
+ /* PMU Timer reload : this should be done at each interrupt */
++#if 0 /* UNUSED - used for polling */
+ static void dev_pmu_timer_restart(void)
+ {
+     __asm__(" mcr p14,0,%0,c1,c1,0\n"  /* write current counter */
+@@ -1039,6 +1042,7 @@
+             " mcr p14,0,r1,c4,c1,0\n"  /* enable interrupts */
+             : : : "r1");
+ }
++#endif
+ /* Internal ISR : run a few thousand times per second and calls 
+  * the queue manager dispatcher entry point.
+@@ -1086,6 +1088,7 @@
+ /* Internal ISR : run a few thousand times per second and calls 
+  * the ethernet entry point.
+  */
++#if 0 /* UNUSED - used for polling */
+ static irqreturn_t dev_poll_os_isr(int irg, void *dev_id, struct pt_regs *regs)
+ {
+     int qlevel = __get_cpu_var(softnet_data).input_pkt_queue.qlen;
+@@ -1127,8 +1130,10 @@
+     ixEthTxFrameDoneQMCallback(0,0);
+     return IRQ_HANDLED;
+ }
++#endif
+ /* initialize the PMU timer */
++#if 0 /* UNUSED - used for polling */
+ static int dev_pmu_timer_init(void)
+ {
+     UINT32 controlRegisterMask =
+@@ -1164,6 +1169,7 @@
+     
+     return 0;
+ }
++#endif
+ /* stops the timer when the module terminates */
+ static void dev_pmu_timer_disable(void)
 @@ -1636,6 +1636,7 @@
      return 0;
  }
index 1843f21..dec772b 100644 (file)
@@ -8,7 +8,8 @@ SRC_URI = "http://www.intel.com/design/network/swsup/ixp400LinuxEthernetDriverPa
           file://intdriven.patch;patch=1 \
           file://pollcontroller.patch;patch=1 \
           file://mm4.patch;patch=1"
-PR = "r8"
+SRC_URI += "file://2.6.13.patch;patch=1"
+PR = "r9"
 
 S = "${WORKDIR}"