From e4ac818089276c45983fd96188ec246b3e42b55b Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Fri, 31 Oct 2014 23:32:22 +0000 Subject: kernel: add patch header and missing part in 132-mips_inline_dma_ops.patch again The select SYS_HAS_DMA_OPS in CPU_CAVIUM_OCTEON was from the kernel patch in 3.13, but it is only included in kernel 3.14 and not in 3.13 and 3.18, add it again. Thank you swalker for spotting this. Signed-off-by: Hauke Mehrtens git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43134 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../patches-3.13/132-mips_inline_dma_ops.patch | 31 ++++++++++++++++++++-- .../patches-3.13/300-mips_expose_boot_raw.patch | 2 +- 2 files changed, 30 insertions(+), 3 deletions(-) (limited to 'target/linux/generic/patches-3.13') diff --git a/target/linux/generic/patches-3.13/132-mips_inline_dma_ops.patch b/target/linux/generic/patches-3.13/132-mips_inline_dma_ops.patch index 53cbbb2455..a42a049d86 100644 --- a/target/linux/generic/patches-3.13/132-mips_inline_dma_ops.patch +++ b/target/linux/generic/patches-3.13/132-mips_inline_dma_ops.patch @@ -1,6 +1,33 @@ +From 2c58080407554e1bac8fd50d23cb02420524caed Mon Sep 17 00:00:00 2001 +From: Felix Fietkau +Date: Mon, 12 Aug 2013 12:50:22 +0200 +Subject: [PATCH] MIPS: partially inline dma ops + +Several DMA ops are no-op on many platforms, and the indirection through +the mips_dma_map_ops function table is causing the compiler to emit +unnecessary code. + +Inlining visibly improves network performance in my tests (on a 24Kc +based system), and also slightly reduces code size of a few drivers. + +Signed-off-by: Felix Fietkau +--- + arch/mips/Kconfig | 4 + + arch/mips/include/asm/dma-mapping.h | 360 +++++++++++++++++++++++++++++++++++- + arch/mips/mm/dma-default.c | 163 ++-------------- + 3 files changed, 373 insertions(+), 154 deletions(-) + --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -1377,6 +1377,7 @@ config CPU_CAVIUM_OCTEON +@@ -1145,6 +1145,7 @@ config CPU_LOONGSON2F + depends on SYS_HAS_CPU_LOONGSON2F + select CPU_LOONGSON2 + select ARCH_REQUIRE_GPIOLIB ++ select SYS_HAS_DMA_OPS + help + The Loongson 2F processor implements the MIPS III instruction set + with many extensions. +@@ -1377,6 +1378,7 @@ config CPU_CAVIUM_OCTEON select LIBFDT select USE_OF select USB_EHCI_BIG_ENDIAN_MMIO @@ -8,7 +35,7 @@ help The Cavium Octeon processor is a highly integrated chip containing many ethernet hardware widgets for networking tasks. The processor -@@ -1599,6 +1600,9 @@ config SYS_HAS_CPU_XLR +@@ -1599,6 +1601,9 @@ config SYS_HAS_CPU_XLR config SYS_HAS_CPU_XLP bool diff --git a/target/linux/generic/patches-3.13/300-mips_expose_boot_raw.patch b/target/linux/generic/patches-3.13/300-mips_expose_boot_raw.patch index d80fdee72d..3383bf87d0 100644 --- a/target/linux/generic/patches-3.13/300-mips_expose_boot_raw.patch +++ b/target/linux/generic/patches-3.13/300-mips_expose_boot_raw.patch @@ -18,7 +18,7 @@ Acked-by: Rob Landley config CEVT_BCM1480 bool -@@ -2349,6 +2346,18 @@ config USE_OF +@@ -2350,6 +2347,18 @@ config USE_OF select OF_EARLY_FLATTREE select IRQ_DOMAIN -- cgit v1.2.3