kernel: update linux 3.2 to 3.2.14
authorJonas Gorski <jogo@openwrt.org>
Mon, 9 Apr 2012 14:48:51 +0000 (14:48 +0000)
committerJonas Gorski <jogo@openwrt.org>
Mon, 9 Apr 2012 14:48:51 +0000 (14:48 +0000)
SVN-Revision: 31222

40 files changed:
include/kernel-version.mk
target/linux/ar71xx/Makefile
target/linux/au1000/Makefile
target/linux/brcm47xx/Makefile
target/linux/cns21xx/Makefile
target/linux/ep93xx/Makefile
target/linux/generic/patches-3.2/910-kobject_uevent.patch
target/linux/generic/patches-3.2/911-kobject_add_broadcast_uevent.patch
target/linux/generic/patches-3.2/950-vm_exports.patch
target/linux/lantiq/Makefile
target/linux/malta/Makefile
target/linux/mpc52xx/Makefile
target/linux/omap4/Makefile
target/linux/ppc40x/Makefile
target/linux/ppc44x/Makefile
target/linux/ramips/Makefile
target/linux/uml/Makefile
target/linux/x86/patches-3.2/900-8139cp_napi_gro_flush.patch [deleted file]
target/linux/xburst/Makefile
target/linux/xburst/patches-3.2/0001-ubi-Read-only-the-vid-header-instead-of-the-whole-pa.patch
target/linux/xburst/patches-3.2/0002-Add-jz4740-udc-driver.patch
target/linux/xburst/patches-3.2/0003-NAND-Optimize-NAND_ECC_HW_OOB_FIRST-read.patch
target/linux/xburst/patches-3.2/0004-NAND-Add-support-for-subpage-reads-for-NAND_ECC_HW_O.patch
target/linux/xburst/patches-3.2/0005-NAND-Optimize-reading-the-eec-data-for-the-JZ4740.patch
target/linux/xburst/patches-3.2/0006-MTD-NAND-JZ4740-Multi-bank-support-with-autodetectio.patch
target/linux/xburst/patches-3.2/0007-Add-ili8960-lcd-driver.patch
target/linux/xburst/patches-3.2/0008-qi_lb60-Don-t-use-3-wire-spi-mode-for-the-display-fo.patch
target/linux/xburst/patches-3.2/0009-dev-mem-Add-kernel-config-option-to-omit-this-device.patch
target/linux/xburst/patches-3.2/0010-cpufreq_stats-Support-runtime-changes-to-frequency-t.patch
target/linux/xburst/patches-3.2/0011-MIPS-JZ4740-Added-setting-of-PLL-rate-and-main-divid.patch
target/linux/xburst/patches-3.2/0012-MIPS-JZ4740-Add-cpufreq-support.patch
target/linux/xburst/patches-3.2/0013-MMC-JZ4740-Added-support-for-CPU-frequency-changing.patch
target/linux/xburst/patches-3.2/0014-MIPS-JZ4740-reset-Initialize-hibernate-wakeup-counte.patch
target/linux/xburst/patches-3.2/0015-ASoC-JZ4740-Replaced-comma-operators-with-semicolons.patch
target/linux/xburst/patches-3.2/0016-ASoC-JZ4740-Support-buffer-size-that-is-not-a-multip.patch
target/linux/xburst/patches-3.2/0017-MIPS-JZ4740-qi_lb60-Look-for-NAND-chip-in-bank-1.patch
target/linux/xburst/patches-3.2/0018-ASoC-jz4740-Convert-qi_lb60-to-use-snd_soc_register_.patch
target/linux/xburst/patches-3.2/0019-Framebuffer-notifier-Call-notifier-callbacks-prior-t.patch
target/linux/xburst/patches-3.2/0020-qi_lb60-NAND-add-data-partition.patch
target/linux/xburst/patches-3.2/0021-rtc-jz4740-fix-hwclock-give-time-out.patch

index da8534fd9782a658282453d52957eeec542b8258..7565beeea4cb674bcd4e421733dac4fdde2b465c 100644 (file)
@@ -35,8 +35,8 @@ endif
 ifeq ($(LINUX_VERSION),3.1.10)
   LINUX_KERNEL_MD5SUM:=3649bdaa50ffd9114cc16486ec54d83a
 endif
-ifeq ($(LINUX_VERSION),3.2.13)
-  LINUX_KERNEL_MD5SUM:=1966afd4474000e48fb1e22a5991882e
+ifeq ($(LINUX_VERSION),3.2.14)
+  LINUX_KERNEL_MD5SUM:=961da0dc037181a4a5059f763b70eabd
 endif
 ifeq ($(LINUX_VERSION),3.3)
   LINUX_KERNEL_MD5SUM:=98a6cdd7d082b7ea72df9c89842bac74
index 83014212cd512427162083ea759803b5ff31b206..d7fb02e8a228a96218de02b76a208e45d3b4de63 100644 (file)
@@ -13,7 +13,7 @@ FEATURES:=squashfs jffs2 targz
 CFLAGS:=-Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves
 SUBTARGETS:=generic nand
 
-LINUX_VERSION:=3.2.13
+LINUX_VERSION:=3.2.14
 
 include $(INCLUDE_DIR)/target.mk
 
index bc27a307690debab52797ac53912cab406baa673..87dd43e61882ef52e354761d7dcd5d5d5307733f 100644 (file)
@@ -13,7 +13,7 @@ FEATURES:=jffs2 usb pci
 SUBTARGETS=au1500 au1550
 MAINTAINER:=Florian Fainelli <florian@openwrt.org>
 
-LINUX_VERSION:=3.2.13
+LINUX_VERSION:=3.2.14
 
 include $(INCLUDE_DIR)/target.mk
 DEFAULT_PACKAGES += wpad-mini yamonenv
index 22b130ad8de8c0d340527cd1f9bc4afcf4e08195..0d4e5b6f98c9a8e081617d1b95e29ea3e139fac9 100644 (file)
@@ -11,7 +11,7 @@ BOARD:=brcm47xx
 BOARDNAME:=Broadcom BCM947xx/953xx
 FEATURES:=squashfs usb pcmcia
 
-LINUX_VERSION:=3.2.13
+LINUX_VERSION:=3.2.14
 
 include $(INCLUDE_DIR)/target.mk
 DEFAULT_PACKAGES += wpad-mini kmod-switch kmod-diag nvram
index 8dfec8a75a358c589df3cc57c04998d66c513717..27d12ee31e7070fa4cc8749b13f286d753789256 100644 (file)
@@ -12,7 +12,7 @@ BOARDNAME:=Cavium Networks Econa CNS21xx
 FEATURES:=squashfs broken
 CFLAGS:=-Os -pipe -march=armv4 -mtune=fa526 -fno-caller-saves
 
-LINUX_VERSION:=3.2.13
+LINUX_VERSION:=3.2.14
 
 include $(INCLUDE_DIR)/target.mk
 
index 3f702a33e5569f7203d2a362555adfb449831011..3f8189f5e0558676ecce3f7a3b4438fddb4c60ed 100644 (file)
@@ -13,7 +13,7 @@ FEATURES:=squashfs jffs2 ext4 targz usb
 CFLAGS:=-Os -pipe -march=armv4t -fno-caller-saves
 MAINTAINER:=Florian Fainelli <florian@openwrt.org>
 
-LINUX_VERSION:=3.2.13
+LINUX_VERSION:=3.2.14
 
 include $(INCLUDE_DIR)/target.mk
 
index f15749fa1780d5680c596a302bb9a5b0f942cc66..aa9a40f0998100b97c1fd4303c54f4d992d08194 100644 (file)
@@ -1,6 +1,6 @@
 --- a/lib/kobject_uevent.c
 +++ b/lib/kobject_uevent.c
-@@ -49,6 +49,18 @@ static const char *kobject_actions[] = {
+@@ -50,6 +50,18 @@ static const char *kobject_actions[] = {
        [KOBJ_OFFLINE] =        "offline",
  };
  
@@ -8,9 +8,9 @@
 +{
 +      u64 seq;
 +
-+      spin_lock(&sequence_lock);
++      mutex_lock(&uevent_sock_mutex);
 +      seq = ++uevent_seqnum;
-+      spin_unlock(&sequence_lock);
++      mutex_unlock(&uevent_sock_mutex);
 +
 +      return seq;
 +}
  /**
   * kobject_action_type - translate action string to numeric type
   *
-@@ -244,9 +256,7 @@ int kobject_uevent_env(struct kobject *k
-               kobj->state_remove_uevent_sent = 1;
-       /* we will send an event, so request a new sequence number */
--      spin_lock(&sequence_lock);
--      seq = ++uevent_seqnum;
--      spin_unlock(&sequence_lock);
-+      seq = uevent_next_seqnum();
-       retval = add_uevent_var(env, "SEQNUM=%llu", (unsigned long long)seq);
-       if (retval)
-               goto exit;
index 0d1d0125baa5c52b038f28d4fdee3f462b95f26a..084db9a48805ee0637d496cb06acbe9e39049d9d 100644 (file)
@@ -39,7 +39,7 @@
  #endif /* _KOBJECT_H_ */
 --- a/lib/kobject_uevent.c
 +++ b/lib/kobject_uevent.c
-@@ -377,6 +377,43 @@ int add_uevent_var(struct kobj_uevent_en
+@@ -378,6 +378,43 @@ int add_uevent_var(struct kobj_uevent_en
  EXPORT_SYMBOL_GPL(add_uevent_var);
  
  #if defined(CONFIG_NET)
index 355ecba8ec95e26c4c7219061184b2da7aa6cd54..0f69c5fc83cc5586739dc75475701e279f16ca93 100644 (file)
@@ -71,7 +71,7 @@
  
 --- a/mm/memory.c
 +++ b/mm/memory.c
-@@ -1385,6 +1385,7 @@ unsigned long zap_page_range(struct vm_a
+@@ -1393,6 +1393,7 @@ unsigned long zap_page_range(struct vm_a
        tlb_finish_mmu(&tlb, address, end);
        return end;
  }
@@ -79,7 +79,7 @@
  
  /**
   * zap_vma_ptes - remove ptes mapping the vma
-@@ -3060,6 +3061,7 @@ static inline int check_stack_guard_page
+@@ -3068,6 +3069,7 @@ static inline int check_stack_guard_page
        }
        return 0;
  }
index f7acee387d4e390986db29f7e17680f4d3aa6d12..9623a0b4e5f53d2406b9b7ee7d990487278a005d 100644 (file)
@@ -12,7 +12,7 @@ BOARDNAME:=Lantiq GPON/XWAY
 FEATURES:=squashfs jffs2
 DEFAULT_SUBTARGET:=danube
 
-LINUX_VERSION:=3.2.13
+LINUX_VERSION:=3.2.14
 
 CFLAGS=-Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves
 
index 0f3161745053f0388a0b5cd36184690876fd98cb..7f6a5a47e1fbae838bfa72dc8ac4635c22e80356 100644 (file)
@@ -13,7 +13,7 @@ SUBTARGETS:=le be
 INITRAMFS_EXTRA_FILES:=
 MAINTAINER:=Florian Fainelli <florian@openwrt.org>
 
-LINUX_VERSION:=3.2.13
+LINUX_VERSION:=3.2.14
 
 include $(INCLUDE_DIR)/target.mk
 
index c28d5f9785f7cd50228b3afefd2606ce941d8357..bd3afe4a97d968b6ccb13c628e689e3c24f40de8 100644 (file)
@@ -12,7 +12,7 @@ BOARDNAME:=Freescale MPC52xx
 CFLAGS:=-Os -pipe -fno-caller-saves -mcpu=603e
 FEATURES:=targz ext4
 
-LINUX_VERSION:=3.2.13
+LINUX_VERSION:=3.2.14
 
 include $(INCLUDE_DIR)/target.mk
 
index 37ed32c76dec37bdf84090200b1f45189d4acafa..e7dbe4a65ef026ca15ad72f31c27adf415712ecc 100644 (file)
@@ -11,7 +11,7 @@ BOARD:=omap4
 BOARDNAME:=TI OMAP4
 FEATURES:=usb targz audio display
 
-LINUX_VERSION:=3.2.13
+LINUX_VERSION:=3.2.14
 CFLAGS:=-Os -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=softfp
 MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
 
index c6e8e2b860a578deb1117c25d3bc9a07dbd8b9fa..c12b647acf25621b9c71b5fbb411ede33be21b64 100644 (file)
@@ -13,7 +13,7 @@ FEATURES:=squashfs
 CFLAGS:=-Os -pipe -fno-caller-saves -mcpu=405
 MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
 
-LINUX_VERSION:=3.2.13
+LINUX_VERSION:=3.2.14
 
 include $(INCLUDE_DIR)/target.mk
 
index 01d2f63f2e9ab21a8489663e3df67a4a6b9163ec..7e7d00c4ef6db21073efdcdd96760ba30f853469 100644 (file)
@@ -13,7 +13,7 @@ FEATURES:=squashfs
 CFLAGS:=-Os -pipe -fno-caller-saves -mcpu=440
 MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
 
-LINUX_VERSION:=3.2.13
+LINUX_VERSION:=3.2.14
 
 include $(INCLUDE_DIR)/target.mk
 
index 1265684fce0393fd47fece211e85a2edb5ef86f5..7d146c74d195e27a9589b7ef1b48715965afa4ea 100644 (file)
@@ -13,7 +13,7 @@ SUBTARGETS:=rt288x rt305x rt3883
 CFLAGS:=-Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves
 FEATURES:=squashfs
 
-LINUX_VERSION:=3.2.13
+LINUX_VERSION:=3.2.14
 
 include $(INCLUDE_DIR)/target.mk
 DEFAULT_PACKAGES+=\
index ea01ff66751cd291b4c86a1c56dc8a3fcae2cecc..7ae1f62998beb447eae043d19d93f6051b61d8dd 100644 (file)
@@ -23,7 +23,7 @@ BOARDNAME:=User Mode Linux
 FEATURES:=ext4 audio
 MAINTAINER:=Florian Fainelli <florian@openwrt.org>
 
-LINUX_VERSION:=3.2.13
+LINUX_VERSION:=3.2.14
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/x86/patches-3.2/900-8139cp_napi_gro_flush.patch b/target/linux/x86/patches-3.2/900-8139cp_napi_gro_flush.patch
deleted file mode 100644 (file)
index 532cb2c..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-From b189e810619a676e6b931a942a3e8387f3d39c21 Mon Sep 17 00:00:00 2001
-From: =?utf8?q?fran=C3=A7ois=20romieu?= <romieu@fr.zoreil.com>
-Date: Sun, 8 Jan 2012 13:41:33 +0000
-Subject: [PATCH] 8139cp: fix missing napi_gro_flush.
-
-The driver uses __napi_complete and napi_gro_receive. Without it, the
-driver hits the BUG_ON(n->gro_list) assertion hard in __napi_complete.
-
-Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
-Tested-by: Marin Glibic <zhilla2@gmail.com>
-Signed-off-by: David S. Miller <davem@davemloft.net>
----
- drivers/net/ethernet/realtek/8139cp.c |    1 +
- 1 files changed, 1 insertions(+), 0 deletions(-)
-
---- a/drivers/net/ethernet/realtek/8139cp.c
-+++ b/drivers/net/ethernet/realtek/8139cp.c
-@@ -563,6 +563,7 @@ rx_next:
-               if (cpr16(IntrStatus) & cp_rx_intr_mask)
-                       goto rx_status_loop;
-+              napi_gro_flush(napi);
-               spin_lock_irqsave(&cp->lock, flags);
-               __napi_complete(napi);
-               cpw16_f(IntrMask, cp_intr_mask);
index 8cec4398f1b74bfbec2884b698635d09bcae4d41..20722d866f9cb97b970f6a45ba9d938af1253373 100644 (file)
@@ -12,7 +12,7 @@ BOARDNAME:=Ingenic XBurst
 FEATURES:=jffs2 targz ubifs audio
 SUBTARGETS:=qi_lb60 n516 n526 id800wt
 
-LINUX_VERSION:=3.2.1
+LINUX_VERSION:=3.2.14
 
 DEVICE_TYPE=other
 
index 40a1eaa6095bc8f468b53f29577a3753a6f461a2..c340c6c7e38094508ad87e2a0d9dd48e5da19ff2 100644 (file)
@@ -8,11 +8,9 @@ Subject: [PATCH 01/21] ubi: Read only the vid header instead of the whole
  drivers/mtd/ubi/io.c |    2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)
 
-diff --git a/drivers/mtd/ubi/io.c b/drivers/mtd/ubi/io.c
-index f20b6f2..e66079d 100644
 --- a/drivers/mtd/ubi/io.c
 +++ b/drivers/mtd/ubi/io.c
-@@ -1031,7 +1031,7 @@ int ubi_io_read_vid_hdr(struct ubi_device *ubi, int pnum,
+@@ -1031,7 +1031,7 @@ int ubi_io_read_vid_hdr(struct ubi_devic
  
        p = (char *)vid_hdr - ubi->vid_hdr_shift;
        read_err = ubi_io_read(ubi, p, pnum, ubi->vid_hdr_aloffset,
@@ -21,6 +19,3 @@ index f20b6f2..e66079d 100644
        if (read_err && read_err != UBI_IO_BITFLIPS && !mtd_is_eccerr(read_err))
                return read_err;
  
--- 
-1.7.5.4
-
index f6d0015c7644fc000f1f7261b7d54769495bc7c2..507e99117a2028252aa5427b2849f9edebdbc84f 100644 (file)
@@ -17,8 +17,6 @@ History:
  create mode 100644 drivers/usb/gadget/jz4740_udc.c
  create mode 100644 drivers/usb/gadget/jz4740_udc.h
 
-diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig
-index 23a4473..89b7d28 100644
 --- a/drivers/usb/gadget/Kconfig
 +++ b/drivers/usb/gadget/Kconfig
 @@ -178,6 +178,14 @@ config USB_FUSB300
@@ -36,8 +34,6 @@ index 23a4473..89b7d28 100644
  config USB_OMAP
        tristate "OMAP USB Device Controller"
        depends on ARCH_OMAP
-diff --git a/drivers/usb/gadget/Makefile b/drivers/usb/gadget/Makefile
-index b54ac61..2d65f6e 100644
 --- a/drivers/usb/gadget/Makefile
 +++ b/drivers/usb/gadget/Makefile
 @@ -31,6 +31,7 @@ obj-$(CONFIG_USB_PXA_U2O)    += mv_udc.o
@@ -48,8 +44,6 @@ index b54ac61..2d65f6e 100644
  
  #
  # USB gadget drivers
-diff --git a/drivers/usb/gadget/gadget_chips.h b/drivers/usb/gadget/gadget_chips.h
-index a8855d0..99f1580 100644
 --- a/drivers/usb/gadget/gadget_chips.h
 +++ b/drivers/usb/gadget/gadget_chips.h
 @@ -36,6 +36,7 @@
@@ -60,7 +54,7 @@ index a8855d0..99f1580 100644
  #define gadget_is_langwell(g)         (!strcmp("langwell_udc", (g)->name))
  #define gadget_is_m66592(g)           (!strcmp("m66592_udc", (g)->name))
  #define gadget_is_musbhdrc(g)         (!strcmp("musb-hdrc", (g)->name))
-@@ -118,6 +119,8 @@ static inline int usb_gadget_controller_number(struct usb_gadget *gadget)
+@@ -118,6 +119,8 @@ static inline int usb_gadget_controller_
                return 0x31;
        else if (gadget_is_dwc3(gadget))
                return 0x32;
@@ -69,9 +63,6 @@ index a8855d0..99f1580 100644
  
        return -ENOENT;
  }
-diff --git a/drivers/usb/gadget/jz4740_udc.c b/drivers/usb/gadget/jz4740_udc.c
-new file mode 100644
-index 0000000..8d36434
 --- /dev/null
 +++ b/drivers/usb/gadget/jz4740_udc.c
 @@ -0,0 +1,2199 @@
@@ -2274,9 +2265,6 @@ index 0000000..8d36434
 +MODULE_DESCRIPTION("JZ4740 USB Device Controller");
 +MODULE_AUTHOR("Wei Jianli <jlwei@ingenic.cn>");
 +MODULE_LICENSE("GPL");
-diff --git a/drivers/usb/gadget/jz4740_udc.h b/drivers/usb/gadget/jz4740_udc.h
-new file mode 100644
-index 0000000..53fd1da
 --- /dev/null
 +++ b/drivers/usb/gadget/jz4740_udc.h
 @@ -0,0 +1,101 @@
@@ -2381,6 +2369,3 @@ index 0000000..53fd1da
 +}
 +
 +#endif /* __USB_GADGET_JZ4740_H__ */
--- 
-1.7.5.4
-
index b92c967e1343472535b881619c5e375c356ef34d..9583ab76c590ec7ce452c22ced8b14c08ca68f02 100644 (file)
@@ -8,11 +8,9 @@ Avoid sending unnecessary READ commands to the chip.
  drivers/mtd/nand/nand_base.c |   14 ++++++++++----
  1 files changed, 10 insertions(+), 4 deletions(-)
 
-diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
-index 3ed9c5e..184aa93 100644
 --- a/drivers/mtd/nand/nand_base.c
 +++ b/drivers/mtd/nand/nand_base.c
-@@ -1294,9 +1294,15 @@ static int nand_read_page_hwecc_oob_first(struct mtd_info *mtd,
+@@ -1294,9 +1294,15 @@ static int nand_read_page_hwecc_oob_firs
        uint8_t *ecc_calc = chip->buffers->ecccalc;
  
        /* Read the OOB area first */
@@ -31,7 +29,7 @@ index 3ed9c5e..184aa93 100644
  
        for (i = 0; i < chip->ecc.total; i++)
                ecc_code[i] = chip->oob_poi[eccpos[i]];
-@@ -1465,7 +1471,7 @@ static int nand_do_read_ops(struct mtd_info *mtd, loff_t from,
+@@ -1465,7 +1471,7 @@ static int nand_do_read_ops(struct mtd_i
                if (realpage != chip->pagebuf || oob) {
                        bufpoi = aligned ? buf : chip->buffers->databuf;
  
@@ -40,6 +38,3 @@ index 3ed9c5e..184aa93 100644
                                chip->cmdfunc(mtd, NAND_CMD_READ0, 0x00, page);
                                sndcmd = 0;
                        }
--- 
-1.7.5.4
-
index aab8f04328cb47d3db141633fccb79536c29a3ea..290a66220619c9002efcffbf28ec423837e1aaba 100644 (file)
@@ -9,11 +9,9 @@ Subject: [PATCH 04/21] NAND: Add support for subpage reads for
  include/linux/mtd/nand.h     |    8 ++--
  2 files changed, 79 insertions(+), 7 deletions(-)
 
-diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
-index 184aa93..0131e84 100644
 --- a/drivers/mtd/nand/nand_base.c
 +++ b/drivers/mtd/nand/nand_base.c
-@@ -1143,7 +1143,7 @@ static int nand_read_page_swecc(struct mtd_info *mtd, struct nand_chip *chip,
+@@ -1143,7 +1143,7 @@ static int nand_read_page_swecc(struct m
   * @bufpoi: buffer to store read data
   */
  static int nand_read_subpage(struct mtd_info *mtd, struct nand_chip *chip,
@@ -22,7 +20,7 @@ index 184aa93..0131e84 100644
  {
        int start_step, end_step, num_steps;
        uint32_t *eccpos = chip->ecc.layout->eccpos;
-@@ -1324,6 +1324,75 @@ static int nand_read_page_hwecc_oob_first(struct mtd_info *mtd,
+@@ -1324,6 +1324,75 @@ static int nand_read_page_hwecc_oob_firs
  }
  
  /**
@@ -98,7 +96,7 @@ index 184aa93..0131e84 100644
   * nand_read_page_syndrome - [REPLACEABLE] hardware ECC syndrome based page read
   * @mtd: mtd info structure
   * @chip: nand chip info structure
-@@ -1482,7 +1551,7 @@ static int nand_do_read_ops(struct mtd_info *mtd, loff_t from,
+@@ -1482,7 +1551,7 @@ static int nand_do_read_ops(struct mtd_i
                                                              bufpoi, page);
                        else if (!aligned && NAND_SUBPAGE_READ(chip) && !oob)
                                ret = chip->ecc.read_subpage(mtd, chip,
@@ -120,8 +118,6 @@ index 184aa93..0131e84 100644
  
        case NAND_ECC_HW:
                /* Use standard hwecc read page function? */
-diff --git a/include/linux/mtd/nand.h b/include/linux/mtd/nand.h
-index 904131b..9034100 100644
 --- a/include/linux/mtd/nand.h
 +++ b/include/linux/mtd/nand.h
 @@ -211,9 +211,9 @@ typedef enum {
@@ -146,6 +142,3 @@ index 904131b..9034100 100644
        void (*write_page)(struct mtd_info *mtd, struct nand_chip *chip,
                        const uint8_t *buf);
        int (*write_oob_raw)(struct mtd_info *mtd, struct nand_chip *chip,
--- 
-1.7.5.4
-
index 89247cafc950c5850fadb89c47cef9d69fd57c22..38a1395075eabd3e020b63c655a4615e17ca732a 100644 (file)
@@ -7,11 +7,9 @@ Subject: [PATCH 05/21] NAND-Optimize-reading-the-eec-data-for-the-JZ4740
  drivers/mtd/nand/nand_base.c |   14 ++++----------
  1 files changed, 4 insertions(+), 10 deletions(-)
 
-diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
-index 0131e84..74b8cce 100644
 --- a/drivers/mtd/nand/nand_base.c
 +++ b/drivers/mtd/nand/nand_base.c
-@@ -1295,8 +1295,8 @@ static int nand_read_page_hwecc_oob_first(struct mtd_info *mtd,
+@@ -1295,8 +1295,8 @@ static int nand_read_page_hwecc_oob_firs
  
        /* Read the OOB area first */
        if (mtd->writesize > 512) {
@@ -22,7 +20,7 @@ index 0131e84..74b8cce 100644
                chip->cmdfunc(mtd, NAND_CMD_RNDOUT, 0, -1);
        } else {
                chip->cmdfunc(mtd, NAND_CMD_READOOB, 0, page);
-@@ -1304,9 +1304,6 @@ static int nand_read_page_hwecc_oob_first(struct mtd_info *mtd,
+@@ -1304,9 +1304,6 @@ static int nand_read_page_hwecc_oob_firs
                chip->cmdfunc(mtd, NAND_CMD_READ0, 0, page);
        }
  
@@ -32,7 +30,7 @@ index 0131e84..74b8cce 100644
        for (i = 0; eccsteps; eccsteps--, i += eccbytes, p += eccsize) {
                int stat;
  
-@@ -1361,8 +1358,8 @@ static int nand_read_subpage_hwecc_oob_first(struct mtd_info *mtd, struct nand_c
+@@ -1361,8 +1358,8 @@ static int nand_read_subpage_hwecc_oob_f
  
        /* Read the OOB area first */
        if (mtd->writesize > 512) {
@@ -43,7 +41,7 @@ index 0131e84..74b8cce 100644
                chip->cmdfunc(mtd, NAND_CMD_RNDOUT, data_col_addr, -1);
        } else {
                chip->cmdfunc(mtd, NAND_CMD_READOOB, 0, page);
-@@ -1370,9 +1367,6 @@ static int nand_read_subpage_hwecc_oob_first(struct mtd_info *mtd, struct nand_c
+@@ -1370,9 +1367,6 @@ static int nand_read_subpage_hwecc_oob_f
                chip->cmdfunc(mtd, NAND_CMD_READ0, data_col_addr, page);
        }
  
@@ -53,6 +51,3 @@ index 0131e84..74b8cce 100644
        p = bufpoi + data_col_addr;
  
        for (i = eccbytes * start_step; num_steps; num_steps--, i += eccbytes, p += eccsize) {
--- 
-1.7.5.4
-
index e5edbc0c89acc509dc814e57f9b31b8b2d95af5c..41101479744c6d8208d3489511f056cf73a10980 100644 (file)
@@ -17,8 +17,6 @@ Thanks to Paul Cercueil for the initial autodetection patch.
  drivers/mtd/nand/jz4740_nand.c                  |  228 +++++++++++++++++++----
  3 files changed, 215 insertions(+), 37 deletions(-)
 
-diff --git a/arch/mips/include/asm/mach-jz4740/jz4740_nand.h b/arch/mips/include/asm/mach-jz4740/jz4740_nand.h
-index bb5b9a4..986982d 100644
 --- a/arch/mips/include/asm/mach-jz4740/jz4740_nand.h
 +++ b/arch/mips/include/asm/mach-jz4740/jz4740_nand.h
 @@ -19,6 +19,8 @@
@@ -39,11 +37,9 @@ index bb5b9a4..986982d 100644
        void (*ident_callback)(struct platform_device *, struct nand_chip *,
                                struct mtd_partition **, int *num_partitions);
  };
-diff --git a/arch/mips/jz4740/platform.c b/arch/mips/jz4740/platform.c
-index 10929e2..e342ed4 100644
 --- a/arch/mips/jz4740/platform.c
 +++ b/arch/mips/jz4740/platform.c
-@@ -157,11 +157,29 @@ static struct resource jz4740_nand_resources[] = {
+@@ -157,11 +157,29 @@ static struct resource jz4740_nand_resou
                .flags  = IORESOURCE_MEM,
        },
        {
@@ -74,8 +70,6 @@ index 10929e2..e342ed4 100644
  };
  
  struct platform_device jz4740_nand_device = {
-diff --git a/drivers/mtd/nand/jz4740_nand.c b/drivers/mtd/nand/jz4740_nand.c
-index e266407..b254b99 100644
 --- a/drivers/mtd/nand/jz4740_nand.c
 +++ b/drivers/mtd/nand/jz4740_nand.c
 @@ -52,9 +52,10 @@
@@ -104,7 +98,7 @@ index e266407..b254b99 100644
  
        struct jz_nand_platform_data *pdata;
        bool is_reading;
-@@ -74,26 +78,50 @@ static inline struct jz_nand *mtd_to_jz_nand(struct mtd_info *mtd)
+@@ -74,26 +78,50 @@ static inline struct jz_nand *mtd_to_jz_
        return container_of(mtd, struct jz_nand, mtd);
  }
  
@@ -161,7 +155,7 @@ index e266407..b254b99 100644
                writel(reg, nand->base + JZ_REG_NAND_CTRL);
        }
        if (dat != NAND_CMD_NONE)
-@@ -252,7 +280,7 @@ static int jz_nand_correct_ecc_rs(struct mtd_info *mtd, uint8_t *dat,
+@@ -252,7 +280,7 @@ static int jz_nand_correct_ecc_rs(struct
  }
  
  static int jz_nand_ioremap_resource(struct platform_device *pdev,
@@ -261,7 +255,7 @@ index e266407..b254b99 100644
  static int __devinit jz_nand_probe(struct platform_device *pdev)
  {
        int ret;
-@@ -295,6 +407,8 @@ static int __devinit jz_nand_probe(struct platform_device *pdev)
+@@ -295,6 +407,8 @@ static int __devinit jz_nand_probe(struc
        struct nand_chip *chip;
        struct mtd_info *mtd;
        struct jz_nand_platform_data *pdata = pdev->dev.platform_data;
@@ -270,7 +264,7 @@ index e266407..b254b99 100644
  
        nand = kzalloc(sizeof(*nand), GFP_KERNEL);
        if (!nand) {
-@@ -305,10 +419,6 @@ static int __devinit jz_nand_probe(struct platform_device *pdev)
+@@ -305,10 +419,6 @@ static int __devinit jz_nand_probe(struc
        ret = jz_nand_ioremap_resource(pdev, "mmio", &nand->mem, &nand->base);
        if (ret)
                goto err_free;
@@ -281,7 +275,7 @@ index e266407..b254b99 100644
  
        if (pdata && gpio_is_valid(pdata->busy_gpio)) {
                ret = gpio_request(pdata->busy_gpio, "NAND busy pin");
-@@ -316,7 +426,7 @@ static int __devinit jz_nand_probe(struct platform_device *pdev)
+@@ -316,7 +426,7 @@ static int __devinit jz_nand_probe(struc
                        dev_err(&pdev->dev,
                                "Failed to request busy gpio %d: %d\n",
                                pdata->busy_gpio, ret);
@@ -290,7 +284,7 @@ index e266407..b254b99 100644
                }
        }
  
-@@ -338,22 +448,51 @@ static int __devinit jz_nand_probe(struct platform_device *pdev)
+@@ -338,22 +448,51 @@ static int __devinit jz_nand_probe(struc
  
        chip->chip_delay = 50;
        chip->cmd_ctrl = jz_nand_cmd_ctrl;
@@ -351,7 +345,7 @@ index e266407..b254b99 100644
        }
  
        if (pdata && pdata->ident_callback) {
-@@ -363,8 +502,8 @@ static int __devinit jz_nand_probe(struct platform_device *pdev)
+@@ -363,8 +502,8 @@ static int __devinit jz_nand_probe(struc
  
        ret = nand_scan_tail(mtd);
        if (ret) {
@@ -362,7 +356,7 @@ index e266407..b254b99 100644
        }
  
        ret = mtd_device_parse_register(mtd, NULL, 0,
-@@ -381,14 +520,21 @@ static int __devinit jz_nand_probe(struct platform_device *pdev)
+@@ -381,14 +520,21 @@ static int __devinit jz_nand_probe(struc
        return 0;
  
  err_nand_release:
@@ -421,6 +415,3 @@ index e266407..b254b99 100644
  
        platform_set_drvdata(pdev, NULL);
        kfree(nand);
--- 
-1.7.5.4
-
index d31f5176a5565e0d58d64e9cb6dbab8f8dcf215b..d7eaa0793f0b10390eb065d3620200cb45a30b7d 100644 (file)
@@ -10,8 +10,6 @@ Subject: [PATCH 07/21] Add ili8960 lcd driver
  3 files changed, 271 insertions(+), 0 deletions(-)
  create mode 100644 drivers/video/backlight/ili8960.c
 
-diff --git a/drivers/video/backlight/Kconfig b/drivers/video/backlight/Kconfig
-index 278aeaa..f617883 100644
 --- a/drivers/video/backlight/Kconfig
 +++ b/drivers/video/backlight/Kconfig
 @@ -59,6 +59,13 @@ config LCD_LTV350QV
@@ -28,11 +26,9 @@ index 278aeaa..f617883 100644
  config LCD_ILI9320
        tristate
        help
-diff --git a/drivers/video/backlight/Makefile b/drivers/video/backlight/Makefile
-index fdd1fc4..01ec378 100644
 --- a/drivers/video/backlight/Makefile
 +++ b/drivers/video/backlight/Makefile
-@@ -6,6 +6,7 @@ obj-$(CONFIG_LCD_HP700)                   += jornada720_lcd.o
+@@ -6,6 +6,7 @@ obj-$(CONFIG_LCD_HP700)                   += jornada72
  obj-$(CONFIG_LCD_L4F00242T03)    += l4f00242t03.o
  obj-$(CONFIG_LCD_LMS283GF05)     += lms283gf05.o
  obj-$(CONFIG_LCD_LTV350QV)       += ltv350qv.o
@@ -40,9 +36,6 @@ index fdd1fc4..01ec378 100644
  obj-$(CONFIG_LCD_ILI9320)        += ili9320.o
  obj-$(CONFIG_LCD_PLATFORM)       += platform_lcd.o
  obj-$(CONFIG_LCD_VGG2432A4)      += vgg2432a4.o
-diff --git a/drivers/video/backlight/ili8960.c b/drivers/video/backlight/ili8960.c
-new file mode 100644
-index 0000000..1438e92
 --- /dev/null
 +++ b/drivers/video/backlight/ili8960.c
 @@ -0,0 +1,263 @@
@@ -309,6 +302,3 @@ index 0000000..1438e92
 +MODULE_LICENSE("GPL");
 +MODULE_DESCRIPTION("LCD driver for Ilitek ili8960");
 +MODULE_ALIAS("spi:ili8960");
--- 
-1.7.5.4
-
index f6a26fdd64c34b042359d7778ff816032bbc7bab..223459cab4a136a6b0f2f7717702c1172fb75021 100644 (file)
@@ -9,11 +9,9 @@ The spi_gpio driver does not support 3-wire mode.
  arch/mips/jz4740/board-qi_lb60.c |    1 -
  1 files changed, 0 insertions(+), 1 deletions(-)
 
-diff --git a/arch/mips/jz4740/board-qi_lb60.c b/arch/mips/jz4740/board-qi_lb60.c
-index c3b04be..b622941 100644
 --- a/arch/mips/jz4740/board-qi_lb60.c
 +++ b/arch/mips/jz4740/board-qi_lb60.c
-@@ -310,7 +310,6 @@ static struct spi_board_info qi_lb60_spi_board_info[] = {
+@@ -310,7 +310,6 @@ static struct spi_board_info qi_lb60_spi
                .chip_select = 0,
                .bus_num = 1,
                .max_speed_hz = 30 * 1000,
@@ -21,6 +19,3 @@ index c3b04be..b622941 100644
        },
  };
  
--- 
-1.7.5.4
-
index 99251adbe30b1d418809b22cd8b197e8f106bc08..28388fba769867b3ac0c3fbaa030b64d0c45f3a4 100644 (file)
@@ -12,8 +12,6 @@ It also saves some space on embedded systems.
  drivers/char/mem.c     |   17 +++++++++++++++++
  3 files changed, 28 insertions(+), 0 deletions(-)
 
-diff --git a/arch/x86/Kconfig.debug b/arch/x86/Kconfig.debug
-index bf56e17..0c97d51 100644
 --- a/arch/x86/Kconfig.debug
 +++ b/arch/x86/Kconfig.debug
 @@ -7,6 +7,7 @@ source "lib/Kconfig.debug"
@@ -24,8 +22,6 @@ index bf56e17..0c97d51 100644
        ---help---
          If this option is disabled, you allow userspace (root) access to all
          of memory, including kernel and userspace memory. Accidental
-diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig
-index 4364303..a2e462e 100644
 --- a/drivers/char/Kconfig
 +++ b/drivers/char/Kconfig
 @@ -6,6 +6,16 @@ menu "Character devices"
@@ -45,11 +41,9 @@ index 4364303..a2e462e 100644
  config DEVKMEM
        bool "/dev/kmem virtual device support"
        default y
-diff --git a/drivers/char/mem.c b/drivers/char/mem.c
-index 1451790..a6020ca 100644
 --- a/drivers/char/mem.c
 +++ b/drivers/char/mem.c
-@@ -87,6 +87,8 @@ void __weak unxlate_dev_mem_ptr(unsigned long phys, void *addr)
+@@ -87,6 +87,8 @@ void __weak unxlate_dev_mem_ptr(unsigned
  {
  }
  
@@ -58,7 +52,7 @@ index 1451790..a6020ca 100644
  /*
   * This funcion reads the *physical* memory. The f_pos points directly to the
   * memory location.
-@@ -210,6 +212,10 @@ static ssize_t write_mem(struct file *file, const char __user *buf,
+@@ -210,6 +212,10 @@ static ssize_t write_mem(struct file *fi
        return written;
  }
  
@@ -69,7 +63,7 @@ index 1451790..a6020ca 100644
  int __weak phys_mem_access_prot_allowed(struct file *file,
        unsigned long pfn, unsigned long size, pgprot_t *vma_prot)
  {
-@@ -331,6 +337,8 @@ static int mmap_mem(struct file *file, struct vm_area_struct *vma)
+@@ -331,6 +337,8 @@ static int mmap_mem(struct file *file, s
        return 0;
  }
  
@@ -78,7 +72,7 @@ index 1451790..a6020ca 100644
  #ifdef CONFIG_DEVKMEM
  static int mmap_kmem(struct file *file, struct vm_area_struct *vma)
  {
-@@ -694,6 +702,7 @@ static loff_t null_lseek(struct file *file, loff_t offset, int orig)
+@@ -694,6 +702,7 @@ static loff_t null_lseek(struct file *fi
        return file->f_pos = 0;
  }
  
@@ -86,7 +80,7 @@ index 1451790..a6020ca 100644
  /*
   * The memory devices use the full 32/64 bits of the offset, and so we cannot
   * check against negative addresses: they are ok. The return value is weird,
-@@ -726,11 +735,15 @@ static loff_t memory_lseek(struct file *file, loff_t offset, int orig)
+@@ -726,11 +735,15 @@ static loff_t memory_lseek(struct file *
        mutex_unlock(&file->f_path.dentry->d_inode->i_mutex);
        return ret;
  }
@@ -102,7 +96,7 @@ index 1451790..a6020ca 100644
  
  #define zero_lseek    null_lseek
  #define full_lseek      null_lseek
-@@ -740,6 +753,7 @@ static int open_port(struct inode * inode, struct file * filp)
+@@ -740,6 +753,7 @@ static int open_port(struct inode * inod
  #define open_kmem     open_mem
  #define open_oldmem   open_mem
  
@@ -110,7 +104,7 @@ index 1451790..a6020ca 100644
  static const struct file_operations mem_fops = {
        .llseek         = memory_lseek,
        .read           = read_mem,
-@@ -748,6 +762,7 @@ static const struct file_operations mem_fops = {
+@@ -748,6 +762,7 @@ static const struct file_operations mem_
        .open           = open_mem,
        .get_unmapped_area = get_unmapped_area_mem,
  };
@@ -128,6 +122,3 @@ index 1451790..a6020ca 100644
  #ifdef CONFIG_DEVKMEM
         [2] = { "kmem", 0, &kmem_fops, &directly_mappable_cdev_bdi },
  #endif
--- 
-1.7.5.4
-
index d65a362dc558b2c1ff81edb45b3e1e67dbb4d0e5..677e3c5e2627e7b822a63f0f4194912d4c5ffb06 100644 (file)
@@ -8,8 +8,6 @@ Subject: [PATCH 10/21] cpufreq_stats: Support runtime changes to frequency
  drivers/cpufreq/cpufreq_stats.c |  161 ++++++++++++++++++++-------------------
  1 files changed, 83 insertions(+), 78 deletions(-)
 
-diff --git a/drivers/cpufreq/cpufreq_stats.c b/drivers/cpufreq/cpufreq_stats.c
-index c5072a9..95f6eb9 100644
 --- a/drivers/cpufreq/cpufreq_stats.c
 +++ b/drivers/cpufreq/cpufreq_stats.c
 @@ -21,6 +21,7 @@
@@ -29,7 +27,7 @@ index c5072a9..95f6eb9 100644
        cputime64_t *time_in_state;
        unsigned int *freq_table;
  #ifdef CONFIG_CPU_FREQ_STAT_DETAILS
-@@ -60,7 +61,7 @@ static int cpufreq_stats_update(unsigned int cpu)
+@@ -60,7 +61,7 @@ static int cpufreq_stats_update(unsigned
        cur_time = get_jiffies_64();
        spin_lock(&cpufreq_stats_lock);
        stat = per_cpu(cpufreq_stats_table, cpu);
@@ -38,7 +36,7 @@ index c5072a9..95f6eb9 100644
                stat->time_in_state[stat->last_index] =
                        cputime64_add(stat->time_in_state[stat->last_index],
                                      cputime_sub(cur_time, stat->last_time));
-@@ -83,7 +84,7 @@ static ssize_t show_time_in_state(struct cpufreq_policy *policy, char *buf)
+@@ -83,7 +84,7 @@ static ssize_t show_time_in_state(struct
        ssize_t len = 0;
        int i;
        struct cpufreq_stats *stat = per_cpu(cpufreq_stats_table, policy->cpu);
@@ -47,7 +45,7 @@ index c5072a9..95f6eb9 100644
                return 0;
        cpufreq_stats_update(stat->cpu);
        for (i = 0; i < stat->state_num; i++) {
-@@ -101,7 +102,7 @@ static ssize_t show_trans_table(struct cpufreq_policy *policy, char *buf)
+@@ -101,7 +102,7 @@ static ssize_t show_trans_table(struct c
        int i, j;
  
        struct cpufreq_stats *stat = per_cpu(cpufreq_stats_table, policy->cpu);
@@ -56,7 +54,7 @@ index c5072a9..95f6eb9 100644
                return 0;
        cpufreq_stats_update(stat->cpu);
        len += snprintf(buf + len, PAGE_SIZE - len, "   From  :    To\n");
-@@ -160,63 +161,35 @@ static struct attribute_group stats_attr_group = {
+@@ -160,63 +161,35 @@ static struct attribute_group stats_attr
  static int freq_table_get_index(struct cpufreq_stats *stat, unsigned int freq)
  {
        int index;
@@ -130,7 +128,7 @@ index c5072a9..95f6eb9 100644
  
        for (i = 0; table[i].frequency != CPUFREQ_TABLE_END; i++) {
                unsigned int freq = table[i].frequency;
-@@ -225,40 +198,73 @@ static int cpufreq_stats_create_table(struct cpufreq_policy *policy,
+@@ -225,40 +198,73 @@ static int cpufreq_stats_create_table(st
                count++;
        }
  
@@ -222,7 +220,7 @@ index c5072a9..95f6eb9 100644
        kfree(stat);
        per_cpu(cpufreq_stats_table, cpu) = NULL;
        return ret;
-@@ -276,10 +282,12 @@ static int cpufreq_stat_notifier_policy(struct notifier_block *nb,
+@@ -276,10 +282,12 @@ static int cpufreq_stat_notifier_policy(
        table = cpufreq_frequency_get_table(cpu);
        if (!table)
                return 0;
@@ -239,7 +237,7 @@ index c5072a9..95f6eb9 100644
  }
  
  static int cpufreq_stat_notifier_trans(struct notifier_block *nb,
-@@ -299,21 +307,23 @@ static int cpufreq_stat_notifier_trans(struct notifier_block *nb,
+@@ -299,21 +307,23 @@ static int cpufreq_stat_notifier_trans(s
        old_index = stat->last_index;
        new_index = freq_table_get_index(stat, freq->new);
  
@@ -270,7 +268,7 @@ index c5072a9..95f6eb9 100644
        spin_unlock(&cpufreq_stats_lock);
        return 0;
  }
-@@ -329,9 +339,6 @@ static int __cpuinit cpufreq_stat_cpu_callback(struct notifier_block *nfb,
+@@ -329,9 +339,6 @@ static int __cpuinit cpufreq_stat_cpu_ca
        case CPU_ONLINE_FROZEN:
                cpufreq_update_policy(cpu);
                break;
@@ -280,7 +278,7 @@ index c5072a9..95f6eb9 100644
        case CPU_DEAD:
        case CPU_DEAD_FROZEN:
                cpufreq_stats_free_table(cpu);
-@@ -340,10 +347,9 @@ static int __cpuinit cpufreq_stat_cpu_callback(struct notifier_block *nfb,
+@@ -340,10 +347,9 @@ static int __cpuinit cpufreq_stat_cpu_ca
        return NOTIFY_OK;
  }
  
@@ -293,7 +291,7 @@ index c5072a9..95f6eb9 100644
  };
  
  static struct notifier_block notifier_policy_block = {
-@@ -390,7 +396,6 @@ static void __exit cpufreq_stats_exit(void)
+@@ -390,7 +396,6 @@ static void __exit cpufreq_stats_exit(vo
        unregister_hotcpu_notifier(&cpufreq_stat_cpu_notifier);
        for_each_online_cpu(cpu) {
                cpufreq_stats_free_table(cpu);
@@ -301,6 +299,3 @@ index c5072a9..95f6eb9 100644
        }
  }
  
--- 
-1.7.5.4
-
index b667ebb6cd4217e503b4b440accf52fb6e77f737..01c211ba778035bcde1aadcca2451823a86247d1 100644 (file)
@@ -11,8 +11,6 @@ Squashed version of the development done in the jz-2.6.39 branch.
  arch/mips/jz4740/clock.h |    4 +
  2 files changed, 224 insertions(+), 10 deletions(-)
 
-diff --git a/arch/mips/jz4740/clock.c b/arch/mips/jz4740/clock.c
-index 118a8a5..da423d1 100644
 --- a/arch/mips/jz4740/clock.c
 +++ b/arch/mips/jz4740/clock.c
 @@ -1,5 +1,8 @@
@@ -71,7 +69,7 @@ index 118a8a5..da423d1 100644
  struct main_clk {
        struct clk clk;
        uint32_t div_offset;
-@@ -204,25 +217,88 @@ static int jz_clk_ko_is_enabled(struct clk *clk)
+@@ -204,25 +217,88 @@ static int jz_clk_ko_is_enabled(struct c
        return !!(jz_clk_reg_read(JZ_REG_CLOCK_CTRL) & JZ_CLOCK_CTRL_KO_ENABLE);
  }
  
@@ -167,7 +165,7 @@ index 118a8a5..da423d1 100644
  }
  
  static unsigned long jz_clk_pll_half_get_rate(struct clk *clk)
-@@ -235,7 +311,77 @@ static unsigned long jz_clk_pll_half_get_rate(struct clk *clk)
+@@ -235,7 +311,77 @@ static unsigned long jz_clk_pll_half_get
        return jz_clk_pll_get_rate(clk->parent) >> 1;
  }
  
@@ -246,7 +244,7 @@ index 118a8a5..da423d1 100644
  
  static unsigned long jz_clk_main_round_rate(struct clk *clk, unsigned long rate)
  {
-@@ -290,6 +436,64 @@ static int jz_clk_main_set_rate(struct clk *clk, unsigned long rate)
+@@ -290,6 +436,64 @@ static int jz_clk_main_set_rate(struct c
        return 0;
  }
  
@@ -331,8 +329,6 @@ index 118a8a5..da423d1 100644
        spin_lock_init(&jz_clock_lock);
  
        jz_clk_ext.rate = jz4740_clock_bdata.ext_rate;
-diff --git a/arch/mips/jz4740/clock.h b/arch/mips/jz4740/clock.h
-index 5d07499..cc8d1db 100644
 --- a/arch/mips/jz4740/clock.h
 +++ b/arch/mips/jz4740/clock.h
 @@ -17,6 +17,7 @@
@@ -353,6 +349,3 @@ index 5d07499..cc8d1db 100644
  #ifdef CONFIG_DEBUG_FS
  void jz4740_clock_debugfs_init(void);
  void jz4740_clock_debugfs_add_clk(struct clk *clk);
--- 
-1.7.5.4
-
index 3461d1d61c9f215e5ca71cc250a12ed9aa4c13f3..48ec0ca7412402a3d0de7f0c965ab069dabfaa1c 100644 (file)
@@ -12,8 +12,6 @@ This is a squashed version of Uli's driver that was further developed in the ope
  4 files changed, 240 insertions(+), 1 deletions(-)
  create mode 100644 arch/mips/jz4740/cpufreq.c
 
-diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
-index d46f1da..8128df7 100644
 --- a/arch/mips/Kconfig
 +++ b/arch/mips/Kconfig
 @@ -209,6 +209,7 @@ config MACH_JZ4740
@@ -24,20 +22,15 @@ index d46f1da..8128df7 100644
  
  config LANTIQ
        bool "Lantiq based platforms"
-diff --git a/arch/mips/jz4740/Makefile b/arch/mips/jz4740/Makefile
-index a9dff33..15f828e 100644
 --- a/arch/mips/jz4740/Makefile
 +++ b/arch/mips/jz4740/Makefile
-@@ -16,5 +16,6 @@ obj-$(CONFIG_JZ4740_QI_LB60) += board-qi_lb60.o
+@@ -16,5 +16,6 @@ obj-$(CONFIG_JZ4740_QI_LB60) += board-qi
  # PM support
  
  obj-$(CONFIG_PM) += pm.o
 +obj-$(CONFIG_CPU_FREQ_JZ) += cpufreq.o
  
  ccflags-y := -Werror -Wall
-diff --git a/arch/mips/jz4740/cpufreq.c b/arch/mips/jz4740/cpufreq.c
-new file mode 100644
-index 0000000..aa41e9f
 --- /dev/null
 +++ b/arch/mips/jz4740/cpufreq.c
 @@ -0,0 +1,226 @@
@@ -267,8 +260,6 @@ index 0000000..aa41e9f
 +            "Maarten ter Huurne <maarten@treewalker.org>");
 +MODULE_DESCRIPTION("cpufreq driver for Jz4740");
 +MODULE_LICENSE("GPL");
-diff --git a/arch/mips/kernel/cpufreq/Kconfig b/arch/mips/kernel/cpufreq/Kconfig
-index 58c601e..11af8e8 100644
 --- a/arch/mips/kernel/cpufreq/Kconfig
 +++ b/arch/mips/kernel/cpufreq/Kconfig
 @@ -8,7 +8,7 @@ config MIPS_EXTERNAL_TIMER
@@ -305,6 +296,3 @@ index 58c601e..11af8e8 100644
  endif # CPU_FREQ
  
  endmenu
--- 
-1.7.5.4
-
index da1c4f1e9b0d419659589ef09416c160be47745b..f42d67a6fa937159ea64226f1191904ba36d2b5e 100644 (file)
@@ -10,8 +10,6 @@ Also the frequency change is postponed if an I/O operation is in progress.
  drivers/mmc/host/jz4740_mmc.c |   69 +++++++++++++++++++++++++++++++++++++++-
  1 files changed, 67 insertions(+), 2 deletions(-)
 
-diff --git a/drivers/mmc/host/jz4740_mmc.c b/drivers/mmc/host/jz4740_mmc.c
-index 74218ad..6e40f1b 100644
 --- a/drivers/mmc/host/jz4740_mmc.c
 +++ b/drivers/mmc/host/jz4740_mmc.c
 @@ -23,6 +23,7 @@
@@ -22,7 +20,7 @@ index 74218ad..6e40f1b 100644
  
  #include <linux/bitops.h>
  #include <linux/gpio.h>
-@@ -685,6 +686,60 @@ static void jz4740_mmc_enable_sdio_irq(struct mmc_host *mmc, int enable)
+@@ -685,6 +686,60 @@ static void jz4740_mmc_enable_sdio_irq(s
        jz4740_mmc_set_irq_enabled(host, JZ_MMC_IRQ_SDIO, enable);
  }
  
@@ -83,7 +81,7 @@ index 74218ad..6e40f1b 100644
  static const struct mmc_host_ops jz4740_mmc_ops = {
        .request        = jz4740_mmc_request,
        .set_ios        = jz4740_mmc_set_ios,
-@@ -834,11 +889,18 @@ static int __devinit jz4740_mmc_probe(struct platform_device* pdev)
+@@ -834,11 +889,18 @@ static int __devinit jz4740_mmc_probe(st
                goto err_free_host;
        }
  
@@ -103,7 +101,7 @@ index 74218ad..6e40f1b 100644
        }
  
        host->mem = request_mem_region(host->mem->start,
-@@ -846,7 +908,7 @@ static int __devinit jz4740_mmc_probe(struct platform_device* pdev)
+@@ -846,7 +908,7 @@ static int __devinit jz4740_mmc_probe(st
        if (!host->mem) {
                ret = -EBUSY;
                dev_err(&pdev->dev, "Failed to request base memory region\n");
@@ -121,7 +119,7 @@ index 74218ad..6e40f1b 100644
  err_clk_put:
        clk_put(host->clk);
  err_free_host:
-@@ -958,6 +1022,7 @@ static int __devexit jz4740_mmc_remove(struct platform_device *pdev)
+@@ -958,6 +1022,7 @@ static int __devexit jz4740_mmc_remove(s
        iounmap(host->base);
        release_mem_region(host->mem->start, resource_size(host->mem));
  
@@ -129,6 +127,3 @@ index 74218ad..6e40f1b 100644
        clk_put(host->clk);
  
        platform_set_drvdata(pdev, NULL);
--- 
-1.7.5.4
-
index 6a49e3582585b8f19392cdb9194fb5cee11ed1d1..b4e484321fd0f902e14497dff436b1e585068eeb 100644 (file)
@@ -17,8 +17,6 @@ the Dingoo A320 kernel.
  arch/mips/jz4740/reset.c |   46 ++++++++++++++++++++++++++++++++++++++++------
  1 files changed, 40 insertions(+), 6 deletions(-)
 
-diff --git a/arch/mips/jz4740/reset.c b/arch/mips/jz4740/reset.c
-index 5f1fb95..e6d1d7b 100644
 --- a/arch/mips/jz4740/reset.c
 +++ b/arch/mips/jz4740/reset.c
 @@ -21,6 +21,9 @@
@@ -31,18 +29,19 @@ index 5f1fb95..e6d1d7b 100644
  static void jz4740_halt(void)
  {
        while (1) {
-@@ -53,21 +56,52 @@ static void jz4740_restart(char *command)
+@@ -53,21 +56,52 @@ static void jz4740_restart(char *command
        jz4740_halt();
  }
  
 -#define JZ_REG_RTC_CTRL               0x00
 -#define JZ_REG_RTC_HIBERNATE  0x20
+-
+-#define JZ_RTC_CTRL_WRDY      BIT(7)
 +#define JZ_REG_RTC_CTRL                       0x00
 +#define JZ_REG_RTC_HIBERNATE          0x20
 +#define JZ_REG_RTC_WAKEUP_FILTER      0x24
 +#define JZ_REG_RTC_RESET_COUNTER      0x28
--#define JZ_RTC_CTRL_WRDY      BIT(7)
++
 +#define JZ_RTC_CTRL_WRDY              BIT(7)
 +#define JZ_RTC_WAKEUP_FILTER_MASK     0x0000FFE0
 +#define JZ_RTC_RESET_COUNTER_MASK     0x00000FE0
@@ -90,6 +89,3 @@ index 5f1fb95..e6d1d7b 100644
        jz4740_halt();
  }
  
--- 
-1.7.5.4
-
index 2bf28ce769fb6963db8d2a6bf8ab56d0487323a3..9e812e1ca602334089553c33184f29e9f46f23c1 100644 (file)
@@ -9,11 +9,9 @@ They were harmless but also unnecessary, probably a leftover from earlier code.
  sound/soc/jz4740/jz4740-i2s.c |    4 ++--
  1 files changed, 2 insertions(+), 2 deletions(-)
 
-diff --git a/sound/soc/jz4740/jz4740-i2s.c b/sound/soc/jz4740/jz4740-i2s.c
-index cd22a54..d28b4cc 100644
 --- a/sound/soc/jz4740/jz4740-i2s.c
 +++ b/sound/soc/jz4740/jz4740-i2s.c
-@@ -346,7 +346,7 @@ static void jz4740_i2c_init_pcm_config(struct jz4740_i2s *i2s)
+@@ -346,7 +346,7 @@ static void jz4740_i2c_init_pcm_config(s
  
        /* Playback */
        dma_config = &i2s->pcm_config_playback.dma_config;
@@ -22,7 +20,7 @@ index cd22a54..d28b4cc 100644
        dma_config->transfer_size = JZ4740_DMA_TRANSFER_SIZE_16BYTE;
        dma_config->request_type = JZ4740_DMA_TYPE_AIC_TRANSMIT;
        dma_config->flags = JZ4740_DMA_SRC_AUTOINC;
-@@ -355,7 +355,7 @@ static void jz4740_i2c_init_pcm_config(struct jz4740_i2s *i2s)
+@@ -355,7 +355,7 @@ static void jz4740_i2c_init_pcm_config(s
  
        /* Capture */
        dma_config = &i2s->pcm_config_capture.dma_config;
@@ -31,6 +29,3 @@ index cd22a54..d28b4cc 100644
        dma_config->transfer_size = JZ4740_DMA_TRANSFER_SIZE_16BYTE;
        dma_config->request_type = JZ4740_DMA_TYPE_AIC_RECEIVE;
        dma_config->flags = JZ4740_DMA_DST_AUTOINC;
--- 
-1.7.5.4
-
index 5c300a24bf36e12cc6e72c8ebd15b97b0c334aeb..552f811d6b8379014a0a38fca3f5180f8c1019ca 100644 (file)
@@ -13,8 +13,6 @@ the glitches and to Lars Clausen for helping me write the fix.
  sound/soc/jz4740/jz4740-pcm.c |   21 ++++++++++++++++++---
  1 files changed, 18 insertions(+), 3 deletions(-)
 
-diff --git a/sound/soc/jz4740/jz4740-pcm.c b/sound/soc/jz4740/jz4740-pcm.c
-index d1989cd..1f9a005 100644
 --- a/sound/soc/jz4740/jz4740-pcm.c
 +++ b/sound/soc/jz4740/jz4740-pcm.c
 @@ -31,6 +31,7 @@
@@ -25,7 +23,7 @@ index d1989cd..1f9a005 100644
        dma_addr_t dma_start;
        dma_addr_t dma_pos;
        dma_addr_t dma_end;
-@@ -67,10 +68,13 @@ static void jz4740_pcm_start_transfer(struct jz4740_runtime_data *prtd,
+@@ -67,10 +68,13 @@ static void jz4740_pcm_start_transfer(st
        if (prtd->dma_pos == prtd->dma_end)
                prtd->dma_pos = prtd->dma_start;
  
@@ -41,7 +39,7 @@ index d1989cd..1f9a005 100644
  
        jz4740_dma_disable(prtd->dma);
  
-@@ -85,6 +89,7 @@ static void jz4740_pcm_start_transfer(struct jz4740_runtime_data *prtd,
+@@ -85,6 +89,7 @@ static void jz4740_pcm_start_transfer(st
        jz4740_dma_set_transfer_count(prtd->dma, count);
  
        prtd->dma_pos += count;
@@ -49,7 +47,7 @@ index d1989cd..1f9a005 100644
  
        jz4740_dma_enable(prtd->dma);
  }
-@@ -96,7 +101,8 @@ static void jz4740_pcm_dma_transfer_done(struct jz4740_dma_chan *dma, int err,
+@@ -96,7 +101,8 @@ static void jz4740_pcm_dma_transfer_done
        struct snd_pcm_runtime *runtime = substream->runtime;
        struct jz4740_runtime_data *prtd = runtime->private_data;
  
@@ -59,7 +57,7 @@ index d1989cd..1f9a005 100644
  
        jz4740_pcm_start_transfer(prtd, substream);
  }
-@@ -133,6 +139,7 @@ static int jz4740_pcm_hw_params(struct snd_pcm_substream *substream,
+@@ -133,6 +139,7 @@ static int jz4740_pcm_hw_params(struct s
        runtime->dma_bytes = params_buffer_bytes(params);
  
        prtd->dma_period = params_period_bytes(params);
@@ -67,7 +65,7 @@ index d1989cd..1f9a005 100644
        prtd->dma_start = runtime->dma_addr;
        prtd->dma_pos = prtd->dma_start;
        prtd->dma_end = prtd->dma_start + runtime->dma_bytes;
-@@ -160,6 +167,7 @@ static int jz4740_pcm_prepare(struct snd_pcm_substream *substream)
+@@ -160,6 +167,7 @@ static int jz4740_pcm_prepare(struct snd
        if (!prtd->dma)
                return -EBUSY;
  
@@ -75,7 +73,7 @@ index d1989cd..1f9a005 100644
        prtd->dma_pos = prtd->dma_start;
  
        return 0;
-@@ -219,6 +227,13 @@ static int jz4740_pcm_open(struct snd_pcm_substream *substream)
+@@ -219,6 +227,13 @@ static int jz4740_pcm_open(struct snd_pc
        if (prtd == NULL)
                return -ENOMEM;
  
@@ -89,6 +87,3 @@ index d1989cd..1f9a005 100644
        snd_soc_set_runtime_hwparams(substream, &jz4740_pcm_hardware);
  
        runtime->private_data = prtd;
--- 
-1.7.5.4
-
index 3fd3f95c4c44e82059c34e4b357183f2a7edaabc..f6b11540afd0d93c3fb24dc15ed561746c58f5f3 100644 (file)
@@ -9,11 +9,9 @@ Specifying the bank is required since commit e7ca5a665877a030.
  arch/mips/jz4740/board-qi_lb60.c |    1 +
  1 files changed, 1 insertions(+), 0 deletions(-)
 
-diff --git a/arch/mips/jz4740/board-qi_lb60.c b/arch/mips/jz4740/board-qi_lb60.c
-index b622941..f2d94c1 100644
 --- a/arch/mips/jz4740/board-qi_lb60.c
 +++ b/arch/mips/jz4740/board-qi_lb60.c
-@@ -140,6 +140,7 @@ static void qi_lb60_nand_ident(struct platform_device *pdev,
+@@ -140,6 +140,7 @@ static void qi_lb60_nand_ident(struct pl
  static struct jz_nand_platform_data qi_lb60_nand_pdata = {
        .ident_callback = qi_lb60_nand_ident,
        .busy_gpio = 94,
@@ -21,6 +19,3 @@ index b622941..f2d94c1 100644
  };
  
  /* Keyboard*/
--- 
-1.7.5.4
-
index bb2317f113e35460d11d3c75f731f7d37236f595..52962ad83641fab1a35296142a83451df2064438 100644 (file)
@@ -12,11 +12,9 @@ Signed-off-by: Axel Lin <axel.lin@gmail.com>
  sound/soc/jz4740/qi_lb60.c       |   56 +++++++++++++++++--------------------
  2 files changed, 32 insertions(+), 30 deletions(-)
 
-diff --git a/arch/mips/jz4740/board-qi_lb60.c b/arch/mips/jz4740/board-qi_lb60.c
-index f2d94c1..be14dfb 100644
 --- a/arch/mips/jz4740/board-qi_lb60.c
 +++ b/arch/mips/jz4740/board-qi_lb60.c
-@@ -418,6 +418,11 @@ static struct platform_device qi_lb60_charger_device = {
+@@ -418,6 +418,11 @@ static struct platform_device qi_lb60_ch
        },
  };
  
@@ -28,7 +26,7 @@ index f2d94c1..be14dfb 100644
  
  static struct platform_device *jz_platform_devices[] __initdata = {
        &jz4740_udc_device,
-@@ -434,6 +439,7 @@ static struct platform_device *jz_platform_devices[] __initdata = {
+@@ -434,6 +439,7 @@ static struct platform_device *jz_platfo
        &qi_lb60_gpio_keys,
        &qi_lb60_pwm_beeper,
        &qi_lb60_charger_device,
@@ -36,8 +34,6 @@ index f2d94c1..be14dfb 100644
  };
  
  static void __init board_gpio_setup(void)
-diff --git a/sound/soc/jz4740/qi_lb60.c b/sound/soc/jz4740/qi_lb60.c
-index c5fc339..67ddbdd 100644
 --- a/sound/soc/jz4740/qi_lb60.c
 +++ b/sound/soc/jz4740/qi_lb60.c
 @@ -90,56 +90,52 @@ static struct snd_soc_card qi_lb60 = {
@@ -123,6 +119,3 @@ index c5fc339..67ddbdd 100644
  MODULE_DESCRIPTION("ALSA SoC QI LB60 Audio support");
  MODULE_LICENSE("GPL v2");
 +MODULE_ALIAS("platform:qi-lb60-audio");
--- 
-1.7.5.4
-
index 199b1e63a22af8a2690541d34cea9ddc9a529dba..2709883ff18a4ef5d76a730f5d70f9969967c5b2 100644 (file)
@@ -8,11 +8,9 @@ Subject: [PATCH 19/21] Framebuffer notifier: Call notifier callbacks prior to
  drivers/video/fbmem.c |    8 ++++++--
  1 files changed, 6 insertions(+), 2 deletions(-)
 
-diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c
-index ad93629..e13e6bf 100644
 --- a/drivers/video/fbmem.c
 +++ b/drivers/video/fbmem.c
-@@ -1032,12 +1032,12 @@ fb_set_var(struct fb_info *info, struct fb_var_screeninfo *var)
+@@ -1032,12 +1032,12 @@ fb_set_var(struct fb_info *info, struct
  int
  fb_blank(struct fb_info *info, int blank)
  {     
@@ -27,7 +25,7 @@ index ad93629..e13e6bf 100644
                ret = info->fbops->fb_blank(blank, info);
  
        if (!ret) {
-@@ -1048,6 +1048,10 @@ fb_blank(struct fb_info *info, int blank)
+@@ -1048,6 +1048,10 @@ fb_blank(struct fb_info *info, int blank
                fb_notifier_call_chain(FB_EVENT_BLANK, &event);
        }
  
@@ -38,6 +36,3 @@ index ad93629..e13e6bf 100644
        return ret;
  }
  
--- 
-1.7.5.4
-
index 5121ddcd85063dfeaa2cce64de946a12429ec454..9d45dd869834b67631044df605a8e3cdc15244b3 100644 (file)
@@ -7,11 +7,9 @@ Subject: [PATCH 20/21] qi_lb60: NAND: add data partition
  arch/mips/jz4740/board-qi_lb60.c |    7 ++++++-
  1 files changed, 6 insertions(+), 1 deletions(-)
 
-diff --git a/arch/mips/jz4740/board-qi_lb60.c b/arch/mips/jz4740/board-qi_lb60.c
-index be14dfb..4e24b95 100644
 --- a/arch/mips/jz4740/board-qi_lb60.c
 +++ b/arch/mips/jz4740/board-qi_lb60.c
-@@ -118,8 +118,13 @@ static struct mtd_partition qi_lb60_partitions_2gb[] = {
+@@ -118,8 +118,13 @@ static struct mtd_partition qi_lb60_part
        {
                .name = "NAND ROOTFS partition",
                .offset = 8 * 0x100000,
@@ -26,6 +24,3 @@ index be14dfb..4e24b95 100644
  };
  
  static void qi_lb60_nand_ident(struct platform_device *pdev,
--- 
-1.7.5.4
-
index b661f6dc3bdc924a165e6ba05f460c23b53702dc..b68033d3bc89733fe4d35b820704736b8a932952 100644 (file)
@@ -7,11 +7,9 @@ Subject: [PATCH 21/21] rtc: jz4740 fix hwclock give time out
  drivers/rtc/rtc-jz4740.c |    2 ++
  1 files changed, 2 insertions(+), 0 deletions(-)
 
-diff --git a/drivers/rtc/rtc-jz4740.c b/drivers/rtc/rtc-jz4740.c
-index b647363..50c5df0 100644
 --- a/drivers/rtc/rtc-jz4740.c
 +++ b/drivers/rtc/rtc-jz4740.c
-@@ -280,6 +280,8 @@ static int __devinit jz4740_rtc_probe(struct platform_device *pdev)
+@@ -280,6 +280,8 @@ static int __devinit jz4740_rtc_probe(st
                }
        }
  
@@ -20,6 +18,3 @@ index b647363..50c5df0 100644
        return 0;
  
  err_free_irq:
--- 
-1.7.5.4
-