linux-2.6.24: deactivate the LEON co-processor for hipox machine
authort.fromm <t.fromm@ba11ecae-741b-462f-8724-1218f99f5906>
Fri, 16 Apr 2010 10:28:17 +0000 (10:28 +0000)
committerSteffen Sledz <sledz@dresearch.de>
Fri, 16 Apr 2010 12:17:55 +0000 (14:17 +0200)
There are massive network problems when transmitting UDP packets using the
LEON copro. UDP packet contents get overwritten at the sender side, UDP
checksums are incorrect, and the like. The problem can be triggered by
writing small (< MTU size) packets into a socket in rapid succession to
multiple receivers on a system without any other load. Until we can fix
the LEON firmware we disable it.

Signed-off-by: Thilo Fromm <t.fromm@dresearch.de>
Acked-by: Steffen Sledz <sledz@dresearch.de>
recipes/linux/linux-2.6.24/hipox/defconfig
recipes/linux/linux-2.6.24/hipox/ox810-gmac-without-leon.patch [new file with mode: 0644]
recipes/linux/linux_2.6.24.bb

index 09a5387..7279d80 100644 (file)
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
 # Linux kernel version: 2.6.24.7
-# Fri Mar 19 15:45:44 2010
+# Thu Apr 15 15:43:38 2010
 #
 CONFIG_ARM=y
 CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -186,15 +186,7 @@ CONFIG_HIPOX_OXE_INT2_GPIO=34
 # CONFIG_HIPOX_SATA_POWER_2 is not set
 CONFIG_FORCE_MAX_ZONEORDER=10
 CONFIG_SRAM_NUM_PAGES=32
-CONFIG_SUPPORT_LEON=y
-CONFIG_LEON_PAGES=2
-CONFIG_LEON_COPRO=y
-CONFIG_LEON_OFFLOAD_TX=y
-# CONFIG_LEON_RESERVE_DMA_CHANNEL is not set
-CONFIG_LEON_OFFLOAD_TSO=y
-# CONFIG_LEON_START_EARLY is not set
-CONFIG_LEON_POWER_BUTTON_MONITOR=m
-CONFIG_HIPOX_POWER_BUTTON_GPIO=4
+# CONFIG_SUPPORT_LEON is not set
 # CONFIG_USER_RECOVERY_BUTTON_MONITOR is not set
 # CONFIG_HIPOX_DDR_MON is not set
 # CONFIG_HIPOX_AHB_MON is not set
diff --git a/recipes/linux/linux-2.6.24/hipox/ox810-gmac-without-leon.patch b/recipes/linux/linux-2.6.24/hipox/ox810-gmac-without-leon.patch
new file mode 100644 (file)
index 0000000..955b9d2
--- /dev/null
@@ -0,0 +1,12 @@
+--- linux-2.6.24/arch/arm/mach-hipox/gmac-napi.c       2010-04-15 17:50:02.000000000 +0200
++++ linux-2.6.24.new/arch/arm/mach-hipox/gmac-napi.c   2010-04-15 16:27:54.000000000 +0200
+@@ -1995,7 +1995,7 @@
+         // Do any interrupt disabling with a single register write
+         if (int_disable_mask) {
+-            gmac_int_en_clr(priv, int_disable_mask, 0);
++            gmac_int_en_clr(priv, int_disable_mask, NULL, 0);
+             // Update our record of the current interrupt enable status
+             int_enable &= ~int_disable_mask;
+        }
index c71c068..b04c274 100644 (file)
@@ -99,6 +99,7 @@ SRC_URI_append_hipox = " \
        file://hipox-rtc.patch;patch=1 \
        file://hipox-nand-vs-pci.patch;patch=1 \
        file://hipox-nand-vs-nor.patch;patch=1 \
+       file://ox810-gmac-without-leon.patch;patch=1 \
        "
 
 EXTRA_OEMAKE_smartq5 = " OBJCOPY=${OBJCOPY}"