summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kernels/linux-libre-pae/3.11-haswell-intel_pstate.patch32
-rw-r--r--kernels/linux-libre-pae/3.11.1-fix-skge.patch34
-rw-r--r--kernels/linux-libre-pae/PKGBUILD20
-rw-r--r--kernels/linux-libre-xen/3.11-haswell-intel_pstate.patch32
-rw-r--r--kernels/linux-libre-xen/3.11.1-fix-skge.patch34
-rw-r--r--kernels/linux-libre-xen/PKGBUILD20
6 files changed, 164 insertions, 8 deletions
diff --git a/kernels/linux-libre-pae/3.11-haswell-intel_pstate.patch b/kernels/linux-libre-pae/3.11-haswell-intel_pstate.patch
new file mode 100644
index 000000000..1f376b518
--- /dev/null
+++ b/kernels/linux-libre-pae/3.11-haswell-intel_pstate.patch
@@ -0,0 +1,32 @@
+From 6cdcdb793791f776ea9408581b1242b636d43b37 Mon Sep 17 00:00:00 2001
+From: Nell Hardcastle <nell@spicious.com>
+Date: Sun, 30 Jun 2013 22:58:57 +0000
+Subject: intel_pstate: Add Haswell CPU models
+
+Enable the intel_pstate driver for Haswell CPUs. One missing Ivy Bridge
+model (0x3E) is also included. Models referenced from
+tools/power/x86/turbostat/turbostat.c:has_nehalem_turbo_ratio_limit
+
+Signed-off-by: Nell Hardcastle <nell@spicious.com>
+Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
+Acked-by: Dirk Brandewie <dirk.j.brandewie@intel.com>
+Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
+---
+diff --git a/drivers/cpufreq/intel_pstate.c b/drivers/cpufreq/intel_pstate.c
+index 6efd96c..9733f29 100644
+--- a/drivers/cpufreq/intel_pstate.c
++++ b/drivers/cpufreq/intel_pstate.c
+@@ -522,6 +522,11 @@ static const struct x86_cpu_id intel_pstate_cpu_ids[] = {
+ ICPU(0x2a, default_policy),
+ ICPU(0x2d, default_policy),
+ ICPU(0x3a, default_policy),
++ ICPU(0x3c, default_policy),
++ ICPU(0x3e, default_policy),
++ ICPU(0x3f, default_policy),
++ ICPU(0x45, default_policy),
++ ICPU(0x46, default_policy),
+ {}
+ };
+ MODULE_DEVICE_TABLE(x86cpu, intel_pstate_cpu_ids);
+--
+cgit v0.9.2
diff --git a/kernels/linux-libre-pae/3.11.1-fix-skge.patch b/kernels/linux-libre-pae/3.11.1-fix-skge.patch
new file mode 100644
index 000000000..26d90e080
--- /dev/null
+++ b/kernels/linux-libre-pae/3.11.1-fix-skge.patch
@@ -0,0 +1,34 @@
+--- a/drivers/net/ethernet/marvell/skge.c 2013-09-02 16:46:10.000000000 -0400
++++ b/drivers/net/ethernet/marvell/skge.c 2013-09-22 11:14:10.232067541 -0400
+@@ -3086,23 +3086,27 @@
+ PCI_DMA_FROMDEVICE);
+ skge_rx_reuse(e, skge->rx_buf_size);
+ } else {
++ struct skge_element ee;
+ struct sk_buff *nskb;
+
+ nskb = netdev_alloc_skb_ip_align(dev, skge->rx_buf_size);
+ if (!nskb)
+ goto resubmit;
+
++ ee = *e;
++
++ skb = ee.skb;
++ prefetch(skb->data);
++
+ if (skge_rx_setup(skge, e, nskb, skge->rx_buf_size) < 0) {
+ dev_kfree_skb(nskb);
+ goto resubmit;
+ }
+
+ pci_unmap_single(skge->hw->pdev,
+- dma_unmap_addr(e, mapaddr),
+- dma_unmap_len(e, maplen),
++ dma_unmap_addr(&ee, mapaddr),
++ dma_unmap_len(&ee, maplen),
+ PCI_DMA_FROMDEVICE);
+- skb = e->skb;
+- prefetch(skb->data);
+ }
+
+ skb_put(skb, len);
diff --git a/kernels/linux-libre-pae/PKGBUILD b/kernels/linux-libre-pae/PKGBUILD
index 2ca4cb45f..73b12e493 100644
--- a/kernels/linux-libre-pae/PKGBUILD
+++ b/kernels/linux-libre-pae/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 194378 2013-09-15 09:16:34Z tpowa $
+# $Id: PKGBUILD 195142 2013-09-25 15:58:07Z tpowa $
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
# Contributor: Thomas Baechler <thomas@archlinux.org>
# Maintainer (Parabola): André Silva <emulatorman@lavabit.com>
@@ -7,7 +7,7 @@ pkgbase=linux-libre-pae # Build stock -LIBRE-PAE kernel
#pkgbase=linux-libre-custom # Build kernel with a different name
_basekernel=3.11
pkgver=${_basekernel}.1
-pkgrel=1
+pkgrel=3
arch=('i686')
url="http://linux-libre.fsfla.org/"
license=('GPL2')
@@ -21,14 +21,18 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn
"${pkgbase}.preset"
'boot-logo.patch'
'change-default-console-loglevel.patch'
- 'criu-no-expert.patch')
+ 'criu-no-expert.patch'
+ '3.11.1-fix-skge.patch'
+ '3.11-haswell-intel_pstate.patch')
md5sums=('7ec84223c7adcf01a5287eb7af96b7e7'
'7b051faf375c76d4763a24048c52600b'
'bef7b3ced683c4dc9361f8739ec9f566'
'f302c931bd85309da9d9792b4cc96467'
'36e90334b12b2e9d53fd92129ee98f5b'
'98beb36f9b8cf16e58de2483ea9985e3'
- 'd50c1ac47394e9aec637002ef3392bd1')
+ 'd50c1ac47394e9aec637002ef3392bd1'
+ '4fcee2b4485492dcfdead632275198eb'
+ '1040ae6c10d4a68f89899f94a2318a17')
_kernelname=${pkgbase#linux-libre}
_localversionname=-LIBRE-PAE
@@ -48,6 +52,14 @@ prepare() {
# (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227)
patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch"
+ # #36865 fix broken skge network module
+ patch -Np1 -i "${srcdir}/3.11.1-fix-skge.patch"
+
+ # add intel haswell support to intel_pstate
+ # https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/patch/?id=6cdcdb793791f776ea9408581b1242b636d43b37
+ # will be in 3.12
+ patch -Np1 -i "${srcdir}/3.11-haswell-intel_pstate.patch"
+
# allow criu without expert option set
# patch from fedora
patch -Np1 -i "${srcdir}/criu-no-expert.patch"
diff --git a/kernels/linux-libre-xen/3.11-haswell-intel_pstate.patch b/kernels/linux-libre-xen/3.11-haswell-intel_pstate.patch
new file mode 100644
index 000000000..1f376b518
--- /dev/null
+++ b/kernels/linux-libre-xen/3.11-haswell-intel_pstate.patch
@@ -0,0 +1,32 @@
+From 6cdcdb793791f776ea9408581b1242b636d43b37 Mon Sep 17 00:00:00 2001
+From: Nell Hardcastle <nell@spicious.com>
+Date: Sun, 30 Jun 2013 22:58:57 +0000
+Subject: intel_pstate: Add Haswell CPU models
+
+Enable the intel_pstate driver for Haswell CPUs. One missing Ivy Bridge
+model (0x3E) is also included. Models referenced from
+tools/power/x86/turbostat/turbostat.c:has_nehalem_turbo_ratio_limit
+
+Signed-off-by: Nell Hardcastle <nell@spicious.com>
+Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
+Acked-by: Dirk Brandewie <dirk.j.brandewie@intel.com>
+Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
+---
+diff --git a/drivers/cpufreq/intel_pstate.c b/drivers/cpufreq/intel_pstate.c
+index 6efd96c..9733f29 100644
+--- a/drivers/cpufreq/intel_pstate.c
++++ b/drivers/cpufreq/intel_pstate.c
+@@ -522,6 +522,11 @@ static const struct x86_cpu_id intel_pstate_cpu_ids[] = {
+ ICPU(0x2a, default_policy),
+ ICPU(0x2d, default_policy),
+ ICPU(0x3a, default_policy),
++ ICPU(0x3c, default_policy),
++ ICPU(0x3e, default_policy),
++ ICPU(0x3f, default_policy),
++ ICPU(0x45, default_policy),
++ ICPU(0x46, default_policy),
+ {}
+ };
+ MODULE_DEVICE_TABLE(x86cpu, intel_pstate_cpu_ids);
+--
+cgit v0.9.2
diff --git a/kernels/linux-libre-xen/3.11.1-fix-skge.patch b/kernels/linux-libre-xen/3.11.1-fix-skge.patch
new file mode 100644
index 000000000..26d90e080
--- /dev/null
+++ b/kernels/linux-libre-xen/3.11.1-fix-skge.patch
@@ -0,0 +1,34 @@
+--- a/drivers/net/ethernet/marvell/skge.c 2013-09-02 16:46:10.000000000 -0400
++++ b/drivers/net/ethernet/marvell/skge.c 2013-09-22 11:14:10.232067541 -0400
+@@ -3086,23 +3086,27 @@
+ PCI_DMA_FROMDEVICE);
+ skge_rx_reuse(e, skge->rx_buf_size);
+ } else {
++ struct skge_element ee;
+ struct sk_buff *nskb;
+
+ nskb = netdev_alloc_skb_ip_align(dev, skge->rx_buf_size);
+ if (!nskb)
+ goto resubmit;
+
++ ee = *e;
++
++ skb = ee.skb;
++ prefetch(skb->data);
++
+ if (skge_rx_setup(skge, e, nskb, skge->rx_buf_size) < 0) {
+ dev_kfree_skb(nskb);
+ goto resubmit;
+ }
+
+ pci_unmap_single(skge->hw->pdev,
+- dma_unmap_addr(e, mapaddr),
+- dma_unmap_len(e, maplen),
++ dma_unmap_addr(&ee, mapaddr),
++ dma_unmap_len(&ee, maplen),
+ PCI_DMA_FROMDEVICE);
+- skb = e->skb;
+- prefetch(skb->data);
+ }
+
+ skb_put(skb, len);
diff --git a/kernels/linux-libre-xen/PKGBUILD b/kernels/linux-libre-xen/PKGBUILD
index 7ff630c05..437c48670 100644
--- a/kernels/linux-libre-xen/PKGBUILD
+++ b/kernels/linux-libre-xen/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 194378 2013-09-15 09:16:34Z tpowa $
+# $Id: PKGBUILD 195142 2013-09-25 15:58:07Z tpowa $
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
# Contributor: Thomas Baechler <thomas@archlinux.org>
# Maintainer (Parabola): André Silva <emulatorman@lavabit.com>
@@ -7,7 +7,7 @@ pkgbase=linux-libre-xen # Build stock -LIBRE-XEN kernel
#pkgbase=linux-libre-custom # Build kernel with a different name
_basekernel=3.11
pkgver=${_basekernel}.1
-pkgrel=1
+pkgrel=3
arch=('i686')
url="http://linux-libre.fsfla.org/"
license=('GPL2')
@@ -21,14 +21,18 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn
"${pkgbase}.preset"
'boot-logo.patch'
'change-default-console-loglevel.patch'
- 'criu-no-expert.patch')
+ 'criu-no-expert.patch'
+ '3.11.1-fix-skge.patch'
+ '3.11-haswell-intel_pstate.patch')
md5sums=('7ec84223c7adcf01a5287eb7af96b7e7'
'7b051faf375c76d4763a24048c52600b'
'212338fa662436f9590026c9a71d82f7'
'b7c2805bb287a644c0a303bf7721e534'
'36e90334b12b2e9d53fd92129ee98f5b'
'98beb36f9b8cf16e58de2483ea9985e3'
- 'd50c1ac47394e9aec637002ef3392bd1')
+ 'd50c1ac47394e9aec637002ef3392bd1'
+ '4fcee2b4485492dcfdead632275198eb'
+ '1040ae6c10d4a68f89899f94a2318a17')
_kernelname=${pkgbase#linux-libre}
_localversionname=-LIBRE-XEN
@@ -48,6 +52,14 @@ prepare() {
# (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227)
patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch"
+ # #36865 fix broken skge network module
+ patch -Np1 -i "${srcdir}/3.11.1-fix-skge.patch"
+
+ # add intel haswell support to intel_pstate
+ # https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/patch/?id=6cdcdb793791f776ea9408581b1242b636d43b37
+ # will be in 3.12
+ patch -Np1 -i "${srcdir}/3.11-haswell-intel_pstate.patch"
+
# allow criu without expert option set
# patch from fedora
patch -Np1 -i "${srcdir}/criu-no-expert.patch"