kernel3: updated to 3.2.21.
authorArne Fitzenreiter <arne_f@ipfire.org>
Wed, 27 Jun 2012 16:57:03 +0000 (18:57 +0200)
committerArne Fitzenreiter <arne_f@ipfire.org>
Wed, 27 Jun 2012 16:57:03 +0000 (18:57 +0200)
config/kernel/kernel.config.armv5tel-ipfire-omap
config/kernel/kernel.config.armv5tel-ipfire-rpi
config/rootfiles/common/armv5tel/linux-omap
config/rootfiles/common/armv5tel/linux-rpi
lfs/linux3
src/patches/linux-3.2-bcm2708-sdhci_patches.patch [deleted file]

index eb8c18a1242fdd216fb953da77fefef44ab4d2d3..08405e29d6db1567331ddcc6ae4b6aa0cc2b569d 100644 (file)
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/arm 2.6.42.19-ipfire-omap Kernel Configuration
+# Linux/arm 3.2.21 Kernel Configuration
 #
 CONFIG_ARM=y
 CONFIG_HAVE_PWM=y
index fa286d9314a111ccc9ea83b1598ce94766e59ccc..4d434e01a7fc1ceb52206754ac6dd24c362e9f76 100644 (file)
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/arm 2.6.42.20 Kernel Configuration
+# Linux/arm 3.2.21 Kernel Configuration
 #
 CONFIG_ARM=y
 CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -122,9 +122,10 @@ CONFIG_PERF_USE_VMALLOC=y
 # CONFIG_PERF_EVENTS is not set
 # CONFIG_PERF_COUNTERS is not set
 CONFIG_VM_EVENT_COUNTERS=y
+CONFIG_SLUB_DEBUG=y
 # CONFIG_COMPAT_BRK is not set
-CONFIG_SLAB=y
-# CONFIG_SLUB is not set
+# CONFIG_SLAB is not set
+CONFIG_SLUB=y
 # CONFIG_SLOB is not set
 # CONFIG_PROFILING is not set
 CONFIG_HAVE_OPROFILE=y
@@ -3182,7 +3183,8 @@ CONFIG_SCHED_DEBUG=y
 # CONFIG_SCHEDSTATS is not set
 CONFIG_TIMER_STATS=y
 # CONFIG_DEBUG_OBJECTS is not set
-# CONFIG_DEBUG_SLAB is not set
+# CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_SLUB_STATS is not set
 # CONFIG_DEBUG_KMEMLEAK is not set
 # CONFIG_DEBUG_RT_MUTEXES is not set
 # CONFIG_RT_MUTEX_TESTER is not set
index d5e7ceaa7502d996c6b1a39ebc1d4c28016bfafc..78752ff2af82b4a9c0f22eecd65f910e673dd310 100644 (file)
@@ -1,5 +1,5 @@
 boot/uInit-ipfire-omap
 boot/uImage-ipfire-omap
-boot/System.map-2.6.42.20-ipfire-omap
-boot/config-2.6.42.20-ipfire-omap
-lib/modules/2.6.42.20-ipfire-omap
+boot/System.map-3.2.21-ipfire-omap
+boot/config-3.2.21-ipfire-omap
+lib/modules/3.2.21-ipfire-omap
index 01908e4da8d39c66ef26ad0b1dbc6bb5e9cf5c34..233a86cf1d69397d039b890a14bc2d25a5dd663d 100644 (file)
@@ -1,4 +1,4 @@
 boot/kernel.img
-boot/System.map-2.6.42.20-ipfire-rpi
-boot/config-2.6.42.20-ipfire-rpi
-lib/modules/2.6.42.20-ipfire-rpi
+boot/System.map-3.2.21-ipfire-rpi
+boot/config-3.2.21-ipfire-rpi
+lib/modules/3.2.21-ipfire-rpi
index 94233dc5479cd4b99e1e68e3589385dc177464fe..08620280683172712392dc2acd66679d48343692 100644 (file)
 
 include Config
 
-PATCHLEVEL = .20
+VER           = 3.2.21
 
-VER           = 2.6.42.20
-
-XVERS         = 3.2.20
-XVERSION      = 2
-XPATCHLEVEL   = 6
-XSUBLEVEL     = 42
-XEXTRAVERSION = .20
-
-RPI_PATCHES = linux-3.2-bootc-6ab6087
+RPI_PATCHES = linux-3.2-bootc-a1f8d7a
 
 THISAPP    = linux-$(VER)
-DL_FILE    = linux-$(XVERS).tar.bz2
+DL_FILE    = linux-$(VER).tar.bz2
 DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 CFLAGS     =
@@ -83,8 +75,8 @@ objects =$(DL_FILE) \
 $(DL_FILE)                             = $(URL_IPFIRE)/$(DL_FILE)
 rpi-patches-$(RPI_PATCHES).patch.xz    = $(URL_IPFIRE)/rpi-patches-$(RPI_PATCHES).patch.xz
 
-$(DL_FILE)_MD5                         = bd0063a747c3ea0ecdcc85a512d9760a
-rpi-patches-$(RPI_PATCHES).patch.xz_MD5        = fd87188cbd0b168a2b335db3d661ece9
+$(DL_FILE)_MD5                         = c8a4ae25eb44f9122f386068e30e7e2e
+rpi-patches-$(RPI_PATCHES).patch.xz_MD5        = c3891a7f38609783358e765d784e5e6e
 
 install : $(TARGET)
 
@@ -117,13 +109,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) $(DIR_SRC)/linux && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
 
-       # Change version from 3.x to 2.6.4x
-       cd $(DIR_SRC)/linux-$(XVERS) && sed -i -e "s/^VERSION =.*$$/VERSION = $(XVERSION)/g" Makefile
-       cd $(DIR_SRC)/linux-$(XVERS) && sed -i -e "s/^PATCHLEVEL =.*$$/PATCHLEVEL = $(XPATCHLEVEL)/g" Makefile
-       cd $(DIR_SRC)/linux-$(XVERS) && sed -i -e "s/^SUBLEVEL =.*$$/SUBLEVEL = $(XSUBLEVEL)/g" Makefile
-       cd $(DIR_SRC)/linux-$(XVERS) && sed -i -e "s/^EXTRAVERSION =.*$$/EXTRAVERSION = $(XEXTRAVERSION)/g" Makefile
-       mv $(DIR_SRC)/linux-$(XVERS) $(DIR_SRC)/linux-$(VER)
-
        ln -svf linux-$(VER) $(DIR_SRC)/linux
 
        # Linux Intermediate Queueing Device
@@ -132,7 +117,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        # Not report deprecated syscall 1.23 (for kudzu)
 #      cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.25.18-not_report_sysctl_1.23.patch
 
-
        # ipp2p 0.8.2-ipfire
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.0-ipp2p-0.8.2-ipfire.patch
 
@@ -169,11 +153,10 @@ ifeq "$(KCFG)" "-omap"
 endif
 
 ifeq "$(KCFG)" "-rpi"
-       # Apply Raspberry Pi kernel patches. (only avail for 3.1.x kernel yet)
+       # Apply Raspberry Pi kernel patches.
        cd $(DIR_APP) && xzcat $(DIR_DL)/rpi-patches-$(RPI_PATCHES).patch.xz | patch -Np1
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.2-bcm2835-alsamixer.patch
        cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.2-bcm2835-limit_volume.patch
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-3.2-bcm2708-sdhci_patches.patch
 endif
 
 ifeq "$(HEADERS)" "1"
@@ -192,7 +175,7 @@ else
        cp $(DIR_SRC)/config/kernel/kernel.config.$(MACHINE)-$(VERSUFIX) $(DIR_APP)/.config
        cd $(DIR_APP) && make CC="$(KGCC)" oldconfig
        cd $(DIR_APP) && make CC="$(KGCC)" clean
-       cd $(DIR_APP) && sed -i -e 's/EXTRAVERSION\ =.*/EXTRAVERSION\ =\ $(PATCHLEVEL)-$(VERSUFIX)/' Makefile
+       cd $(DIR_APP) && sed -i -e 's/EXTRAVERSION\ =.*/EXTRAVERSION\ =\ -$(VERSUFIX)/' Makefile
 
 ifeq "$(KCFG)" "-kirkwood"
        cd $(DIR_APP) && make $(MAKETUNING) CC="$(KGCC)" uImage
diff --git a/src/patches/linux-3.2-bcm2708-sdhci_patches.patch b/src/patches/linux-3.2-bcm2708-sdhci_patches.patch
deleted file mode 100644 (file)
index 060e820..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-commit 872a8ff772ded51403bd8a46f80b1bf9706b76cd
-Author: Paul Walmsley <paul@pwsan.com>
-Date:   Mon Mar 12 10:58:00 2012 -0600
-
-    mmc: use really long write timeout to deal with crappy cards
-    
-    mmc: use really long write timeout to deal with crappy cards
-    
-    Several people have noticed that crappy SD cards take much longer to
-    complete multiple block writes than the 300ms that Linux specifies.
-    Try to work around this by using a three second write timeout instead.
-    
-    This is a generalized version of a patch from Chase Maupin
-    <Chase.Maupin@ti.com>, whose patch description said:
-    
-    * With certain SD cards timeouts like the following have been seen
-      due to an improper calculation of the dto value:
-        mmcblk0: error -110 transferring data, sector 4126233, nr 8,
-        card status 0xc00
-    * By removing the dto calculation and setting the timeout value
-      to the maximum specified by the SD card specification part A2
-      section 2.2.15 these timeouts can be avoided.
-    * This change has been used by beagleboard users as well as the
-      Texas Instruments SDK without a negative impact.
-    * There are multiple discussion threads about this but the most
-      relevant ones are:
-        * http://talk.maemo.org/showthread.php?p=1000707#post1000707
-        * http://www.mail-archive.com/linux-omap@vger.kernel.org/msg42213.html
-    * Original proposal for this fix was done by Sukumar Ghoral of
-      Texas Instruments
-    * Tested using a Texas Instruments AM335x EVM
-    
-    Signed-off-by: Paul Walmsley <paul@pwsan.com>
-    Tested-by: Tony Lindgren <tony@atomide.com>
-    Signed-off-by: Chris Ball <cjb@laptop.org>
-
-diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
-index d637982..a14ddf96 100644
---- a/drivers/mmc/core/core.c
-+++ b/drivers/mmc/core/core.c
-@@ -396,10 +396,14 @@ void mmc_set_data_timeout(struct mmc_data *data, const struct mmc_card *card)
-               if (data->flags & MMC_DATA_WRITE)
-                       /*
--                       * The limit is really 250 ms, but that is
--                       * insufficient for some crappy cards.
-+                       * The MMC spec "It is strongly recommended
-+                       * for hosts to implement more than 500ms
-+                       * timeout value even if the card indicates
-+                       * the 250ms maximum busy length."  Even the
-+                       * previous value of 300ms is known to be
-+                       * insufficient for some cards.
-                        */
--                      limit_us = 300000;
-+                      limit_us = 3000000;
-               else
-                       limit_us = 100000;
-
-The folowing sdhci fixes rebased from rasperry pi github tree to kernel 3.2 to use
-actial firmware that run emmc slot at 50Mhz.
-Author: Arne Fitzenreiter <arne.fitzenreiter@ipfire.org>
-
-diff -Naur linux-3.2.20.org/drivers/mmc/host/sdhci-bcm2708.c linux-3.2.20/drivers/mmc/host/sdhci-bcm2708.c
---- linux-3.2.20.org/drivers/mmc/host/sdhci-bcm2708.c  2012-06-12 00:18:23.000000000 +0200
-+++ linux-3.2.20/drivers/mmc/host/sdhci-bcm2708.c      2012-06-14 09:33:42.448194435 +0200
-@@ -328,12 +328,7 @@
- static unsigned int sdhci_bcm2708_get_max_clock(struct sdhci_host *host)
- {
--      return 100000000;       // this value is in Hz (100MHz/4)
--}
--
--static unsigned int sdhci_bcm2708_get_timeout_clock(struct sdhci_host *host)
--{
--      return 100000;          // this value is in kHz (100MHz/4)
-+      return BCM2708_EMMC_CLOCK_FREQ;
- }
- /*****************************************************************************\
-@@ -1222,12 +1217,7 @@
- #else
- #error The BCM2708 SDHCI driver needs CONFIG_MMC_SDHCI_IO_ACCESSORS to be set
- #endif
--      //.enable_dma = NULL,
--      //.set_clock = NULL,
-       .get_max_clock = sdhci_bcm2708_get_max_clock,
--      //.get_min_clock = NULL,
--      .get_timeout_clock = sdhci_bcm2708_get_timeout_clock,
--
-       .enable = sdhci_bcm2708_enable,
-       .disable = sdhci_bcm2708_disable,
-       .set_plat_power = sdhci_bcm2708_set_plat_power,
-diff -Naur linux-3.2.20.org/drivers/mmc/host/sdhci-bcm2708.c linux-3.2.20/drivers/mmc/host/sdhci-bcm2708.c
---- linux-3.2.20.org/drivers/mmc/host/sdhci-bcm2708.c  2012-06-14 09:33:42.000000000 +0200
-+++ linux-3.2.20/drivers/mmc/host/sdhci-bcm2708.c      2012-06-14 09:47:20.635695042 +0200
-@@ -1277,7 +1277,10 @@
-       host->irq = platform_get_irq(pdev, 0);
-       host->quirks = SDHCI_QUIRK_BROKEN_CARD_DETECTION |
--                     SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK;
-+                     SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK |
-+                     SDHCI_QUIRK_BROKEN_TIMEOUT_VAL |
-+                     SDHCI_QUIRK_MISSING_CAPS |
-+                     SDHCI_QUIRK_NO_HISPD_BIT;
- #ifdef CONFIG_MMC_SDHCI_BCM2708_DMA
-       host->flags = SDHCI_USE_PLATDMA;
- #endif
-diff -Naur linux-3.2.20.org/drivers/mmc/host/sdhci-bcm2708.c linux-3.2.20/drivers/mmc/host/sdhci-bcm2708.c
---- linux-3.2.20.org/drivers/mmc/host/sdhci-bcm2708.c  2012-06-14 10:03:31.000000000 +0200
-+++ linux-3.2.20/drivers/mmc/host/sdhci-bcm2708.c      2012-06-14 10:15:44.909133194 +0200
-@@ -71,6 +71,8 @@
- #define BCM2708_SDHCI_SLEEP_TIMEOUT 1000   /* msecs */
-+#define BCM2708_EMMC_CLOCK_FREQ 50000000
-+
- #define POWER_OFF 0
- #define POWER_LAZY_OFF 1
- #define POWER_ON  2
-
-With the last revert Chris Boot has removed the UHS block at 3.3V
-so it is needed to readd it to use some cards (eg. Verbatim 8GB Class10)
-Author: Arne Fitzenreiter <arne.fitzenreiter@ipfire.org>
-
-diff -Naur linux-3.2.20.org/drivers/mmc/host/sdhci.c linux-3.2.20/drivers/mmc/host/sdhci.c
---- linux-3.2.20.org/drivers/mmc/host/sdhci.c  2012-06-12 00:18:24.000000000 +0200
-+++ linux-3.2.20/drivers/mmc/host/sdhci.c      2012-06-14 12:47:25.435538000 +0200
-@@ -2930,6 +2930,10 @@
-       if(host->ops->voltage_broken)
-               ocr_avail |= MMC_VDD_29_30 | MMC_VDD_30_31;
-+              /* No UHS Modes at 3.3V */
-+              mmc->caps &=  ~(MMC_CAP_UHS_SDR12 | MMC_CAP_UHS_SDR25 | MMC_CAP_UHS_SDR104 |
-+                              MMC_CAP_UHS_SDR50 | MMC_CAP_UHS_DDR50 );
-+
-       mmc->ocr_avail = ocr_avail;
-       mmc->ocr_avail_sdio = ocr_avail;
-       if (host->ocr_avail_sdio)