[kernel] r22494 - in dists/wheezy-backports/linux: . debian debian/config debian/config/armel debian/config/armhf debian/config/kernelarch-powerpc debian/config/kernelarch-x86 debian/installer/powerpc/modules/powerpc debian/installer/powerpc/modules/powerpc-powerpc64 debian/patches debian/patches/bugfix/all debian/patches/bugfix/arm debian/patches/bugfix/x86 debian/patches/debian debian/patches/features/all debian/patches/features/all/psmouse debian/patches/features/arm
Ben Hutchings
benh at moszumanska.debian.org
Wed Apr 8 03:34:52 UTC 2015
Author: benh
Date: Wed Apr 8 03:34:52 2015
New Revision: 22494
Log:
Merge changes from sid up to 3.16.7-ckt9-1
Added:
dists/wheezy-backports/linux/debian/installer/powerpc/modules/powerpc/fb-modules
- copied unchanged from r22492, dists/sid/linux/debian/installer/powerpc/modules/powerpc/fb-modules
dists/wheezy-backports/linux/debian/patches/bugfix/all/btrfs-make-xattr-replace-operations-atomic.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/bugfix/all/btrfs-make-xattr-replace-operations-atomic.patch
dists/wheezy-backports/linux/debian/patches/bugfix/all/ext4-allocate-entire-range-in-zero-range.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/bugfix/all/ext4-allocate-entire-range-in-zero-range.patch
dists/wheezy-backports/linux/debian/patches/bugfix/all/ext4-fix-accidental-flag-aliasing-in-ext4_map_blocks.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/bugfix/all/ext4-fix-accidental-flag-aliasing-in-ext4_map_blocks.patch
dists/wheezy-backports/linux/debian/patches/bugfix/all/ext4-fix-zero_range-bug-hidden-by-flag-aliasing.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/bugfix/all/ext4-fix-zero_range-bug-hidden-by-flag-aliasing.patch
dists/wheezy-backports/linux/debian/patches/bugfix/all/hid-thingm-fix-workqueue-race-on-remove.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/bugfix/all/hid-thingm-fix-workqueue-race-on-remove.patch
dists/wheezy-backports/linux/debian/patches/bugfix/all/ib-core-prevent-integer-overflow-in-ib_umem_get.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/bugfix/all/ib-core-prevent-integer-overflow-in-ib_umem_get.patch
dists/wheezy-backports/linux/debian/patches/bugfix/all/ipv6-don-t-reduce-hop-limit-for-an-interface.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/bugfix/all/ipv6-don-t-reduce-hop-limit-for-an-interface.patch
dists/wheezy-backports/linux/debian/patches/bugfix/arm/mvebu-do-not-register-custom-DMA-operations-when-coherency-is-disabled.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/bugfix/arm/mvebu-do-not-register-custom-DMA-operations-when-coherency-is-disabled.patch
dists/wheezy-backports/linux/debian/patches/bugfix/x86/drm-i915-add-limited-color-range-readout-for-hdmi-dp.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-limited-color-range-readout-for-hdmi-dp.patch
dists/wheezy-backports/linux/debian/patches/bugfix/x86/powercap-rapl-change-domain-detection-message.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/bugfix/x86/powercap-rapl-change-domain-detection-message.patch
dists/wheezy-backports/linux/debian/patches/bugfix/x86/x86-microcode-intel-guard-against-stack-overflow-in-.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/bugfix/x86/x86-microcode-intel-guard-against-stack-overflow-in-.patch
dists/wheezy-backports/linux/debian/patches/debian/emmc-don-t-initialize-partitions-on-rpmb-flagged-areas.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/debian/emmc-don-t-initialize-partitions-on-rpmb-flagged-areas.patch
dists/wheezy-backports/linux/debian/patches/debian/procfs-avoid-abi-change-in-3.16.7-ckt8.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/debian/procfs-avoid-abi-change-in-3.16.7-ckt8.patch
dists/wheezy-backports/linux/debian/patches/debian/revert-quota-store-maximum-space-limit-in-bytes.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/debian/revert-quota-store-maximum-space-limit-in-bytes.patch
dists/wheezy-backports/linux/debian/patches/debian/usb-avoid-abi-change-in-3.16.7-ckt8.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/debian/usb-avoid-abi-change-in-3.16.7-ckt8.patch
dists/wheezy-backports/linux/debian/patches/features/all/fbcon-Change-fbcon_init-from-module_init-to-fs_initc.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/features/all/fbcon-Change-fbcon_init-from-module_init-to-fs_initc.patch
dists/wheezy-backports/linux/debian/patches/features/all/psmouse/
- copied from r22492, dists/sid/linux/debian/patches/features/all/psmouse/
dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun4i-Add-AXP209-support-to-various-boards.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun4i-Add-AXP209-support-to-various-boards.patch
dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun4i-cubieboard-add-axp209-regulator-nodes.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun4i-cubieboard-add-axp209-regulator-nodes.patch
dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun5i-Enable-axp209-support-on-A13-OLinuxIno.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun5i-Enable-axp209-support-on-A13-OLinuxIno.patch
dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun7i-Add-AXP209-support-to-various-boards.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-Add-AXP209-support-to-various-boards.patch
dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun7i-cubieboard2-add-axp209-regulator-nodes.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-cubieboard2-add-axp209-regulator-nodes.patch
dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun7i-cubietruck-add-axp209-regulator-nodes.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-cubietruck-add-axp209-regulator-nodes.patch
dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sunxi-Add-dtsi-for-AXP209-PMIC.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sunxi-Add-dtsi-for-AXP209-PMIC.patch
dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sunxi-Fixup-after-backport-of-axp209-support.patch
- copied unchanged from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sunxi-Fixup-after-backport-of-axp209-support.patch
Deleted:
dists/wheezy-backports/linux/debian/patches/bugfix/all/aslr-fix-stack-randomization-on-64-bit-systems.patch
dists/wheezy-backports/linux/debian/patches/bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-dell-xps15.patch
dists/wheezy-backports/linux/debian/patches/bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-samsung-730u3e-740u3e.patch
dists/wheezy-backports/linux/debian/patches/bugfix/x86/acpi-video-add-some-samsung-models-to-disable_native.patch
Modified:
dists/wheezy-backports/linux/ (props changed)
dists/wheezy-backports/linux/debian/changelog
dists/wheezy-backports/linux/debian/config/armel/defines
dists/wheezy-backports/linux/debian/config/armhf/config.armmp
dists/wheezy-backports/linux/debian/config/config
dists/wheezy-backports/linux/debian/config/defines
dists/wheezy-backports/linux/debian/config/kernelarch-powerpc/config
dists/wheezy-backports/linux/debian/config/kernelarch-powerpc/config-arch-64-be
dists/wheezy-backports/linux/debian/config/kernelarch-x86/config
dists/wheezy-backports/linux/debian/installer/powerpc/modules/powerpc-powerpc64/fancontrol-modules
dists/wheezy-backports/linux/debian/patches/bugfix/all/net-mv643xx-disable-tso-by-default.patch
dists/wheezy-backports/linux/debian/patches/series
Modified: dists/wheezy-backports/linux/debian/changelog
==============================================================================
--- dists/wheezy-backports/linux/debian/changelog Wed Apr 8 03:31:04 2015 (r22493)
+++ dists/wheezy-backports/linux/debian/changelog Wed Apr 8 03:34:52 2015 (r22494)
@@ -1,3 +1,221 @@
+linux (3.16.7-ckt9-1~bpo70+1) UNRELEASED; urgency=medium
+
+ * Rebuild for wheezy:
+ - Disable architectures that weren't part of wheezy
+ - Use gcc-4.6 for all architectures
+ - Change ABI number to 0.bpo.4
+ - [arm] btrfs: Work around bug in gcc-4.6 (fixes FTBFS)
+ - linux-image: Depend on initramfs-tools without any alternatives, so
+ that neither apt nor aptitude will automatically switch to dracut
+
+ -- Ben Hutchings <ben at decadent.org.uk> Tue, 07 Apr 2015 22:44:18 +0100
+
+linux (3.16.7-ckt9-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ http://kernel.ubuntu.com/stable/ChangeLog-3.16.7-ckt8
+ - usb: core: buffer: smallest buffer should start at ARCH_DMA_MINALIGN
+ - btrfs: fix leak of path in btrfs_find_item
+ - tpm_tis: verify interrupt during init
+ - xfs: ensure buffer types are set correctly
+ - xfs: inode unlink does not set AGI buffer type
+ - xfs: set buf types when converting extent formats
+ - xfs: set superblock buffer type correctly
+ - [s390*] KVM: avoid memory leaks if __inject_vm() fails
+ - samsung-laptop: Add use_native_backlight quirk, and enable it on some
+ models (regression in 3.14)
+ - staging: comedi: comedi_compat32.c: fix COMEDI_CMD copy back
+ - nfs: don't call blocking operations while !TASK_RUNNING
+ - cdc-acm: add sanity checks
+ - USB: fix use-after-free bug in usb_hcd_unlink_urb()
+ - iwlwifi: mvm: fix failure path when power_update fails in add_interface
+ - tty: Prevent untrappable signals from malicious program
+ - cpufreq: Set cpufreq_cpu_data to NULL before putting kobject
+ - nfs41: .init_read and .init_write can be called with valid pg_lseg
+ (regression in 3.15)
+ - mei: mask interrupt set bit on clean reset bit (regression in
+ 3.16.7-ckt5)
+ - [s390*] KVM: floating irqs: fix user triggerable endless loop
+ - cfq-iosched: handle failure of cfq group allocation
+ - tracing: Fix unmapping loop in tracing_mark_write
+ - fsnotify: fix handling of renames in audit
+ - blk-mq: fix double-free in error path
+ - NFSv4.1: Fix a kfree() of uninitialised pointers in
+ decode_cb_sequence_args
+ - mm/hugetlb: pmd_huge() returns true for non-present hugepage
+ - mm/hugetlb: take page table lock in follow_huge_pmd()
+ - mm/hugetlb: fix getting refcount 0 page in hugetlb_fault()
+ - mm/hugetlb: add migration/hwpoisoned entry check in
+ hugetlb_change_protection
+ - mm/hugetlb: add migration entry check in __unmap_hugepage_range
+ - iscsi-target: Drop problematic active_ts_list usage
+ - mm/memory.c: actually remap enough memory
+ - mm: hwpoison: drop lru_add_drain_all() in __soft_offline_page()
+ (regression in 3.11)
+ - jffs2: fix handling of corrupted summary length
+ - dm mirror: do not degrade the mirror on discard error
+ - dm io: reject unsupported DISCARD requests with EOPNOTSUPP
+ - NFS: struct nfs_commit_info.lock must always point to inode->i_lock
+ (regression in 3.16.4)
+ - target: Add missing WRITE_SAME end-of-device sanity check
+ - target: Check for LBA + sectors wrap-around in sbc_parse_cdb
+ - Btrfs: fix fsync data loss after adding hard link to inode
+ - sg: fix read() error reporting
+ - IB/qib: Do not write EEPROM
+ - [amd64] EDAC, amd64_edac: Prevent OOPS with >16 memory controllers
+ (regression in 3.11)
+ - md/raid5: Fix livelock when array is both resyncing and degraded.
+ - locking/rtmutex: Avoid a NULL pointer dereference on deadlock
+ (regression in 3.16)
+ - time: adjtimex: Validate the ADJ_FREQUENCY values
+ - ntp: Fixup adjtimex freq validation on 32-bit systems
+ - dm: fix a race condition in dm_get_md
+ - dm snapshot: fix a possible invalid memory access on unload
+ - libceph: fix double __remove_osd() problem
+ - blk-throttle: check stats_cpu before reading it from sysfs
+ - debugfs: leave freeing a symlink body until inode eviction
+ - procfs: fix race between symlink removals and traversals
+ - autofs4 copy_dev_ioctl(): keep the value of ->size we'd used for
+ allocation
+ - clk-gate: fix bit # check in clk_register_gate() (regression in 3.11)
+ - [powerpc*] kernel: Avoid memory corruption at early stage
+ (regression in 3.14)
+ - GFS2: Fix crash during ACL deletion in acl max entry check in
+ gfs2_set_acl() (regression in 3.14)
+ - net: llc: use correct size for sysctl timeout entries (CVE-2015-2041)
+ - net: rds: use correct size for max unacked packets and bytes
+ (CVE-2015-2042)
+ - HID: i2c-hid: Limit reads to wMaxInputLength bytes for input events
+ (regression in 3.16.7-ckt4)
+ - net: sctp: fix race for one-to-many sockets in sendmsg's auto associate
+ - ipv6: mld: fix add_grhead skb_over_panic for devs with large MTUs
+ - IB/core: When marshaling ucma path from user-space, clear unused fields
+ (regression in 3.14)
+ - IB/core: Fix deadlock on uverbs modify_qp error flow (regression in 3.14)
+ - IB/mlx4: Fix wrong usage of IPv4 protocol for multicast attach/detach
+ (regression in 3.14)
+ - IB/iser: Use correct dma direction when unmapping SGs
+ (regression in 3.15)
+ - staging: comedi: cb_pcidas64: fix incorrect AI range code handling
+ - target: Fix R_HOLDER bit usage for AllRegistrants
+ - target: Avoid dropping AllRegistrants reservation during unregister
+ - target: Allow AllRegistrants to re-RESERVE existing reservation
+ - target: Allow Write Exclusive non-reservation holders to READ
+ - vhost/scsi: potential memory corruption
+ - mm: softdirty: unmapped addresses between VMAs are clean
+ - proc/pagemap: walk page tables under pte lock
+ http://kernel.ubuntu.com/stable/ChangeLog-3.16.7-ckt9
+ - netfilter: nft_compat: fix module refcount underflow
+ - netfilter: xt_socket: fix a stack corruption bug
+ - ipvs: add missing ip_vs_pe_put in sync code
+ - flowcache: Fix kernel panic in flow_cache_flush_task (regression in 3.15)
+ - tcp: make sure skb is not shared before using skb_get()
+ (regression in 3.16)
+ - gen_stats.c: Duplicate xstats buffer for later use
+ - ematch: Fix auto-loading of ematch modules.
+ - openvswitch: Fix net exit.
+ - net: reject creation of netdev names with colons
+ - macvtap: make sure neighbour code can push ethernet header
+ - udp: only allow UFO for packets from SOCK_DGRAM sockets
+ - gpiolib: of: allow of_gpiochip_find_and_xlate to find more than one chip
+ per node (regression in 3.16.7-ckt6)
+ - [x86] drm/i915: Check obj->vma_list under the struct_mutex
+ (regression in 3.15)
+ - ALSA: hda - Disable runtime PM for Panther Point again
+ (regression in 3.14)
+ - nilfs2: fix potential memory overrun on inode
+ - [armhf] usb: dwc3: dwc3-omap: Fix disable IRQ
+ - [i386] KVM: emulate: fix CMPXCHG8B on 32-bit hosts
+ - xhci: Allocate correct amount of scratchpad buffers
+ - USB: usbfs: don't leak kernel data in siginfo
+ - efi/libstub: Fix boundary checking in efi_high_alloc()
+ - USB: serial: fix potential use-after-free after failed probe
+ - USB: serial: fix tty-device error handling at probe
+ - staging: comedi: adv_pci1710: fix AI INSN_READ for non-zero channel
+ - mei: make device disabled on stop unconditionally
+ - NFSv4: Don't call put_rpccred() under the rcu_read_lock()
+ - btrfs: fix lost return value due to variable shadowing
+ - eCryptfs: don't pass fs-specific ioctl commands through
+ - drm/radeon: fix DRM_IOCTL_RADEON_CS oops
+ - [armhf] ASoC: omap-pcm: Correct dma mask
+ - [amd64] x86/asm/entry/64: Remove a bogus 'ret_from_fork' optimization
+ (CVE-2015-2830)
+ - Btrfs: fix data loss in the fast fsync path
+ - Btrfs:__add_inode_ref: out of bounds memory read when looking for
+ extended ref.
+ - svcrpc: fix memory leak in gssp_accept_sec_context_upcall
+ (regression in 3.12)
+ - SUNRPC: Always manipulate rpc_rqst::rq_bc_pa_list under xprt->bc_pa_lock
+ (regression in 3.15)
+ - net: cls_bpf: fix size mismatch on filter preparation
+ - net: cls_bpf: fix auto generation of per list handles
+ - qlge: Fix qlge_update_hw_vlan_features to handle if interface is down
+ (regression in 3.13)
+ - libsas: Fix Kernel Crash in smp_execute_task
+ - ALSA: hda - Fix regression of HD-audio controller fallback modes
+ (regression in 3.11)
+ - can: add missing initialisations in CAN related skbuffs
+ - ftrace: Fix en(dis)able graph caller when en(dis)abling record via sysctl
+ - ftrace: Fix ftrace enable ordering of sysctl ftrace_enabled
+ - [armhf] imx6qdl-sabresd: set swbst_reg as vbus's parent reg
+ - [armhf] imx6sl-evk: set swbst_reg as vbus's parent reg
+ - xen-pciback: limit guest control of command register (CVE-2015-2150)
+ - drm/vmwgfx: Reorder device takedown somewhat
+ - ALSA: control: Add sanity checks for user ctl id name string
+ - Revert "i2c: core: Dispose OF IRQ mapping at client removal time"
+ (regression in 3.16.7-ckt2)
+ - nilfs2: fix deadlock of segment constructor during recovery
+ (regression in 3.16.7-ckt7)
+ - clk: divider: fix calculation of maximal parent rate for a given divider
+ (regression in 3.15)
+ - [sparc*] Fix several bugs in memmove().
+ - net: sysctl_net_core: check SNDBUF and RCVBUF for min length
+ - inet_diag: fix possible overflow in inet_diag_dump_one_icsk()
+ - caif: fix MSG_OOB test in caif_seqpkt_recvmsg()
+ - rxrpc: bogus MSG_PEEK test in rxrpc_recvmsg()
+ - tcp: fix tcp fin memory accounting
+ - net: compat: Update get_compat_msghdr() to match copy_msghdr_from_user()
+ behaviour (regression in 3.13)
+ - tcp: make connect() mem charging friendly
+
+ [ Ian Campbell ]
+ * Initialise framebuffer console earlier. (Closes: #779935)
+ * [xen] Enable Xen MCE log support. (Closes: #779698)
+ * [armhf] mvebu: do not register custom DMA operations when coherency is
+ disabled (Closes: #780858)
+ * [armhf] Enable power control on various sunxi platforms, enable MFD_AXP20X
+ and REGULATOR_AXP20X and adding the necessary DTB nodes. (Closes: #781576)
+
+ [ Ben Hutchings ]
+ * [armel/kirkwood] linux-image: Add versioned Breaks against flash-kernel,
+ to ensure that an FDT is appended to the image if needed (Closes: #781193)
+ * Revert "quota: Store maximum space limit in bytes" to avoid ABI change
+ * IB/core: Prevent integer overflow in ib_umem_get address arithmetic
+ (CVE-2014-8159)
+ * Btrfs: make xattr replace operations atomic (CVE-2014-9710)
+ * ext4: fix ZERO_RANGE bug hidden by flag aliasing
+ * ext4: fix accidental flag aliasing in ext4_map_blocks flags
+ * ext4: allocate entire range in zero range (CVE-2015-0275)
+ * [x86] microcode/intel: Guard against stack overflow in the loader
+ (CVE-2015-2666)
+ * ipv6: Don't reduce hop limit for an interface (CVE-2015-2922)
+ * [powerpc/powerpc64,ppc64] Disable THERM_PM72 and enable its replacements
+ WINDFARM_PM72 and WINDFARM_RM31 as modules. Update the udeb config
+ accordingly. Thanks to Milan Kupcevic. (Closes: #781934)
+ * psmouse: Add support for FocalTech touchpads, thanks to Rafal Ramocki
+ (Closes: #780971)
+ * [x86] drm/i915: Add limited color range readout for HDMI/DP ports on
+ g4x/vlv/chv (Closes: #775217)
+ * HID: thingm: fix workqueue race on remove (Closes: #780055)
+ * [x86] Disable X86_VERBOSE_BOOTUP (Closes: #781953)
+ * eMMC: Don't initialize partitions on RPMB flagged areas (Closes: #782038)
+ * [x86] powercap / RAPL: change domain detection message (Closes: #781418)
+ * procfs: Avoid ABI change in 3.16.7-ckt8
+ * [powerpc/powerpc] udeb: Add fb-modules package containing radeonfb driver
+ (Closes: #782058)
+
+ -- Ben Hutchings <ben at decadent.org.uk> Wed, 08 Apr 2015 01:03:08 +0100
+
linux (3.16.7-ckt7-1~bpo70+1) wheezy-backports; urgency=medium
* Rebuild for wheezy:
Modified: dists/wheezy-backports/linux/debian/config/armel/defines
==============================================================================
--- dists/wheezy-backports/linux/debian/config/armel/defines Wed Apr 8 03:31:04 2015 (r22493)
+++ dists/wheezy-backports/linux/debian/config/armel/defines Wed Apr 8 03:34:52 2015 (r22494)
@@ -99,6 +99,8 @@
# SheevaPlug: 4194304 - 8 - 64 = 4194232
# QNAP TS-119/TS-219: 2097152 - 8 - 64 = 2097080
check-size: 2097080
+# Most machines require appended FDT, which was completed in flash-kernel 3.14
+breaks: flash-kernel (<< 3.14~)
[kirkwood_abi]
ignore-changes:
Modified: dists/wheezy-backports/linux/debian/config/armhf/config.armmp
==============================================================================
--- dists/wheezy-backports/linux/debian/config/armhf/config.armmp Wed Apr 8 03:31:04 2015 (r22493)
+++ dists/wheezy-backports/linux/debian/config/armhf/config.armmp Wed Apr 8 03:34:52 2015 (r22494)
@@ -355,6 +355,7 @@
##
## file: drivers/mfd/Kconfig
##
+CONFIG_MFD_AXP20X=y
CONFIG_MFD_DA9052_SPI=y
CONFIG_MFD_DA9052_I2C=y
CONFIG_MFD_MC13XXX_SPI=m
@@ -628,6 +629,7 @@
##
CONFIG_REGULATOR=y
CONFIG_REGULATOR_ANATOP=m
+CONFIG_REGULATOR_AXP20X=m
CONFIG_REGULATOR_DA9052=m
CONFIG_REGULATOR_MC13783=m
CONFIG_REGULATOR_MC13892=m
Modified: dists/wheezy-backports/linux/debian/config/config
==============================================================================
--- dists/wheezy-backports/linux/debian/config/config Wed Apr 8 03:31:04 2015 (r22493)
+++ dists/wheezy-backports/linux/debian/config/config Wed Apr 8 03:34:52 2015 (r22494)
@@ -422,12 +422,6 @@
##
CONFIG_EDAC_LEGACY_SYSFS=y
# CONFIG_EDAC_MCE_INJ is not set
-CONFIG_EDAC_I82975X=m
-CONFIG_EDAC_I3200=m
-CONFIG_EDAC_X38=m
-CONFIG_EDAC_I5400=m
-CONFIG_EDAC_I7CORE=m
-CONFIG_EDAC_I5100=m
##
## file: drivers/extcon/Kconfig
@@ -4410,6 +4404,7 @@
CONFIG_XEN_GNTDEV=m
CONFIG_XEN_GRANT_DEV_ALLOC=m
CONFIG_XEN_PCIDEV_BACKEND=m
+CONFIG_XEN_MCE_LOG=y
##
## file: fs/Kconfig
Modified: dists/wheezy-backports/linux/debian/config/defines
==============================================================================
--- dists/wheezy-backports/linux/debian/config/defines Wed Apr 8 03:31:04 2015 (r22493)
+++ dists/wheezy-backports/linux/debian/config/defines Wed Apr 8 03:34:52 2015 (r22494)
@@ -7,6 +7,11 @@
module:drivers/net/wireless/iwlwifi/iwlwifi
module:sound/i2c/other/snd-ak4113
module:sound/i2c/other/snd-ak4114
+ azx_alloc_cmd_io
+ azx_free_cmd_io
+ azx_get_response
+ azx_init_cmd_io
+ azx_send_cmd
# Apparently not used OOT
__add_pages
__remove_pages
Modified: dists/wheezy-backports/linux/debian/config/kernelarch-powerpc/config
==============================================================================
--- dists/wheezy-backports/linux/debian/config/kernelarch-powerpc/config Wed Apr 8 03:31:04 2015 (r22493)
+++ dists/wheezy-backports/linux/debian/config/kernelarch-powerpc/config Wed Apr 8 03:34:52 2015 (r22494)
@@ -389,12 +389,7 @@
CONFIG_MAC_EMUMOUSEBTN=y
CONFIG_THERM_WINDTUNNEL=m
CONFIG_THERM_ADT746X=m
-CONFIG_THERM_PM72=m
CONFIG_WINDFARM=m
-CONFIG_WINDFARM_PM81=m
-CONFIG_WINDFARM_PM91=m
-CONFIG_WINDFARM_PM112=m
-CONFIG_WINDFARM_PM121=m
CONFIG_ANSLCD=m
CONFIG_PMAC_RACKMETER=m
Modified: dists/wheezy-backports/linux/debian/config/kernelarch-powerpc/config-arch-64-be
==============================================================================
--- dists/wheezy-backports/linux/debian/config/kernelarch-powerpc/config-arch-64-be Wed Apr 8 03:31:04 2015 (r22493)
+++ dists/wheezy-backports/linux/debian/config/kernelarch-powerpc/config-arch-64-be Wed Apr 8 03:34:52 2015 (r22494)
@@ -65,10 +65,13 @@
##
## file: drivers/macintosh/Kconfig
##
-CONFIG_WINDFARM=m
+# CONFIG_THERM_PM72 is not set
+CONFIG_WINDFARM_RM31=m
+CONFIG_WINDFARM_PM72=m
CONFIG_WINDFARM_PM81=m
CONFIG_WINDFARM_PM91=m
CONFIG_WINDFARM_PM112=m
+CONFIG_WINDFARM_PM121=m
##
## file: drivers/net/ethernet/pasemi/Kconfig
Modified: dists/wheezy-backports/linux/debian/config/kernelarch-x86/config
==============================================================================
--- dists/wheezy-backports/linux/debian/config/kernelarch-x86/config Wed Apr 8 03:31:04 2015 (r22493)
+++ dists/wheezy-backports/linux/debian/config/kernelarch-x86/config Wed Apr 8 03:34:52 2015 (r22494)
@@ -76,7 +76,7 @@
## file: arch/x86/Kconfig.debug
##
CONFIG_STRICT_DEVMEM=y
-CONFIG_X86_VERBOSE_BOOTUP=y
+# CONFIG_X86_VERBOSE_BOOTUP is not set
CONFIG_EARLY_PRINTK=y
# CONFIG_EARLY_PRINTK_DBGP is not set
CONFIG_EARLY_PRINTK_EFI=y
@@ -396,10 +396,16 @@
CONFIG_EDAC_E7XXX=m
CONFIG_EDAC_E752X=m
CONFIG_EDAC_I82875P=m
+CONFIG_EDAC_I82975X=m
CONFIG_EDAC_I3000=m
+CONFIG_EDAC_I3200=m
+CONFIG_EDAC_X38=m
+CONFIG_EDAC_I5400=m
+CONFIG_EDAC_I7CORE=m
CONFIG_EDAC_I82860=m
CONFIG_EDAC_R82600=m
CONFIG_EDAC_I5000=m
+CONFIG_EDAC_I5100=m
CONFIG_EDAC_I7300=m
CONFIG_EDAC_AMD8131=m
CONFIG_EDAC_AMD8111=m
Modified: dists/wheezy-backports/linux/debian/installer/powerpc/modules/powerpc-powerpc64/fancontrol-modules
==============================================================================
--- dists/wheezy-backports/linux/debian/installer/powerpc/modules/powerpc-powerpc64/fancontrol-modules Wed Apr 8 03:31:04 2015 (r22493)
+++ dists/wheezy-backports/linux/debian/installer/powerpc/modules/powerpc-powerpc64/fancontrol-modules Wed Apr 8 03:34:52 2015 (r22494)
@@ -1,5 +1,4 @@
i2c-powermac ?
-therm_pm72 ?
windfarm_core ?
windfarm_cpufreq_clamp ?
windfarm_lm75_sensor ?
@@ -9,6 +8,12 @@
windfarm_pm112 ?
windfarm_pm81 ?
windfarm_pm91 ?
+windfarm_pm72 ?
+windfarm_rm31 ?
windfarm_smu_controls ?
windfarm_smu_sat ?
windfarm_smu_sensors ?
+windfarm_ad7417_sensor ?
+windfarm_fcu_controls ?
+windfarm_lm87_sensor ?
+windfarm_pid ?
Copied: dists/wheezy-backports/linux/debian/installer/powerpc/modules/powerpc/fb-modules (from r22492, dists/sid/linux/debian/installer/powerpc/modules/powerpc/fb-modules)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/installer/powerpc/modules/powerpc/fb-modules Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/installer/powerpc/modules/powerpc/fb-modules)
@@ -0,0 +1,5 @@
+# 32-bit PowerMacs mostly have either ATI Rage 128 or Radeon graphics
+# chips for which the offb driver doesn't work properly. aty128fb is
+# currently built-in but that could plausibly change in future.
+aty128fb
+radeonfb
Copied: dists/wheezy-backports/linux/debian/patches/bugfix/all/btrfs-make-xattr-replace-operations-atomic.patch (from r22492, dists/sid/linux/debian/patches/bugfix/all/btrfs-make-xattr-replace-operations-atomic.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/bugfix/all/btrfs-make-xattr-replace-operations-atomic.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/bugfix/all/btrfs-make-xattr-replace-operations-atomic.patch)
@@ -0,0 +1,289 @@
+From: Filipe Manana <fdmanana at suse.com>
+Date: Sun, 9 Nov 2014 08:38:39 +0000
+Subject: Btrfs: make xattr replace operations atomic
+Origin: https://git.kernel.org/linus/5f5bc6b1e2d5a6f827bc860ef2dc5b6f365d1339
+
+Replacing a xattr consists of doing a lookup for its existing value, delete
+the current value from the respective leaf, release the search path and then
+finally insert the new value. This leaves a time window where readers (getxattr,
+listxattrs) won't see any value for the xattr. Xattrs are used to store ACLs,
+so this has security implications.
+
+This change also fixes 2 other existing issues which were:
+
+*) Deleting the old xattr value without verifying first if the new xattr will
+ fit in the existing leaf item (in case multiple xattrs are packed in the
+ same item due to name hash collision);
+
+*) Returning -EEXIST when the flag XATTR_CREATE is given and the xattr doesn't
+ exist but we have have an existing item that packs muliple xattrs with
+ the same name hash as the input xattr. In this case we should return ENOSPC.
+
+A test case for xfstests follows soon.
+
+Thanks to Alexandre Oliva for reporting the non-atomicity of the xattr replace
+implementation.
+
+Reported-by: Alexandre Oliva <oliva at gnu.org>
+Signed-off-by: Filipe Manana <fdmanana at suse.com>
+Signed-off-by: Chris Mason <clm at fb.com>
+---
+ fs/btrfs/ctree.c | 2 +-
+ fs/btrfs/ctree.h | 5 ++
+ fs/btrfs/dir-item.c | 10 ++--
+ fs/btrfs/xattr.c | 150 ++++++++++++++++++++++++++++++++--------------------
+ 4 files changed, 102 insertions(+), 65 deletions(-)
+
+--- a/fs/btrfs/ctree.c
++++ b/fs/btrfs/ctree.c
+@@ -2929,7 +2929,7 @@ done:
+ */
+ if (!p->leave_spinning)
+ btrfs_set_path_blocking(p);
+- if (ret < 0)
++ if (ret < 0 && !p->skip_release_on_error)
+ btrfs_release_path(p);
+ return ret;
+ }
+--- a/fs/btrfs/ctree.h
++++ b/fs/btrfs/ctree.h
+@@ -611,6 +611,7 @@ struct btrfs_path {
+ unsigned int leave_spinning:1;
+ unsigned int search_commit_root:1;
+ unsigned int need_commit_sem:1;
++ unsigned int skip_release_on_error:1;
+ };
+
+ /*
+@@ -3695,6 +3696,10 @@ struct btrfs_dir_item *btrfs_lookup_xatt
+ int verify_dir_item(struct btrfs_root *root,
+ struct extent_buffer *leaf,
+ struct btrfs_dir_item *dir_item);
++struct btrfs_dir_item *btrfs_match_dir_item_name(struct btrfs_root *root,
++ struct btrfs_path *path,
++ const char *name,
++ int name_len);
+
+ /* orphan.c */
+ int btrfs_insert_orphan_item(struct btrfs_trans_handle *trans,
+--- a/fs/btrfs/dir-item.c
++++ b/fs/btrfs/dir-item.c
+@@ -21,10 +21,6 @@
+ #include "hash.h"
+ #include "transaction.h"
+
+-static struct btrfs_dir_item *btrfs_match_dir_item_name(struct btrfs_root *root,
+- struct btrfs_path *path,
+- const char *name, int name_len);
+-
+ /*
+ * insert a name into a directory, doing overflow properly if there is a hash
+ * collision. data_size indicates how big the item inserted should be. On
+@@ -383,9 +379,9 @@ struct btrfs_dir_item *btrfs_lookup_xatt
+ * this walks through all the entries in a dir item and finds one
+ * for a specific name.
+ */
+-static struct btrfs_dir_item *btrfs_match_dir_item_name(struct btrfs_root *root,
+- struct btrfs_path *path,
+- const char *name, int name_len)
++struct btrfs_dir_item *btrfs_match_dir_item_name(struct btrfs_root *root,
++ struct btrfs_path *path,
++ const char *name, int name_len)
+ {
+ struct btrfs_dir_item *dir_item;
+ unsigned long name_ptr;
+--- a/fs/btrfs/xattr.c
++++ b/fs/btrfs/xattr.c
+@@ -29,6 +29,7 @@
+ #include "xattr.h"
+ #include "disk-io.h"
+ #include "props.h"
++#include "locking.h"
+
+
+ ssize_t __btrfs_getxattr(struct inode *inode, const char *name,
+@@ -91,7 +92,7 @@ static int do_setxattr(struct btrfs_tran
+ struct inode *inode, const char *name,
+ const void *value, size_t size, int flags)
+ {
+- struct btrfs_dir_item *di;
++ struct btrfs_dir_item *di = NULL;
+ struct btrfs_root *root = BTRFS_I(inode)->root;
+ struct btrfs_path *path;
+ size_t name_len = strlen(name);
+@@ -103,84 +104,119 @@ static int do_setxattr(struct btrfs_tran
+ path = btrfs_alloc_path();
+ if (!path)
+ return -ENOMEM;
++ path->skip_release_on_error = 1;
++
++ if (!value) {
++ di = btrfs_lookup_xattr(trans, root, path, btrfs_ino(inode),
++ name, name_len, -1);
++ if (!di && (flags & XATTR_REPLACE))
++ ret = -ENODATA;
++ else if (di)
++ ret = btrfs_delete_one_dir_name(trans, root, path, di);
++ goto out;
++ }
+
++ /*
++ * For a replace we can't just do the insert blindly.
++ * Do a lookup first (read-only btrfs_search_slot), and return if xattr
++ * doesn't exist. If it exists, fall down below to the insert/replace
++ * path - we can't race with a concurrent xattr delete, because the VFS
++ * locks the inode's i_mutex before calling setxattr or removexattr.
++ */
+ if (flags & XATTR_REPLACE) {
+- di = btrfs_lookup_xattr(trans, root, path, btrfs_ino(inode), name,
+- name_len, -1);
+- if (IS_ERR(di)) {
+- ret = PTR_ERR(di);
+- goto out;
+- } else if (!di) {
++ ASSERT(mutex_is_locked(&inode->i_mutex));
++ di = btrfs_lookup_xattr(NULL, root, path, btrfs_ino(inode),
++ name, name_len, 0);
++ if (!di) {
+ ret = -ENODATA;
+ goto out;
+ }
+- ret = btrfs_delete_one_dir_name(trans, root, path, di);
+- if (ret)
+- goto out;
+ btrfs_release_path(path);
++ di = NULL;
++ }
+
++ ret = btrfs_insert_xattr_item(trans, root, path, btrfs_ino(inode),
++ name, name_len, value, size);
++ if (ret == -EOVERFLOW) {
+ /*
+- * remove the attribute
++ * We have an existing item in a leaf, split_leaf couldn't
++ * expand it. That item might have or not a dir_item that
++ * matches our target xattr, so lets check.
+ */
+- if (!value)
+- goto out;
+- } else {
+- di = btrfs_lookup_xattr(NULL, root, path, btrfs_ino(inode),
+- name, name_len, 0);
+- if (IS_ERR(di)) {
+- ret = PTR_ERR(di);
++ ret = 0;
++ btrfs_assert_tree_locked(path->nodes[0]);
++ di = btrfs_match_dir_item_name(root, path, name, name_len);
++ if (!di && !(flags & XATTR_REPLACE)) {
++ ret = -ENOSPC;
+ goto out;
+ }
+- if (!di && !value)
+- goto out;
+- btrfs_release_path(path);
++ } else if (ret == -EEXIST) {
++ ret = 0;
++ di = btrfs_match_dir_item_name(root, path, name, name_len);
++ ASSERT(di); /* logic error */
++ } else if (ret) {
++ goto out;
+ }
+
+-again:
+- ret = btrfs_insert_xattr_item(trans, root, path, btrfs_ino(inode),
+- name, name_len, value, size);
+- /*
+- * If we're setting an xattr to a new value but the new value is say
+- * exactly BTRFS_MAX_XATTR_SIZE, we could end up with EOVERFLOW getting
+- * back from split_leaf. This is because it thinks we'll be extending
+- * the existing item size, but we're asking for enough space to add the
+- * item itself. So if we get EOVERFLOW just set ret to EEXIST and let
+- * the rest of the function figure it out.
+- */
+- if (ret == -EOVERFLOW)
++ if (di && (flags & XATTR_CREATE)) {
+ ret = -EEXIST;
++ goto out;
++ }
+
+- if (ret == -EEXIST) {
+- if (flags & XATTR_CREATE)
+- goto out;
++ if (di) {
+ /*
+- * We can't use the path we already have since we won't have the
+- * proper locking for a delete, so release the path and
+- * re-lookup to delete the thing.
++ * We're doing a replace, and it must be atomic, that is, at
++ * any point in time we have either the old or the new xattr
++ * value in the tree. We don't want readers (getxattr and
++ * listxattrs) to miss a value, this is specially important
++ * for ACLs.
+ */
+- btrfs_release_path(path);
+- di = btrfs_lookup_xattr(trans, root, path, btrfs_ino(inode),
+- name, name_len, -1);
+- if (IS_ERR(di)) {
+- ret = PTR_ERR(di);
+- goto out;
+- } else if (!di) {
+- /* Shouldn't happen but just in case... */
+- btrfs_release_path(path);
+- goto again;
++ const int slot = path->slots[0];
++ struct extent_buffer *leaf = path->nodes[0];
++ const u16 old_data_len = btrfs_dir_data_len(leaf, di);
++ const u32 item_size = btrfs_item_size_nr(leaf, slot);
++ const u32 data_size = sizeof(*di) + name_len + size;
++ struct btrfs_item *item;
++ unsigned long data_ptr;
++ char *ptr;
++
++ if (size > old_data_len) {
++ if (btrfs_leaf_free_space(root, leaf) <
++ (size - old_data_len)) {
++ ret = -ENOSPC;
++ goto out;
++ }
+ }
+
+- ret = btrfs_delete_one_dir_name(trans, root, path, di);
+- if (ret)
+- goto out;
++ if (old_data_len + name_len + sizeof(*di) == item_size) {
++ /* No other xattrs packed in the same leaf item. */
++ if (size > old_data_len)
++ btrfs_extend_item(root, path,
++ size - old_data_len);
++ else if (size < old_data_len)
++ btrfs_truncate_item(root, path, data_size, 1);
++ } else {
++ /* There are other xattrs packed in the same item. */
++ ret = btrfs_delete_one_dir_name(trans, root, path, di);
++ if (ret)
++ goto out;
++ btrfs_extend_item(root, path, data_size);
++ }
+
++ item = btrfs_item_nr(slot);
++ ptr = btrfs_item_ptr(leaf, slot, char);
++ ptr += btrfs_item_size(leaf, item) - data_size;
++ di = (struct btrfs_dir_item *)ptr;
++ btrfs_set_dir_data_len(leaf, di, size);
++ data_ptr = ((unsigned long)(di + 1)) + name_len;
++ write_extent_buffer(leaf, value, data_ptr, size);
++ btrfs_mark_buffer_dirty(leaf);
++ } else {
+ /*
+- * We have a value to set, so go back and try to insert it now.
++ * Insert, and we had space for the xattr, so path->slots[0] is
++ * where our xattr dir_item is and btrfs_insert_xattr_item()
++ * filled it.
+ */
+- if (value) {
+- btrfs_release_path(path);
+- goto again;
+- }
+ }
+ out:
+ btrfs_free_path(path);
Copied: dists/wheezy-backports/linux/debian/patches/bugfix/all/ext4-allocate-entire-range-in-zero-range.patch (from r22492, dists/sid/linux/debian/patches/bugfix/all/ext4-allocate-entire-range-in-zero-range.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/bugfix/all/ext4-allocate-entire-range-in-zero-range.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/bugfix/all/ext4-allocate-entire-range-in-zero-range.patch)
@@ -0,0 +1,72 @@
+From: Lukas Czerner <lczerner at redhat.com>
+Date: Fri, 3 Apr 2015 00:09:13 -0400
+Subject: ext4: allocate entire range in zero range
+Origin: https://git.kernel.org/cgit/linux/kernel/git/tytso/ext4.git/commit/?id=0f2af21aae11972fa924374ddcf52e88347cf5a8
+
+Currently there is a bug in zero range code which causes zero range
+calls to only allocate block aligned portion of the range, while
+ignoring the rest in some cases.
+
+In some cases, namely if the end of the range is past i_size, we do
+attempt to preallocate the last nonaligned block. However this might
+cause kernel to BUG() in some carefully designed zero range requests
+on setups where page size > block size.
+
+Fix this problem by first preallocating the entire range, including
+the nonaligned edges and converting the written extents to unwritten
+in the next step. This approach will also give us the advantage of
+having the range to be as linearly contiguous as possible.
+
+Signed-off-by: Lukas Czerner <lczerner at redhat.com>
+Signed-off-by: Theodore Ts'o <tytso at mit.edu>
+---
+--- a/fs/ext4/extents.c
++++ b/fs/ext4/extents.c
+@@ -4795,12 +4795,6 @@ static long ext4_zero_range(struct file
+ else
+ max_blocks -= lblk;
+
+- flags = EXT4_GET_BLOCKS_CREATE_UNWRIT_EXT |
+- EXT4_GET_BLOCKS_CONVERT_UNWRITTEN |
+- EXT4_EX_NOCACHE;
+- if (mode & FALLOC_FL_KEEP_SIZE)
+- flags |= EXT4_GET_BLOCKS_KEEP_SIZE;
+-
+ mutex_lock(&inode->i_mutex);
+
+ /*
+@@ -4817,15 +4811,28 @@ static long ext4_zero_range(struct file
+ ret = inode_newsize_ok(inode, new_size);
+ if (ret)
+ goto out_mutex;
+- /*
+- * If we have a partial block after EOF we have to allocate
+- * the entire block.
+- */
+- if (partial_end)
+- max_blocks += 1;
+ }
+
++ flags = EXT4_GET_BLOCKS_CREATE_UNWRIT_EXT;
++ if (mode & FALLOC_FL_KEEP_SIZE)
++ flags |= EXT4_GET_BLOCKS_KEEP_SIZE;
++
++ /* Preallocate the range including the unaligned edges */
++ if (partial_begin || partial_end) {
++ ret = ext4_alloc_file_blocks(file,
++ round_down(offset, 1 << blkbits) >> blkbits,
++ (round_up((offset + len), 1 << blkbits) -
++ round_down(offset, 1 << blkbits)) >> blkbits,
++ new_size, flags, mode);
++ if (ret)
++ goto out_mutex;
++
++ }
++
++ /* Zero range excluding the unaligned edges */
+ if (max_blocks > 0) {
++ flags |= (EXT4_GET_BLOCKS_CONVERT_UNWRITTEN |
++ EXT4_EX_NOCACHE);
+
+ /* Now release the pages and zero block aligned part of pages*/
+ truncate_pagecache_range(inode, start, end - 1);
Copied: dists/wheezy-backports/linux/debian/patches/bugfix/all/ext4-fix-accidental-flag-aliasing-in-ext4_map_blocks.patch (from r22492, dists/sid/linux/debian/patches/bugfix/all/ext4-fix-accidental-flag-aliasing-in-ext4_map_blocks.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/bugfix/all/ext4-fix-accidental-flag-aliasing-in-ext4_map_blocks.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/bugfix/all/ext4-fix-accidental-flag-aliasing-in-ext4_map_blocks.patch)
@@ -0,0 +1,40 @@
+From: Theodore Ts'o <tytso at mit.edu>
+Date: Mon, 1 Sep 2014 14:33:09 -0400
+Subject: [2/2] ext4: fix accidental flag aliasing in ext4_map_blocks flags
+Origin: https://git.kernel.org/linus/bd30d702fc320085f178d22866b32fdc4736c991
+
+Commit b8a8684502a0f introduced an accidental flag aliasing between
+EXT4_EX_NOCACHE and EXT4_GET_BLOCKS_CONVERT_UNWRITTEN.
+
+Fortunately, this didn't introduce any untorward side effects --- we
+got lucky. Nevertheless, fix this and leave a warning to hopefully
+avoid this from happening in the future.
+
+Signed-off-by: Theodore Ts'o <tytso at mit.edu>
+---
+ fs/ext4/ext4.h | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
+index cf3ad75..550b4f9 100644
+--- a/fs/ext4/ext4.h
++++ b/fs/ext4/ext4.h
+@@ -569,6 +569,7 @@ enum {
+ #define EXT4_GET_BLOCKS_NO_PUT_HOLE 0x0200
+ /* Convert written extents to unwritten */
+ #define EXT4_GET_BLOCKS_CONVERT_UNWRITTEN 0x0400
++/* DO NOT ASSIGN ADDITIONAL FLAG VALUES WITHOUT ADJUSTING THE FLAGS BELOW */
+
+ /*
+ * The bit position of these flags must not overlap with any of the
+@@ -579,8 +580,8 @@ enum {
+ * caching the extents when reading from the extent tree while a
+ * truncate or punch hole operation is in progress.
+ */
+-#define EXT4_EX_NOCACHE 0x0400
+-#define EXT4_EX_FORCE_CACHE 0x0800
++#define EXT4_EX_NOCACHE 0x0800
++#define EXT4_EX_FORCE_CACHE 0x1000
+
+ /*
+ * Flags used by ext4_free_blocks
Copied: dists/wheezy-backports/linux/debian/patches/bugfix/all/ext4-fix-zero_range-bug-hidden-by-flag-aliasing.patch (from r22492, dists/sid/linux/debian/patches/bugfix/all/ext4-fix-zero_range-bug-hidden-by-flag-aliasing.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/bugfix/all/ext4-fix-zero_range-bug-hidden-by-flag-aliasing.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/bugfix/all/ext4-fix-zero_range-bug-hidden-by-flag-aliasing.patch)
@@ -0,0 +1,66 @@
+From: Theodore Ts'o <tytso at mit.edu>
+Date: Mon, 1 Sep 2014 14:32:09 -0400
+Subject: [1/2] ext4: fix ZERO_RANGE bug hidden by flag aliasing
+Origin: https://git.kernel.org/linus/713e8dde3e71e92db2d8cc8459d236ce1fb576ce
+
+We accidently aliased EXT4_EX_NOCACHE and EXT4_GET_CONVERT_UNWRITTEN
+falgs, which apparently was hiding a bug that was unmasked when this
+flag aliasing issue was addressed (see the subsequent commit). The
+reproduction case was:
+
+ fsx -N 10000 -l 500000 -r 4096 -t 4096 -w 4096 -Z -R -W /vdb/junk
+
+... which would cause fsx to report corruption in the data file.
+
+The fix we have is a bit of an overkill, but I'd much rather be
+conservative for now, and we can optimize ZERO_RANGE_FL handling
+later. The fact that we need to zap the extent_status cache for the
+inode is unfortunate, but correctness is far more important than
+performance.
+
+Signed-off-by: Theodore Ts'o <tytso at mit.edu>
+Cc: Namjae Jeon <namjae.jeon at samsung.com>
+---
+ fs/ext4/extents.c | 21 ++++++++++++++-------
+ 1 file changed, 14 insertions(+), 7 deletions(-)
+
+--- a/fs/ext4/extents.c
++++ b/fs/ext4/extents.c
+@@ -4796,7 +4796,8 @@ static long ext4_zero_range(struct file
+ max_blocks -= lblk;
+
+ flags = EXT4_GET_BLOCKS_CREATE_UNWRIT_EXT |
+- EXT4_GET_BLOCKS_CONVERT_UNWRITTEN;
++ EXT4_GET_BLOCKS_CONVERT_UNWRITTEN |
++ EXT4_EX_NOCACHE;
+ if (mode & FALLOC_FL_KEEP_SIZE)
+ flags |= EXT4_GET_BLOCKS_KEEP_SIZE;
+
+@@ -4834,15 +4835,21 @@ static long ext4_zero_range(struct file
+ ext4_inode_block_unlocked_dio(inode);
+ inode_dio_wait(inode);
+
++ ret = ext4_alloc_file_blocks(file, lblk, max_blocks, new_size,
++ flags, mode);
++ if (ret)
++ goto out_dio;
+ /*
+ * Remove entire range from the extent status tree.
++ *
++ * ext4_es_remove_extent(inode, lblk, max_blocks) is
++ * NOT sufficient. I'm not sure why this is the case,
++ * but let's be conservative and remove the extent
++ * status tree for the entire inode. There should be
++ * no outstanding delalloc extents thanks to the
++ * filemap_write_and_wait_range() call above.
+ */
+- ret = ext4_es_remove_extent(inode, lblk, max_blocks);
+- if (ret)
+- goto out_dio;
+-
+- ret = ext4_alloc_file_blocks(file, lblk, max_blocks, new_size,
+- flags, mode);
++ ret = ext4_es_remove_extent(inode, 0, EXT_MAX_BLOCKS);
+ if (ret)
+ goto out_dio;
+ }
Copied: dists/wheezy-backports/linux/debian/patches/bugfix/all/hid-thingm-fix-workqueue-race-on-remove.patch (from r22492, dists/sid/linux/debian/patches/bugfix/all/hid-thingm-fix-workqueue-race-on-remove.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/bugfix/all/hid-thingm-fix-workqueue-race-on-remove.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/bugfix/all/hid-thingm-fix-workqueue-race-on-remove.patch)
@@ -0,0 +1,50 @@
+From: Jiri Kosina <jkosina at suse.cz>
+Date: Thu, 4 Sep 2014 08:56:06 +0200
+Subject: HID: thingm: fix workqueue race on remove
+Origin: https://git.kernel.org/linus/67a97845830f79584c9db8849ac723e5d2d57f65
+
+thingm_remove_rgb() needs to flush the workqueue after all the LED classes
+have been unregistered, otherwise the removal might race with another LED
+event coming, causing thingm_led_set() to schedule additional work after
+thingm_remove_rgb() has flushed it. This obviously causes oops later, as
+the scheduled work has been freed in the meantime.
+
+In addition to that, move the hid_hw_stop() to an earlier place, so that
+dmesg is not polluted by failure messages about not being able to write
+the LED while the device is being shut down.
+
+Reported-and-tested-by: Dylan Alex Simon <dylan-kernel at dylex.net>
+Signed-off-by: Jiri Kosina <jkosina at suse.cz>
+---
+ drivers/hid/hid-thingm.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/drivers/hid/hid-thingm.c b/drivers/hid/hid-thingm.c
+index 134be89..f206398 100644
+--- a/drivers/hid/hid-thingm.c
++++ b/drivers/hid/hid-thingm.c
+@@ -208,10 +208,10 @@ unregister_red:
+
+ static void thingm_remove_rgb(struct thingm_rgb *rgb)
+ {
+- flush_work(&rgb->work);
+ led_classdev_unregister(&rgb->red.ldev);
+ led_classdev_unregister(&rgb->green.ldev);
+ led_classdev_unregister(&rgb->blue.ldev);
++ flush_work(&rgb->work);
+ }
+
+ static int thingm_probe(struct hid_device *hdev, const struct hid_device_id *id)
+@@ -286,10 +286,10 @@ static void thingm_remove(struct hid_device *hdev)
+ struct thingm_device *tdev = hid_get_drvdata(hdev);
+ int i;
+
++ hid_hw_stop(hdev);
++
+ for (i = 0; i < tdev->fwinfo->numrgb; ++i)
+ thingm_remove_rgb(tdev->rgb + i);
+-
+- hid_hw_stop(hdev);
+ }
+
+ static const struct hid_device_id thingm_table[] = {
Copied: dists/wheezy-backports/linux/debian/patches/bugfix/all/ib-core-prevent-integer-overflow-in-ib_umem_get.patch (from r22492, dists/sid/linux/debian/patches/bugfix/all/ib-core-prevent-integer-overflow-in-ib_umem_get.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/bugfix/all/ib-core-prevent-integer-overflow-in-ib_umem_get.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/bugfix/all/ib-core-prevent-integer-overflow-in-ib_umem_get.patch)
@@ -0,0 +1,38 @@
+From: Shachar Raindel <raindel at mellanox.com>
+Date: Sun, 04 Jan 2015 18:30:32 +0200
+Subject: IB/core: Prevent integer overflow in ib_umem_get address arithmetic
+Origin: https://marc.info/?l=oss-security&m=142672196502144&w=2
+
+Properly verify that the resulting page aligned end address is larger
+than both the start address and the length of the memory area
+requested.
+
+Both the start and length arguments for ib_umem_get are controlled by
+the user. A misbehaving user can provide values which will cause an
+integer overflow when calculating the page aligned end address.
+
+This overflow can cause also miscalculation of the number of pages
+mapped, and additional logic issues.
+
+Signed-off-by: Shachar Raindel <raindel at mellanox.com>
+Signed-off-by: Jack Morgenstein <jackm at mellanox.com>
+Signed-off-by: Or Gerlitz <ogerlitz at mellanox.com>
+---
+
+--- a/drivers/infiniband/core/umem.c
++++ b/drivers/infiniband/core/umem.c
+@@ -94,6 +94,14 @@ struct ib_umem *ib_umem_get(struct ib_uc
+ if (dmasync)
+ dma_set_attr(DMA_ATTR_WRITE_BARRIER, &attrs);
+
++ /*
++ * If the combination of the addr and size requested for this memory
++ * region causes an integer overflow, return error.
++ */
++ if ((PAGE_ALIGN(addr + size) <= size) ||
++ (PAGE_ALIGN(addr + size) <= addr))
++ return ERR_PTR(-EINVAL);
++
+ if (!can_do_mlock())
+ return ERR_PTR(-EPERM);
+
Copied: dists/wheezy-backports/linux/debian/patches/bugfix/all/ipv6-don-t-reduce-hop-limit-for-an-interface.patch (from r22492, dists/sid/linux/debian/patches/bugfix/all/ipv6-don-t-reduce-hop-limit-for-an-interface.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/bugfix/all/ipv6-don-t-reduce-hop-limit-for-an-interface.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/bugfix/all/ipv6-don-t-reduce-hop-limit-for-an-interface.patch)
@@ -0,0 +1,43 @@
+From: "D.S. Ljungmark" <ljungmark at modio.se>
+Date: Wed, 25 Mar 2015 09:28:15 +0100
+Subject: ipv6: Don't reduce hop limit for an interface
+Origin: https://git.kernel.org/linus/6fd99094de2b83d1d4c8457f2c83483b2828e75a
+
+A local route may have a lower hop_limit set than global routes do.
+
+RFC 3756, Section 4.2.7, "Parameter Spoofing"
+
+> 1. The attacker includes a Current Hop Limit of one or another small
+> number which the attacker knows will cause legitimate packets to
+> be dropped before they reach their destination.
+
+> As an example, one possible approach to mitigate this threat is to
+> ignore very small hop limits. The nodes could implement a
+> configurable minimum hop limit, and ignore attempts to set it below
+> said limit.
+
+Signed-off-by: D.S. Ljungmark <ljungmark at modio.se>
+Acked-by: Hannes Frederic Sowa <hannes at stressinduktion.org>
+Signed-off-by: David S. Miller <davem at davemloft.net>
+---
+ net/ipv6/ndisc.c | 9 ++++++++-
+ 1 file changed, 8 insertions(+), 1 deletion(-)
+
+--- a/net/ipv6/ndisc.c
++++ b/net/ipv6/ndisc.c
+@@ -1190,7 +1190,14 @@ static void ndisc_router_discovery(struc
+ if (rt)
+ rt6_set_expires(rt, jiffies + (HZ * lifetime));
+ if (ra_msg->icmph.icmp6_hop_limit) {
+- in6_dev->cnf.hop_limit = ra_msg->icmph.icmp6_hop_limit;
++ /* Only set hop_limit on the interface if it is higher than
++ * the current hop_limit.
++ */
++ if (in6_dev->cnf.hop_limit < ra_msg->icmph.icmp6_hop_limit) {
++ in6_dev->cnf.hop_limit = ra_msg->icmph.icmp6_hop_limit;
++ } else {
++ ND_PRINTK(2, warn, "RA: Got route advertisement with lower hop_limit than current\n");
++ }
+ if (rt)
+ dst_metric_set(&rt->dst, RTAX_HOPLIMIT,
+ ra_msg->icmph.icmp6_hop_limit);
Modified: dists/wheezy-backports/linux/debian/patches/bugfix/all/net-mv643xx-disable-tso-by-default.patch
==============================================================================
--- dists/wheezy-backports/linux/debian/patches/bugfix/all/net-mv643xx-disable-tso-by-default.patch Wed Apr 8 03:31:04 2015 (r22493)
+++ dists/wheezy-backports/linux/debian/patches/bugfix/all/net-mv643xx-disable-tso-by-default.patch Wed Apr 8 03:34:52 2015 (r22494)
@@ -13,6 +13,7 @@
Nadav Haklai <nadavh at marvell.com>,
Ezequiel Garcia <ezequiel.garcia at free-electrons.com>
Date: Sat, 1 Nov 2014 12:30:20 -0300
+Origin: http://lkml.kernel.org/g/<1414855820-15094-2-git-send-email-ezequiel.garcia@free-electrons.com>
Data corruption has been observed to be produced by TSO. For instance,
accessing files on a NFS-server with TSO enabled results in different data
Copied: dists/wheezy-backports/linux/debian/patches/bugfix/arm/mvebu-do-not-register-custom-DMA-operations-when-coherency-is-disabled.patch (from r22492, dists/sid/linux/debian/patches/bugfix/arm/mvebu-do-not-register-custom-DMA-operations-when-coherency-is-disabled.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/bugfix/arm/mvebu-do-not-register-custom-DMA-operations-when-coherency-is-disabled.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/bugfix/arm/mvebu-do-not-register-custom-DMA-operations-when-coherency-is-disabled.patch)
@@ -0,0 +1,57 @@
+From: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
+Date: Thu Mar 12 03:58:12 PDT 2015
+Subject: [PATCH 3.18-stable v2] ARM: mvebu: do not register custom DMA operations when coherency is disabled
+Origin: http://lists.infradead.org/pipermail/linux-arm-kernel/2015-March/330108.html
+
+This patch is a partial backport of commit ef01c6c36bb8 ("ARM: mvebu:
+remove Armada 375 Z1 workaround for I/O coherency"). This commit was
+merged in v3.19, so kernel versions later than v3.19 are not affected
+by the problem that this commit fixes.
+
+It does not make a lot of sense to backport this commit entirely,
+since it is mainly removing some no longer useful code. However, this
+commit is also making sure that the bus_register_notifier that
+register the custom DMA operations that should be used for HW I/O
+coherency does not get registered when said HW I/O coherency is not
+enabled.
+
+This is particularly critical since we have decided to disable HW I/O
+coherency completely in all kernels < 4.0, to be on the safe side,
+while experimenting a new implementation of the HW I/O coherency in >=
+4.0.
+
+Without this commit, kernels earlier than 3.18 have the custom DMA
+operations normally used for HW I/O coherency registered (they don't
+do cache maintenance operations), while HW I/O coherency is
+disabled. It essentially causes every DMA transfer to transfer
+garbage.
+
+The issue fixed by this commit was introduced by 5ab5afd8ba83 ("ARM:
+mvebu: implement Armada 375 coherency workaround"), but it was not
+visible until now since it didn't cause any problem when HW I/O
+coherency is enabled.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
+Cc: <stable at vger.kernel.org> v3.16..v3.18
+---
+ arch/arm/mach-mvebu/coherency.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/arch/arm/mach-mvebu/coherency.c b/arch/arm/mach-mvebu/coherency.c
+index 2ffccd4..01efe13 100644
+--- a/arch/arm/mach-mvebu/coherency.c
++++ b/arch/arm/mach-mvebu/coherency.c
+@@ -448,8 +448,9 @@ static int __init coherency_late_init(void)
+ armada_375_coherency_init_wa();
+ }
+
+- bus_register_notifier(&platform_bus_type,
+- &mvebu_hwcc_nb);
++ if (coherency_available())
++ bus_register_notifier(&platform_bus_type,
++ &mvebu_hwcc_nb);
+
+ return 0;
+ }
+--
+2.1.0
\ No newline at end of file
Copied: dists/wheezy-backports/linux/debian/patches/bugfix/x86/drm-i915-add-limited-color-range-readout-for-hdmi-dp.patch (from r22492, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-limited-color-range-readout-for-hdmi-dp.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/bugfix/x86/drm-i915-add-limited-color-range-readout-for-hdmi-dp.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/bugfix/x86/drm-i915-add-limited-color-range-readout-for-hdmi-dp.patch)
@@ -0,0 +1,61 @@
+From: =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= <ville.syrjala at linux.intel.com>
+Date: Fri, 12 Sep 2014 15:46:29 +0300
+Subject: drm/i915: Add limited color range readout for HDMI/DP ports on
+ g4x/vlv/chv
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+Origin: https://git.kernel.org/linus/8c875fca1a8d76665c60fa141c220cee65f44f5e
+
+The limited color range knob is in the port registers on
+g4x and vlv/chv for HDMI, and on g4x for DP. Add the relevant code
+to read out the hardware state into pipe config. On vlv/chv the
+DP port limited color range knob is in PIPECONF for which we
+already have readout code.
+
+Cc: Chris Clayton <chris2553 at googlemail.com>
+Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
+Tested-by: Chris Clayton <chris2553 at googlemail.com>
+Reviewed-by: Daniel Vetter <daniel.vetter at ffwll.ch>
+Signed-off-by: Jani Nikula <jani.nikula at intel.com>
+---
+ drivers/gpu/drm/i915/intel_dp.c | 4 ++++
+ drivers/gpu/drm/i915/intel_hdmi.c | 7 ++++++-
+ 2 files changed, 10 insertions(+), 1 deletion(-)
+
+--- a/drivers/gpu/drm/i915/intel_dp.c
++++ b/drivers/gpu/drm/i915/intel_dp.c
+@@ -1606,6 +1606,10 @@ static void intel_dp_get_config(struct i
+
+ pipe_config->adjusted_mode.flags |= flags;
+
++ if (!HAS_PCH_SPLIT(dev) && !IS_VALLEYVIEW(dev) &&
++ tmp & DP_COLOR_RANGE_16_235)
++ pipe_config->limited_color_range = true;
++
+ pipe_config->has_dp_encoder = true;
+
+ intel_dp_get_m_n(crtc, pipe_config);
+--- a/drivers/gpu/drm/i915/intel_hdmi.c
++++ b/drivers/gpu/drm/i915/intel_hdmi.c
+@@ -709,7 +709,8 @@ static void intel_hdmi_get_config(struct
+ struct intel_crtc_config *pipe_config)
+ {
+ struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(&encoder->base);
+- struct drm_i915_private *dev_priv = encoder->base.dev->dev_private;
++ struct drm_device *dev = encoder->base.dev;
++ struct drm_i915_private *dev_priv = dev->dev_private;
+ u32 tmp, flags = 0;
+ int dotclock;
+
+@@ -731,6 +732,10 @@ static void intel_hdmi_get_config(struct
+ if (tmp & SDVO_AUDIO_ENABLE)
+ pipe_config->has_audio = true;
+
++ if (!HAS_PCH_SPLIT(dev) &&
++ tmp & HDMI_COLOR_RANGE_16_235)
++ pipe_config->limited_color_range = true;
++
+ pipe_config->adjusted_mode.flags |= flags;
+
+ if ((tmp & SDVO_COLOR_FORMAT_MASK) == HDMI_COLOR_FORMAT_12bpc)
Copied: dists/wheezy-backports/linux/debian/patches/bugfix/x86/powercap-rapl-change-domain-detection-message.patch (from r22492, dists/sid/linux/debian/patches/bugfix/x86/powercap-rapl-change-domain-detection-message.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/bugfix/x86/powercap-rapl-change-domain-detection-message.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/bugfix/x86/powercap-rapl-change-domain-detection-message.patch)
@@ -0,0 +1,40 @@
+From: Jacob Pan <jacob.jun.pan at linux.intel.com>
+Date: Tue, 2 Sep 2014 02:55:21 -0700
+Subject: powercap / RAPL: change domain detection message
+Origin: https://git.kernel.org/linus/fcdf1797e1f8f6605b194e620a333e6d47e07672
+
+Many CPUs do not support complete set of RAPL domains, as a
+result this detection failed message is very misleading and
+can be annoying.
+
+ [ 5.082632] intel_rapl: RAPL domain core detection failed
+ [ 5.088370] intel_rapl: RAPL domain uncore detection failed
+
+So lower the warning message to info and only print out the RAPL
+domains that are supported.
+
+Signed-off-by: Jacob Pan <jacob.jun.pan at linux.intel.com>
+Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki at intel.com>
+---
+ drivers/powercap/intel_rapl.c | 7 +++----
+ 1 file changed, 3 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/powercap/intel_rapl.c b/drivers/powercap/intel_rapl.c
+index a362dcc..45e05b3 100644
+--- a/drivers/powercap/intel_rapl.c
++++ b/drivers/powercap/intel_rapl.c
+@@ -1167,11 +1167,10 @@ static int rapl_detect_domains(struct rapl_package *rp, int cpu)
+
+ for (i = 0; i < RAPL_DOMAIN_MAX; i++) {
+ /* use physical package id to read counters */
+- if (!rapl_check_domain(cpu, i))
++ if (!rapl_check_domain(cpu, i)) {
+ rp->domain_map |= 1 << i;
+- else
+- pr_warn("RAPL domain %s detection failed\n",
+- rapl_domain_names[i]);
++ pr_info("Found RAPL domain %s\n", rapl_domain_names[i]);
++ }
+ }
+ rp->nr_domains = bitmap_weight(&rp->domain_map, RAPL_DOMAIN_MAX);
+ if (!rp->nr_domains) {
Copied: dists/wheezy-backports/linux/debian/patches/bugfix/x86/x86-microcode-intel-guard-against-stack-overflow-in-.patch (from r22492, dists/sid/linux/debian/patches/bugfix/x86/x86-microcode-intel-guard-against-stack-overflow-in-.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/bugfix/x86/x86-microcode-intel-guard-against-stack-overflow-in-.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/bugfix/x86/x86-microcode-intel-guard-against-stack-overflow-in-.patch)
@@ -0,0 +1,32 @@
+From: Quentin Casasnovas <quentin.casasnovas at oracle.com>
+Date: Tue, 3 Feb 2015 13:00:22 +0100
+Subject: x86/microcode/intel: Guard against stack overflow in the loader
+Origin: https://git.kernel.org/linus/f84598bd7c851f8b0bf8cd0d7c3be0d73c432ff4
+
+mc_saved_tmp is a static array allocated on the stack, we need to make
+sure mc_saved_count stays within its bounds, otherwise we're overflowing
+the stack in _save_mc(). A specially crafted microcode header could lead
+to a kernel crash or potentially kernel execution.
+
+Signed-off-by: Quentin Casasnovas <quentin.casasnovas at oracle.com>
+Cc: "H. Peter Anvin" <hpa at zytor.com>
+Cc: Fenghua Yu <fenghua.yu at intel.com>
+Link: http://lkml.kernel.org/r/1422964824-22056-1-git-send-email-quentin.casasnovas@oracle.com
+Signed-off-by: Borislav Petkov <bp at suse.de>
+---
+ arch/x86/kernel/cpu/microcode/intel_early.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/x86/kernel/cpu/microcode/intel_early.c b/arch/x86/kernel/cpu/microcode/intel_early.c
+index ec9df6f..5e109a3 100644
+--- a/arch/x86/kernel/cpu/microcode/intel_early.c
++++ b/arch/x86/kernel/cpu/microcode/intel_early.c
+@@ -321,7 +321,7 @@ get_matching_model_microcode(int cpu, unsigned long start,
+ unsigned int mc_saved_count = mc_saved_data->mc_saved_count;
+ int i;
+
+- while (leftover) {
++ while (leftover && mc_saved_count < ARRAY_SIZE(mc_saved_tmp)) {
+ mc_header = (struct microcode_header_intel *)ucode_ptr;
+
+ mc_size = get_totalsize(mc_header);
Copied: dists/wheezy-backports/linux/debian/patches/debian/emmc-don-t-initialize-partitions-on-rpmb-flagged-areas.patch (from r22492, dists/sid/linux/debian/patches/debian/emmc-don-t-initialize-partitions-on-rpmb-flagged-areas.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/debian/emmc-don-t-initialize-partitions-on-rpmb-flagged-areas.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/debian/emmc-don-t-initialize-partitions-on-rpmb-flagged-areas.patch)
@@ -0,0 +1,27 @@
+From: Nell Hardcastle <nell at dev-nell.com>
+Date: Thu, 29 May 2014 22:06:50 -0700
+Subject: [PATCH] eMMC: Don't initialize partitions on RPMB flagged areas.
+Origin: https://dev-nell.com/rpmb-emmc-errors-under-linux.html
+Bug-Debian: https://bugs.debian.org/782038
+
+Prevents a lot of pointless hanging at boot on some devices.
+---
+[bwh: An RPMB is unlikely to be useful on any platform supported by a Debian
+kernel, so I think it's best to hide them for now. Once we are confident
+that userland will ignore them or the kernel does a better job of avoiding
+hanging reads, we can drop this patch.]
+
+ drivers/mmc/card/block.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/mmc/card/block.c
++++ b/drivers/mmc/card/block.c
+@@ -2258,7 +2258,7 @@ static int mmc_blk_alloc_parts(struct mm
+ return 0;
+
+ for (idx = 0; idx < card->nr_parts; idx++) {
+- if (card->part[idx].size) {
++ if (card->part[idx].size && !(card->part[idx].area_type & MMC_BLK_DATA_AREA_RPMB)) {
+ ret = mmc_blk_alloc_part(card, md,
+ card->part[idx].part_cfg,
+ card->part[idx].size >> 9,
Copied: dists/wheezy-backports/linux/debian/patches/debian/procfs-avoid-abi-change-in-3.16.7-ckt8.patch (from r22492, dists/sid/linux/debian/patches/debian/procfs-avoid-abi-change-in-3.16.7-ckt8.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/debian/procfs-avoid-abi-change-in-3.16.7-ckt8.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/debian/procfs-avoid-abi-change-in-3.16.7-ckt8.patch)
@@ -0,0 +1,18 @@
+From: Ben Hutchings <ben at decadent.org.uk>
+Date: Tue, 07 Apr 2015 00:20:38 +0100
+Subject: procfs: Avoid ABI change in 3.16.7-ckt8
+
+genksyms is perturbed by removing this #include even though none of
+its definitions are needed by exported functions...
+
+---
+--- a/fs/proc/generic.c
++++ b/fs/proc/generic.c
+@@ -19,6 +19,7 @@
+ #include <linux/mount.h>
+ #include <linux/init.h>
+ #include <linux/idr.h>
++#include <linux/namei.h>
+ #include <linux/bitops.h>
+ #include <linux/spinlock.h>
+ #include <linux/completion.h>
Copied: dists/wheezy-backports/linux/debian/patches/debian/revert-quota-store-maximum-space-limit-in-bytes.patch (from r22492, dists/sid/linux/debian/patches/debian/revert-quota-store-maximum-space-limit-in-bytes.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/debian/revert-quota-store-maximum-space-limit-in-bytes.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/debian/revert-quota-store-maximum-space-limit-in-bytes.patch)
@@ -0,0 +1,107 @@
+From: Ben Hutchings <ben at decadent.org.uk>
+Date: Sun, 05 Apr 2015 17:20:47 +0100
+Subject: Revert "quota: Store maximum space limit in bytes"
+Forwarded: not-needed
+
+This reverts commit 075bc52630579feccc805b9baeaa26a700ca8bad, based
+on commit b10a08194c2b615955dfab2300331a90ae9344c7 upstream. It makes
+a module ABI change and doesn't seem worth the trouble. We can
+probably fix the issue later in a somewhat uglier way without the ABI
+change.
+---
+--- a/fs/ocfs2/quota_local.c
++++ b/fs/ocfs2/quota_local.c
+@@ -700,8 +700,8 @@ static int ocfs2_local_read_info(struct
+ /* We don't need the lock and we have to acquire quota file locks
+ * which will later depend on this lock */
+ mutex_unlock(&sb_dqopt(sb)->dqio_mutex);
+- info->dqi_max_spc_limit = 0x7fffffffffffffffLL;
+- info->dqi_max_ino_limit = 0x7fffffffffffffffLL;
++ info->dqi_maxblimit = 0x7fffffffffffffffLL;
++ info->dqi_maxilimit = 0x7fffffffffffffffLL;
+ oinfo = kmalloc(sizeof(struct ocfs2_mem_dqinfo), GFP_NOFS);
+ if (!oinfo) {
+ mlog(ML_ERROR, "failed to allocate memory for ocfs2 quota"
+--- a/fs/quota/dquot.c
++++ b/fs/quota/dquot.c
+@@ -2396,6 +2396,16 @@ out:
+ }
+ EXPORT_SYMBOL(dquot_quota_on_mount);
+
++static inline qsize_t qbtos(qsize_t blocks)
++{
++ return blocks << QIF_DQBLKSIZE_BITS;
++}
++
++static inline qsize_t stoqb(qsize_t space)
++{
++ return (space + QIF_DQBLKSIZE - 1) >> QIF_DQBLKSIZE_BITS;
++}
++
+ /* Generic routine for getting common part of quota structure */
+ static void do_get_dqblk(struct dquot *dquot, struct qc_dqblk *di)
+ {
+@@ -2445,13 +2455,13 @@ static int do_set_dqblk(struct dquot *dq
+ return -EINVAL;
+
+ if (((di->d_fieldmask & QC_SPC_SOFT) &&
+- di->d_spc_softlimit > dqi->dqi_max_spc_limit) ||
++ stoqb(di->d_spc_softlimit) > dqi->dqi_maxblimit) ||
+ ((di->d_fieldmask & QC_SPC_HARD) &&
+- di->d_spc_hardlimit > dqi->dqi_max_spc_limit) ||
++ stoqb(di->d_spc_hardlimit) > dqi->dqi_maxblimit) ||
+ ((di->d_fieldmask & QC_INO_SOFT) &&
+- (di->d_ino_softlimit > dqi->dqi_max_ino_limit)) ||
++ (di->d_ino_softlimit > dqi->dqi_maxilimit)) ||
+ ((di->d_fieldmask & QC_INO_HARD) &&
+- (di->d_ino_hardlimit > dqi->dqi_max_ino_limit)))
++ (di->d_ino_hardlimit > dqi->dqi_maxilimit)))
+ return -ERANGE;
+
+ spin_lock(&dq_data_lock);
+--- a/fs/quota/quota_v1.c
++++ b/fs/quota/quota_v1.c
+@@ -169,8 +169,8 @@ static int v1_read_file_info(struct supe
+ }
+ ret = 0;
+ /* limits are stored as unsigned 32-bit data */
+- dqopt->info[type].dqi_max_spc_limit = 0xffffffffULL << QUOTABLOCK_BITS;
+- dqopt->info[type].dqi_max_ino_limit = 0xffffffff;
++ dqopt->info[type].dqi_maxblimit = 0xffffffff;
++ dqopt->info[type].dqi_maxilimit = 0xffffffff;
+ dqopt->info[type].dqi_igrace =
+ dqblk.dqb_itime ? dqblk.dqb_itime : MAX_IQ_TIME;
+ dqopt->info[type].dqi_bgrace =
+--- a/fs/quota/quota_v2.c
++++ b/fs/quota/quota_v2.c
+@@ -117,12 +117,12 @@ static int v2_read_file_info(struct supe
+ qinfo = info->dqi_priv;
+ if (version == 0) {
+ /* limits are stored as unsigned 32-bit data */
+- info->dqi_max_spc_limit = 0xffffffffULL << QUOTABLOCK_BITS;
+- info->dqi_max_ino_limit = 0xffffffff;
++ info->dqi_maxblimit = 0xffffffff;
++ info->dqi_maxilimit = 0xffffffff;
+ } else {
+- /* used space is stored as unsigned 64-bit value in bytes */
+- info->dqi_max_spc_limit = 0xffffffffffffffffULL; /* 2^64-1 */
+- info->dqi_max_ino_limit = 0xffffffffffffffffULL;
++ /* used space is stored as unsigned 64-bit value */
++ info->dqi_maxblimit = 0xffffffffffffffffULL; /* 2^64-1 */
++ info->dqi_maxilimit = 0xffffffffffffffffULL;
+ }
+ info->dqi_bgrace = le32_to_cpu(dinfo.dqi_bgrace);
+ info->dqi_igrace = le32_to_cpu(dinfo.dqi_igrace);
+--- a/include/linux/quota.h
++++ b/include/linux/quota.h
+@@ -211,8 +211,8 @@ struct mem_dqinfo {
+ unsigned long dqi_flags;
+ unsigned int dqi_bgrace;
+ unsigned int dqi_igrace;
+- qsize_t dqi_max_spc_limit;
+- qsize_t dqi_max_ino_limit;
++ qsize_t dqi_maxblimit;
++ qsize_t dqi_maxilimit;
+ void *dqi_priv;
+ };
+
Copied: dists/wheezy-backports/linux/debian/patches/debian/usb-avoid-abi-change-in-3.16.7-ckt8.patch (from r22492, dists/sid/linux/debian/patches/debian/usb-avoid-abi-change-in-3.16.7-ckt8.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/debian/usb-avoid-abi-change-in-3.16.7-ckt8.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/debian/usb-avoid-abi-change-in-3.16.7-ckt8.patch)
@@ -0,0 +1,21 @@
+From: Ben Hutchings <ben at decadent.org.uk>
+Date: Mon, 06 Apr 2015 17:51:50 +0100
+Subject: USB: Avoid ABI change in 3.16.7-ckt8
+Forwarded: not-needed
+
+Hide the added bitfield usb_hcd::cant_recv_wakeups from genksyms.
+---
+--- a/include/linux/usb/hcd.h
++++ b/include/linux/usb/hcd.h
+@@ -144,8 +144,11 @@ struct usb_hcd {
+ unsigned has_tt:1; /* Integrated TT in root hub */
+ unsigned amd_resume_bug:1; /* AMD remote wakeup quirk */
+ unsigned can_do_streams:1; /* HC supports streams */
++#ifndef __GENKSYMS__
+ unsigned cant_recv_wakeups:1;
+ /* wakeup requests from downstream aren't received */
++ /* 21 bits spare */
++#endif
+
+ unsigned int irq; /* irq allocated */
+ void __iomem *regs; /* device memory/io */
Copied: dists/wheezy-backports/linux/debian/patches/features/all/fbcon-Change-fbcon_init-from-module_init-to-fs_initc.patch (from r22492, dists/sid/linux/debian/patches/features/all/fbcon-Change-fbcon_init-from-module_init-to-fs_initc.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/features/all/fbcon-Change-fbcon_init-from-module_init-to-fs_initc.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/features/all/fbcon-Change-fbcon_init-from-module_init-to-fs_initc.patch)
@@ -0,0 +1,35 @@
+From ba168a3c7ff6df2e346959445190484b8331eb3d Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede at redhat.com>
+Date: Fri, 14 Nov 2014 13:26:54 +0100
+Subject: [PATCH] fbcon: Change fbcon_init from module_init to fs_initcall
+Origin: https://git.kernel.org/linus/ba168a3c7ff6df2e346959445190484b8331eb3d
+
+Various fb drivers register themselves before module_init so as to have a
+console as early as possible, this is of little use if fbcon does not
+initialize early too.
+
+Fbcon cannot initialize earlier then fs_initcall, because then the creation
+of /sys/class/graphics/fbcon will fail.
+
+Signed-off-by: Hans de Goede <hdegoede at redhat.com>
+Signed-off-by: Tomi Valkeinen <tomi.valkeinen at ti.com>
+---
+ drivers/video/console/fbcon.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c
+index eb976ee..ea43724 100644
+--- a/drivers/video/console/fbcon.c
++++ b/drivers/video/console/fbcon.c
+@@ -3624,7 +3624,7 @@ static int __init fb_console_init(void)
+ return 0;
+ }
+
+-module_init(fb_console_init);
++fs_initcall(fb_console_init);
+
+ #ifdef MODULE
+
+--
+2.1.4
+
Copied: dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun4i-Add-AXP209-support-to-various-boards.patch (from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun4i-Add-AXP209-support-to-various-boards.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun4i-Add-AXP209-support-to-various-boards.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun4i-Add-AXP209-support-to-various-boards.patch)
@@ -0,0 +1,209 @@
+From 04cfc848b5c74c7fe0f3b75c7e977c7311c7e64d Mon Sep 17 00:00:00 2001
+From: Carlo Caione <carlo at caione.org>
+Date: Mon, 30 Jun 2014 23:57:52 +0200
+Subject: [PATCH 1/7] ARM: dts: sun4i: Add AXP209 support to various boards
+Origin: https://git.kernel.org/linus/e288f1bac490791e7564474b89b7c48ee537b6a7
+
+At a node for the axp209, and where necessary the i2c controller to the dts
+for various boards. Note the axp209 regulators are omitted as we don't have
+any use for them yet, and on some boards were not sure how exactly they are
+wired up.
+
+Adding support for just the axp209 without the regulators is still useful, as
+it will give us power-button and poweroff support.
+
+Signed-off-by: Carlo Caione <carlo at caione.org>
+[hdegoede at redhat.com: Drop the regulator bits for now]
+Signed-off-by: Hans de Goede <hdegoede at redhat.com>
+Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
+
+---
+ arch/arm/boot/dts/sun4i-a10-a1000.dts | 9 +++++++++
+ arch/arm/boot/dts/sun4i-a10-cubieboard.dts | 9 +++++++++
+ arch/arm/boot/dts/sun4i-a10-hackberry.dts | 15 +++++++++++++++
+ arch/arm/boot/dts/sun4i-a10-inet97fv2.dts | 21 +++++++++++++++------
+ arch/arm/boot/dts/sun4i-a10-mini-xplus.dts | 15 +++++++++++++++
+ arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts | 15 +++++++++++++++
+ arch/arm/boot/dts/sun4i-a10-pcduino.dts | 9 +++++++++
+ 7 files changed, 87 insertions(+), 6 deletions(-)
+
+diff --git a/arch/arm/boot/dts/sun4i-a10-a1000.dts b/arch/arm/boot/dts/sun4i-a10-a1000.dts
+index 0b97c07..55d9510 100644
+--- a/arch/arm/boot/dts/sun4i-a10-a1000.dts
++++ b/arch/arm/boot/dts/sun4i-a10-a1000.dts
+@@ -98,6 +98,15 @@
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c0_pins_a>;
+ status = "okay";
++
++ axp209: pmic at 34 {
++ compatible = "x-powers,axp209";
++ reg = <0x34>;
++ interrupts = <0>;
++
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
+ };
+ };
+
+diff --git a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
+index c200eac..539b693 100644
+--- a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
++++ b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
+@@ -90,6 +90,15 @@
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c0_pins_a>;
+ status = "okay";
++
++ axp209: pmic at 34 {
++ compatible = "x-powers,axp209";
++ reg = <0x34>;
++ interrupts = <0>;
++
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
+ };
+
+ i2c1: i2c at 01c2b000 {
+diff --git a/arch/arm/boot/dts/sun4i-a10-hackberry.dts b/arch/arm/boot/dts/sun4i-a10-hackberry.dts
+index 547fadc..21df4e3 100644
+--- a/arch/arm/boot/dts/sun4i-a10-hackberry.dts
++++ b/arch/arm/boot/dts/sun4i-a10-hackberry.dts
+@@ -92,6 +92,21 @@
+ pinctrl-0 = <&uart0_pins_a>;
+ status = "okay";
+ };
++
++ i2c0: i2c at 01c2ac00 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c0_pins_a>;
++ status = "okay";
++
++ axp209: pmic at 34 {
++ compatible = "x-powers,axp209";
++ reg = <0x34>;
++ interrupts = <0>;
++
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
++ };
+ };
+
+ reg_emac_3v3: emac-3v3 {
+diff --git a/arch/arm/boot/dts/sun4i-a10-inet97fv2.dts b/arch/arm/boot/dts/sun4i-a10-inet97fv2.dts
+index f13723e..6b0c378 100644
+--- a/arch/arm/boot/dts/sun4i-a10-inet97fv2.dts
++++ b/arch/arm/boot/dts/sun4i-a10-inet97fv2.dts
+@@ -40,12 +40,6 @@
+ status = "okay";
+ };
+
+- i2c0: i2c at 01c2ac00 {
+- pinctrl-names = "default";
+- pinctrl-0 = <&i2c0_pins_a>;
+- status = "okay";
+- };
+-
+ usbphy: phy at 01c13400 {
+ usb1_vbus-supply = <®_usb1_vbus>;
+ usb2_vbus-supply = <®_usb2_vbus>;
+@@ -67,6 +61,21 @@
+ ohci1: usb at 01c1c400 {
+ status = "okay";
+ };
++
++ i2c0: i2c at 01c2ac00 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c0_pins_a>;
++ status = "okay";
++
++ axp209: pmic at 34 {
++ compatible = "x-powers,axp209";
++ reg = <0x34>;
++ interrupts = <0>;
++
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
++ };
+ };
+
+ reg_usb1_vbus: usb1-vbus {
+diff --git a/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts b/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts
+index c01cea5..387770d 100644
+--- a/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts
++++ b/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts
+@@ -57,6 +57,21 @@
+ pinctrl-0 = <&uart0_pins_a>;
+ status = "okay";
+ };
++
++ i2c0: i2c at 01c2ac00 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c0_pins_a>;
++ status = "okay";
++
++ axp209: pmic at 34 {
++ compatible = "x-powers,axp209";
++ reg = <0x34>;
++ interrupts = <0>;
++
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
++ };
+ };
+
+ reg_usb1_vbus: usb1-vbus {
+diff --git a/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts b/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts
+index d46a7db..d046d56 100644
+--- a/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts
++++ b/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts
+@@ -91,6 +91,21 @@
+ pinctrl-0 = <&uart0_pins_a>;
+ status = "okay";
+ };
++
++ i2c0: i2c at 01c2ac00 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c0_pins_a>;
++ status = "okay";
++
++ axp209: pmic at 34 {
++ compatible = "x-powers,axp209";
++ reg = <0x34>;
++ interrupts = <0>;
++
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
++ };
+ };
+
+ leds {
+diff --git a/arch/arm/boot/dts/sun4i-a10-pcduino.dts b/arch/arm/boot/dts/sun4i-a10-pcduino.dts
+index fb03bcc..6675bcd 100644
+--- a/arch/arm/boot/dts/sun4i-a10-pcduino.dts
++++ b/arch/arm/boot/dts/sun4i-a10-pcduino.dts
+@@ -76,6 +76,15 @@
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c0_pins_a>;
+ status = "okay";
++
++ axp209: pmic at 34 {
++ compatible = "x-powers,axp209";
++ reg = <0x34>;
++ interrupts = <0>;
++
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
+ };
+ };
+
+--
+2.1.4
+
Copied: dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun4i-cubieboard-add-axp209-regulator-nodes.patch (from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun4i-cubieboard-add-axp209-regulator-nodes.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun4i-cubieboard-add-axp209-regulator-nodes.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun4i-cubieboard-add-axp209-regulator-nodes.patch)
@@ -0,0 +1,81 @@
+From 84d678e330f80376456c764fe1f9c27d9b79610c Mon Sep 17 00:00:00 2001
+From: Chen-Yu Tsai <wens at csie.org>
+Date: Mon, 12 Jan 2015 12:34:09 +0800
+Subject: [PATCH 6/7] ARM: dts: sun4i: cubieboard: add axp209 regulator nodes
+Origin: https://git.kernel.org/linus/ce124f7a18c5ebc9dc93aaec15aaef779c8708ae
+
+This patch adds the regulator nodes for the axp209 by including
+the axp209 dtsi. As the inputs of these regulators are from the
+axp209's PS output, which is basically just a mux over the 2
+inputs, it is considered to be unregulated. Thus we do not provide
+input supply properties for them.
+
+The regulator names and constraints are based on the board
+schematics and the SoC datasheet.
+
+DCDC2 is used as the cpu power supply. This patch also references
+it from the cpu node.
+
+Also get rid of axp209 properties already set in axp209.dtsi.
+
+Signed-off-by: Chen-Yu Tsai <wens at csie.org>
+Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
+---
+ arch/arm/boot/dts/sun4i-a10-cubieboard.dts | 35 ++++++++++++++++++++++++++----
+ 1 file changed, 31 insertions(+), 4 deletions(-)
+
+diff --git a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
+index 539b693..5543b76 100644
+--- a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
++++ b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
+@@ -92,12 +92,8 @@
+ status = "okay";
+
+ axp209: pmic at 34 {
+- compatible = "x-powers,axp209";
+ reg = <0x34>;
+ interrupts = <0>;
+-
+- interrupt-controller;
+- #interrupt-cells = <1>;
+ };
+ };
+
+@@ -137,3 +133,34 @@
+ status = "okay";
+ };
+ };
++
++#include "axp209.dtsi"
++
++&cpu0 {
++ cpu-supply = <®_dcdc2>;
++};
++
++®_dcdc2 {
++ regulator-always-on;
++ regulator-min-microvolt = <1000000>;
++ regulator-max-microvolt = <1450000>;
++ regulator-name = "vdd-cpu";
++};
++
++®_dcdc3 {
++ regulator-always-on;
++ regulator-min-microvolt = <1000000>;
++ regulator-max-microvolt = <1400000>;
++ regulator-name = "vdd-int-dll";
++};
++
++®_ldo1 {
++ regulator-name = "vdd-rtc";
++};
++
++®_ldo2 {
++ regulator-always-on;
++ regulator-min-microvolt = <3000000>;
++ regulator-max-microvolt = <3000000>;
++ regulator-name = "avcc";
++};
+--
+2.1.4
+
Copied: dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun5i-Enable-axp209-support-on-A13-OLinuxIno.patch (from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun5i-Enable-axp209-support-on-A13-OLinuxIno.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun5i-Enable-axp209-support-on-A13-OLinuxIno.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun5i-Enable-axp209-support-on-A13-OLinuxIno.patch)
@@ -0,0 +1,37 @@
+From 3e4ab009b2f03bf5153320a52c0c18e0f631a7fa Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede at redhat.com>
+Date: Sun, 25 Jan 2015 15:36:08 +0100
+Subject: [PATCH 7/7] ARM: dts: sun5i: Enable axp209 support on A13-OLinuxIno
+Origin: https://git.kernel.org/linus/c121f45e6291e00c71b919ce4a439e0b6e829668
+
+The (non micro) A13-OLinuxIno has an axp203 pmic, enable support for this.
+
+Signed-off-by: Hans de Goede <hdegoede at redhat.com>
+Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
+---
+ arch/arm/boot/dts/sun5i-a13-olinuxino.dts | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/arch/arm/boot/dts/sun5i-a13-olinuxino.dts b/arch/arm/boot/dts/sun5i-a13-olinuxino.dts
+index 429994e..59261aa 100644
+--- a/arch/arm/boot/dts/sun5i-a13-olinuxino.dts
++++ b/arch/arm/boot/dts/sun5i-a13-olinuxino.dts
+@@ -76,6 +76,15 @@
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c0_pins_a>;
+ status = "okay";
++
++ axp209: pmic at 34 {
++ compatible = "x-powers,axp209";
++ reg = <0x34>;
++ interrupts = <0>;
++
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
+ };
+
+ i2c1: i2c at 01c2b000 {
+--
+2.1.4
+
Copied: dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun7i-Add-AXP209-support-to-various-boards.patch (from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-Add-AXP209-support-to-various-boards.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun7i-Add-AXP209-support-to-various-boards.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-Add-AXP209-support-to-various-boards.patch)
@@ -0,0 +1,119 @@
+From e0158776b23fba49749b776e4bb813572ea911f4 Mon Sep 17 00:00:00 2001
+From: Carlo Caione <carlo at caione.org>
+Date: Mon, 30 Jun 2014 23:57:53 +0200
+Subject: [PATCH 2/7] ARM: dts: sun7i: Add AXP209 support to various boards
+Origin: https://git.kernel.org/linus/ec0c933d972ba69f06251f7d215723f61535fc16
+
+At a node for the axp209, and where necessary the i2c controller to the dts
+for various boards. Note the axp209 regulators are omitted as we don't have
+any use for them yet, and on some boards were not sure how exactly they are
+wired up.
+
+Adding support for just the axp209 without the regulators is still useful, as
+it will give us power-button and poweroff support.
+
+Signed-off-by: Carlo Caione <carlo at caione.org>
+[hdegoede at redhat.com: Drop the regulator bits for now]
+Signed-off-by: Hans de Goede <hdegoede at redhat.com>
+Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
+
+---
+ arch/arm/boot/dts/sun7i-a20-cubieboard2.dts | 10 ++++++++++
+ arch/arm/boot/dts/sun7i-a20-cubietruck.dts | 10 ++++++++++
+ arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts | 16 ++++++++++++++++
+ arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts | 10 ++++++++++
+ 4 files changed, 46 insertions(+)
+
+diff --git a/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts b/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
+index a5ad945..d4648cf 100644
+--- a/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
++++ b/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
+@@ -76,6 +76,16 @@
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c0_pins_a>;
+ status = "okay";
++
++ axp209: pmic at 34 {
++ compatible = "x-powers,axp209";
++ reg = <0x34>;
++ interrupt-parent = <&nmi_intc>;
++ interrupts = <0 8>;
++
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
+ };
+
+ i2c1: i2c at 01c2b000 {
+diff --git a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
+index b87fea9..96aee60 100644
+--- a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
++++ b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
+@@ -110,6 +110,16 @@
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c0_pins_a>;
+ status = "okay";
++
++ axp209: pmic at 34 {
++ compatible = "x-powers,axp209";
++ reg = <0x34>;
++ interrupt-parent = <&nmi_intc>;
++ interrupts = <0 8>;
++
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
+ };
+
+ i2c1: i2c at 01c2b000 {
+diff --git a/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts b/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts
+index b77308e..cba1567 100644
+--- a/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts
++++ b/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts
+@@ -100,6 +100,22 @@
+ status = "okay";
+ };
+
++ i2c0: i2c at 01c2ac00 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c0_pins_a>;
++ status = "okay";
++
++ axp209: pmic at 34 {
++ compatible = "x-powers,axp209";
++ reg = <0x34>;
++ interrupt-parent = <&nmi_intc>;
++ interrupts = <0 8>;
++
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
++ };
++
+ gmac: ethernet at 01c50000 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&gmac_pins_mii_a>;
+diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts
+index b759630..9d669cdf 100644
+--- a/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts
++++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts
+@@ -122,6 +122,16 @@
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c0_pins_a>;
+ status = "okay";
++
++ axp209: pmic at 34 {
++ compatible = "x-powers,axp209";
++ reg = <0x34>;
++ interrupt-parent = <&nmi_intc>;
++ interrupts = <0 8>;
++
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
+ };
+
+ i2c1: i2c at 01c2b000 {
+--
+2.1.4
+
Copied: dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun7i-cubieboard2-add-axp209-regulator-nodes.patch (from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-cubieboard2-add-axp209-regulator-nodes.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun7i-cubieboard2-add-axp209-regulator-nodes.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-cubieboard2-add-axp209-regulator-nodes.patch)
@@ -0,0 +1,85 @@
+From 078a04de9f3a4ad1021ec647040b87381c9e5776 Mon Sep 17 00:00:00 2001
+From: Chen-Yu Tsai <wens at csie.org>
+Date: Mon, 12 Jan 2015 12:34:04 +0800
+Subject: [PATCH 4/7] ARM: dts: sun7i: cubieboard2: add axp209 regulator nodes
+Origin: https://git.kernel.org/linus/ae265c801ffdbd58e4c7a83efc8dc08932de1f74
+
+This patch adds the regulator nodes for the axp209 by including
+the axp209 dtsi. As the inputs of these regulators are from the
+axp209's PS output, which is basically just a mux over the 2
+inputs, it is considered to be unregulated. Thus we do not provide
+input supply properties for them.
+
+The regulator names and constraints are based on the board
+schematics and the SoC datasheet.
+
+DCDC2 is used as the cpu power supply. This patch also references
+it from the cpu node.
+
+Also get rid of axp209 properties already set in axp209.dtsi.
+
+Signed-off-by: Chen-Yu Tsai <wens at csie.org>
+Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
+
+Conflicts:
+ arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
+---
+ arch/arm/boot/dts/sun7i-a20-cubieboard2.dts | 35 +++++++++++++++++++++++++----
+ 1 file changed, 31 insertions(+), 4 deletions(-)
+
+diff --git a/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts b/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
+index d4648cf..7ce74a1 100644
+--- a/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
++++ b/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
+@@ -78,13 +78,9 @@
+ status = "okay";
+
+ axp209: pmic at 34 {
+- compatible = "x-powers,axp209";
+ reg = <0x34>;
+ interrupt-parent = <&nmi_intc>;
+ interrupts = <0 8>;
+-
+- interrupt-controller;
+- #interrupt-cells = <1>;
+ };
+ };
+
+@@ -135,3 +131,34 @@
+ status = "okay";
+ };
+ };
++
++#include "axp209.dtsi"
++
++&cpu0 {
++ cpu-supply = <®_dcdc2>;
++};
++
++®_dcdc2 {
++ regulator-always-on;
++ regulator-min-microvolt = <1000000>;
++ regulator-max-microvolt = <1450000>;
++ regulator-name = "vdd-cpu";
++};
++
++®_dcdc3 {
++ regulator-always-on;
++ regulator-min-microvolt = <1000000>;
++ regulator-max-microvolt = <1400000>;
++ regulator-name = "vdd-int-dll";
++};
++
++®_ldo1 {
++ regulator-name = "vdd-rtc";
++};
++
++®_ldo2 {
++ regulator-always-on;
++ regulator-min-microvolt = <3000000>;
++ regulator-max-microvolt = <3000000>;
++ regulator-name = "avcc";
++};
+--
+2.1.4
+
Copied: dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun7i-cubietruck-add-axp209-regulator-nodes.patch (from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-cubietruck-add-axp209-regulator-nodes.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sun7i-cubietruck-add-axp209-regulator-nodes.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-cubietruck-add-axp209-regulator-nodes.patch)
@@ -0,0 +1,85 @@
+From 319a5005396069f7c1829cafccbbe918166ec51a Mon Sep 17 00:00:00 2001
+From: Chen-Yu Tsai <wens at csie.org>
+Date: Mon, 12 Jan 2015 12:34:05 +0800
+Subject: [PATCH 5/7] ARM: dts: sun7i: cubietruck: add axp209 regulator nodes
+Origin: https://git.kernel.org/linus/0d4e29343ce6317cf5cf073346c3e66ad82d61a1
+
+This patch adds the regulator nodes for the axp209 by including
+the axp209 dtsi. As the inputs of these regulators are from the
+axp209's PS output, which is basically just a mux over the 2
+inputs, it is considered to be unregulated. Thus we do not provide
+input supply properties for them.
+
+The regulator names and constraints are based on the board
+schematics and the SoC datasheet.
+
+DCDC2 is used as the cpu power supply. This patch also references
+it from the cpu node.
+
+Also get rid of axp209 properties already set in axp209.dtsi.
+
+Signed-off-by: Chen-Yu Tsai <wens at csie.org>
+Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
+
+Conflicts:
+ arch/arm/boot/dts/sun7i-a20-cubietruck.dts
+---
+ arch/arm/boot/dts/sun7i-a20-cubietruck.dts | 35 ++++++++++++++++++++++++++----
+ 1 file changed, 31 insertions(+), 4 deletions(-)
+
+diff --git a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
+index 96aee60..eb93cdd 100644
+--- a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
++++ b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
+@@ -112,13 +112,9 @@
+ status = "okay";
+
+ axp209: pmic at 34 {
+- compatible = "x-powers,axp209";
+ reg = <0x34>;
+ interrupt-parent = <&nmi_intc>;
+ interrupts = <0 8>;
+-
+- interrupt-controller;
+- #interrupt-cells = <1>;
+ };
+ };
+
+@@ -198,3 +194,34 @@
+ gpio = <&pio 7 9 0>;
+ };
+ };
++
++#include "axp209.dtsi"
++
++&cpu0 {
++ cpu-supply = <®_dcdc2>;
++};
++
++®_dcdc2 {
++ regulator-always-on;
++ regulator-min-microvolt = <1000000>;
++ regulator-max-microvolt = <1450000>;
++ regulator-name = "vdd-cpu";
++};
++
++®_dcdc3 {
++ regulator-always-on;
++ regulator-min-microvolt = <1000000>;
++ regulator-max-microvolt = <1400000>;
++ regulator-name = "vdd-int-dll";
++};
++
++®_ldo1 {
++ regulator-name = "vdd-rtc";
++};
++
++®_ldo2 {
++ regulator-always-on;
++ regulator-min-microvolt = <3000000>;
++ regulator-max-microvolt = <3000000>;
++ regulator-name = "avcc";
++};
+--
+2.1.4
+
Copied: dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sunxi-Add-dtsi-for-AXP209-PMIC.patch (from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sunxi-Add-dtsi-for-AXP209-PMIC.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sunxi-Add-dtsi-for-AXP209-PMIC.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sunxi-Add-dtsi-for-AXP209-PMIC.patch)
@@ -0,0 +1,123 @@
+From f3fb8c8611d470e40cb3460ede6f339e810d6f19 Mon Sep 17 00:00:00 2001
+From: Chen-Yu Tsai <wens at csie.org>
+Date: Mon, 12 Jan 2015 12:34:02 +0800
+Subject: [PATCH 3/7] ARM: dts: sunxi: Add dtsi for AXP209 PMIC
+Origin: https://git.kernel.org/linus/ddfd0232ede34e673fe338d1e5a7ec7aa022aa99
+
+The AXP209 PMIC is used with some Allwinner SoCs. This patch adds
+a dtsi file listing all the regulator nodes. The regulators are
+initialized based on their device node names.
+
+Signed-off-by: Chen-Yu Tsai <wens at csie.org>
+Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
+---
+ arch/arm/boot/dts/axp209.dtsi | 97 +++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 97 insertions(+)
+ create mode 100644 arch/arm/boot/dts/axp209.dtsi
+
+diff --git a/arch/arm/boot/dts/axp209.dtsi b/arch/arm/boot/dts/axp209.dtsi
+new file mode 100644
+index 0000000..c20cf53
+--- /dev/null
++++ b/arch/arm/boot/dts/axp209.dtsi
+@@ -0,0 +1,97 @@
++/*
++ * Copyright 2015 Chen-Yu Tsai
++ *
++ * Chen-Yu Tsai <wens at csie.org>
++ *
++ * This file is dual-licensed: you can use it either under the terms
++ * of the GPL or the X11 license, at your option. Note that this dual
++ * licensing only applies to this file, and not this project as a
++ * whole.
++ *
++ * a) This file is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License as
++ * published by the Free Software Foundation; either version 2 of the
++ * License, or (at your option) any later version.
++ *
++ * This file is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public
++ * License along with this file; if not, write to the Free
++ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
++ * MA 02110-1301 USA
++ *
++ * Or, alternatively,
++ *
++ * b) Permission is hereby granted, free of charge, to any person
++ * obtaining a copy of this software and associated documentation
++ * files (the "Software"), to deal in the Software without
++ * restriction, including without limitation the rights to use,
++ * copy, modify, merge, publish, distribute, sublicense, and/or
++ * sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following
++ * conditions:
++ *
++ * The above copyright notice and this permission notice shall be
++ * included in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
++ * OTHER DEALINGS IN THE SOFTWARE.
++ */
++
++/*
++ * AXP202/209 Integrated Power Management Chip
++ * http://www.x-powers.com/product/AXP20X.php
++ * http://dl.linux-sunxi.org/AXP/AXP209%20Datasheet%20v1.0_cn.pdf
++ */
++
++&axp209 {
++ compatible = "x-powers,axp209";
++ interrupt-controller;
++ #interrupt-cells = <1>;
++
++ regulators {
++ /* Default work frequency for buck regulators */
++ x-powers,dcdc-freq = <1500>;
++
++ reg_dcdc2: dcdc2 {
++ regulator-name = "dcdc2";
++ };
++
++ reg_dcdc3: dcdc3 {
++ regulator-name = "dcdc3";
++ };
++
++ reg_ldo1: ldo1 {
++ /* LDO1 is a fixed output regulator */
++ regulator-always-on;
++ regulator-min-microvolt = <1300000>;
++ regulator-max-microvolt = <1300000>;
++ regulator-name = "ldo1";
++ };
++
++ reg_ldo2: ldo2 {
++ regulator-name = "ldo2";
++ };
++
++ reg_ldo3: ldo3 {
++ regulator-name = "ldo3";
++ };
++
++ reg_ldo4: ldo4 {
++ regulator-name = "ldo4";
++ };
++
++ reg_ldo5: ldo5 {
++ regulator-name = "ldo5";
++ };
++ };
++};
+--
+2.1.4
+
Copied: dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sunxi-Fixup-after-backport-of-axp209-support.patch (from r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sunxi-Fixup-after-backport-of-axp209-support.patch)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ dists/wheezy-backports/linux/debian/patches/features/arm/ARM-dts-sunxi-Fixup-after-backport-of-axp209-support.patch Wed Apr 8 03:34:52 2015 (r22494, copy of r22492, dists/sid/linux/debian/patches/features/arm/ARM-dts-sunxi-Fixup-after-backport-of-axp209-support.patch)
@@ -0,0 +1,61 @@
+From 0737d5a36d9bbb22d9a156055116e710940be98b Mon Sep 17 00:00:00 2001
+From: Ian Campbell <ijc at debian.org>
+Date: Fri, 3 Apr 2015 10:26:04 +0100
+Subject: [PATCH] ARM: dts: sunxi: Fixup after backport of axp209 support
+Forwarded: not-needed
+
+By adding cpu0 label to cpu at 0.
+
+Upstream this was added by "ARM: dts: sun4i: Add cpu clock reference and
+operating points to dtsi" (and similar for sun5i, sun7i) which we have not
+backported.
+
+Signed-off-by: Ian Campbell <ijc at debian.org>
+---
+ arch/arm/boot/dts/sun4i-a10.dtsi | 2 +-
+ arch/arm/boot/dts/sun5i-a13.dtsi | 2 +-
+ arch/arm/boot/dts/sun7i-a20.dtsi | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi b/arch/arm/boot/dts/sun4i-a10.dtsi
+index eae8bfd..ad2ef45 100644
+--- a/arch/arm/boot/dts/sun4i-a10.dtsi
++++ b/arch/arm/boot/dts/sun4i-a10.dtsi
+@@ -70,7 +70,7 @@
+ cpus {
+ #address-cells = <1>;
+ #size-cells = <0>;
+- cpu at 0 {
++ cpu0: cpu at 0 {
+ device_type = "cpu";
+ compatible = "arm,cortex-a8";
+ reg = <0x0>;
+diff --git a/arch/arm/boot/dts/sun5i-a13.dtsi b/arch/arm/boot/dts/sun5i-a13.dtsi
+index a194c1e..23bfb8f 100644
+--- a/arch/arm/boot/dts/sun5i-a13.dtsi
++++ b/arch/arm/boot/dts/sun5i-a13.dtsi
+@@ -38,7 +38,7 @@
+ cpus {
+ #address-cells = <1>;
+ #size-cells = <0>;
+- cpu at 0 {
++ cpu0: cpu at 0 {
+ device_type = "cpu";
+ compatible = "arm,cortex-a8";
+ reg = <0x0>;
+diff --git a/arch/arm/boot/dts/sun7i-a20.dtsi b/arch/arm/boot/dts/sun7i-a20.dtsi
+index 7d47914..648051c 100644
+--- a/arch/arm/boot/dts/sun7i-a20.dtsi
++++ b/arch/arm/boot/dts/sun7i-a20.dtsi
+@@ -63,7 +63,7 @@
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+- cpu at 0 {
++ cpu0: cpu at 0 {
+ compatible = "arm,cortex-a7";
+ device_type = "cpu";
+ reg = <0>;
+--
+2.1.4
+
Modified: dists/wheezy-backports/linux/debian/patches/series
==============================================================================
--- dists/wheezy-backports/linux/debian/patches/series Wed Apr 8 03:31:04 2015 (r22493)
+++ dists/wheezy-backports/linux/debian/patches/series Wed Apr 8 03:34:52 2015 (r22494)
@@ -60,12 +60,13 @@
bugfix/arm64/arm64-removed-using-of-the-mask-attribute-in-the-dts.patch
bugfix/x86/acpi-video-run-_bcl-before-deciding-registering-back.patch
bugfix/x86/x86-hpet-force-enable-for-e6xx-based-systems.patch
-bugfix/x86/acpi-video-add-some-samsung-models-to-disable_native.patch
-bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-dell-xps15.patch
-bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-samsung-730u3e-740u3e.patch
bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-samsung-510r.patch
bugfix/x86/acpi-video-disable-native-backlight-on-samsung-series-9.patch
bugfix/x86/drm-i915-quietly-reject-attempts-to-create-non-pagealigned-stolen-objects.patch
+bugfix/arm/mvebu-do-not-register-custom-DMA-operations-when-coherency-is-disabled.patch
+bugfix/x86/x86-microcode-intel-guard-against-stack-overflow-in-.patch
+bugfix/x86/drm-i915-add-limited-color-range-readout-for-hdmi-dp.patch
+bugfix/x86/powercap-rapl-change-domain-detection-message.patch
# Arch features
features/mips/MIPS-Support-hard-limit-of-cpu-count-nr_cpu_ids.patch
@@ -127,6 +128,14 @@
features/arm/ARM-dts-sunxi-Update-simplefb-nodes-so-that-u-boot-c.patch
features/arm/ARM-dts-sun4i-Add-simplefb-node-with-de_fe0-de_be0-l.patch
features/arm/ARM-dts-sunxi-Add-simplefb-nodes-for-de_be0-lcd0-de_.patch
+features/arm/ARM-dts-sun4i-Add-AXP209-support-to-various-boards.patch
+features/arm/ARM-dts-sun7i-Add-AXP209-support-to-various-boards.patch
+features/arm/ARM-dts-sunxi-Add-dtsi-for-AXP209-PMIC.patch
+features/arm/ARM-dts-sun7i-cubieboard2-add-axp209-regulator-nodes.patch
+features/arm/ARM-dts-sun7i-cubietruck-add-axp209-regulator-nodes.patch
+features/arm/ARM-dts-sun4i-cubieboard-add-axp209-regulator-nodes.patch
+features/arm/ARM-dts-sun5i-Enable-axp209-support-on-A13-OLinuxIno.patch
+features/arm/ARM-dts-sunxi-Fixup-after-backport-of-axp209-support.patch
features/arm64/drivers-net-Add-APM-X-Gene-SoC-ethernet-driver-suppo.patch
features/arm64/drivers-net-NET_XGENE-should-depend-on-HAS_DMA.patch
features/arm64/net-xgene-Check-negative-return-value-of-xgene_enet_.patch
@@ -176,8 +185,15 @@
bugfix/all/xen-balloon-cancel-ballooning-if-adding-new-memory-f.patch
bugfix/all/xen-balloon-Don-t-continue-ballooning-when-BP_ECANCE.patch
bugfix/all/vfs-read-file_handle-only-once-in-handle_to_path.patch
-bugfix/all/aslr-fix-stack-randomization-on-64-bit-systems.patch
bugfix/all/keys-request_key-should-reget-expired-keys-rather-th.patch
+bugfix/all/ib-core-prevent-integer-overflow-in-ib_umem_get.patch
+bugfix/all/btrfs-make-xattr-replace-operations-atomic.patch
+bugfix/all/ext4-fix-zero_range-bug-hidden-by-flag-aliasing.patch
+bugfix/all/ext4-fix-accidental-flag-aliasing-in-ext4_map_blocks.patch
+bugfix/all/ext4-allocate-entire-range-in-zero-range.patch
+bugfix/all/ipv6-don-t-reduce-hop-limit-for-an-interface.patch
+bugfix/all/hid-thingm-fix-workqueue-race-on-remove.patch
+debian/emmc-don-t-initialize-partitions-on-rpmb-flagged-areas.patch
# memfd_create() & kdbus backport
features/all/kdbus/mm-allow-drivers-to-prevent-new-writable-mappings.patch
@@ -219,6 +235,7 @@
features/all/simplefb-Change-simplefb_init-from-module_init-to-fs.patch
features/all/simplefb-Fix-build-errors-when-CONFIG_COMMON_CLK-is-.patch
features/all/simplefb-Fix-build-failure-on-Sparc.patch
+features/all/fbcon-Change-fbcon_init-from-module_init-to-fs_initc.patch
# Update r8723au to 3.17
features/all/r8723au/0001-staging-rtl8723au-rtw_get_wps_ie23a-Remove-unused-de.patch
@@ -533,6 +550,16 @@
features/all/arcmsr/0018-arcmsr-simplify-of-updating-doneq_index-and-postq_in.patch
features/all/arcmsr/0019-arcmsr-simplify-ioctl-data-read-write.patch
+# Add FocalTech support to psmouse
+features/all/psmouse/input-i8042-also-set-the-firmware-id-for-muxed-ports.patch
+features/all/psmouse/input-psmouse-add-psmouse_matches_pnp_id-helper-func.patch
+features/all/psmouse/input-psmouse-add-support-for-detecting-focaltech-ps.patch
+features/all/psmouse/input-psmouse-support-for-the-focaltech-ps-2-protoco.patch
+features/all/psmouse/input-psmouse-remove-hardcoded-touchpad-size-from-th.patch
+features/all/psmouse/input-psmouse-ensure-that-focaltech-reports-consiste.patch
+features/all/psmouse/input-psmouse-disable-changing-resolution-rate-scale.patch
+features/all/psmouse/input-psmouse-disable-palm-detection-in-the-focaltec.patch
+
# Fix ABI changes
debian/of-fix-abi-changes.patch
debian/iovec-fix-abi-change-in-3.16.7-ckt1.patch
@@ -542,8 +569,11 @@
debian/pci-fix-abi-change-in-3.16.7-ckt3.patch
debian/vfs-avoid-abi-change-for-dentry-union-changes.patch
debian/userns-fix-abi-change-in-3.16.7-ckt4.patch
+debian/revert-quota-store-maximum-space-limit-in-bytes.patch
debian/revert-quota-switch-get_dqblk-and-set_dqblk-to-use-b.patch
debian/rmap-fix-abi-change-in-3.16.7-ckt5.patch
debian/perf-fix-abi-change-in-3.16.7-ckt6.patch
debian/mm-fix-pagecache_get_page-abi-change-in-3.16.7-ckt6.patch
debian/tcp-fix-abi-change-in-3.16.7-ckt7.patch
+debian/usb-avoid-abi-change-in-3.16.7-ckt8.patch
+debian/procfs-avoid-abi-change-in-3.16.7-ckt8.patch
More information about the Kernel-svn-changes
mailing list