[kernel] r20174 - in dists/trunk/linux: . debian debian/config debian/config/alpha debian/config/armel debian/config/armhf debian/config/hppa debian/config/i386 debian/config/ia64 debian/config/kernelarch-x86 debian/config/m68k debian/config/mips debian/config/powerpc debian/installer debian/installer/amd64/modules/amd64 debian/installer/modules debian/installer/powerpc/modules/powerpc-powerpc64 debian/installer/powerpcspe/modules debian/installer/ppc64 debian/installer/ppc64/modules debian/patches debian/patches/bugfix/all debian/patches/bugfix/arm debian/patches/features/all/rt debian/patches/features/arm

Ben Hutchings benh at alioth.debian.org
Sun Jun 2 16:44:22 UTC 2013


Author: benh
Date: Sun Jun  2 16:44:22 2013
New Revision: 20174

Log:
Merge changes from sid up to 3.9.4-1

Added:
   dists/trunk/linux/debian/config/armhf/config.armmp
      - copied unchanged from r20172, dists/sid/linux/debian/config/armhf/config.armmp
   dists/trunk/linux/debian/installer/powerpcspe/modules/powerpc
      - copied unchanged from r20172, dists/sid/linux/debian/installer/powerpcspe/modules/powerpc
   dists/trunk/linux/debian/installer/ppc64/modules/powerpc
      - copied unchanged from r20172, dists/sid/linux/debian/installer/ppc64/modules/powerpc
   dists/trunk/linux/debian/patches/bugfix/all/iscsi-target-fix-heap-buffer-overflow-on-error.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/bugfix/all/iscsi-target-fix-heap-buffer-overflow-on-error.patch
   dists/trunk/linux/debian/patches/bugfix/arm/i2c-imx-add-module_device_table.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/bugfix/arm/i2c-imx-add-module_device_table.patch
   dists/trunk/linux/debian/patches/bugfix/arm/imx-sgtl5000-probe-defer.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/bugfix/arm/imx-sgtl5000-probe-defer.patch
   dists/trunk/linux/debian/patches/bugfix/arm/mvneta-module-fix.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/bugfix/arm/mvneta-module-fix.patch
   dists/trunk/linux/debian/patches/features/all/rt/genpatch.py   (contents, props changed)
   dists/trunk/linux/debian/patches/features/arm/0001-ARM-mvebu-Add-thermal-support-to-Armada-XP-device-tr.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0001-ARM-mvebu-Add-thermal-support-to-Armada-XP-device-tr.patch
   dists/trunk/linux/debian/patches/features/arm/0001-thermal-Add-driver-for-Armada-370-XP-SoC-thermal-man.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0001-thermal-Add-driver-for-Armada-370-XP-SoC-thermal-man.patch
   dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-add-mx53-support.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-add-mx53-support.patch
   dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-add-post-handling-and-errata-fi.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-add-post-handling-and-errata-fi.patch
   dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-fix-a-potential-race-condition.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-fix-a-potential-race-condition.patch
   dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-prepare-driver-to-handle-more-t.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-prepare-driver-to-handle-more-t.patch
   dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-rename-file-struct-and-function.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-rename-file-struct-and-function.patch
   dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-unset-global-varibale-usbmisc-o.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-unset-global-varibale-usbmisc-o.patch
   dists/trunk/linux/debian/patches/features/arm/0001-usb-phy-nop-Add-some-parameters-to-platform-data.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-phy-nop-Add-some-parameters-to-platform-data.patch
   dists/trunk/linux/debian/patches/features/arm/0001-usb-phy-nop-Manage-PHY-clock.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-phy-nop-Manage-PHY-clock.patch
   dists/trunk/linux/debian/patches/features/arm/0001-usb-phy-nop-use-devm_kzalloc.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-phy-nop-use-devm_kzalloc.patch
   dists/trunk/linux/debian/patches/features/arm/0002-usb-phy-nop-Handle-power-supply-regulator-for-the-PH.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0002-usb-phy-nop-Handle-power-supply-regulator-for-the-PH.patch
   dists/trunk/linux/debian/patches/features/arm/0003-usb-phy-nop-Handle-RESET-for-the-PHY.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0003-usb-phy-nop-Handle-RESET-for-the-PHY.patch
   dists/trunk/linux/debian/patches/features/arm/0004-usb-phy-nop-use-new-PHY-API-to-register-PHY.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0004-usb-phy-nop-use-new-PHY-API-to-register-PHY.patch
   dists/trunk/linux/debian/patches/features/arm/0005-usb-phy-nop-Add-device-tree-support-and-binding-info.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0005-usb-phy-nop-Add-device-tree-support-and-binding-info.patch
   dists/trunk/linux/debian/patches/features/arm/0006-USB-phy-nop-Defer-probe-if-device-needs-VCC-RESET.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0006-USB-phy-nop-Defer-probe-if-device-needs-VCC-RESET.patch
   dists/trunk/linux/debian/patches/features/arm/0009-USB-EHCI-split-ehci-omap-out-to-a-separate-driver.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0009-USB-EHCI-split-ehci-omap-out-to-a-separate-driver.patch
   dists/trunk/linux/debian/patches/features/arm/0010-USB-EHCI-make-ehci-orion-a-separate-driver.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/0010-USB-EHCI-make-ehci-orion-a-separate-driver.patch
   dists/trunk/linux/debian/patches/features/arm/ARM-dts-imx-add-imx5x-usb-clock-DT-lookups.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/ARM-dts-imx-add-imx5x-usb-clock-DT-lookups.patch
   dists/trunk/linux/debian/patches/features/arm/ARM-dts-imx-add-imx5x-usbmisc-entries.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/ARM-dts-imx-add-imx5x-usbmisc-entries.patch
   dists/trunk/linux/debian/patches/features/arm/ARM-dts-imx-imx53-qsb.dts-enable-usbotg-and-usbh1.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/ARM-dts-imx-imx53-qsb.dts-enable-usbotg-and-usbh1.patch
   dists/trunk/linux/debian/patches/features/arm/ARM-dts-imx-use-usb-nop-xceiv-usbphy-entries-for-imx5x.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/ARM-dts-imx-use-usb-nop-xceiv-usbphy-entries-for-imx5x.patch
   dists/trunk/linux/debian/patches/features/arm/imx53-qsb-usb-power.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/imx53-qsb-usb-power.patch
   dists/trunk/linux/debian/patches/features/arm/usbmisc-imx-add-module_device_table.patch
      - copied unchanged from r20172, dists/sid/linux/debian/patches/features/arm/usbmisc-imx-add-module_device_table.patch
Replaced:
   dists/trunk/linux/debian/installer/powerpcspe/modules/powerpcspe
      - copied unchanged from r20172, dists/sid/linux/debian/installer/powerpcspe/modules/powerpcspe
   dists/trunk/linux/debian/installer/powerpcspe/modules/powerpcspe-powerpcspe-miboot
      - copied unchanged from r20172, dists/sid/linux/debian/installer/powerpcspe/modules/powerpcspe-powerpcspe-miboot
   dists/trunk/linux/debian/installer/ppc64/modules/ppc64
      - copied unchanged from r20172, dists/sid/linux/debian/installer/ppc64/modules/ppc64
   dists/trunk/linux/debian/installer/ppc64/package-list
      - copied unchanged from r20172, dists/sid/linux/debian/installer/ppc64/package-list
Modified:
   dists/trunk/linux/   (props changed)
   dists/trunk/linux/debian/changelog
   dists/trunk/linux/debian/config/alpha/config
   dists/trunk/linux/debian/config/armel/config
   dists/trunk/linux/debian/config/armel/config.kirkwood
   dists/trunk/linux/debian/config/armhf/config
   dists/trunk/linux/debian/config/armhf/defines
   dists/trunk/linux/debian/config/config
   dists/trunk/linux/debian/config/hppa/config
   dists/trunk/linux/debian/config/hppa/config.parisc
   dists/trunk/linux/debian/config/hppa/config.parisc64
   dists/trunk/linux/debian/config/i386/config.486
   dists/trunk/linux/debian/config/i386/config.686-pae
   dists/trunk/linux/debian/config/ia64/config
   dists/trunk/linux/debian/config/kernelarch-x86/config
   dists/trunk/linux/debian/config/kernelarch-x86/config-arch-32
   dists/trunk/linux/debian/config/kernelarch-x86/config-arch-64
   dists/trunk/linux/debian/config/m68k/config.amiga
   dists/trunk/linux/debian/config/mips/config
   dists/trunk/linux/debian/config/mips/config.4kc-malta
   dists/trunk/linux/debian/config/mips/config.5kc-malta
   dists/trunk/linux/debian/config/mips/config.r4k-ip22
   dists/trunk/linux/debian/config/powerpc/config
   dists/trunk/linux/debian/config/powerpc/config.powerpc
   dists/trunk/linux/debian/config/powerpc/config.powerpc64
   dists/trunk/linux/debian/installer/amd64/modules/amd64/nic-extra-modules
   dists/trunk/linux/debian/installer/modules/md-modules
   dists/trunk/linux/debian/installer/modules/nic-extra-modules
   dists/trunk/linux/debian/installer/modules/nic-usb-modules
   dists/trunk/linux/debian/installer/modules/nic-wireless-modules
   dists/trunk/linux/debian/installer/modules/scsi-extra-modules
   dists/trunk/linux/debian/installer/modules/serial-modules
   dists/trunk/linux/debian/installer/modules/usb-serial-modules
   dists/trunk/linux/debian/installer/package-list
   dists/trunk/linux/debian/installer/powerpc/modules/powerpc-powerpc64/scsi-modules
   dists/trunk/linux/debian/patches/series

Modified: dists/trunk/linux/debian/changelog
==============================================================================
--- dists/trunk/linux/debian/changelog	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/changelog	Sun Jun  2 16:44:22 2013	(r20174)
@@ -1,12 +1,17 @@
-linux (3.9.2-1~experimental.1) UNRELEASED; urgency=low
+linux (3.9.4-1) unstable; urgency=low
 
   * New upstream release: http://kernelnewbies.org/Linux_3.9
     - ALSA: hda - Add generic parser support to Analog Device codec driver
       (Closes: #659033)
     - Input: add support for Cypress PS/2 Trackpads (Closes: #703607)
+    - [armel] media: VIDEO_ZORAN is disabled as it requires virt_to_bus()
+    - [armhf/omap] OMAP_MBOX_FWK and TIDSPBRIDGE is disabled as they are
+      not yet compatible with ARM multiplatform
   * New upstream stable update:
     http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.9.1
     http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.9.2
+    http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.9.3
+    http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.9.4
 
   [ Ben Hutchings ]
   * [rt] Disable until it is updated for Linux 3.9 or later
@@ -17,8 +22,64 @@
   * aufs: Update to aufs3.9-20130506
   * [powerpcspe] Prevent building uImage with missing mkimage, thanks to
     Roland Stigge (Closes: #708094)
+  * udeb: Fix yet more configuration errors causing FTBFS:
+    - [powerpc/powerpc64] Replace ibmvscsic with ibmvscsi in scsi-modules
+    - [ppc64] Use symlinks to follow powerpc/powerpc64 configuration
+    - [powerpcspe] Use symlinks to follow powerpc configuration
+      (Closes: #708336, #708662)
+    - Add raid6_pq to md-modules, and make btrfs-modules depend on it
+  * netfilter: Enable NETFILTER_XT_MATCH_BPF, NETFILTER_XT_MATCH_CONNLABEL
+    as modules
+  * bridge: Enable BRIDGE_VLAN_FILTERING
+  * batman: Enable BATMAN_ADV_DAT
+  * nfc: Enable NFC_LLCP
+  * can: Enable CAN_PEAK_USB, CAN_8DEV_USB as modules
+  * hci_uart: Enable BT_HCIUART_3WIRE
+  * [amd64,powerpc/powerpc64,ppc64] block: Enable BLK_DEV_RSXX as module
+  * SCSI: Enable SCSI_CHELSIO_FCOE, SCSI_MPT3SAS, SCSI_UFSHCD as modules
+    - udeb: Add csiostor, mpt3sas, ufshcd, ufshcd-pci to scsi-extra-modules
+  * md: Enable DM_CACHE as module
+  * net/usb: Enable USB_NET_AX88179_178A as module (Closes: #704129)
+    - udeb: Add ax88179_178a to nic-usb-modules
+  * net/wireless: Enable AR5523 (Closes: #701777), IWLMVM,
+    RTL8723AE (Closes: #708348), WIL6210 as modules
+    - udeb: Add ar5523, iwldvm, iwlmvm, rtl8723ae, wil6210 to
+      nic-wireless-modules
+  * serial: Enable SERIAL_RP2 as module
+    - udeb: Add rp2 to serial-modules
+  * hw_random: Enable HW_RANDOM_TPM as module
+  * [x86] watchdog: Enable IE6XX_WDT, VIA_WDT as modules
+  * media/usb: Enable DVB_USB_AZ6007, USB_GSPCA_JL2005BCD as modules
+  * stk1160: Enable VIDEO_STK1160_AC97
+  * ivtv: Enable VIDEO_IVTV_ALSA as module
+  * radio: Enable RADIO_SHARK, RADIO_SHARK2, USB_KEENE, USB_MA901 as modules
+  * hda: Enable SND_HDA_CODEC_CA0132_DSP
+  * sound/firewire: Enable SND_SCS1X as module
+  * hid-holtek: Enable HOLTEK_FF
+  * hid: Enable HID_ICADE, HID_PS3REMOTE, HID_STEELSERIES, HID_THINGM as
+    modules
+  * usb/serial: Enable USB_SERIAL_F81232, USB_SERIAL_METRO, USB_SERIAL_QT2,
+    USB_SERIAL_XSENS_MT, USB_SERIAL_ZTE as modules
+    - udeb: Add f81232, quatech2, zte_ev to usb-serial-modules
+  * infiniband: Enable INFINIBAND_OCRDMA as module
+  * [x86] vfio: Enable VFIO, VFIO_PCI as modules
+  * [x86] hv: Enable HYPERV_BALLOON as module
+  * security: Enable SECURITY_YAMA, SECURITY_YAMA_STACKED (Closes: #704750)
+  * iscsi-target: fix heap buffer overflow on error (CVE-2013-2850)
 
- -- Ben Hutchings <ben at decadent.org.uk>  Mon, 06 May 2013 13:17:52 +0100
+  [ Aurelien Jarno ]
+  * [mips] Enable KEXEC.
+
+  [ Arnaud Patard ]
+  * [armhf] Add armmp flavour
+  * [armhf] backport usb support for imx53 through chipidea and usb phy nop fixes
+  * [armhf] backport armada 370/xp thermal support
+  * [armhf] fix hard freeze when mvneta is used as module
+  * [arm] backport ehci split patches for omap and orion
+  * [armel] enable thermal
+  * [armel] kirkwood: enable more DT configs, thermal, POWER_RESET_*
+
+ -- Ben Hutchings <ben at decadent.org.uk>  Sat, 01 Jun 2013 23:13:01 +0100
 
 linux (3.8.13-1) unstable; urgency=low
 

Modified: dists/trunk/linux/debian/config/alpha/config
==============================================================================
--- dists/trunk/linux/debian/config/alpha/config	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/alpha/config	Sun Jun  2 16:44:22 2013	(r20174)
@@ -127,7 +127,6 @@
 ## file: drivers/block/Kconfig
 ##
 CONFIG_BLK_DEV_FD=m
-CONFIG_BLK_DEV_XD=m
 CONFIG_PARIDE=m
 CONFIG_BLK_CPQ_DA=m
 CONFIG_BLK_CPQ_CISS_DA=m
@@ -562,7 +561,6 @@
 ## file: drivers/net/ethernet/3com/Kconfig
 ##
 CONFIG_NET_VENDOR_3COM=y
-CONFIG_EL1=m
 CONFIG_EL3=m
 CONFIG_3C515=m
 CONFIG_PCMCIA_3C574=m
@@ -573,20 +571,11 @@
 ##
 ## file: drivers/net/ethernet/8390/Kconfig
 ##
-CONFIG_EL2=m
-CONFIG_AC3200=m
 CONFIG_PCMCIA_AXNET=m
-CONFIG_E2100=m
-CONFIG_ES3210=m
-CONFIG_HPLAN_PLUS=m
-CONFIG_HPLAN=m
-CONFIG_LNE390=m
 CONFIG_NE2000=m
 CONFIG_NE2K_PCI=m
-CONFIG_NE3210=m
 CONFIG_PCMCIA_PCNET=m
 CONFIG_ULTRA=m
-CONFIG_ULTRA32=m
 CONFIG_WD80x3=m
 
 ##
@@ -599,7 +588,6 @@
 ##
 CONFIG_AMD8111_ETH=m
 CONFIG_LANCE=m
-CONFIG_DEPCA=m
 CONFIG_PCMCIA_NMCLAN=m
 CONFIG_NI65=m
 
@@ -616,7 +604,6 @@
 ##
 ## file: drivers/net/ethernet/dec/Kconfig
 ##
-CONFIG_EWRK3=m
 
 ##
 ## file: drivers/net/ethernet/dec/tulip/Kconfig
@@ -634,17 +621,13 @@
 ##
 ## file: drivers/net/ethernet/dlink/Kconfig
 ##
-CONFIG_DE600=m
-CONFIG_DE620=m
 CONFIG_SUNDANCE=m
 # CONFIG_SUNDANCE_MMIO is not set
 
 ##
 ## file: drivers/net/ethernet/fujitsu/Kconfig
 ##
-CONFIG_AT1700=m
 CONFIG_PCMCIA_FMVJ18X=m
-CONFIG_ETH16I=m
 
 ##
 ## file: drivers/net/ethernet/hp/Kconfig
@@ -652,18 +635,6 @@
 CONFIG_HP100=m
 
 ##
-## file: drivers/net/ethernet/i825xx/Kconfig
-##
-CONFIG_ELPLUS=m
-CONFIG_EL16=m
-CONFIG_APRICOT=m
-CONFIG_EEXPRESS=m
-CONFIG_EEXPRESS_PRO=m
-CONFIG_LP486E=m
-CONFIG_NI52=m
-CONFIG_ZNET=m
-
-##
 ## file: drivers/net/ethernet/intel/Kconfig
 ##
 CONFIG_E100=m
@@ -682,7 +653,6 @@
 ## file: drivers/net/ethernet/racal/Kconfig
 ##
 CONFIG_NET_VENDOR_RACAL=y
-CONFIG_NI5010=m
 
 ##
 ## file: drivers/net/ethernet/realtek/Kconfig
@@ -697,7 +667,6 @@
 ##
 ## file: drivers/net/ethernet/seeq/Kconfig
 ##
-CONFIG_SEEQ8005=m
 
 ##
 ## file: drivers/net/ethernet/sis/Kconfig

Modified: dists/trunk/linux/debian/config/armel/config
==============================================================================
--- dists/trunk/linux/debian/config/armel/config	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/armel/config	Sun Jun  2 16:44:22 2013	(r20174)
@@ -106,6 +106,12 @@
 # CONFIG_SCSI_QLA_ISCSI is not set
 
 ##
+## file: drivers/thermal/Kconfig
+##
+CONFIG_THERMAL=y
+CONFIG_CPU_THERMAL=m
+
+##
 ## file: drivers/virtio/Kconfig
 ##
 # CONFIG_VIRTIO_PCI is not set

Modified: dists/trunk/linux/debian/config/armel/config.kirkwood
==============================================================================
--- dists/trunk/linux/debian/config/armel/config.kirkwood	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/armel/config.kirkwood	Sun Jun  2 16:44:22 2013	(r20174)
@@ -58,9 +58,25 @@
 CONFIG_MACH_ESATA_SHEEVAPLUG=y
 CONFIG_MACH_GURUPLUG=y
 CONFIG_ARCH_KIRKWOOD_DT=y
+CONFIG_MACH_GURUPLUG_DT=y
 CONFIG_MACH_DREAMPLUG_DT=y
 CONFIG_MACH_ICONNECT_DT=y
+CONFIG_MACH_DLINK_KIRKWOOD_DT=y
+CONFIG_MACH_IB62X0_DT=y
+CONFIG_MACH_TS219_DT=y
+CONFIG_MACH_DOCKSTAR_DT=y
+CONFIG_MACH_GOFLEXNET_DT=y
+CONFIG_MACH_LSXL_DT=y
+CONFIG_MACH_IOMEGA_IX2_200_DT=y
+CONFIG_MACH_KM_KIRKWOOD_DT=y
+CONFIG_MACH_INETSPACE_V2_DT=y
+CONFIG_MACH_MPLCEC4_DT=y
+CONFIG_MACH_NETSPACE_V2_DT=y
+CONFIG_MACH_NETSPACE_MAX_V2_DT=y
+CONFIG_MACH_NETSPACE_LITE_V2_DT=y
+CONFIG_MACH_NETSPACE_MINI_V2_DT=y
 CONFIG_MACH_OPENBLOCKS_A6_DT=y
+CONFIG_MACH_TOPKICK_DT=y
 CONFIG_MACH_TS219=y
 CONFIG_MACH_TS41X=y
 CONFIG_MACH_DOCKSTAR=y
@@ -74,6 +90,7 @@
 CONFIG_MACH_NET2BIG_V2=y
 CONFIG_MACH_NET5BIG_V2=y
 CONFIG_MACH_T5325=y
+CONFIG_MACH_NSA310_DT=y
 
 ##
 ## file: arch/arm/mm/Kconfig
@@ -488,6 +505,12 @@
 # CONFIG_PCCARD is not set
 
 ##
+## file: drivers/power/Kconfig
+##
+CONFIG_POWER_RESET_QNAP=y
+CONFIG_POWER_RESET_RESTART=y
+
+##
 ## file: drivers/rtc/Kconfig
 ##
 CONFIG_RTC_DRV_S35390A=y
@@ -572,6 +595,11 @@
 CONFIG_FB_XGI=m
 
 ##
+## file: drivers/thermal/Kconfig
+##
+CONFIG_KIRKWOOD_THERMAL=m
+
+##
 ## file: drivers/tty/serial/Kconfig
 ##
 CONFIG_SERIAL_OF_PLATFORM=y

Modified: dists/trunk/linux/debian/config/armhf/config
==============================================================================
--- dists/trunk/linux/debian/config/armhf/config	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/armhf/config	Sun Jun  2 16:44:22 2013	(r20174)
@@ -23,3 +23,8 @@
 # CONFIG_BAYCOM_EPP is not set
 # CONFIG_YAM is not set
 
+##
+## file: drivers/thermal/Kconfig
+##
+CONFIG_THERMAL=y
+CONFIG_CPU_THERMAL=m

Copied: dists/trunk/linux/debian/config/armhf/config.armmp (from r20172, dists/sid/linux/debian/config/armhf/config.armmp)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/config/armhf/config.armmp	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/config/armhf/config.armmp)
@@ -0,0 +1,616 @@
+##
+## file: arch/arm/Kconfig
+##
+## choice: ARM system type
+CONFIG_ARCH_MULTIPLATFORM=y
+# CONFIG_ARCH_MULTI_V6 is not set
+CONFIG_ARCH_MULTI_V7=y
+CONFIG_ARCH_MULTI_V6_V7=y
+## end choice
+
+
+CONFIG_SMP=y
+CONFIG_SMP_ON_UP=y
+CONFIG_HIGHMEM=y
+CONFIG_NEON=y
+
+CONFIG_ARM_APPENDED_DTB=y
+CONFIG_ARM_ATAG_DTB_COMPAT=y
+CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_FROM_BOOTLOADER=y
+# CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEND is not set
+
+##
+## file: arch/arm/Kconfig.debug
+##
+# DEBUG_LL is incompatible with multiplatform
+# CONFIG_DEBUG_LL is not set
+
+##
+## file: arch/arm/mach-highbank/Kconfig
+##
+CONFIG_ARCH_HIGHBANK=y
+
+##
+## file: arch/arm/mach-imx/Kconfig
+##
+CONFIG_ARCH_MXC=y
+
+#
+# Freescale i.MX support
+#
+CONFIG_MXC_IRQ_PRIOR=y
+CONFIG_IRAM_ALLOC=y
+CONFIG_SOC_IMX5=y
+CONFIG_SOC_IMX51=y
+CONFIG_MACH_IMX51_DT=y
+CONFIG_MACH_MX51_BABBAGE=y
+CONFIG_MACH_EUKREA_CPUIMX51SD=y
+CONFIG_MACH_EUKREA_MBIMXSD51_BASEBOARD=y
+CONFIG_SOC_IMX53=y
+CONFIG_SOC_IMX6Q=y
+
+##
+## file: arch/arm/mach-mvebu/Kconfig
+##
+CONFIG_ARCH_MVEBU=y
+CONFIG_MACH_ARMADA_370_XP=y
+CONFIG_MACH_ARMADA_370=y
+CONFIG_MACH_ARMADA_XP=y
+
+##
+## file: arch/arm/mach-omap2/Kconfig
+##
+CONFIG_ARCH_OMAP2PLUS_TYPICAL=y
+# CONFIG_ARCH_OMAP2 is not set
+CONFIG_SOC_OMAP5=y
+CONFIG_SOC_OMAP3430=y
+CONFIG_SOC_TI81XX=y
+CONFIG_SOC_AM33XX=y
+
+##
+## file: arch/arm/mach-socfpga/Kconfig
+##
+CONFIG_ARCH_SOCFPGA=y
+
+##
+## file: arch/arm/mach-sunxi/Kconfig
+##
+CONFIG_ARCH_SUNXI=y
+
+##
+## file: arch/arm/mach-vexpress/Kconfig
+##
+CONFIG_ARCH_VEXPRESS=y
+CONFIG_ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA=y
+CONFIG_ARCH_VEXPRESS_CA9X4=y
+
+##
+## file: arch/arm/mach-virt/Kconfig
+##
+CONFIG_ARCH_VIRT=y
+
+##
+## file: arch/arm/mach-vt8500/Kconfig
+##
+CONFIG_ARCH_VT8500=y
+CONFIG_ARCH_WM8850=y
+
+##
+## file: arch/arm/mm/Kconfig
+##
+CONFIG_ARM_THUMBEE=y
+
+##
+## file: arch/arm/plat-omap/Kconfig
+##
+## choice: OMAP System Type
+CONFIG_ARCH_OMAP2PLUS=y
+## end choice
+CONFIG_OMAP_RESET_CLOCKS=y
+CONFIG_OMAP_MUX=y
+# CONFIG_OMAP_MUX_DEBUG is not set
+CONFIG_OMAP_MUX_WARNINGS=y
+CONFIG_OMAP_MBOX_FWK=y
+CONFIG_OMAP_MBOX_KFIFO_SIZE=256
+# CONFIG_OMAP_MPU_TIMER is not set
+CONFIG_OMAP_32K_TIMER=y
+# CONFIG_OMAP3_L2_AUX_SECURE_SAVE_RESTORE is not set
+CONFIG_OMAP_32K_TIMER_HZ=128
+CONFIG_OMAP_DM_TIMER=y
+CONFIG_OMAP_SERIAL_WAKE=y
+## choice: OMAP PM layer selection
+CONFIG_OMAP_PM_NOOP=y
+## end choice
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_SATA_HIGHBANK=m
+CONFIG_PATA_IMX=m
+CONFIG_PATA_PLATFORM=m
+CONFIG_SATA_AHCI_PLATFORM=m
+CONFIG_PATA_OF_PLATFORM=m
+
+##
+## file: drivers/bluetooth/Kconfig
+##
+CONFIG_BT_WILINK=m
+
+##
+## file: drivers/bus/Kconfig
+##
+CONFIG_OMAP_OCP2SCP=m
+CONFIG_OMAP_INTERCONNECT=m
+
+##
+## file: drivers/clk/Kconfig
+##
+CONFIG_CLK_TWL6040=m
+
+##
+## file: drivers/cpufreq/Kconfig
+##
+CONFIG_CPU_FREQ=y
+CONFIG_CPU_FREQ_STAT=m
+
+CONFIG_ARM_IMX6Q_CPUFREQ=m
+CONFIG_CPU_FREQ_IMX=m
+
+##
+## file: drivers/crypto/Kconfig
+##
+CONFIG_CRYPTO_DEV_OMAP_SHAM=m
+CONFIG_CRYPTO_DEV_OMAP_AES=m
+CONFIG_CRYPTO_DEV_MV_CESA=m
+
+##
+## file: drivers/dma/Kconfig
+##
+CONFIG_DMADEVICES=y
+CONFIG_ASYNC_TX_ENABLE_CHANNEL_SWITCH=y
+CONFIG_AMBA_PL08X=y
+CONFIG_PL330_DMA=y
+CONFIG_IMX_SDMA=y
+CONFIG_IMX_DMA=y
+CONFIG_MXS_DMA=y
+CONFIG_DMA_OMAP=y
+CONFIG_MV_XOR=y
+
+##
+## file: drivers/gpio/Kconfig
+##
+CONFIG_GPIO_SYSFS=y
+CONFIG_GPIO_TWL4030=y
+CONFIG_GPIO_TWL6040=y
+CONFIG_GPIO_VT8500=y
+CONFIG_GPIO_DA9052=m
+
+##
+## file: drivers/hwspinlock/Kconfig
+##
+CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK_OMAP=m
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_GPIO=y
+CONFIG_I2C_OMAP=y
+CONFIG_I2C_IMX=m
+CONFIG_I2C_MV64XXX=m
+CONFIG_I2C_VERSATILE=m
+
+##
+## file: drivers/iio/Kconfig
+##
+CONFIG_IIO=m
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_KEYBOARD_GPIO=y
+CONFIG_KEYBOARD_IMX=m
+CONFIG_KEYBOARD_OMAP4=m
+CONFIG_KEYBOARD_TWL4030=m
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_TWL4030_PWRBUTTON=m
+CONFIG_INPUT_TWL4030_VIBRA=m
+CONFIG_INPUT_TWL6040_VIBRA=m
+CONFIG_INPUT_MMA8450=m
+
+##
+## file: drivers/input/serio/Kconfig
+##
+CONFIG_SERIO_AMBAKMI=m
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+CONFIG_INPUT_TOUCHSCREEN=y
+CONFIG_TOUCHSCREEN_TSC2005=m
+
+##
+## file: drivers/iommu/Kconfig
+##
+CONFIG_OMAP_IOMMU=y
+CONFIG_OMAP_IOVMM=m
+# CONFIG_OMAP_IOMMU_DEBUG is not set
+
+##
+## file: drivers/leds/Kconfig
+##
+CONFIG_LEDS_CLASS=y
+CONFIG_LEDS_GPIO=m
+CONFIG_LEDS_LP5523=m
+CONFIG_LEDS_TRIGGER_GPIO=m
+CONFIG_LEDS_DA9052=m
+
+##
+## file: drivers/media/Kconfig
+##
+CONFIG_MEDIA_SUPPORT=y
+CONFIG_MEDIA_CONTROLLER=y
+
+##
+## file: drivers/media/platform/omap/Kconfig
+##
+CONFIG_VIDEO_OMAP2_VOUT=m
+
+##
+## file: drivers/media/radio/Kconfig
+##
+CONFIG_RADIO_ADAPTERS=y
+CONFIG_I2C_SI4713=m
+CONFIG_RADIO_SI4713=m
+
+##
+## file: drivers/media/radio/wl128x/Kconfig
+##
+CONFIG_RADIO_WL128X=m
+
+##
+## file: drivers/mfd/Kconfig
+##
+CONFIG_MFD_TI_AM335X_TSCADC=m
+CONFIG_PMIC_DA9052=y
+CONFIG_MFD_DA9052_SPI=y
+CONFIG_MFD_DA9052_I2C=y
+CONFIG_MFD_MC13783=m
+CONFIG_MFD_MC13XXX=m
+CONFIG_MFD_MC13XXX_SPI=m
+CONFIG_MFD_MC13XXX_I2C=m
+CONFIG_TWL6040_CORE=y
+
+##
+## file: drivers/misc/Kconfig
+##
+CONFIG_ARM_CHARLCD=y
+
+##
+## file: drivers/misc/ti-st/Kconfig
+##
+CONFIG_TI_ST=m
+
+##
+## file: drivers/mmc/Kconfig
+##
+CONFIG_MMC=y
+
+##
+## file: drivers/mmc/host/Kconfig
+##
+CONFIG_MMC_ARMMMCI=m
+CONFIG_MMC_SDHCI=m
+CONFIG_MMC_SDHCI_PLTFM=m
+CONFIG_MMC_SDHCI_ESDHC_IMX=m
+CONFIG_MMC_OMAP=m
+CONFIG_MMC_OMAP_HS=m
+CONFIG_MMC_SPI=m
+CONFIG_MMC_MVSDIO=m
+CONFIG_MMC_WMT=m
+
+##
+## file: drivers/mtd/Kconfig
+##
+CONFIG_MTD=y
+
+##
+## file: drivers/mtd/nand/Kconfig
+##
+CONFIG_MTD_NAND=y
+CONFIG_MTD_NAND_OMAP2=m
+CONFIG_MTD_NAND_GPMI_NAND=m
+CONFIG_MTD_NAND_ORION=m
+CONFIG_MTD_NAND_MXC=m
+
+##
+## file: drivers/mtd/onenand/Kconfig
+##
+CONFIG_MTD_ONENAND=y
+CONFIG_MTD_ONENAND_OMAP2=m
+
+##
+## file: drivers/net/ethernet/marvell/Kconfig
+##
+CONFIG_MVMDIO=m
+CONFIG_MVNETA=m
+
+##
+## file: drivers/net/ethernet/smsc/Kconfig
+##
+CONFIG_SMC91X=m
+CONFIG_SMC911X=m
+CONFIG_SMSC911X=m
+
+##
+## file: drivers/net/ethernet/ti/Kconfig
+##
+CONFIG_TI_DAVINCI_EMAC=m
+CONFIG_TI_DAVINCI_MDIO=m
+CONFIG_TI_DAVINCI_CPDMA=m
+CONFIG_TI_CPSW=m
+
+##
+## file: drivers/net/wireless/ti/wl1251/Kconfig
+##
+CONFIG_WL1251=m
+CONFIG_WL1251_SPI=m
+
+##
+## file: drivers/net/wireless/ti/wl12xx/Kconfig
+##
+CONFIG_WL12XX=m
+
+##
+## file: drivers/power/Kconfig
+##
+CONFIG_BATTERY_BQ27x00=m
+CONFIG_CHARGER_ISP1704=m
+CONFIG_POWER_RESET=y
+CONFIG_POWER_RESET_GPIO=y
+CONFIG_POWER_RESET_RESTART=y
+
+##
+## file: drivers/pwm/Kconfig
+##
+CONFIG_PWM=y
+CONFIG_PWM_IMX=m
+CONFIG_PWM_TIECAP=m
+CONFIG_PWM_TIEHRPWM=m
+CONFIG_PWM_TIPWMSS=y
+CONFIG_PWM_TWL=m
+CONFIG_PWM_TWL_LED=m
+CONFIG_PWM_VT8500=m
+
+##
+## file: drivers/regulator/Kconfig
+##
+CONFIG_REGULATOR=y
+CONFIG_REGULATOR_TWL4030=y
+CONFIG_REGULATOR_DA9052=m
+CONFIG_REGULATOR_ANATOP=m
+CONFIG_REGULATOR_MC13XXX_CORE=m
+CONFIG_REGULATOR_MC13783=m
+CONFIG_REGULATOR_MC13892=m
+CONFIG_REGULATOR_VEXPRESS=m
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_DA9052=m
+CONFIG_RTC_DRV_IMXDI=m
+CONFIG_RTC_DRV_OMAP=m
+CONFIG_RTC_DRV_PL030=m
+CONFIG_RTC_DRV_PL031=m
+CONFIG_RTC_DRV_VT8500=m
+CONFIG_RTC_DRV_MV=m
+CONFIG_RTC_DRV_MC13XXX=m
+CONFIG_RTC_DRV_MXC=m
+
+##
+## file: drivers/spi/Kconfig
+##
+CONFIG_SPI=y
+CONFIG_SPI_GPIO=y
+CONFIG_SPI_ORION=m
+CONFIG_SPI_PL022=m
+CONFIG_SPI_OMAP24XX=m
+CONFIG_SPI_SPIDEV=y
+
+##
+## file: drivers/staging/iio/accel/Kconfig
+##
+CONFIG_LIS3L02DQ=m
+
+##
+## file: drivers/staging/iio/light/Kconfig
+##
+CONFIG_SENSORS_TSL2563=m
+
+##
+## file: drivers/staging/tidspbridge/Kconfig
+##
+CONFIG_TIDSPBRIDGE=m
+CONFIG_TIDSPBRIDGE_DVFS=y
+CONFIG_TIDSPBRIDGE_RECOVERY=y
+
+##
+## file: drivers/thermal/Kconfig
+##
+CONFIG_ARMADA_THERMAL=y
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_DMA=y
+CONFIG_SERIAL_8250_NR_UARTS=4
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+# CONFIG_SERIAL_8250_EXTENDED is not set
+CONFIG_SERIAL_8250_DW=y
+# CONFIG_SERIAL_8250_EM is not set
+CONFIG_SERIAL_AMBA_PL010=y
+CONFIG_SERIAL_AMBA_PL010_CONSOLE=y
+CONFIG_SERIAL_AMBA_PL011=y
+CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
+CONFIG_SERIAL_IMX=y
+CONFIG_SERIAL_IMX_CONSOLE=y
+CONFIG_SERIAL_VT8500=y
+CONFIG_SERIAL_VT8500_CONSOLE=y
+CONFIG_SERIAL_ARC=y
+CONFIG_SERIAL_ARC_CONSOLE=y
+CONFIG_SERIAL_ARC_NR_PORTS=1
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB=y
+
+##
+## file: drivers/usb/gadget/Kconfig
+##
+CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_MUSB_HDRC=y
+## choice: USB Gadget Drivers
+CONFIG_USB_ETH=m
+CONFIG_USB_ETH_RNDIS=y
+CONFIG_USB_GADGETFS=m
+CONFIG_USB_G_NOKIA=m
+## end choice
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_EHCI_ROOT_HUB_TT=y
+CONFIG_USB_EHCI_HCD_OMAP=y
+CONFIG_USB_OHCI_HCD=m
+CONFIG_USB_OHCI_HCD_OMAP3=y
+CONFIG_USB_FSL_MPH_DR_OF=m
+CONFIG_USB_EHCI_MXC=m
+CONFIG_USB_CHIPIDEA=m
+CONFIG_USB_CHIPIDEA_UDC=y
+CONFIG_USB_CHIPIDEA_HOST=y
+CONFIG_USB_CHIPIDEA_DEBUG=y
+
+##
+## file: drivers/usb/musb/Kconfig
+##
+CONFIG_USB_MUSB_HDRC=y
+CONFIG_USB_MUSB_TUSB6010=m
+CONFIG_USB_MUSB_OMAP2PLUS=m
+CONFIG_USB_MUSB_AM35X=m
+CONFIG_USB_MUSB_DSPS=m
+## choice: MUSB DMA mode
+CONFIG_MUSB_PIO_ONLY=y
+## end choice
+
+##
+## file: drivers/usb/otg/Kconfig
+##
+CONFIG_TWL4030_USB=m
+CONFIG_TWL6030_USB=m
+CONFIG_NOP_USB_XCEIV=y
+CONFIG_USB_MXS_PHY=m
+
+##
+## file: drivers/usb/phy/Kconfig
+##
+CONFIG_OMAP_USB2=m
+CONFIG_OMAP_USB3=m
+CONFIG_OMAP_CONTROL_USB=m
+
+##
+## file: drivers/video/Kconfig
+##
+CONFIG_VIDEO_OUTPUT_CONTROL=y
+CONFIG_DISPLAY_TIMING=y
+CONFIG_VIDEOMODE=y
+CONFIG_OF_DISPLAY_TIMING=y
+CONFIG_OF_VIDEOMODE=y
+CONFIG_FB=y
+CONFIG_FB_ARMCLCD=y
+CONFIG_FB_VT8500=y
+CONFIG_FB_WM8505=y
+
+##
+## file: drivers/video/console/Kconfig
+##
+CONFIG_FRAMEBUFFER_CONSOLE=y
+
+##
+## file: drivers/video/omap2/displays/Kconfig
+##
+CONFIG_PANEL_GENERIC_DPI=y
+CONFIG_PANEL_ACX565AKM=y
+
+##
+## file: drivers/video/omap2/dss/Kconfig
+##
+CONFIG_OMAP2_DSS=m
+CONFIG_OMAP2_DSS_VENC=y
+CONFIG_OMAP4_DSS_HDMI=y
+CONFIG_OMAP2_DSS_SDI=y
+
+##
+## file: drivers/video/omap2/omapfb/Kconfig
+##
+CONFIG_FB_OMAP2=m
+
+##
+## file: drivers/watchdog/Kconfig
+##
+CONFIG_OMAP_WATCHDOG=m
+CONFIG_TWL4030_WATCHDOG=m
+CONFIG_DA9052_WATCHDOG=m
+CONFIG_ARM_SP805_WATCHDOG=m
+CONFIG_IMX2_WDT=m
+
+##
+## file: kernel/power/Kconfig
+##
+CONFIG_SUSPEND=y
+CONFIG_PM_RUNTIME=y
+CONFIG_APM_EMULATION=y
+
+##
+## file: net/phonet/Kconfig
+##
+CONFIG_PHONET=m
+
+##
+## file: sound/soc/Kconfig
+##
+CONFIG_SND_SOC=m
+
+##
+## file: sound/soc/fsl/Kconfig
+##
+CONFIG_SND_IMX_SOC=m
+CONFIG_SND_SOC_EUKREA_TLV320=m
+CONFIG_SND_SOC_IMX_SGTL5000=m
+CONFIG_SND_SOC_IMX_MC13783=m
+
+##
+## file: sound/soc/omap/Kconfig
+##
+CONFIG_SND_OMAP_SOC=m
+CONFIG_SND_OMAP_SOC_HDMI=m
+CONFIG_SND_OMAP_SOC_RX51=m
+CONFIG_SND_OMAP_SOC_AM3517EVM=m
+CONFIG_SND_OMAP_SOC_OMAP_TWL4030=m
+CONFIG_SND_OMAP_SOC_OMAP_HDMI=m
+CONFIG_SND_OMAP_SOC_OMAP3_PANDORA=m
+CONFIG_SND_OMAP_SOC_OMAP_ABE_TWL6040=m
+
+##
+## file: unknown
+##
+CONFIG_LEDS=y
+CONFIG_LEDS_CPU=y
+

Modified: dists/trunk/linux/debian/config/armhf/defines
==============================================================================
--- dists/trunk/linux/debian/config/armhf/defines	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/armhf/defines	Sun Jun  2 16:44:22 2013	(r20174)
@@ -1,5 +1,6 @@
 [base]
 flavours:
+ armmp
  mx5
  omap
  vexpress
@@ -11,6 +12,13 @@
  armel/config
  armhf/config
 
+[armmp_build]
+image-file: arch/arm/boot/zImage
+
+[armmp_description]
+hardware: ARMv7 multiplatform compatible SoCs
+hardware-long: ARMv7 multiplatform kernel for Marvell Armada 370/xp, Freescale iMX5x/iMX6
+
 [mx5_build]
 image-file: arch/arm/boot/zImage
 

Modified: dists/trunk/linux/debian/config/config
==============================================================================
--- dists/trunk/linux/debian/config/config	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/config	Sun Jun  2 16:44:22 2013	(r20174)
@@ -269,6 +269,7 @@
 CONFIG_BT_HCIBTSDIO=m
 CONFIG_BT_HCIUART_ATH3K=y
 CONFIG_BT_HCIUART_LL=y
+CONFIG_BT_HCIUART_3WIRE=y
 CONFIG_BT_MRVL=m
 CONFIG_BT_MRVL_SDIO=m
 CONFIG_BT_ATH3K=m
@@ -297,6 +298,7 @@
 # CONFIG_HW_RANDOM is not set
 CONFIG_HW_RANDOM_TIMERIOMEM=m
 CONFIG_HW_RANDOM_VIRTIO=m
+CONFIG_HW_RANDOM_TPM=m
 
 ##
 ## file: drivers/char/pcmcia/Kconfig
@@ -416,11 +418,6 @@
 CONFIG_DRM_NOUVEAU_BACKLIGHT=y
 
 ##
-## file: drivers/gpu/drm/radeon/Kconfig
-##
-CONFIG_DRM_RADEON_KMS=y
-
-##
 ## file: drivers/gpu/drm/udl/Kconfig
 ##
 CONFIG_DRM_UDL=m
@@ -445,11 +442,13 @@
 CONFIG_HID_EMS_FF=m
 CONFIG_HID_ELECOM=m
 CONFIG_HID_HOLTEK=m
+CONFIG_HOLTEK_FF=y
 CONFIG_HID_KEYTOUCH=m
 CONFIG_HID_KYE=m
 CONFIG_HID_UCLOGIC=m
 CONFIG_HID_WALTOP=m
 CONFIG_HID_GYRATION=m
+CONFIG_HID_ICADE=m
 CONFIG_HID_TWINHAN=m
 CONFIG_HID_LCPOWER=m
 CONFIG_HID_LENOVO_TPKBD=m
@@ -467,11 +466,13 @@
 CONFIG_HID_PETALYNX=m
 CONFIG_HID_PICOLCD=m
 CONFIG_HID_PRIMAX=m
+CONFIG_HID_PS3REMOTE=m
 CONFIG_HID_ROCCAT=m
 CONFIG_HID_SAITEK=m
 CONFIG_HID_SAMSUNG=m
 CONFIG_HID_SONY=m
 CONFIG_HID_SPEEDLINK=m
+CONFIG_HID_STEELSERIES=m
 CONFIG_HID_SUNPLUS=m
 CONFIG_HID_GREENASIA=m
 CONFIG_GREENASIA_FF=y
@@ -480,10 +481,12 @@
 CONFIG_SMARTJOYPLUS_FF=y
 CONFIG_HID_TIVO=m
 CONFIG_HID_TOPSEED=m
+CONFIG_HID_THINGM=m
 CONFIG_HID_THRUSTMASTER=m
 CONFIG_THRUSTMASTER_FF=y
 CONFIG_HID_WACOM=m
 CONFIG_HID_WIIMOTE=m
+CONFIG_HID_WIIMOTE_EXT=y
 CONFIG_HID_ZEROPLUS=m
 CONFIG_ZEROPLUS_FF=y
 CONFIG_HID_ZYDACRON=m
@@ -678,6 +681,11 @@
 # CONFIG_INFINIBAND_NES_DEBUG is not set
 
 ##
+## file: drivers/infiniband/hw/ocrdma/Kconfig
+##
+CONFIG_INFINIBAND_OCRDMA=m
+
+##
 ## file: drivers/infiniband/hw/qib/Kconfig
 ##
 CONFIG_INFINIBAND_QIB=m
@@ -966,6 +974,9 @@
 CONFIG_DM_SNAPSHOT=m
 CONFIG_DM_THIN_PROVISIONING=m
 # CONFIG_DM_DEBUG_BLOCK_STACK_TRACING is not set
+CONFIG_DM_CACHE=m
+CONFIG_DM_CACHE_MQ=y
+CONFIG_DM_CACHE_CLEANER=y
 CONFIG_DM_MIRROR=m
 CONFIG_DM_RAID=m
 CONFIG_DM_LOG_USERSPACE=m
@@ -1172,6 +1183,7 @@
 ##
 CONFIG_VIDEO_IVTV=m
 CONFIG_VIDEO_FB_IVTV=m
+CONFIG_VIDEO_IVTV_ALSA=m
 
 ##
 ## file: drivers/media/pci/mantis/Kconfig
@@ -1270,8 +1282,12 @@
 CONFIG_RADIO_ADAPTERS=y
 CONFIG_RADIO_SI470X=y
 CONFIG_USB_MR800=m
+CONFIG_RADIO_SHARK=m
+CONFIG_RADIO_SHARK2=m
 CONFIG_I2C_SI4713=m
 CONFIG_RADIO_SI4713=m
+CONFIG_USB_KEENE=m
+CONFIG_USB_MA901=m
 CONFIG_RADIO_TEA5764=m
 CONFIG_RADIO_SAA7706H=m
 CONFIG_RADIO_TEF6862=m
@@ -1338,6 +1354,7 @@
 ## file: drivers/media/usb/au0828/Kconfig
 ##
 CONFIG_VIDEO_AU0828=m
+CONFIG_VIDEO_AU0828_V4L2=y
 
 ##
 ## file: drivers/media/usb/b2c2/Kconfig
@@ -1393,10 +1410,12 @@
 ## file: drivers/media/usb/dvb-usb-v2/Kconfig
 ##
 CONFIG_DVB_USB_V2=m
+CONFIG_DVB_USB_CYPRESS_FIRMWARE=m
 CONFIG_DVB_USB_AF9015=m
 CONFIG_DVB_USB_AF9035=m
 CONFIG_DVB_USB_ANYSEE=m
 CONFIG_DVB_USB_AU6610=m
+CONFIG_DVB_USB_AZ6007=m
 CONFIG_DVB_USB_CE6230=m
 CONFIG_DVB_USB_EC168=m
 CONFIG_DVB_USB_GL861=m
@@ -1423,6 +1442,7 @@
 CONFIG_USB_GSPCA_ETOMS=m
 CONFIG_USB_GSPCA_FINEPIX=m
 CONFIG_USB_GSPCA_JEILINJ=m
+CONFIG_USB_GSPCA_JL2005BCD=m
 CONFIG_USB_GSPCA_KINECT=m
 CONFIG_USB_GSPCA_KONICA=m
 CONFIG_USB_GSPCA_MARS=m
@@ -1514,6 +1534,7 @@
 ## file: drivers/media/usb/stk1160/Kconfig
 ##
 CONFIG_VIDEO_STK1160=m
+CONFIG_VIDEO_STK1160_AC97=y
 
 ##
 ## file: drivers/media/usb/stkwebcam/Kconfig
@@ -1848,7 +1869,7 @@
 CONFIG_CAN_EMS_PCI=m
 CONFIG_CAN_PEAK_PCMCIA=m
 CONFIG_CAN_PEAK_PCI=m
-CONFIG_CAN_PEAK_PCIEC=m
+CONFIG_CAN_PEAK_PCIEC=y
 CONFIG_CAN_KVASER_PCI=m
 CONFIG_CAN_PLX_PCI=m
 CONFIG_CAN_TSCAN1=m
@@ -1864,7 +1885,9 @@
 ##
 CONFIG_CAN_EMS_USB=m
 CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_KVASER_USB=m
 CONFIG_CAN_PEAK_USB=m
+CONFIG_CAN_8DEV_USB=m
 
 ##
 ## file: drivers/net/ethernet/Kconfig
@@ -1905,6 +1928,7 @@
 CONFIG_CNIC=m
 CONFIG_TIGON3=m
 CONFIG_BNX2X=m
+CONFIG_BNX2X_SRIOV=y
 
 ##
 ## file: drivers/net/ethernet/brocade/Kconfig
@@ -1984,6 +2008,7 @@
 CONFIG_E1000E=m
 CONFIG_IGB=m
 CONFIG_IGB_DCA=y
+CONFIG_IGB_HWMON=y
 CONFIG_IGBVF=m
 CONFIG_IXGB=m
 CONFIG_IXGBE=m
@@ -2274,6 +2299,7 @@
 CONFIG_USB_RTL8150=m
 CONFIG_USB_USBNET=m
 CONFIG_USB_NET_AX8817X=m
+CONFIG_USB_NET_AX88179_178A=m
 CONFIG_USB_NET_CDCETHER=m
 CONFIG_USB_NET_CDC_EEM=m
 CONFIG_USB_NET_CDC_NCM=m
@@ -2344,6 +2370,11 @@
 # CONFIG_ATH_DEBUG is not set
 
 ##
+## file: drivers/net/wireless/ath/ar5523/Kconfig
+##
+CONFIG_AR5523=m
+
+##
 ## file: drivers/net/wireless/ath/ath5k/Kconfig
 ##
 CONFIG_ATH5K=m
@@ -2379,6 +2410,12 @@
 # CONFIG_CARL9170_HWRNG is not set
 
 ##
+## file: drivers/net/wireless/ath/wil6210/Kconfig
+##
+CONFIG_WIL6210=m
+CONFIG_WIL6210_ISR_COR=y
+
+##
 ## file: drivers/net/wireless/b43/Kconfig
 ##
 CONFIG_B43=m
@@ -2441,6 +2478,8 @@
 ## file: drivers/net/wireless/iwlwifi/Kconfig
 ##
 CONFIG_IWLWIFI=m
+CONFIG_IWLDVM=m
+CONFIG_IWLMVM=m
 # CONFIG_IWLWIFI_DEBUG is not set
 # CONFIG_IWLWIFI_DEVICE_TRACING is not set
 
@@ -2503,9 +2542,11 @@
 ##
 ## file: drivers/net/wireless/rtlwifi/Kconfig
 ##
+CONFIG_RTLWIFI=m
 CONFIG_RTL8192CE=m
 CONFIG_RTL8192SE=m
 CONFIG_RTL8192DE=m
+CONFIG_RTL8723AE=m
 CONFIG_RTL8192CU=m
 # CONFIG_RTLWIFI_DEBUG is not set
 
@@ -2846,6 +2887,11 @@
 CONFIG_SCSI_BNX2_ISCSI=m
 
 ##
+## file: drivers/scsi/csiostor/Kconfig
+##
+CONFIG_SCSI_CHELSIO_FCOE=m
+
+##
 ## file: drivers/scsi/cxgbi/cxgb3i/Kconfig
 ##
 CONFIG_SCSI_CXGB3_ISCSI=m
@@ -2884,6 +2930,13 @@
 # CONFIG_SCSI_MPT2SAS_LOGGING is not set
 
 ##
+## file: drivers/scsi/mpt3sas/Kconfig
+##
+CONFIG_SCSI_MPT3SAS=m
+CONFIG_SCSI_MPT3SAS_MAX_SGE=128
+# CONFIG_SCSI_MPT3SAS_LOGGING is not set
+
+##
 ## file: drivers/scsi/mvsas/Kconfig
 ##
 CONFIG_SCSI_MVSAS=m
@@ -2917,6 +2970,7 @@
 ## file: drivers/scsi/ufs/Kconfig
 ##
 CONFIG_SCSI_UFSHCD=m
+CONFIG_SCSI_UFSHCD_PCI=m
 
 ##
 ## file: drivers/spi/Kconfig
@@ -3114,10 +3168,13 @@
 # CONFIG_SERIAL_IFX6X60 is not set
 # CONFIG_SERIAL_PCH_UART is not set
 # CONFIG_SERIAL_XILINX_PS_UART is not set
+CONFIG_SERIAL_RP2=m
+CONFIG_SERIAL_RP2_NR_UARTS=32
 
 ##
 ## file: drivers/tty/serial/8250/Kconfig
 ##
+# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_PNP=y
 CONFIG_SERIAL_8250_PCI=y
 CONFIG_SERIAL_8250_FOURPORT=m
@@ -3258,6 +3315,7 @@
 CONFIG_USB_SERIAL_IR=m
 CONFIG_USB_SERIAL_EDGEPORT=m
 CONFIG_USB_SERIAL_EDGEPORT_TI=m
+CONFIG_USB_SERIAL_F81232=m
 CONFIG_USB_SERIAL_GARMIN=m
 CONFIG_USB_SERIAL_IPW=m
 CONFIG_USB_SERIAL_IUU=m
@@ -3266,6 +3324,7 @@
 CONFIG_USB_SERIAL_KLSI=m
 CONFIG_USB_SERIAL_KOBIL_SCT=m
 CONFIG_USB_SERIAL_MCT_U232=m
+CONFIG_USB_SERIAL_METRO=m
 CONFIG_USB_SERIAL_MOS7720=m
 CONFIG_USB_SERIAL_MOS7715_PARPORT=y
 CONFIG_USB_SERIAL_MOS7840=m
@@ -3289,8 +3348,11 @@
 CONFIG_USB_SERIAL_OMNINET=m
 CONFIG_USB_SERIAL_OPTICON=m
 CONFIG_USB_SERIAL_VIVOPAY_SERIAL=m
+CONFIG_USB_SERIAL_XSENS_MT=m
 CONFIG_USB_SERIAL_ZIO=m
+CONFIG_USB_SERIAL_ZTE=m
 CONFIG_USB_SERIAL_SSU100=m
+CONFIG_USB_SERIAL_QT2=m
 CONFIG_USB_SERIAL_DEBUG=m
 
 ##
@@ -4001,7 +4063,8 @@
 # CONFIG_DEBUG_BLK_CGROUP is not set
 CONFIG_UTS_NS=y
 CONFIG_IPC_NS=y
-CONFIG_USER_NS=y
+#. Do not enable this without discussion of the security implications
+# CONFIG_USER_NS is not set
 CONFIG_PID_NS=y
 CONFIG_NET_NS=y
 CONFIG_SCHED_AUTOGROUP=y
@@ -4266,6 +4329,7 @@
 ##
 CONFIG_BATMAN_ADV=m
 CONFIG_BATMAN_ADV_BLA=y
+CONFIG_BATMAN_ADV_DAT=y
 # CONFIG_BATMAN_ADV_DEBUG is not set
 
 ##
@@ -4301,6 +4365,7 @@
 ##
 CONFIG_BRIDGE=m
 CONFIG_BRIDGE_IGMP_SNOOPING=y
+CONFIG_BRIDGE_VLAN_FILTERING=y
 
 ##
 ## file: net/bridge/netfilter/Kconfig
@@ -4594,9 +4659,11 @@
 CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
 CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
 CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
+CONFIG_NETFILTER_XT_MATCH_BPF=m
 CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
 CONFIG_NETFILTER_XT_MATCH_COMMENT=m
 CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
+CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m
 CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
 CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
 CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
@@ -4692,6 +4759,11 @@
 # CONFIG_NFC_HCI is not set
 
 ##
+## file: net/nfc/llcp/Kconfig
+##
+CONFIG_NFC_LLCP=y
+
+##
 ## file: net/nfc/nci/Kconfig
 ##
 CONFIG_NFC_NCI=m
@@ -4908,6 +4980,12 @@
 CONFIG_SECURITY_TOMOYO=y
 
 ##
+## file: security/yama/Kconfig
+##
+CONFIG_SECURITY_YAMA=y
+CONFIG_SECURITY_YAMA_STACKED=y
+
+##
 ## file: sound/Kconfig
 ##
 CONFIG_SOUND=m
@@ -4950,6 +5028,7 @@
 CONFIG_SND_FIREWIRE=y
 CONFIG_SND_FIREWIRE_SPEAKERS=m
 CONFIG_SND_ISIGHT=m
+CONFIG_SND_SCS1X=m
 
 ##
 ## file: sound/pci/Kconfig
@@ -5004,6 +5083,8 @@
 CONFIG_SND_HDA_CODEC_CIRRUS=y
 CONFIG_SND_HDA_CODEC_CONEXANT=y
 CONFIG_SND_HDA_CODEC_CA0110=y
+CONFIG_SND_HDA_CODEC_CA0132=y
+CONFIG_SND_HDA_CODEC_CA0132_DSP=y
 CONFIG_SND_HDA_CODEC_CMEDIA=y
 CONFIG_SND_HDA_CODEC_SI3054=y
 CONFIG_SND_HDA_GENERIC=y

Modified: dists/trunk/linux/debian/config/hppa/config
==============================================================================
--- dists/trunk/linux/debian/config/hppa/config	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/hppa/config	Sun Jun  2 16:44:22 2013	(r20174)
@@ -37,7 +37,6 @@
 ## file: drivers/block/Kconfig
 ##
 # CONFIG_BLK_DEV_FD is not set
-# CONFIG_BLK_DEV_XD is not set
 # CONFIG_PARIDE is not set
 # CONFIG_BLK_CPQ_DA is not set
 # CONFIG_BLK_CPQ_CISS_DA is not set
@@ -213,7 +212,6 @@
 ## file: drivers/net/ethernet/3com/Kconfig
 ##
 CONFIG_NET_VENDOR_3COM=y
-CONFIG_EL1=m
 CONFIG_EL3=m
 # CONFIG_3C515 is not set
 CONFIG_PCMCIA_3C574=m
@@ -224,20 +222,11 @@
 ##
 ## file: drivers/net/ethernet/8390/Kconfig
 ##
-CONFIG_EL2=m
-CONFIG_AC3200=m
 CONFIG_PCMCIA_AXNET=m
-CONFIG_E2100=m
-CONFIG_ES3210=m
-CONFIG_HPLAN_PLUS=m
-CONFIG_HPLAN=m
-CONFIG_LNE390=m
 CONFIG_NE2000=m
 CONFIG_NE2K_PCI=m
-CONFIG_NE3210=m
 CONFIG_PCMCIA_PCNET=m
 CONFIG_ULTRA=m
-CONFIG_ULTRA32=m
 CONFIG_WD80x3=m
 
 ##
@@ -250,7 +239,6 @@
 ##
 CONFIG_AMD8111_ETH=m
 # CONFIG_LANCE is not set
-CONFIG_DEPCA=m
 CONFIG_PCMCIA_NMCLAN=m
 # CONFIG_NI65 is not set
 
@@ -267,7 +255,6 @@
 ##
 ## file: drivers/net/ethernet/dec/Kconfig
 ##
-CONFIG_EWRK3=m
 
 ##
 ## file: drivers/net/ethernet/dec/tulip/Kconfig
@@ -290,9 +277,7 @@
 ##
 ## file: drivers/net/ethernet/fujitsu/Kconfig
 ##
-CONFIG_AT1700=m
 CONFIG_PCMCIA_FMVJ18X=m
-CONFIG_ETH16I=m
 
 ##
 ## file: drivers/net/ethernet/hp/Kconfig
@@ -302,15 +287,7 @@
 ##
 ## file: drivers/net/ethernet/i825xx/Kconfig
 ##
-CONFIG_ELPLUS=m
-CONFIG_EL16=m
-CONFIG_APRICOT=m
-CONFIG_EEXPRESS=m
-CONFIG_EEXPRESS_PRO=m
 CONFIG_LASI_82596=m
-CONFIG_LP486E=m
-# CONFIG_NI52 is not set
-CONFIG_ZNET=m
 
 ##
 ## file: drivers/net/ethernet/intel/Kconfig
@@ -350,7 +327,6 @@
 ##
 ## file: drivers/net/ethernet/seeq/Kconfig
 ##
-CONFIG_SEEQ8005=m
 
 ##
 ## file: drivers/net/ethernet/sis/Kconfig

Modified: dists/trunk/linux/debian/config/hppa/config.parisc
==============================================================================
--- dists/trunk/linux/debian/config/hppa/config.parisc	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/hppa/config.parisc	Sun Jun  2 16:44:22 2013	(r20174)
@@ -11,7 +11,6 @@
 ##
 ## file: drivers/net/ethernet/racal/Kconfig
 ##
-# CONFIG_NI5010 is not set
 
 ##
 ## file: drivers/net/ethernet/ti/Kconfig

Modified: dists/trunk/linux/debian/config/hppa/config.parisc64
==============================================================================
--- dists/trunk/linux/debian/config/hppa/config.parisc64	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/hppa/config.parisc64	Sun Jun  2 16:44:22 2013	(r20174)
@@ -11,7 +11,6 @@
 ##
 ## file: drivers/net/ethernet/racal/Kconfig
 ##
-# CONFIG_NI5010 is not set
 
 ##
 ## file: mm/Kconfig

Modified: dists/trunk/linux/debian/config/i386/config.486
==============================================================================
--- dists/trunk/linux/debian/config/i386/config.486	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/i386/config.486	Sun Jun  2 16:44:22 2013	(r20174)
@@ -59,10 +59,6 @@
 ## file: drivers/net/ethernet/8390/Kconfig
 ##
 CONFIG_NET_VENDOR_8390=y
-CONFIG_ES3210=m
-CONFIG_LNE390=m
-CONFIG_NE3210=m
-CONFIG_ULTRA32=m
 
 ##
 ## file: drivers/net/ethernet/i825xx/Kconfig
@@ -78,7 +74,6 @@
 ## file: drivers/net/ethernet/racal/Kconfig
 ##
 CONFIG_NET_VENDOR_RACAL=y
-CONFIG_NI5010=m
 
 ##
 ## file: drivers/net/hamradio/Kconfig

Modified: dists/trunk/linux/debian/config/i386/config.686-pae
==============================================================================
--- dists/trunk/linux/debian/config/i386/config.686-pae	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/i386/config.686-pae	Sun Jun  2 16:44:22 2013	(r20174)
@@ -35,7 +35,6 @@
 ##
 ## file: drivers/net/ethernet/racal/Kconfig
 ##
-# CONFIG_NI5010 is not set
 
 ##
 ## file: drivers/net/hamradio/Kconfig

Modified: dists/trunk/linux/debian/config/ia64/config
==============================================================================
--- dists/trunk/linux/debian/config/ia64/config	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/ia64/config	Sun Jun  2 16:44:22 2013	(r20174)
@@ -70,7 +70,7 @@
 ## file: drivers/acpi/Kconfig
 ##
 CONFIG_ACPI_DOCK=y
-CONFIG_ACPI_PCI_SLOT=m
+CONFIG_ACPI_PCI_SLOT=y
 CONFIG_ACPI_CONTAINER=y
 
 ##

Modified: dists/trunk/linux/debian/config/kernelarch-x86/config
==============================================================================
--- dists/trunk/linux/debian/config/kernelarch-x86/config	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/kernelarch-x86/config	Sun Jun  2 16:44:22 2013	(r20174)
@@ -150,8 +150,8 @@
 CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
 CONFIG_ACPI_THERMAL=m
 # CONFIG_ACPI_DEBUG is not set
-CONFIG_ACPI_PCI_SLOT=m
-CONFIG_ACPI_CONTAINER=m
+CONFIG_ACPI_PCI_SLOT=y
+CONFIG_ACPI_CONTAINER=y
 CONFIG_ACPI_HOTPLUG_MEMORY=m
 CONFIG_ACPI_SBS=m
 CONFIG_ACPI_HED=m
@@ -493,6 +493,7 @@
 ##
 CONFIG_HYPERV=m
 CONFIG_HYPERV_UTILS=m
+CONFIG_HYPERV_BALLOON=m
 
 ##
 ## file: drivers/hwmon/Kconfig
@@ -715,6 +716,11 @@
 CONFIG_I2O_PROC=m
 
 ##
+## file: drivers/mfd/Kconfig
+##
+CONFIG_LPC_ICH=m
+
+##
 ## file: drivers/misc/Kconfig
 ##
 CONFIG_IBM_ASM=m
@@ -727,6 +733,7 @@
 ## file: drivers/misc/mei/Kconfig
 ##
 CONFIG_INTEL_MEI=m
+CONFIG_INTEL_MEI_ME=y
 
 ##
 ## file: drivers/misc/vmw_vmci/Kconfig
@@ -919,8 +926,6 @@
 ## file: drivers/net/ethernet/dlink/Kconfig
 ##
 CONFIG_NET_VENDOR_DLINK=y
-CONFIG_DE600=m
-CONFIG_DE620=m
 CONFIG_SUNDANCE=m
 # CONFIG_SUNDANCE_MMIO is not set
 
@@ -1488,6 +1493,16 @@
 CONFIG_USB_SL811_CS=m
 
 ##
+## file: drivers/vfio/Kconfig
+##
+CONFIG_VFIO=m
+
+##
+## file: drivers/vfio/pci/Kconfig
+##
+CONFIG_VFIO_PCI=m
+
+##
 ## file: drivers/video/Kconfig
 ##
 CONFIG_VIDEO_OUTPUT_CONTROL=m
@@ -1565,6 +1580,7 @@
 CONFIG_IBMASR=m
 CONFIG_WAFER_WDT=m
 CONFIG_I6300ESB_WDT=m
+CONFIG_IE6XX_WDT=m
 CONFIG_IT8712F_WDT=m
 CONFIG_HP_WATCHDOG=m
 CONFIG_HPWDT_NMI_DECODING=y
@@ -1573,6 +1589,7 @@
 CONFIG_60XX_WDT=m
 CONFIG_SBC8360_WDT=m
 CONFIG_CPU5_WDT=m
+CONFIG_VIA_WDT=m
 CONFIG_W83627HF_WDT=m
 CONFIG_W83877F_WDT=m
 CONFIG_W83977F_WDT=m

Modified: dists/trunk/linux/debian/config/kernelarch-x86/config-arch-32
==============================================================================
--- dists/trunk/linux/debian/config/kernelarch-x86/config-arch-32	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/kernelarch-x86/config-arch-32	Sun Jun  2 16:44:22 2013	(r20174)
@@ -87,7 +87,6 @@
 ##
 ## file: drivers/block/Kconfig
 ##
-CONFIG_BLK_DEV_XD=m
 CONFIG_BLK_DEV_RAM_SIZE=8192
 
 ##
@@ -247,7 +246,6 @@
 ## file: drivers/net/ethernet/3com/Kconfig
 ##
 CONFIG_NET_VENDOR_3COM=y
-CONFIG_EL1=m
 CONFIG_EL3=m
 CONFIG_3C515=m
 
@@ -255,11 +253,6 @@
 ## file: drivers/net/ethernet/8390/Kconfig
 ##
 CONFIG_NET_VENDOR_8390=y
-CONFIG_EL2=m
-CONFIG_AC3200=m
-CONFIG_E2100=m
-CONFIG_HPLAN_PLUS=m
-CONFIG_HPLAN=m
 CONFIG_NE2000=m
 CONFIG_ULTRA=m
 CONFIG_WD80x3=m
@@ -269,7 +262,6 @@
 ##
 CONFIG_NET_VENDOR_AMD=y
 CONFIG_LANCE=m
-CONFIG_DEPCA=m
 CONFIG_NI65=m
 
 ##
@@ -282,27 +274,11 @@
 ## file: drivers/net/ethernet/dec/Kconfig
 ##
 CONFIG_NET_VENDOR_DEC=y
-CONFIG_EWRK3=m
 
 ##
 ## file: drivers/net/ethernet/fujitsu/Kconfig
 ##
 CONFIG_NET_VENDOR_FUJITSU=y
-CONFIG_AT1700=m
-CONFIG_ETH16I=m
-
-##
-## file: drivers/net/ethernet/i825xx/Kconfig
-##
-CONFIG_NET_VENDOR_I825XX=y
-CONFIG_ELPLUS=m
-CONFIG_EL16=m
-CONFIG_APRICOT=m
-CONFIG_EEXPRESS=m
-CONFIG_EEXPRESS_PRO=m
-CONFIG_LP486E=m
-CONFIG_NI52=m
-CONFIG_ZNET=m
 
 ##
 ## file: drivers/net/ethernet/realtek/Kconfig
@@ -313,7 +289,6 @@
 ## file: drivers/net/ethernet/seeq/Kconfig
 ##
 CONFIG_NET_VENDOR_SEEQ=y
-CONFIG_SEEQ8005=m
 
 ##
 ## file: drivers/net/ethernet/smsc/Kconfig

Modified: dists/trunk/linux/debian/config/kernelarch-x86/config-arch-64
==============================================================================
--- dists/trunk/linux/debian/config/kernelarch-x86/config-arch-64	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/kernelarch-x86/config-arch-64	Sun Jun  2 16:44:22 2013	(r20174)
@@ -48,6 +48,7 @@
 ## file: drivers/block/Kconfig
 ##
 CONFIG_BLK_DEV_RAM_SIZE=65536
+CONFIG_BLK_DEV_RSXX=m
 
 ##
 ## file: drivers/char/agp/Kconfig

Modified: dists/trunk/linux/debian/config/m68k/config.amiga
==============================================================================
--- dists/trunk/linux/debian/config/m68k/config.amiga	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/m68k/config.amiga	Sun Jun  2 16:44:22 2013	(r20174)
@@ -157,12 +157,10 @@
 ##
 CONFIG_A2065=m
 CONFIG_ARIADNE=m
-# CONFIG_DEPCA is not set
 
 ##
 ## file: drivers/net/ethernet/fujitsu/Kconfig
 ##
-# CONFIG_AT1700 is not set
 
 ##
 ## file: drivers/net/ethernet/hp/Kconfig

Modified: dists/trunk/linux/debian/config/mips/config
==============================================================================
--- dists/trunk/linux/debian/config/mips/config	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/mips/config	Sun Jun  2 16:44:22 2013	(r20174)
@@ -5,4 +5,5 @@
 CONFIG_CPU_BIG_ENDIAN=y
 # CONFIG_CPU_LITTLE_ENDIAN is not set
 ## end choice
+CONFIG_KEXEC=y
 # CONFIG_RAPIDIO is not set

Modified: dists/trunk/linux/debian/config/mips/config.4kc-malta
==============================================================================
--- dists/trunk/linux/debian/config/mips/config.4kc-malta	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/mips/config.4kc-malta	Sun Jun  2 16:44:22 2013	(r20174)
@@ -75,7 +75,6 @@
 # CONFIG_HZ_1000 is not set
 # CONFIG_HZ_1024 is not set
 ## end choice
-# CONFIG_KEXEC is not set
 CONFIG_PCI=y
 
 ##
@@ -640,8 +639,6 @@
 ##
 ## file: drivers/net/ethernet/dlink/Kconfig
 ##
-CONFIG_DE600=m
-CONFIG_DE620=m
 CONFIG_SUNDANCE=m
 # CONFIG_SUNDANCE_MMIO is not set
 

Modified: dists/trunk/linux/debian/config/mips/config.5kc-malta
==============================================================================
--- dists/trunk/linux/debian/config/mips/config.5kc-malta	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/mips/config.5kc-malta	Sun Jun  2 16:44:22 2013	(r20174)
@@ -75,7 +75,6 @@
 # CONFIG_HZ_1000 is not set
 # CONFIG_HZ_1024 is not set
 ## end choice
-# CONFIG_KEXEC is not set
 CONFIG_PCI=y
 CONFIG_MIPS32_COMPAT=y
 CONFIG_MIPS32_O32=y
@@ -644,8 +643,6 @@
 ##
 ## file: drivers/net/ethernet/dlink/Kconfig
 ##
-CONFIG_DE600=m
-CONFIG_DE620=m
 CONFIG_SUNDANCE=m
 # CONFIG_SUNDANCE_MMIO is not set
 

Modified: dists/trunk/linux/debian/config/mips/config.r4k-ip22
==============================================================================
--- dists/trunk/linux/debian/config/mips/config.r4k-ip22	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/mips/config.r4k-ip22	Sun Jun  2 16:44:22 2013	(r20174)
@@ -295,20 +295,11 @@
 ##
 ## file: drivers/net/ethernet/8390/Kconfig
 ##
-CONFIG_E2100=m
-CONFIG_HPLAN_PLUS=m
-CONFIG_HPLAN=m
 CONFIG_NE2000=m
 CONFIG_ULTRA=m
-CONFIG_ULTRA32=m
 CONFIG_WD80x3=m
 
 ##
-## file: drivers/net/ethernet/amd/Kconfig
-##
-# CONFIG_DEPCA is not set
-
-##
 ## file: drivers/net/ethernet/davicom/Kconfig
 ##
 # CONFIG_DM9000 is not set
@@ -316,7 +307,6 @@
 ##
 ## file: drivers/net/ethernet/dec/Kconfig
 ##
-CONFIG_EWRK3=m
 
 ##
 ## file: drivers/net/ethernet/dec/tulip/Kconfig
@@ -326,8 +316,6 @@
 ##
 ## file: drivers/net/ethernet/fujitsu/Kconfig
 ##
-# CONFIG_AT1700 is not set
-CONFIG_ETH16I=m
 
 ##
 ## file: drivers/net/ethernet/hp/Kconfig
@@ -335,13 +323,6 @@
 # CONFIG_HP100 is not set
 
 ##
-## file: drivers/net/ethernet/i825xx/Kconfig
-##
-CONFIG_EEXPRESS=m
-CONFIG_EEXPRESS_PRO=m
-CONFIG_LP486E=m
-
-##
 ## file: drivers/net/ethernet/racal/Kconfig
 ##
 # CONFIG_NET_VENDOR_RACAL is not set
@@ -349,7 +330,6 @@
 ##
 ## file: drivers/net/ethernet/seeq/Kconfig
 ##
-CONFIG_SEEQ8005=m
 CONFIG_SGISEEQ=y
 
 ##

Modified: dists/trunk/linux/debian/config/powerpc/config
==============================================================================
--- dists/trunk/linux/debian/config/powerpc/config	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/powerpc/config	Sun Jun  2 16:44:22 2013	(r20174)
@@ -207,7 +207,7 @@
 ##
 ## file: drivers/gpu/drm/radeon/Kconfig
 ##
-# CONFIG_DRM_RADEON_KMS is not set
+CONFIG_DRM_RADEON_UMS=y
 
 ##
 ## file: drivers/hid/usbhid/Kconfig

Modified: dists/trunk/linux/debian/config/powerpc/config.powerpc
==============================================================================
--- dists/trunk/linux/debian/config/powerpc/config.powerpc	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/powerpc/config.powerpc	Sun Jun  2 16:44:22 2013	(r20174)
@@ -43,11 +43,6 @@
 # CONFIG_PPC_PREP is not set
 
 ##
-## file: arch/powerpc/sysdev/bestcomm/Kconfig
-##
-CONFIG_PPC_BESTCOMM=m
-
-##
 ## file: drivers/ata/Kconfig
 ##
 CONFIG_PATA_MPC52xx=m
@@ -58,6 +53,12 @@
 CONFIG_MAC_FLOPPY=y
 
 ##
+## file: drivers/dma/Kconfig
+##
+CONFIG_DMADEVICES=y
+CONFIG_PPC_BESTCOMM=m
+
+##
 ## file: drivers/macintosh/Kconfig
 ##
 CONFIG_SENSORS_AMS=m

Modified: dists/trunk/linux/debian/config/powerpc/config.powerpc64
==============================================================================
--- dists/trunk/linux/debian/config/powerpc/config.powerpc64	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/config/powerpc/config.powerpc64	Sun Jun  2 16:44:22 2013	(r20174)
@@ -84,6 +84,7 @@
 ## file: drivers/block/Kconfig
 ##
 # CONFIG_MAC_FLOPPY is not set
+CONFIG_BLK_DEV_RSXX=m
 
 ##
 ## file: drivers/char/hw_random/Kconfig

Modified: dists/trunk/linux/debian/installer/amd64/modules/amd64/nic-extra-modules
==============================================================================
--- dists/trunk/linux/debian/installer/amd64/modules/amd64/nic-extra-modules	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/installer/amd64/modules/amd64/nic-extra-modules	Sun Jun  2 16:44:22 2013	(r20174)
@@ -1,2 +1 @@
 #include <nic-extra-modules>
-eexpress -

Modified: dists/trunk/linux/debian/installer/modules/md-modules
==============================================================================
--- dists/trunk/linux/debian/installer/modules/md-modules	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/installer/modules/md-modules	Sun Jun  2 16:44:22 2013	(r20174)
@@ -6,6 +6,9 @@
 raid1
 raid456
 raid10
-xor
 dm-mirror
 dm-snapshot
+
+# RAID-related libraries, also used by btrfs
+raid6_pq
+xor

Modified: dists/trunk/linux/debian/installer/modules/nic-extra-modules
==============================================================================
--- dists/trunk/linux/debian/installer/modules/nic-extra-modules	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/installer/modules/nic-extra-modules	Sun Jun  2 16:44:22 2013	(r20174)
@@ -1,29 +1,17 @@
-82596 ?
-ac3200 ?
 alx ?
 amd8111e ?
-at1700 ?
 cs89x0 ?
-depca ?
 dl2k
 dmfe
-e2100 ?
-eepro ?
 enc28j60
 et131x ?
 forcedeth ?
 hamachi
-hp-plus ?
-hp100 ?
 igb
 ipg ?
 lance ?
-lne390 ?
-lp486e ?
 ne ?
 ne2 ?
-ni5010 ?
-ni52 ?
 ni65 ?
 niu ?
 r8169
@@ -35,37 +23,24 @@
 tlan ?
 typhoon
 yellowfin
-3c501 ?
-3c503 ?
-3c505 ?
-3c507 ?
 3c509 ?
 3c515 ?
 3c523 ?
 3c527 ?
 8139cp
-eexpress ?
 epic100
-es3210 ?
-eth16i ?
-ewrk3 ?
 fealnx
 ns83820
-smc-ultra32 ?
 smc9194 ?
 starfire
 sundance
 arlan ?
 de2104x ?
-de600 ?
-de620 ?
 defxx ?
 e1000 ?
 e1000e ?
-hp ?
 ixgb ?
 ixgbe ?
-ne3210 ?
 pcnet32 ?
 s2io ?
 sis190 ?
@@ -73,7 +48,6 @@
 via-rhine ?
 via-velocity ?
 wd ?
-znet ?
 bnx2 ?
 bnx2x ?
 cassini ?

Modified: dists/trunk/linux/debian/installer/modules/nic-usb-modules
==============================================================================
--- dists/trunk/linux/debian/installer/modules/nic-usb-modules	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/installer/modules/nic-usb-modules	Sun Jun  2 16:44:22 2013	(r20174)
@@ -1,18 +1,19 @@
-catc
-kaweth
-pegasus
-rtl8150
-usbnet
-# New in 2.6
+# USB wired network modules (USB wireless goes in nic-wireless-modules)
 asix ?
-zd1201 ?
+ax88179_178a ?
+catc
 cdc_ether ?
-mcs7830 ?
 dm9601 ?
-zd1211rw ?
-rndis_wlan ?
-rtl8187 ?
 g_ether ?
 int51x1 ?
+kaweth
+mcs7830 ?
+pegasus
+rndis_wlan ?
+rtl8150
+rtl8187 ?
 smsc75xx ?
 smsc95xx ?
+usbnet
+zd1201 ?
+zd1211rw ?

Modified: dists/trunk/linux/debian/installer/modules/nic-wireless-modules
==============================================================================
--- dists/trunk/linux/debian/installer/modules/nic-wireless-modules	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/installer/modules/nic-wireless-modules	Sun Jun  2 16:44:22 2013	(r20174)
@@ -1,27 +1,38 @@
-ieee80211_crypt_wep ?
+adm8211 ?
+ar5523 ?
+at76c50x-usb ?
+ath5k ?
+ath9k ?
+ath9k_htc ?
 atmel_pci ?
+b43 ?
+b43legacy ?
+brcmsmac ?
+carl9170 ?
 hermes ?
+hostap_pci ?
 ipw2100 ?
 ipw2200 ?
+iwl3945 ?
+iwl4965 ?
+iwldvm ?
+iwlmvm ?
+iwlwifi ?
+libertas_tf_usb ?
+mwifiex_pcie ?
+mwl8k ?
 orinoco ?
-hostap_pci ?
-orinoco_plx ?
 orinoco_nortel ?
+orinoco_plx ?
 orinoco_tmd ?
-prism54 ?
+orinoco_usb ?
 p54pci ?
 p54usb
-wavelan ?
-usb8xxx ?
-ath5k ?
-ath9k ?
-ath9k_htc ?
-carl9170 ?
-iwlwifi ?
-iwl3945 ?
-iwl4965 ?
-b43 ?
-brcmsmac ?
+prism2_usb ?
+prism54 ?
+r8187se ?
+r8192e_pci ?
+r8712u ?
 rt2400pci ?
 rt2500pci ?
 rt2500usb ?
@@ -29,23 +40,16 @@
 rt2800usb ?
 rt61pci ?
 rt73usb ?
-adm8211 ?
-at76c50x-usb ?
-b43legacy ?
-libertas_tf_usb ?
-mwifiex_pcie ?
-mwl8k ?
-orinoco_usb ?
 rtl8180 ?
 rtl8192ce ?
 rtl8192cu ?
 rtl8192de ?
 rtl8192se ?
-r8187se ?
-r8192e_pci ?
-r8712u ?
+rtl8723ae ?
+usb8xxx ?
 vt6656_stage ?
-prism2_usb ?
+wavelan ?
+wil6210 ?
 
 # lib80211 encryption algorithms
 lib80211_crypt_wep ?

Modified: dists/trunk/linux/debian/installer/modules/scsi-extra-modules
==============================================================================
--- dists/trunk/linux/debian/installer/modules/scsi-extra-modules	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/installer/modules/scsi-extra-modules	Sun Jun  2 16:44:22 2013	(r20174)
@@ -1,44 +1,49 @@
+# tape
+osst
+st
+
+# host adapters
+3w-9xxx ?
+3w-sas ?
 3w-xxxx
-DAC960
 aacraid
 aha152x ?
 aic7xxx_old
+arcmsr ?
+bnx2fc ?
 cciss
 cpqarray ?
-i2o_block ?
+csiostor ?
+DAC960
 dtc ?
 eata ?
 fdomain ?
+fnic ?
 gdth ?
 hpsa ?
+hptiop ?
+i2o_block ?
 ibmmca ?
 ips
+isci ?
+lpfc ?
 megaraid ?
 megaraid_mbox ?
 megaraid_mm ?
 megaraid_sas ?
+mpt2sas ?
+mpt3sas ?
 mptbase
+mptfc ?
+mptsas ?
 mptscsih
 mptspi ?
-mptsas ?
-mpt2sas ?
-mptfc ?
 mvsas
-3w-9xxx ?
-3w-sas ?
-lpfc ?
-osst
-st
-sym53c416 ?
-arcmsr ?
-hptiop ?
-qla4xxx ?
-qla2xxx ?
 pm8001 ?
-isci ?
-bnx2fc ?
-fnic ?
 pmcraid ?
-
-# VMWare
+qla2xxx ?
+qla4xxx ?
+sym53c416 ?
+ufshcd ?
+ufshcd-pci ?
 vmw_pvscsi ?

Modified: dists/trunk/linux/debian/installer/modules/serial-modules
==============================================================================
--- dists/trunk/linux/debian/installer/modules/serial-modules	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/installer/modules/serial-modules	Sun Jun  2 16:44:22 2013	(r20174)
@@ -1,2 +1,3 @@
+rp2 ?
 serial_cs
 synclink_cs ?

Modified: dists/trunk/linux/debian/installer/modules/usb-serial-modules
==============================================================================
--- dists/trunk/linux/debian/installer/modules/usb-serial-modules	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/installer/modules/usb-serial-modules	Sun Jun  2 16:44:22 2013	(r20174)
@@ -1,7 +1,10 @@
 usbserial
 belkin_sa ?
 digi_acceleport ?
+f81232 ?
 ftdi_sio ?
 mct_u232 ?
 pl2303 ?
+quatech2 ?
 spcp8x5 ?
+zte_ev ?

Modified: dists/trunk/linux/debian/installer/package-list
==============================================================================
--- dists/trunk/linux/debian/installer/package-list	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/installer/package-list	Sun Jun  2 16:44:22 2013	(r20174)
@@ -22,7 +22,7 @@
  This package contains rare NIC drivers for the kernel.
 
 Package: nic-wireless-modules
-Depends: kernel-image, nic-shared-modules, core-modules, usb-modules, mmc-modules, pcmcia-modules, crypto-core-modules, crc-modules
+Depends: kernel-image, nic-shared-modules, core-modules, usb-modules, mmc-modules, pcmcia-modules, crc-modules
 Priority: standard
 Description: Wireless NIC drivers
  This package contains wireless NIC drivers for the kernel.
@@ -134,7 +134,7 @@
  This package contains the IPv6 driver for the kernel.
 
 Package: btrfs-modules
-Depends: kernel-image, core-modules, crc-modules, zlib-modules, lzo-modules
+Depends: kernel-image, core-modules, crc-modules, zlib-modules, lzo-modules, md-modules
 Priority: extra
 Description: BTRFS filesystem support
  This package contains the BTRFS filesystem module for the kernel.

Modified: dists/trunk/linux/debian/installer/powerpc/modules/powerpc-powerpc64/scsi-modules
==============================================================================
--- dists/trunk/linux/debian/installer/powerpc/modules/powerpc-powerpc64/scsi-modules	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/installer/powerpc/modules/powerpc-powerpc64/scsi-modules	Sun Jun  2 16:44:22 2013	(r20174)
@@ -1,4 +1,4 @@
 #include <scsi-modules>
 
-ibmvscsic
+ibmvscsi
 ps3rom

Copied: dists/trunk/linux/debian/installer/powerpcspe/modules/powerpc (from r20172, dists/sid/linux/debian/installer/powerpcspe/modules/powerpc)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/installer/powerpcspe/modules/powerpc	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/installer/powerpcspe/modules/powerpc)
@@ -0,0 +1 @@
+link ../../powerpc/modules/powerpc
\ No newline at end of file

Copied: dists/trunk/linux/debian/installer/powerpcspe/modules/powerpcspe (from r20172, dists/sid/linux/debian/installer/powerpcspe/modules/powerpcspe)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/installer/powerpcspe/modules/powerpcspe	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/installer/powerpcspe/modules/powerpcspe)
@@ -0,0 +1 @@
+link ../../powerpc/modules/powerpc
\ No newline at end of file

Copied: dists/trunk/linux/debian/installer/powerpcspe/modules/powerpcspe-powerpcspe-miboot (from r20172, dists/sid/linux/debian/installer/powerpcspe/modules/powerpcspe-powerpcspe-miboot)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/installer/powerpcspe/modules/powerpcspe-powerpcspe-miboot	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/installer/powerpcspe/modules/powerpcspe-powerpcspe-miboot)
@@ -0,0 +1 @@
+link ../../powerpc/modules/powerpc-powerpc-miboot/
\ No newline at end of file

Copied: dists/trunk/linux/debian/installer/ppc64/modules/powerpc (from r20172, dists/sid/linux/debian/installer/ppc64/modules/powerpc)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/installer/ppc64/modules/powerpc	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/installer/ppc64/modules/powerpc)
@@ -0,0 +1 @@
+link ../../powerpc/modules/powerpc
\ No newline at end of file

Copied: dists/trunk/linux/debian/installer/ppc64/modules/ppc64 (from r20172, dists/sid/linux/debian/installer/ppc64/modules/ppc64)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/installer/ppc64/modules/ppc64	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/installer/ppc64/modules/ppc64)
@@ -0,0 +1 @@
+link ../../powerpc/modules/powerpc-powerpc64
\ No newline at end of file

Copied: dists/trunk/linux/debian/installer/ppc64/package-list (from r20172, dists/sid/linux/debian/installer/ppc64/package-list)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/installer/ppc64/package-list	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/installer/ppc64/package-list)
@@ -0,0 +1 @@
+link ../powerpc/package-list
\ No newline at end of file

Copied: dists/trunk/linux/debian/patches/bugfix/all/iscsi-target-fix-heap-buffer-overflow-on-error.patch (from r20172, dists/sid/linux/debian/patches/bugfix/all/iscsi-target-fix-heap-buffer-overflow-on-error.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/bugfix/all/iscsi-target-fix-heap-buffer-overflow-on-error.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/bugfix/all/iscsi-target-fix-heap-buffer-overflow-on-error.patch)
@@ -0,0 +1,62 @@
+From: Kees Cook <keescook at chromium.org>
+Date: Thu, 23 May 2013 17:32:17 +0000
+Subject: iscsi-target: fix heap buffer overflow on error
+
+commit cea4dcfdad926a27a18e188720efe0f2c9403456 upstream.
+
+If a key was larger than 64 bytes, as checked by iscsi_check_key(), the
+error response packet, generated by iscsi_add_notunderstood_response(),
+would still attempt to copy the entire key into the packet, overflowing
+the structure on the heap.
+
+Remote preauthentication kernel memory corruption was possible if a
+target was configured and listening on the network.
+
+CVE-2013-2850
+
+Signed-off-by: Kees Cook <keescook at chromium.org>
+Cc: stable at vger.kernel.org
+Signed-off-by: Nicholas Bellinger <nab at linux-iscsi.org>
+---
+diff --git a/drivers/target/iscsi/iscsi_target_parameters.c b/drivers/target/iscsi/iscsi_target_parameters.c
+index c2185fc..e382221 100644
+--- a/drivers/target/iscsi/iscsi_target_parameters.c
++++ b/drivers/target/iscsi/iscsi_target_parameters.c
+@@ -758,9 +758,9 @@ static int iscsi_add_notunderstood_response(
+ 	}
+ 	INIT_LIST_HEAD(&extra_response->er_list);
+ 
+-	strncpy(extra_response->key, key, strlen(key) + 1);
+-	strncpy(extra_response->value, NOTUNDERSTOOD,
+-			strlen(NOTUNDERSTOOD) + 1);
++	strlcpy(extra_response->key, key, sizeof(extra_response->key));
++	strlcpy(extra_response->value, NOTUNDERSTOOD,
++		sizeof(extra_response->value));
+ 
+ 	list_add_tail(&extra_response->er_list,
+ 			&param_list->extra_response_list);
+@@ -1629,8 +1629,6 @@ int iscsi_decode_text_input(
+ 
+ 		if (phase & PHASE_SECURITY) {
+ 			if (iscsi_check_for_auth_key(key) > 0) {
+-				char *tmpptr = key + strlen(key);
+-				*tmpptr = '=';
+ 				kfree(tmpbuf);
+ 				return 1;
+ 			}
+diff --git a/drivers/target/iscsi/iscsi_target_parameters.h b/drivers/target/iscsi/iscsi_target_parameters.h
+index 915b067..a47046a 100644
+--- a/drivers/target/iscsi/iscsi_target_parameters.h
++++ b/drivers/target/iscsi/iscsi_target_parameters.h
+@@ -1,8 +1,10 @@
+ #ifndef ISCSI_PARAMETERS_H
+ #define ISCSI_PARAMETERS_H
+ 
++#include <scsi/iscsi_proto.h>
++
+ struct iscsi_extra_response {
+-	char key[64];
++	char key[KEY_MAXLEN];
+ 	char value[32];
+ 	struct list_head er_list;
+ } ____cacheline_aligned;

Copied: dists/trunk/linux/debian/patches/bugfix/arm/i2c-imx-add-module_device_table.patch (from r20172, dists/sid/linux/debian/patches/bugfix/arm/i2c-imx-add-module_device_table.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/bugfix/arm/i2c-imx-add-module_device_table.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/bugfix/arm/i2c-imx-add-module_device_table.patch)
@@ -0,0 +1,19 @@
+i2c-imx: allow autoloading on according to dt ids
+
+[ not yet sent upstream ]
+
+Allow udev to autoload the module when booting with device-tree
+
+Signed-off-by: Arnaud Patard <arnaud.patard at rtp-net.org>
+Index: linux/drivers/i2c/busses/i2c-imx.c
+===================================================================
+--- linux.orig/drivers/i2c/busses/i2c-imx.c	2013-04-29 02:36:01.000000000 +0200
++++ linux/drivers/i2c/busses/i2c-imx.c	2013-05-16 08:56:06.000000000 +0200
+@@ -148,6 +148,7 @@ static const struct of_device_id i2c_imx
+ 	{ .compatible = "fsl,imx21-i2c", .data = &imx_i2c_devtype[IMX21_I2C], },
+ 	{ /* sentinel */ }
+ };
++MODULE_DEVICE_TABLE(of, i2c_imx_dt_ids);
+ 
+ static inline int is_imx1_i2c(struct imx_i2c_struct *i2c_imx)
+ {

Copied: dists/trunk/linux/debian/patches/bugfix/arm/imx-sgtl5000-probe-defer.patch (from r20172, dists/sid/linux/debian/patches/bugfix/arm/imx-sgtl5000-probe-defer.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/bugfix/arm/imx-sgtl5000-probe-defer.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/bugfix/arm/imx-sgtl5000-probe-defer.patch)
@@ -0,0 +1,30 @@
+imx-sgtl5000: return E_PROBE_DEFER if ssi/codec not found
+
+If the ssi or codec drivers are not loaded (for instance, because spi or i2c
+bus drivers are not loaded), returning -EINVAL will for people to unload and
+then reload the module to get sound working. Returning E_PROBE_DEFER will
+mitigate this.
+
+[ not sure if upstream will like that ]
+Signed-off-by: Arnaud Patard <arnaud.patard at rtp-net.org>
+
+Index: linux/sound/soc/fsl/imx-sgtl5000.c
+===================================================================
+--- linux.orig/sound/soc/fsl/imx-sgtl5000.c	2013-05-16 09:33:01.000000000 +0200
++++ linux/sound/soc/fsl/imx-sgtl5000.c	2013-05-16 09:35:14.000000000 +0200
+@@ -113,13 +113,13 @@ static int imx_sgtl5000_probe(struct pla
+ 	ssi_pdev = of_find_device_by_node(ssi_np);
+ 	if (!ssi_pdev) {
+ 		dev_err(&pdev->dev, "failed to find SSI platform device\n");
+-		ret = -EINVAL;
++		ret = -EPROBE_DEFER;
+ 		goto fail;
+ 	}
+ 	codec_dev = of_find_i2c_device_by_node(codec_np);
+ 	if (!codec_dev) {
+ 		dev_err(&pdev->dev, "failed to find codec platform device\n");
+-		return -EINVAL;
++		return -EPROBE_DEFER;
+ 	}
+ 
+ 	data = devm_kzalloc(&pdev->dev, sizeof(*data), GFP_KERNEL);

Copied: dists/trunk/linux/debian/patches/bugfix/arm/mvneta-module-fix.patch (from r20172, dists/sid/linux/debian/patches/bugfix/arm/mvneta-module-fix.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/bugfix/arm/mvneta-module-fix.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/bugfix/arm/mvneta-module-fix.patch)
@@ -0,0 +1,69 @@
+Try to fix mvneta when compiled as module
+
+- set "sgmii serdes configuration" register to magical value
+- enable clock earlier
+- move timer callback after setting timer.data
+
+[ discussions about this patch currently done with upstream ] 
+
+Signed-off-by: Arnaud Patard <arnaud.patard at rtp-net.org>
+
+--- a/drivers/net/ethernet/marvell/mvneta.c	2013-04-14 22:17:41.073749379 +0200
++++ b/drivers/net/ethernet/marvell/mvneta.c	2013-04-14 23:22:16.033578898 +0200
+@@ -89,6 +89,8 @@
+ #define      MVNETA_TX_IN_PRGRS                  BIT(1)
+ #define      MVNETA_TX_FIFO_EMPTY                BIT(8)
+ #define MVNETA_RX_MIN_FRAME_SIZE                 0x247c
++#define MVETH_SGMII_SERDES_CFG			 0x24A0
++#define MVETH_SGMII_SERDES_STAT			 0x24A4
+ #define MVNETA_TYPE_PRIO                         0x24bc
+ #define      MVNETA_FORCE_UNI                    BIT(21)
+ #define MVNETA_TXQ_CMD_1                         0x24e4
+@@ -657,6 +659,9 @@ static void mvneta_port_sgmii_config(str
+ 	val = mvreg_read(pp, MVNETA_GMAC_CTRL_2);
+ 	val |= MVNETA_GMAC2_PSC_ENABLE;
+ 	mvreg_write(pp, MVNETA_GMAC_CTRL_2, val);
++
++	/* magic value from https://github.com/yellowback/ubuntu-precise-armadaxp/blob/master/arch/arm/mach-armadaxp/armada_xp_family/ctrlEnv/mvCtrlEnvLib.c:2189 */
++	mvreg_write(pp, MVETH_SGMII_SERDES_CFG, 0xcc7);
+ }
+ 
+ /* Start the Ethernet port RX and TX activity */
+@@ -2729,20 +2734,10 @@ static int mvneta_probe(struct platform_
+ 
+ 	pp = netdev_priv(dev);
+ 
+-	pp->tx_done_timer.function = mvneta_tx_done_timer_callback;
+-	init_timer(&pp->tx_done_timer);
+-	clear_bit(MVNETA_F_TX_DONE_TIMER_BIT, &pp->flags);
+-
+ 	pp->weight = MVNETA_RX_POLL_WEIGHT;
+ 	pp->phy_node = phy_node;
+ 	pp->phy_interface = phy_mode;
+ 
+-	pp->base = of_iomap(dn, 0);
+-	if (pp->base == NULL) {
+-		err = -ENOMEM;
+-		goto err_free_irq;
+-	}
+-
+ 	pp->clk = devm_clk_get(&pdev->dev, NULL);
+ 	if (IS_ERR(pp->clk)) {
+ 		err = PTR_ERR(pp->clk);
+@@ -2751,7 +2746,16 @@ static int mvneta_probe(struct platform_
+ 
+ 	clk_prepare_enable(pp->clk);
+ 
++	pp->base = of_iomap(dn, 0);
++	if (pp->base == NULL) {
++		err = -ENOMEM;
++		goto err_free_irq;
++	}
++
+ 	pp->tx_done_timer.data = (unsigned long)dev;
++	pp->tx_done_timer.function = mvneta_tx_done_timer_callback;
++	init_timer(&pp->tx_done_timer);
++	clear_bit(MVNETA_F_TX_DONE_TIMER_BIT, &pp->flags);
+ 
+ 	pp->tx_ring_size = MVNETA_MAX_TXD;
+ 	pp->rx_ring_size = MVNETA_MAX_RXD;

Added: dists/trunk/linux/debian/patches/features/all/rt/genpatch.py
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/all/rt/genpatch.py	Sun Jun  2 16:44:22 2013	(r20174)
@@ -0,0 +1,40 @@
+#!/usr/bin/python
+
+import os, os.path, re, subprocess, sys
+
+def main(repo, version):
+    up_ver = re.sub(r'-rt\d+$', '', version)
+    patch_dir = 'debian/patches/features/all/rt'
+    old_series = set()
+
+    with open(os.path.join(patch_dir, 'series'), 'r') as series_fh:
+        for line in series_fh:
+            name = line.strip()
+            if name != '' and name[0] != '#':
+                old_series.add(name)
+
+    with open(os.path.join(patch_dir, 'series'), 'w') as series_fh:
+        args = ['git', 'format-patch', 'v%s..v%s-rebase' % (up_ver, version)]
+        env = os.environ.copy()
+        env['GIT_DIR'] = os.path.join(repo, '.git')
+        child = subprocess.Popen(args, cwd=patch_dir, env=env,
+                                 stdout=subprocess.PIPE)
+        with child.stdout as pipe:
+            for line in pipe:
+                series_fh.write(line)
+                name = line.strip('\n')
+                if name in old_series:
+                    old_series.remove(name)
+                else:
+                    print 'Added patch', os.path.join(patch_dir, name)
+
+    for name in old_series:
+        print 'Obsoleted patch', os.path.join(patch_dir, name)
+
+    subprocess.check_call([os.path.join(patch_dir, 'convert-series')])
+
+if __name__ == '__main__':
+    if len(sys.argv) != 3:
+        print >>sys.stderr, "Usage: %s REPO RT-VERSION" % sys.argv[0]
+        sys.exit(2)
+    main(sys.argv[1], sys.argv[2])

Copied: dists/trunk/linux/debian/patches/features/arm/0001-ARM-mvebu-Add-thermal-support-to-Armada-XP-device-tr.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0001-ARM-mvebu-Add-thermal-support-to-Armada-XP-device-tr.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0001-ARM-mvebu-Add-thermal-support-to-Armada-XP-device-tr.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0001-ARM-mvebu-Add-thermal-support-to-Armada-XP-device-tr.patch)
@@ -0,0 +1,35 @@
+From 693a56eaf487140adbe114248e3cd22002fc867d Mon Sep 17 00:00:00 2001
+From: Ezequiel Garcia <ezequiel.garcia at free-electrons.com>
+Date: Tue, 26 Mar 2013 07:16:26 -0300
+Subject: [PATCH] ARM: mvebu: Add thermal support to Armada XP device tree
+
+This patch adds support for the thermal controller available in
+all Armada XP boards. This controller has two 4-byte registers:
+one to read the thermal sensor, the other for sensor initialization.
+
+Signed-off-by: Ezequiel Garcia <ezequiel.garcia at free-electrons.com>
+Acked-by: Andrew Lunn <andrew at lunn.ch>
+Signed-off-by: Jason Cooper <jason at lakedaemon.net>
+---
+ arch/arm/boot/dts/armada-xp.dtsi |    6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/arch/arm/boot/dts/armada-xp.dtsi b/arch/arm/boot/dts/armada-xp.dtsi
+index 1443949..d85fa6a 100644
+--- a/arch/arm/boot/dts/armada-xp.dtsi
++++ b/arch/arm/boot/dts/armada-xp.dtsi
+@@ -151,5 +151,11 @@
+ 			status = "disabled";
+ 		};
+ 
++		thermal at d00182b0 {
++			compatible = "marvell,armadaxp-thermal";
++			reg = <0xd00182b0 0x4
++			       0xd00184d0 0x4>;
++			status = "okay";
++		};
+ 	};
+ };
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0001-thermal-Add-driver-for-Armada-370-XP-SoC-thermal-man.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0001-thermal-Add-driver-for-Armada-370-XP-SoC-thermal-man.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0001-thermal-Add-driver-for-Armada-370-XP-SoC-thermal-man.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0001-thermal-Add-driver-for-Armada-370-XP-SoC-thermal-man.patch)
@@ -0,0 +1,330 @@
+From fa0d654c84c7705d90a2492b4611e1da7ccdf69c Mon Sep 17 00:00:00 2001
+From: Ezequiel Garcia <ezequiel.garcia at free-electrons.com>
+Date: Tue, 2 Apr 2013 01:37:41 +0000
+Subject: [PATCH] thermal: Add driver for Armada 370/XP SoC thermal management
+
+This driver supports both Armada 370 and Armada XP SoC
+thermal management controllers.
+
+Armada 370 has a register to check a valid temperature, whereas
+Armada XP does not. Each has a different initialization (i.e. calibration)
+function. The temperature conversion formula is the same for both.
+
+The controller present in each SoC have a very similar feature set,
+so it corresponds to have one driver to support both of them.
+
+Although this driver may present similarities to Dove and Kirkwood
+thermal driver, the exact differences and coincidences are not fully
+known. For this reason, support is given through a separate driver.
+
+Signed-off-by: Ezequiel Garcia <ezequiel.garcia at free-electrons.com>
+Signed-off-by: Zhang Rui <rui.zhang at intel.com>
+---
+ .../devicetree/bindings/thermal/armada-thermal.txt |   22 ++
+ drivers/thermal/Kconfig                            |    8 +
+ drivers/thermal/Makefile                           |    1 +
+ drivers/thermal/armada_thermal.c                   |  232 ++++++++++++++++++++
+ 4 files changed, 263 insertions(+)
+ create mode 100644 Documentation/devicetree/bindings/thermal/armada-thermal.txt
+ create mode 100644 drivers/thermal/armada_thermal.c
+
+diff --git a/Documentation/devicetree/bindings/thermal/armada-thermal.txt b/Documentation/devicetree/bindings/thermal/armada-thermal.txt
+new file mode 100644
+index 0000000..fff93d5
+--- /dev/null
++++ b/Documentation/devicetree/bindings/thermal/armada-thermal.txt
+@@ -0,0 +1,22 @@
++* Marvell Armada 370/XP thermal management
++
++Required properties:
++
++- compatible:	Should be set to one of the following:
++		marvell,armada370-thermal
++		marvell,armadaxp-thermal
++
++- reg:		Device's register space.
++		Two entries are expected, see the examples below.
++		The first one is required for the sensor register;
++		the second one is required for the control register
++		to be used for sensor initialization (a.k.a. calibration).
++
++Example:
++
++	thermal at d0018300 {
++		compatible = "marvell,armada370-thermal";
++                reg = <0xd0018300 0x4
++		       0xd0018304 0x4>;
++		status = "okay";
++	};
+diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
+index a764f16..9eddf74 100644
+--- a/drivers/thermal/Kconfig
++++ b/drivers/thermal/Kconfig
+@@ -144,6 +144,14 @@ config DB8500_THERMAL
+ 	  created. Cooling devices can be bound to the trip points to cool this
+ 	  thermal zone if trip points reached.
+ 
++config ARMADA_THERMAL
++	tristate "Armada 370/XP thermal management"
++	depends on ARCH_MVEBU
++	depends on OF
++	help
++	  Enable this option if you want to have support for thermal management
++	  controller present in Armada 370 and Armada XP SoC.
++
+ config DB8500_CPUFREQ_COOLING
+ 	tristate "DB8500 cpufreq cooling"
+ 	depends on ARCH_U8500
+diff --git a/drivers/thermal/Makefile b/drivers/thermal/Makefile
+index d3a2b38..7f6509a 100644
+--- a/drivers/thermal/Makefile
++++ b/drivers/thermal/Makefile
+@@ -19,6 +19,7 @@ obj-$(CONFIG_KIRKWOOD_THERMAL)  += kirkwood_thermal.o
+ obj-$(CONFIG_EXYNOS_THERMAL)	+= exynos_thermal.o
+ obj-$(CONFIG_DOVE_THERMAL)  	+= dove_thermal.o
+ obj-$(CONFIG_DB8500_THERMAL)	+= db8500_thermal.o
++obj-$(CONFIG_ARMADA_THERMAL)	+= armada_thermal.o
+ obj-$(CONFIG_DB8500_CPUFREQ_COOLING)	+= db8500_cpufreq_cooling.o
+ obj-$(CONFIG_INTEL_POWERCLAMP)	+= intel_powerclamp.o
+ 
+diff --git a/drivers/thermal/armada_thermal.c b/drivers/thermal/armada_thermal.c
+new file mode 100644
+index 0000000..5b4d75f
+--- /dev/null
++++ b/drivers/thermal/armada_thermal.c
+@@ -0,0 +1,232 @@
++/*
++ * Marvell Armada 370/XP thermal sensor driver
++ *
++ * Copyright (C) 2013 Marvell
++ *
++ * This software is licensed under the terms of the GNU General Public
++ * License version 2, as published by the Free Software Foundation, and
++ * may be copied, distributed, and modified under those terms.
++ *
++ * This program 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.
++ *
++ */
++#include <linux/device.h>
++#include <linux/err.h>
++#include <linux/io.h>
++#include <linux/kernel.h>
++#include <linux/of.h>
++#include <linux/module.h>
++#include <linux/delay.h>
++#include <linux/platform_device.h>
++#include <linux/of_device.h>
++#include <linux/thermal.h>
++
++#define THERMAL_VALID_OFFSET		9
++#define THERMAL_VALID_MASK		0x1
++#define THERMAL_TEMP_OFFSET		10
++#define THERMAL_TEMP_MASK		0x1ff
++
++/* Thermal Manager Control and Status Register */
++#define PMU_TDC0_SW_RST_MASK		(0x1 << 1)
++#define PMU_TM_DISABLE_OFFS		0
++#define PMU_TM_DISABLE_MASK		(0x1 << PMU_TM_DISABLE_OFFS)
++#define PMU_TDC0_REF_CAL_CNT_OFFS	11
++#define PMU_TDC0_REF_CAL_CNT_MASK	(0x1ff << PMU_TDC0_REF_CAL_CNT_OFFS)
++#define PMU_TDC0_OTF_CAL_MASK		(0x1 << 30)
++#define PMU_TDC0_START_CAL_MASK		(0x1 << 25)
++
++struct armada_thermal_ops;
++
++/* Marvell EBU Thermal Sensor Dev Structure */
++struct armada_thermal_priv {
++	void __iomem *sensor;
++	void __iomem *control;
++	struct armada_thermal_ops *ops;
++};
++
++struct armada_thermal_ops {
++	/* Initialize the sensor */
++	void (*init_sensor)(struct armada_thermal_priv *);
++
++	/* Test for a valid sensor value (optional) */
++	bool (*is_valid)(struct armada_thermal_priv *);
++};
++
++static void armadaxp_init_sensor(struct armada_thermal_priv *priv)
++{
++	unsigned long reg;
++
++	reg = readl_relaxed(priv->control);
++	reg |= PMU_TDC0_OTF_CAL_MASK;
++	writel(reg, priv->control);
++
++	/* Reference calibration value */
++	reg &= ~PMU_TDC0_REF_CAL_CNT_MASK;
++	reg |= (0xf1 << PMU_TDC0_REF_CAL_CNT_OFFS);
++	writel(reg, priv->control);
++
++	/* Reset the sensor */
++	reg = readl_relaxed(priv->control);
++	writel((reg | PMU_TDC0_SW_RST_MASK), priv->control);
++
++	writel(reg, priv->control);
++
++	/* Enable the sensor */
++	reg = readl_relaxed(priv->sensor);
++	reg &= ~PMU_TM_DISABLE_MASK;
++	writel(reg, priv->sensor);
++}
++
++static void armada370_init_sensor(struct armada_thermal_priv *priv)
++{
++	unsigned long reg;
++
++	reg = readl_relaxed(priv->control);
++	reg |= PMU_TDC0_OTF_CAL_MASK;
++	writel(reg, priv->control);
++
++	/* Reference calibration value */
++	reg &= ~PMU_TDC0_REF_CAL_CNT_MASK;
++	reg |= (0xf1 << PMU_TDC0_REF_CAL_CNT_OFFS);
++	writel(reg, priv->control);
++
++	reg &= ~PMU_TDC0_START_CAL_MASK;
++	writel(reg, priv->control);
++
++	mdelay(10);
++}
++
++static bool armada_is_valid(struct armada_thermal_priv *priv)
++{
++	unsigned long reg = readl_relaxed(priv->sensor);
++
++	return (reg >> THERMAL_VALID_OFFSET) & THERMAL_VALID_MASK;
++}
++
++static int armada_get_temp(struct thermal_zone_device *thermal,
++			  unsigned long *temp)
++{
++	struct armada_thermal_priv *priv = thermal->devdata;
++	unsigned long reg;
++
++	/* Valid check */
++	if (priv->ops->is_valid && !priv->ops->is_valid(priv)) {
++		dev_err(&thermal->device,
++			"Temperature sensor reading not valid\n");
++		return -EIO;
++	}
++
++	reg = readl_relaxed(priv->sensor);
++	reg = (reg >> THERMAL_TEMP_OFFSET) & THERMAL_TEMP_MASK;
++	*temp = (3153000000UL - (10000000UL*reg)) / 13825;
++	return 0;
++}
++
++static struct thermal_zone_device_ops ops = {
++	.get_temp = armada_get_temp,
++};
++
++static const struct armada_thermal_ops armadaxp_ops = {
++	.init_sensor = armadaxp_init_sensor,
++};
++
++static const struct armada_thermal_ops armada370_ops = {
++	.is_valid = armada_is_valid,
++	.init_sensor = armada370_init_sensor,
++};
++
++static const struct of_device_id armada_thermal_id_table[] = {
++	{
++		.compatible = "marvell,armadaxp-thermal",
++		.data       = &armadaxp_ops,
++	},
++	{
++		.compatible = "marvell,armada370-thermal",
++		.data       = &armada370_ops,
++	},
++	{
++		/* sentinel */
++	},
++};
++MODULE_DEVICE_TABLE(of, armada_thermal_id_table);
++
++static int armada_thermal_probe(struct platform_device *pdev)
++{
++	struct thermal_zone_device *thermal;
++	const struct of_device_id *match;
++	struct armada_thermal_priv *priv;
++	struct resource *res;
++
++	match = of_match_device(armada_thermal_id_table, &pdev->dev);
++	if (!match)
++		return -ENODEV;
++
++	priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL);
++	if (!priv)
++		return -ENOMEM;
++
++	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
++	if (!res) {
++		dev_err(&pdev->dev, "Failed to get platform resource\n");
++		return -ENODEV;
++	}
++
++	priv->sensor = devm_ioremap_resource(&pdev->dev, res);
++	if (IS_ERR(priv->sensor))
++		return PTR_ERR(priv->sensor);
++
++	res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
++	if (!res) {
++		dev_err(&pdev->dev, "Failed to get platform resource\n");
++		return -ENODEV;
++	}
++
++	priv->control = devm_ioremap_resource(&pdev->dev, res);
++	if (IS_ERR(priv->control))
++		return PTR_ERR(priv->control);
++
++	priv->ops = (struct armada_thermal_ops *)match->data;
++	priv->ops->init_sensor(priv);
++
++	thermal = thermal_zone_device_register("armada_thermal", 0, 0,
++					       priv, &ops, NULL, 0, 0);
++	if (IS_ERR(thermal)) {
++		dev_err(&pdev->dev,
++			"Failed to register thermal zone device\n");
++		return PTR_ERR(thermal);
++	}
++
++	platform_set_drvdata(pdev, thermal);
++
++	return 0;
++}
++
++static int armada_thermal_exit(struct platform_device *pdev)
++{
++	struct thermal_zone_device *armada_thermal =
++		platform_get_drvdata(pdev);
++
++	thermal_zone_device_unregister(armada_thermal);
++	platform_set_drvdata(pdev, NULL);
++
++	return 0;
++}
++
++static struct platform_driver armada_thermal_driver = {
++	.probe = armada_thermal_probe,
++	.remove = armada_thermal_exit,
++	.driver = {
++		.name = "armada_thermal",
++		.owner = THIS_MODULE,
++		.of_match_table = of_match_ptr(armada_thermal_id_table),
++	},
++};
++
++module_platform_driver(armada_thermal_driver);
++
++MODULE_AUTHOR("Ezequiel Garcia <ezequiel.garcia at free-electrons.com>");
++MODULE_DESCRIPTION("Armada 370/XP thermal driver");
++MODULE_LICENSE("GPL v2");
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-add-mx53-support.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-add-mx53-support.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-add-mx53-support.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-add-mx53-support.patch)
@@ -0,0 +1,105 @@
+From f0c910b63cc273c239964776fae1aaa58ed4ad2b Mon Sep 17 00:00:00 2001
+From: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Date: Sat, 30 Mar 2013 12:54:00 +0200
+Subject: [PATCH] usb: chipidea: usbmisc: add mx53 support
+
+This adds mx53 as the next user of the usbmisc driver and makes it
+possible to disable the overcurrent-detection of the internal phy.
+
+Signed-off-by: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Signed-off-by: Marc Kleine-Budde <mkl at pengutronix.de>
+[Alex: fixed another set of line-too-long and void pointer cast]
+Signed-off-by: Alexander Shishkin <alexander.shishkin at linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
+---
+ drivers/usb/chipidea/usbmisc_imx.c |   54 ++++++++++++++++++++++++++++++++++++
+ 1 file changed, 54 insertions(+)
+
+diff --git a/drivers/usb/chipidea/usbmisc_imx.c b/drivers/usb/chipidea/usbmisc_imx.c
+index 08b046f..746013d 100644
+--- a/drivers/usb/chipidea/usbmisc_imx.c
++++ b/drivers/usb/chipidea/usbmisc_imx.c
+@@ -19,6 +19,13 @@
+ 
+ #define USB_DEV_MAX 4
+ 
++#define MX53_USB_OTG_PHY_CTRL_0_OFFSET	0x08
++#define MX53_USB_UH2_CTRL_OFFSET	0x14
++#define MX53_USB_UH3_CTRL_OFFSET	0x18
++#define MX53_BM_OVER_CUR_DIS_H1		BIT(5)
++#define MX53_BM_OVER_CUR_DIS_OTG	BIT(8)
++#define MX53_BM_OVER_CUR_DIS_UHx	BIT(30)
++
+ #define MX6_BM_OVER_CUR_DIS		BIT(7)
+ 
+ struct imx_usbmisc {
+@@ -52,6 +59,45 @@ static struct usbmisc_usb_device *get_usbdev(struct device *dev)
+ 	return &usbmisc->usbdev[i];
+ }
+ 
++static int usbmisc_imx53_init(struct device *dev)
++{
++	struct usbmisc_usb_device *usbdev;
++	void __iomem *reg = NULL;
++	unsigned long flags;
++	u32 val = 0;
++
++	usbdev = get_usbdev(dev);
++	if (IS_ERR(usbdev))
++		return PTR_ERR(usbdev);
++
++	if (usbdev->disable_oc) {
++		spin_lock_irqsave(&usbmisc->lock, flags);
++		switch (usbdev->index) {
++		case 0:
++			reg = usbmisc->base + MX53_USB_OTG_PHY_CTRL_0_OFFSET;
++			val = readl(reg) | MX53_BM_OVER_CUR_DIS_OTG;
++			break;
++		case 1:
++			reg = usbmisc->base + MX53_USB_OTG_PHY_CTRL_0_OFFSET;
++			val = readl(reg) | MX53_BM_OVER_CUR_DIS_H1;
++			break;
++		case 2:
++			reg = usbmisc->base + MX53_USB_UH2_CTRL_OFFSET;
++			val = readl(reg) | MX53_BM_OVER_CUR_DIS_UHx;
++			break;
++		case 3:
++			reg = usbmisc->base + MX53_USB_UH3_CTRL_OFFSET;
++			val = readl(reg) | MX53_BM_OVER_CUR_DIS_UHx;
++			break;
++		}
++		if (reg && val)
++			writel(val, reg);
++		spin_unlock_irqrestore(&usbmisc->lock, flags);
++	}
++
++	return 0;
++}
++
+ static int usbmisc_imx6q_init(struct device *dev)
+ {
+ 
+@@ -74,12 +120,20 @@ static int usbmisc_imx6q_init(struct device *dev)
+ 	return 0;
+ }
+ 
++static const struct usbmisc_ops imx53_usbmisc_ops = {
++	.init = usbmisc_imx53_init,
++};
++
+ static const struct usbmisc_ops imx6q_usbmisc_ops = {
+ 	.init = usbmisc_imx6q_init,
+ };
+ 
+ static const struct of_device_id usbmisc_imx_dt_ids[] = {
+ 	{
++		.compatible = "fsl,imx53-usbmisc",
++		.data = &imx53_usbmisc_ops,
++	},
++	{
+ 		.compatible = "fsl,imx6q-usbmisc",
+ 		.data = &imx6q_usbmisc_ops,
+ 	},
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-add-post-handling-and-errata-fi.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-add-post-handling-and-errata-fi.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-add-post-handling-and-errata-fi.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-add-post-handling-and-errata-fi.patch)
@@ -0,0 +1,168 @@
+From a068533079a0a1be53c78c89e65adfbd3c687591 Mon Sep 17 00:00:00 2001
+From: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Date: Sat, 30 Mar 2013 12:54:01 +0200
+Subject: [PATCH] usb: chipidea: usbmisc: add post handling and errata fix for
+ mx25
+
+This adds a post handling routine which is called after
+ci13xxx_add_device was called. The first user is the mx25, which has to
+disable the external-vbus-divider after the udc has started.
+
+Signed-off-by: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Signed-off-by: Marc Kleine-Budde <mkl at pengutronix.de>
+[Alex: also fixed a signed one-bit bitfield a whitespace error and yet
+ another set of line-too-long and void pointer casting errors]
+Signed-off-by: Alexander Shishkin <alexander.shishkin at linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
+---
+ .../devicetree/bindings/usb/ci13xxx-imx.txt        |    2 ++
+ drivers/usb/chipidea/ci13xxx_imx.c                 |   12 +++++++
+ drivers/usb/chipidea/ci13xxx_imx.h                 |    3 ++
+ drivers/usb/chipidea/usbmisc_imx.c                 |   36 ++++++++++++++++++++
+ 4 files changed, 53 insertions(+)
+
+diff --git a/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt b/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt
+index 5778b9c..1c04a4c 100644
+--- a/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt
++++ b/Documentation/devicetree/bindings/usb/ci13xxx-imx.txt
+@@ -11,6 +11,7 @@ Optional properties:
+   that indicate usb controller index
+ - vbus-supply: regulator for vbus
+ - disable-over-current: disable over current detect
++- external-vbus-divider: enables off-chip resistor divider for Vbus
+ 
+ Examples:
+ usb at 02184000 { /* USB OTG */
+@@ -20,4 +21,5 @@ usb at 02184000 { /* USB OTG */
+ 	fsl,usbphy = <&usbphy1>;
+ 	fsl,usbmisc = <&usbmisc 0>;
+ 	disable-over-current;
++	external-vbus-divider;
+ };
+diff --git a/drivers/usb/chipidea/ci13xxx_imx.c b/drivers/usb/chipidea/ci13xxx_imx.c
+index 8c29122..8faec9d 100644
+--- a/drivers/usb/chipidea/ci13xxx_imx.c
++++ b/drivers/usb/chipidea/ci13xxx_imx.c
+@@ -79,6 +79,9 @@ int usbmisc_get_init_data(struct device *dev, struct usbmisc_usb_device *usbdev)
+ 	if (of_find_property(np, "disable-over-current", NULL))
+ 		usbdev->disable_oc = 1;
+ 
++	if (of_find_property(np, "external-vbus-divider", NULL))
++		usbdev->evdo = 1;
++
+ 	return 0;
+ }
+ EXPORT_SYMBOL_GPL(usbmisc_get_init_data);
+@@ -202,6 +205,15 @@ static int ci13xxx_imx_probe(struct platform_device *pdev)
+ 		goto err;
+ 	}
+ 
++	if (usbmisc_ops && usbmisc_ops->post) {
++		ret = usbmisc_ops->post(&pdev->dev);
++		if (ret) {
++			dev_err(&pdev->dev,
++				"usbmisc post failed, ret=%d\n", ret);
++			goto put_np;
++		}
++	}
++
+ 	data->ci_pdev = plat_ci;
+ 	platform_set_drvdata(pdev, data);
+ 
+diff --git a/drivers/usb/chipidea/ci13xxx_imx.h b/drivers/usb/chipidea/ci13xxx_imx.h
+index 9cd2e91..550bfa4 100644
+--- a/drivers/usb/chipidea/ci13xxx_imx.h
++++ b/drivers/usb/chipidea/ci13xxx_imx.h
+@@ -13,6 +13,8 @@
+ struct usbmisc_ops {
+ 	/* It's called once when probe a usb device */
+ 	int (*init)(struct device *dev);
++	/* It's called once after adding a usb device */
++	int (*post)(struct device *dev);
+ };
+ 
+ struct usbmisc_usb_device {
+@@ -20,6 +22,7 @@ struct usbmisc_usb_device {
+ 	int index;
+ 
+ 	unsigned int disable_oc:1; /* over current detect disabled */
++	unsigned int evdo:1; /* set external vbus divider option */
+ };
+ 
+ int usbmisc_set_ops(const struct usbmisc_ops *ops);
+diff --git a/drivers/usb/chipidea/usbmisc_imx.c b/drivers/usb/chipidea/usbmisc_imx.c
+index 746013d..714a6bd 100644
+--- a/drivers/usb/chipidea/usbmisc_imx.c
++++ b/drivers/usb/chipidea/usbmisc_imx.c
+@@ -14,11 +14,15 @@
+ #include <linux/clk.h>
+ #include <linux/err.h>
+ #include <linux/io.h>
++#include <linux/delay.h>
+ 
+ #include "ci13xxx_imx.h"
+ 
+ #define USB_DEV_MAX 4
+ 
++#define MX25_USB_PHY_CTRL_OFFSET	0x08
++#define MX25_BM_EXTERNAL_VBUS_DIVIDER	BIT(23)
++
+ #define MX53_USB_OTG_PHY_CTRL_0_OFFSET	0x08
+ #define MX53_USB_UH2_CTRL_OFFSET	0x14
+ #define MX53_USB_UH3_CTRL_OFFSET	0x18
+@@ -59,6 +63,30 @@ static struct usbmisc_usb_device *get_usbdev(struct device *dev)
+ 	return &usbmisc->usbdev[i];
+ }
+ 
++static int usbmisc_imx25_post(struct device *dev)
++{
++	struct usbmisc_usb_device *usbdev;
++	void __iomem *reg;
++	unsigned long flags;
++	u32 val;
++
++	usbdev = get_usbdev(dev);
++	if (IS_ERR(usbdev))
++		return PTR_ERR(usbdev);
++
++	reg = usbmisc->base + MX25_USB_PHY_CTRL_OFFSET;
++
++	if (usbdev->evdo) {
++		spin_lock_irqsave(&usbmisc->lock, flags);
++		val = readl(reg);
++		writel(val | MX25_BM_EXTERNAL_VBUS_DIVIDER, reg);
++		spin_unlock_irqrestore(&usbmisc->lock, flags);
++		usleep_range(5000, 10000); /* needed to stabilize voltage */
++	}
++
++	return 0;
++}
++
+ static int usbmisc_imx53_init(struct device *dev)
+ {
+ 	struct usbmisc_usb_device *usbdev;
+@@ -120,6 +148,10 @@ static int usbmisc_imx6q_init(struct device *dev)
+ 	return 0;
+ }
+ 
++static const struct usbmisc_ops imx25_usbmisc_ops = {
++	.post = usbmisc_imx25_post,
++};
++
+ static const struct usbmisc_ops imx53_usbmisc_ops = {
+ 	.init = usbmisc_imx53_init,
+ };
+@@ -130,6 +162,10 @@ static const struct usbmisc_ops imx6q_usbmisc_ops = {
+ 
+ static const struct of_device_id usbmisc_imx_dt_ids[] = {
+ 	{
++		.compatible = "fsl,imx25-usbmisc",
++		.data = &imx25_usbmisc_ops,
++	},
++	{
+ 		.compatible = "fsl,imx53-usbmisc",
+ 		.data = &imx53_usbmisc_ops,
+ 	},
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-fix-a-potential-race-condition.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-fix-a-potential-race-condition.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-fix-a-potential-race-condition.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-fix-a-potential-race-condition.patch)
@@ -0,0 +1,42 @@
+From 00b9a1f97dbdfbdc1d268bf8d878937b150ce2d4 Mon Sep 17 00:00:00 2001
+From: Marc Kleine-Budde <mkl at pengutronix.de>
+Date: Sat, 30 Mar 2013 12:53:58 +0200
+Subject: [PATCH] usb: chipidea: usbmisc: fix a potential race condition
+
+This fixes a potential race condition where the ci13xxx_imx glue code
+could be fast enough to call one of the usbmisc_ops before he got a
+valid value on the static usbmisc pointer. To fix that we first set
+usbmisc, then call usbmisc_set_ops().
+
+Signed-off-by: Marc Kleine-Budde <mkl at pengutronix.de>
+Signed-off-by: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Signed-off-by: Alexander Shishkin <alexander.shishkin at linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
+---
+ drivers/usb/chipidea/usbmisc_imx.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/usb/chipidea/usbmisc_imx.c b/drivers/usb/chipidea/usbmisc_imx.c
+index fd4d339..d77e712 100644
+--- a/drivers/usb/chipidea/usbmisc_imx.c
++++ b/drivers/usb/chipidea/usbmisc_imx.c
+@@ -116,14 +116,14 @@ static int usbmisc_imx_probe(struct platform_device *pdev)
+ 		return ret;
+ 	}
+ 
++	usbmisc = data;
+ 	ret = usbmisc_set_ops(&imx6q_usbmisc_ops);
+ 	if (ret) {
++		usbmisc = NULL;
+ 		clk_disable_unprepare(data->clk);
+ 		return ret;
+ 	}
+ 
+-	usbmisc = data;
+-
+ 	return 0;
+ }
+ 
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-prepare-driver-to-handle-more-t.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-prepare-driver-to-handle-more-t.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-prepare-driver-to-handle-more-t.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-prepare-driver-to-handle-more-t.patch)
@@ -0,0 +1,92 @@
+From e609108a5ba70ecf3b1b6a7e09e5a56244e92926 Mon Sep 17 00:00:00 2001
+From: Marc Kleine-Budde <mkl at pengutronix.de>
+Date: Sat, 30 Mar 2013 12:53:59 +0200
+Subject: [PATCH] usb: chipidea: usbmisc: prepare driver to handle more than
+ one soc
+
+This attaches the usbmisc_ops to the of_device_id data and
+makes it possible to define special functions per soc.
+
+Signed-off-by: Marc Kleine-Budde <mkl at pengutronix.de>
+Signed-off-by: Michael Grzeschik <m.grzeschik at pengutronix.de>
+[Alex: fixed one case of line-too-long and one bogus cast to void ptr]
+Signed-off-by: Alexander Shishkin <alexander.shishkin at linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
+---
+ drivers/usb/chipidea/usbmisc_imx.c |   18 +++++++++++++-----
+ 1 file changed, 13 insertions(+), 5 deletions(-)
+
+diff --git a/drivers/usb/chipidea/usbmisc_imx.c b/drivers/usb/chipidea/usbmisc_imx.c
+index d77e712..08b046f 100644
+--- a/drivers/usb/chipidea/usbmisc_imx.c
++++ b/drivers/usb/chipidea/usbmisc_imx.c
+@@ -19,13 +19,14 @@
+ 
+ #define USB_DEV_MAX 4
+ 
+-#define BM_OVER_CUR_DIS		BIT(7)
++#define MX6_BM_OVER_CUR_DIS		BIT(7)
+ 
+ struct imx_usbmisc {
+ 	void __iomem *base;
+ 	spinlock_t lock;
+ 	struct clk *clk;
+ 	struct usbmisc_usb_device usbdev[USB_DEV_MAX];
++	const struct usbmisc_ops *ops;
+ };
+ 
+ static struct imx_usbmisc *usbmisc;
+@@ -65,7 +66,7 @@ static int usbmisc_imx6q_init(struct device *dev)
+ 	if (usbdev->disable_oc) {
+ 		spin_lock_irqsave(&usbmisc->lock, flags);
+ 		reg = readl(usbmisc->base + usbdev->index * 4);
+-		writel(reg | BM_OVER_CUR_DIS,
++		writel(reg | MX6_BM_OVER_CUR_DIS,
+ 			usbmisc->base + usbdev->index * 4);
+ 		spin_unlock_irqrestore(&usbmisc->lock, flags);
+ 	}
+@@ -78,7 +79,10 @@ static const struct usbmisc_ops imx6q_usbmisc_ops = {
+ };
+ 
+ static const struct of_device_id usbmisc_imx_dt_ids[] = {
+-	{ .compatible = "fsl,imx6q-usbmisc"},
++	{
++		.compatible = "fsl,imx6q-usbmisc",
++		.data = &imx6q_usbmisc_ops,
++	},
+ 	{ /* sentinel */ }
+ };
+ 
+@@ -87,6 +91,7 @@ static int usbmisc_imx_probe(struct platform_device *pdev)
+ 	struct resource	*res;
+ 	struct imx_usbmisc *data;
+ 	int ret;
++	struct of_device_id *tmp_dev;
+ 
+ 	if (usbmisc)
+ 		return -EBUSY;
+@@ -116,8 +121,11 @@ static int usbmisc_imx_probe(struct platform_device *pdev)
+ 		return ret;
+ 	}
+ 
++	tmp_dev = (struct of_device_id *)
++		of_match_device(usbmisc_imx_dt_ids, &pdev->dev);
++	data->ops = (const struct usbmisc_ops *)tmp_dev->data;
+ 	usbmisc = data;
+-	ret = usbmisc_set_ops(&imx6q_usbmisc_ops);
++	ret = usbmisc_set_ops(data->ops);
+ 	if (ret) {
+ 		usbmisc = NULL;
+ 		clk_disable_unprepare(data->clk);
+@@ -129,7 +137,7 @@ static int usbmisc_imx_probe(struct platform_device *pdev)
+ 
+ static int usbmisc_imx_remove(struct platform_device *pdev)
+ {
+-	usbmisc_unset_ops(&imx6q_usbmisc_ops);
++	usbmisc_unset_ops(usbmisc->ops);
+ 	clk_disable_unprepare(usbmisc->clk);
+ 	usbmisc = NULL;
+ 	return 0;
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-rename-file-struct-and-function.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-rename-file-struct-and-function.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-rename-file-struct-and-function.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-rename-file-struct-and-function.patch)
@@ -0,0 +1,368 @@
+From a7bc2fdf003c55f8e00e1e7e6fff51a4876779ef Mon Sep 17 00:00:00 2001
+From: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Date: Sat, 30 Mar 2013 12:53:56 +0200
+Subject: [PATCH] usb: chipidea: usbmisc: rename file, struct and functions to
+ usbmisc_imx
+
+This driver will be used for every Freescale SoC which has this misc
+memory layout to control the basic usb handling. So better name this
+driver, function and struct names in a more generic way.
+
+Reported-by: Fabio Estevam <festevam at gmail.com>
+Signed-off-by: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Signed-off-by: Marc Kleine-Budde <mkl at pengutronix.de>
+Signed-off-by: Alexander Shishkin <alexander.shishkin at linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
+---
+ drivers/usb/chipidea/Makefile        |    2 +-
+ drivers/usb/chipidea/usbmisc_imx.c   |  162 ++++++++++++++++++++++++++++++++++
+ drivers/usb/chipidea/usbmisc_imx6q.c |  162 ----------------------------------
+ 3 files changed, 163 insertions(+), 163 deletions(-)
+ create mode 100644 drivers/usb/chipidea/usbmisc_imx.c
+ delete mode 100644 drivers/usb/chipidea/usbmisc_imx6q.c
+
+Index: linux/drivers/usb/chipidea/Makefile
+===================================================================
+--- linux.orig/drivers/usb/chipidea/Makefile	2013-05-16 00:43:05.000000000 +0200
++++ linux/drivers/usb/chipidea/Makefile	2013-05-16 00:45:22.000000000 +0200
+@@ -17,5 +17,5 @@ ifneq ($(CONFIG_PCI),)
+ endif
+ 
+ ifneq ($(CONFIG_OF_DEVICE),)
+-	obj-$(CONFIG_USB_CHIPIDEA)	+= ci13xxx_imx.o usbmisc_imx6q.o
++	obj-$(CONFIG_USB_CHIPIDEA)	+= ci13xxx_imx.o usbmisc_imx.o
+ endif
+Index: linux/drivers/usb/chipidea/usbmisc_imx.c
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ linux/drivers/usb/chipidea/usbmisc_imx.c	2013-05-16 00:45:22.000000000 +0200
+@@ -0,0 +1,162 @@
++/*
++ * Copyright 2012 Freescale Semiconductor, Inc.
++ *
++ * The code contained herein is licensed under the GNU General Public
++ * License. You may obtain a copy of the GNU General Public License
++ * Version 2 or later at the following locations:
++ *
++ * http://www.opensource.org/licenses/gpl-license.html
++ * http://www.gnu.org/copyleft/gpl.html
++ */
++
++#include <linux/module.h>
++#include <linux/of_platform.h>
++#include <linux/clk.h>
++#include <linux/err.h>
++#include <linux/io.h>
++
++#include "ci13xxx_imx.h"
++
++#define USB_DEV_MAX 4
++
++#define BM_OVER_CUR_DIS		BIT(7)
++
++struct imx_usbmisc {
++	void __iomem *base;
++	spinlock_t lock;
++	struct clk *clk;
++	struct usbmisc_usb_device usbdev[USB_DEV_MAX];
++};
++
++static struct imx_usbmisc *usbmisc;
++
++static struct usbmisc_usb_device *get_usbdev(struct device *dev)
++{
++	int i, ret;
++
++	for (i = 0; i < USB_DEV_MAX; i++) {
++		if (usbmisc->usbdev[i].dev == dev)
++			return &usbmisc->usbdev[i];
++		else if (!usbmisc->usbdev[i].dev)
++			break;
++	}
++
++	if (i >= USB_DEV_MAX)
++		return ERR_PTR(-EBUSY);
++
++	ret = usbmisc_get_init_data(dev, &usbmisc->usbdev[i]);
++	if (ret)
++		return ERR_PTR(ret);
++
++	return &usbmisc->usbdev[i];
++}
++
++static int usbmisc_imx6q_init(struct device *dev)
++{
++
++	struct usbmisc_usb_device *usbdev;
++	unsigned long flags;
++	u32 reg;
++
++	usbdev = get_usbdev(dev);
++	if (IS_ERR(usbdev))
++		return PTR_ERR(usbdev);
++
++	if (usbdev->disable_oc) {
++		spin_lock_irqsave(&usbmisc->lock, flags);
++		reg = readl(usbmisc->base + usbdev->index * 4);
++		writel(reg | BM_OVER_CUR_DIS,
++			usbmisc->base + usbdev->index * 4);
++		spin_unlock_irqrestore(&usbmisc->lock, flags);
++	}
++
++	return 0;
++}
++
++static const struct usbmisc_ops imx6q_usbmisc_ops = {
++	.init = usbmisc_imx6q_init,
++};
++
++static const struct of_device_id usbmisc_imx_dt_ids[] = {
++	{ .compatible = "fsl,imx6q-usbmisc"},
++	{ /* sentinel */ }
++};
++
++static int usbmisc_imx_probe(struct platform_device *pdev)
++{
++	struct resource	*res;
++	struct imx_usbmisc *data;
++	int ret;
++
++	if (usbmisc)
++		return -EBUSY;
++
++	data = devm_kzalloc(&pdev->dev, sizeof(*data), GFP_KERNEL);
++	if (!data)
++		return -ENOMEM;
++
++	spin_lock_init(&data->lock);
++
++	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
++	data->base = devm_ioremap_resource(&pdev->dev, res);
++	if (IS_ERR(data->base))
++		return PTR_ERR(data->base);
++
++	data->clk = devm_clk_get(&pdev->dev, NULL);
++	if (IS_ERR(data->clk)) {
++		dev_err(&pdev->dev,
++			"failed to get clock, err=%ld\n", PTR_ERR(data->clk));
++		return PTR_ERR(data->clk);
++	}
++
++	ret = clk_prepare_enable(data->clk);
++	if (ret) {
++		dev_err(&pdev->dev,
++			"clk_prepare_enable failed, err=%d\n", ret);
++		return ret;
++	}
++
++	ret = usbmisc_set_ops(&imx6q_usbmisc_ops);
++	if (ret) {
++		clk_disable_unprepare(data->clk);
++		return ret;
++	}
++
++	usbmisc = data;
++
++	return 0;
++}
++
++static int usbmisc_imx_remove(struct platform_device *pdev)
++{
++	usbmisc_unset_ops(&imx6q_usbmisc_ops);
++	clk_disable_unprepare(usbmisc->clk);
++	return 0;
++}
++
++static struct platform_driver usbmisc_imx_driver = {
++	.probe = usbmisc_imx_probe,
++	.remove = usbmisc_imx_remove,
++	.driver = {
++		.name = "usbmisc_imx",
++		.owner = THIS_MODULE,
++		.of_match_table = usbmisc_imx_dt_ids,
++	 },
++};
++
++int usbmisc_imx_drv_init(void)
++{
++	return platform_driver_register(&usbmisc_imx_driver);
++}
++subsys_initcall(usbmisc_imx_drv_init);
++
++void usbmisc_imx_drv_exit(void)
++{
++	platform_driver_unregister(&usbmisc_imx_driver);
++}
++module_exit(usbmisc_imx_drv_exit);
++
++MODULE_ALIAS("platform:usbmisc-imx");
++MODULE_LICENSE("GPL v2");
++MODULE_DESCRIPTION("driver for imx usb non-core registers");
++MODULE_AUTHOR("Richard Zhao <richard.zhao at freescale.com>");
+Index: linux/drivers/usb/chipidea/usbmisc_imx6q.c
+===================================================================
+--- linux.orig/drivers/usb/chipidea/usbmisc_imx6q.c	2013-05-16 00:45:18.000000000 +0200
++++ /dev/null	1970-01-01 00:00:00.000000000 +0000
+@@ -1,162 +0,0 @@
+-/*
+- * Copyright 2012 Freescale Semiconductor, Inc.
+- *
+- * The code contained herein is licensed under the GNU General Public
+- * License. You may obtain a copy of the GNU General Public License
+- * Version 2 or later at the following locations:
+- *
+- * http://www.opensource.org/licenses/gpl-license.html
+- * http://www.gnu.org/copyleft/gpl.html
+- */
+-
+-#include <linux/module.h>
+-#include <linux/of_platform.h>
+-#include <linux/clk.h>
+-#include <linux/err.h>
+-#include <linux/io.h>
+-
+-#include "ci13xxx_imx.h"
+-
+-#define USB_DEV_MAX 4
+-
+-#define BM_OVER_CUR_DIS		BIT(7)
+-
+-struct imx6q_usbmisc {
+-	void __iomem *base;
+-	spinlock_t lock;
+-	struct clk *clk;
+-	struct usbmisc_usb_device usbdev[USB_DEV_MAX];
+-};
+-
+-static struct imx6q_usbmisc *usbmisc;
+-
+-static struct usbmisc_usb_device *get_usbdev(struct device *dev)
+-{
+-	int i, ret;
+-
+-	for (i = 0; i < USB_DEV_MAX; i++) {
+-		if (usbmisc->usbdev[i].dev == dev)
+-			return &usbmisc->usbdev[i];
+-		else if (!usbmisc->usbdev[i].dev)
+-			break;
+-	}
+-
+-	if (i >= USB_DEV_MAX)
+-		return ERR_PTR(-EBUSY);
+-
+-	ret = usbmisc_get_init_data(dev, &usbmisc->usbdev[i]);
+-	if (ret)
+-		return ERR_PTR(ret);
+-
+-	return &usbmisc->usbdev[i];
+-}
+-
+-static int usbmisc_imx6q_init(struct device *dev)
+-{
+-
+-	struct usbmisc_usb_device *usbdev;
+-	unsigned long flags;
+-	u32 reg;
+-
+-	usbdev = get_usbdev(dev);
+-	if (IS_ERR(usbdev))
+-		return PTR_ERR(usbdev);
+-
+-	if (usbdev->disable_oc) {
+-		spin_lock_irqsave(&usbmisc->lock, flags);
+-		reg = readl(usbmisc->base + usbdev->index * 4);
+-		writel(reg | BM_OVER_CUR_DIS,
+-			usbmisc->base + usbdev->index * 4);
+-		spin_unlock_irqrestore(&usbmisc->lock, flags);
+-	}
+-
+-	return 0;
+-}
+-
+-static const struct usbmisc_ops imx6q_usbmisc_ops = {
+-	.init = usbmisc_imx6q_init,
+-};
+-
+-static const struct of_device_id usbmisc_imx6q_dt_ids[] = {
+-	{ .compatible = "fsl,imx6q-usbmisc"},
+-	{ /* sentinel */ }
+-};
+-
+-static int usbmisc_imx6q_probe(struct platform_device *pdev)
+-{
+-	struct resource	*res;
+-	struct imx6q_usbmisc *data;
+-	int ret;
+-
+-	if (usbmisc)
+-		return -EBUSY;
+-
+-	data = devm_kzalloc(&pdev->dev, sizeof(*data), GFP_KERNEL);
+-	if (!data)
+-		return -ENOMEM;
+-
+-	spin_lock_init(&data->lock);
+-
+-	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+-	data->base = devm_ioremap_resource(&pdev->dev, res);
+-	if (IS_ERR(data->base))
+-		return PTR_ERR(data->base);
+-
+-	data->clk = devm_clk_get(&pdev->dev, NULL);
+-	if (IS_ERR(data->clk)) {
+-		dev_err(&pdev->dev,
+-			"failed to get clock, err=%ld\n", PTR_ERR(data->clk));
+-		return PTR_ERR(data->clk);
+-	}
+-
+-	ret = clk_prepare_enable(data->clk);
+-	if (ret) {
+-		dev_err(&pdev->dev,
+-			"clk_prepare_enable failed, err=%d\n", ret);
+-		return ret;
+-	}
+-
+-	ret = usbmisc_set_ops(&imx6q_usbmisc_ops);
+-	if (ret) {
+-		clk_disable_unprepare(data->clk);
+-		return ret;
+-	}
+-
+-	usbmisc = data;
+-
+-	return 0;
+-}
+-
+-static int usbmisc_imx6q_remove(struct platform_device *pdev)
+-{
+-	usbmisc_unset_ops(&imx6q_usbmisc_ops);
+-	clk_disable_unprepare(usbmisc->clk);
+-	return 0;
+-}
+-
+-static struct platform_driver usbmisc_imx6q_driver = {
+-	.probe = usbmisc_imx6q_probe,
+-	.remove = usbmisc_imx6q_remove,
+-	.driver = {
+-		.name = "usbmisc_imx6q",
+-		.owner = THIS_MODULE,
+-		.of_match_table = usbmisc_imx6q_dt_ids,
+-	 },
+-};
+-
+-int __init usbmisc_imx6q_drv_init(void)
+-{
+-	return platform_driver_register(&usbmisc_imx6q_driver);
+-}
+-subsys_initcall(usbmisc_imx6q_drv_init);
+-
+-void __exit usbmisc_imx6q_drv_exit(void)
+-{
+-	platform_driver_unregister(&usbmisc_imx6q_driver);
+-}
+-module_exit(usbmisc_imx6q_drv_exit);
+-
+-MODULE_ALIAS("platform:usbmisc-imx6q");
+-MODULE_LICENSE("GPL v2");
+-MODULE_DESCRIPTION("driver for imx6q usb non-core registers");
+-MODULE_AUTHOR("Richard Zhao <richard.zhao at freescale.com>");

Copied: dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-unset-global-varibale-usbmisc-o.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-unset-global-varibale-usbmisc-o.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-unset-global-varibale-usbmisc-o.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-chipidea-usbmisc-unset-global-varibale-usbmisc-o.patch)
@@ -0,0 +1,32 @@
+From d48a24dbc0d3f21cbd594bcc2553d40cc5ed4fd9 Mon Sep 17 00:00:00 2001
+From: Marc Kleine-Budde <mkl at pengutronix.de>
+Date: Sat, 30 Mar 2013 12:53:57 +0200
+Subject: [PATCH] usb: chipidea: usbmisc: unset global varibale usbmisc on
+ driver remove
+
+The probe function checks usbmisc to be NULL in the beginning. Without
+this patch the can only be loaded once.
+
+Signed-off-by: Marc Kleine-Budde <mkl at pengutronix.de>
+Signed-off-by: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Signed-off-by: Alexander Shishkin <alexander.shishkin at linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
+---
+ drivers/usb/chipidea/usbmisc_imx.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/drivers/usb/chipidea/usbmisc_imx.c b/drivers/usb/chipidea/usbmisc_imx.c
+index 3c42446..fd4d339 100644
+--- a/drivers/usb/chipidea/usbmisc_imx.c
++++ b/drivers/usb/chipidea/usbmisc_imx.c
+@@ -131,6 +131,7 @@ static int usbmisc_imx_remove(struct platform_device *pdev)
+ {
+ 	usbmisc_unset_ops(&imx6q_usbmisc_ops);
+ 	clk_disable_unprepare(usbmisc->clk);
++	usbmisc = NULL;
+ 	return 0;
+ }
+ 
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0001-usb-phy-nop-Add-some-parameters-to-platform-data.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-phy-nop-Add-some-parameters-to-platform-data.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0001-usb-phy-nop-Add-some-parameters-to-platform-data.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-phy-nop-Add-some-parameters-to-platform-data.patch)
@@ -0,0 +1,38 @@
+From 1f0972f5b05a674d73e4eb314fa1b6c78e37aef1 Mon Sep 17 00:00:00 2001
+From: Roger Quadros <rogerq at ti.com>
+Date: Tue, 12 Mar 2013 13:24:19 +0200
+Subject: [PATCH] usb: phy: nop: Add some parameters to platform data
+
+Add clk_rate parameter to platform data. If supplied, the
+NOP phy driver will program the clock to that rate during probe.
+
+Also add 2 flags, needs_vcc and needs_reset.
+If the flag is set and the regulator couldn't be found
+then the driver will bail out with -EPROBE_DEFER.
+
+Signed-off-by: Roger Quadros <rogerq at ti.com>
+Acked-by: Felipe Balbi <balbi at ti.com>
+Signed-off-by: Felipe Balbi <balbi at ti.com>
+---
+ include/linux/usb/nop-usb-xceiv.h |    5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/include/linux/usb/nop-usb-xceiv.h b/include/linux/usb/nop-usb-xceiv.h
+index 28884c7..148d351 100644
+--- a/include/linux/usb/nop-usb-xceiv.h
++++ b/include/linux/usb/nop-usb-xceiv.h
+@@ -5,6 +5,11 @@
+ 
+ struct nop_usb_xceiv_platform_data {
+ 	enum usb_phy_type type;
++	unsigned long clk_rate;
++
++	/* if set fails with -EPROBE_DEFER if can't get regulator */
++	unsigned int needs_vcc:1;
++	unsigned int needs_reset:1;
+ };
+ 
+ #if defined(CONFIG_NOP_USB_XCEIV) || (defined(CONFIG_NOP_USB_XCEIV_MODULE) && defined(MODULE))
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0001-usb-phy-nop-Manage-PHY-clock.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-phy-nop-Manage-PHY-clock.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0001-usb-phy-nop-Manage-PHY-clock.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-phy-nop-Manage-PHY-clock.patch)
@@ -0,0 +1,127 @@
+From 2319fb88e16e56c64d4f3ab50af69ed6dadbc7b5 Mon Sep 17 00:00:00 2001
+From: Roger Quadros <rogerq at ti.com>
+Date: Tue, 12 Mar 2013 13:24:21 +0200
+Subject: [PATCH 1/6] usb: phy: nop: Manage PHY clock
+
+If the PHY has a clock associated to it then manage the clock.
+We just enable the clock in .init() and disable it in .shutdown().
+
+Add clk_rate parameter in platform data and configure the
+clock rate during probe if supplied.
+
+Signed-off-by: Roger Quadros <rogerq at ti.com>
+Signed-off-by: Felipe Balbi <balbi at ti.com>
+---
+ drivers/usb/otg/nop-usb-xceiv.c |   54 ++++++++++++++++++++++++++++++++++++++-
+ 1 file changed, 53 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/usb/otg/nop-usb-xceiv.c b/drivers/usb/otg/nop-usb-xceiv.c
+index af52870..17c174f 100644
+--- a/drivers/usb/otg/nop-usb-xceiv.c
++++ b/drivers/usb/otg/nop-usb-xceiv.c
+@@ -32,10 +32,12 @@
+ #include <linux/usb/otg.h>
+ #include <linux/usb/nop-usb-xceiv.h>
+ #include <linux/slab.h>
++#include <linux/clk.h>
+ 
+ struct nop_usb_xceiv {
+ 	struct usb_phy		phy;
+ 	struct device		*dev;
++	struct clk		*clk;
+ };
+ 
+ static struct platform_device *pd;
+@@ -64,6 +66,24 @@ static int nop_set_suspend(struct usb_phy *x, int suspend)
+ 	return 0;
+ }
+ 
++static int nop_init(struct usb_phy *phy)
++{
++	struct nop_usb_xceiv *nop = dev_get_drvdata(phy->dev);
++
++	if (!IS_ERR(nop->clk))
++		clk_enable(nop->clk);
++
++	return 0;
++}
++
++static void nop_shutdown(struct usb_phy *phy)
++{
++	struct nop_usb_xceiv *nop = dev_get_drvdata(phy->dev);
++
++	if (!IS_ERR(nop->clk))
++		clk_disable(nop->clk);
++}
++
+ static int nop_set_peripheral(struct usb_otg *otg, struct usb_gadget *gadget)
+ {
+ 	if (!otg)
+@@ -112,10 +132,34 @@ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ 	if (pdata)
+ 		type = pdata->type;
+ 
++	nop->clk = devm_clk_get(&pdev->dev, "main_clk");
++	if (IS_ERR(nop->clk)) {
++		dev_dbg(&pdev->dev, "Can't get phy clock: %ld\n",
++					PTR_ERR(nop->clk));
++	}
++
++	if (!IS_ERR(nop->clk) && pdata && pdata->clk_rate) {
++		err = clk_set_rate(nop->clk, pdata->clk_rate);
++		if (err) {
++			dev_err(&pdev->dev, "Error setting clock rate\n");
++			return err;
++		}
++	}
++
++	if (!IS_ERR(nop->clk)) {
++		err = clk_prepare(nop->clk);
++		if (err) {
++			dev_err(&pdev->dev, "Error preparing clock\n");
++			return err;
++		}
++	}
++
+ 	nop->dev		= &pdev->dev;
+ 	nop->phy.dev		= nop->dev;
+ 	nop->phy.label		= "nop-xceiv";
+ 	nop->phy.set_suspend	= nop_set_suspend;
++	nop->phy.init		= nop_init;
++	nop->phy.shutdown	= nop_shutdown;
+ 	nop->phy.state		= OTG_STATE_UNDEFINED;
+ 
+ 	nop->phy.otg->phy		= &nop->phy;
+@@ -126,7 +170,7 @@ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ 	if (err) {
+ 		dev_err(&pdev->dev, "can't register transceiver, err: %d\n",
+ 			err);
+-		return err;
++		goto err_add;
+ 	}
+ 
+ 	platform_set_drvdata(pdev, nop);
+@@ -134,12 +178,20 @@ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ 	ATOMIC_INIT_NOTIFIER_HEAD(&nop->phy.notifier);
+ 
+ 	return 0;
++
++err_add:
++	if (!IS_ERR(nop->clk))
++		clk_unprepare(nop->clk);
++	return err;
+ }
+ 
+ static int nop_usb_xceiv_remove(struct platform_device *pdev)
+ {
+ 	struct nop_usb_xceiv *nop = platform_get_drvdata(pdev);
+ 
++	if (!IS_ERR(nop->clk))
++		clk_unprepare(nop->clk);
++
+ 	usb_remove_phy(&nop->phy);
+ 
+ 	platform_set_drvdata(pdev, NULL);
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0001-usb-phy-nop-use-devm_kzalloc.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-phy-nop-use-devm_kzalloc.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0001-usb-phy-nop-use-devm_kzalloc.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0001-usb-phy-nop-use-devm_kzalloc.patch)
@@ -0,0 +1,69 @@
+From e4d7dc6674efd798792adbd689986cde5422aa62 Mon Sep 17 00:00:00 2001
+From: Roger Quadros <rogerq at ti.com>
+Date: Tue, 12 Mar 2013 13:24:20 +0200
+Subject: [PATCH] usb: phy: nop: use devm_kzalloc()
+
+Use resource managed kzalloc.
+
+Signed-off-by: Roger Quadros <rogerq at ti.com>
+Signed-off-by: Felipe Balbi <balbi at ti.com>
+---
+ drivers/usb/otg/nop-usb-xceiv.c |   17 +++++------------
+ 1 file changed, 5 insertions(+), 12 deletions(-)
+
+diff --git a/drivers/usb/otg/nop-usb-xceiv.c b/drivers/usb/otg/nop-usb-xceiv.c
+index a3ce24b..af52870 100644
+--- a/drivers/usb/otg/nop-usb-xceiv.c
++++ b/drivers/usb/otg/nop-usb-xceiv.c
+@@ -100,15 +100,14 @@ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ 	enum usb_phy_type	type = USB_PHY_TYPE_USB2;
+ 	int err;
+ 
+-	nop = kzalloc(sizeof *nop, GFP_KERNEL);
++	nop = devm_kzalloc(&pdev->dev, sizeof(*nop), GFP_KERNEL);
+ 	if (!nop)
+ 		return -ENOMEM;
+ 
+-	nop->phy.otg = kzalloc(sizeof *nop->phy.otg, GFP_KERNEL);
+-	if (!nop->phy.otg) {
+-		kfree(nop);
++	nop->phy.otg = devm_kzalloc(&pdev->dev, sizeof(*nop->phy.otg),
++							GFP_KERNEL);
++	if (!nop->phy.otg)
+ 		return -ENOMEM;
+-	}
+ 
+ 	if (pdata)
+ 		type = pdata->type;
+@@ -127,7 +126,7 @@ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ 	if (err) {
+ 		dev_err(&pdev->dev, "can't register transceiver, err: %d\n",
+ 			err);
+-		goto exit;
++		return err;
+ 	}
+ 
+ 	platform_set_drvdata(pdev, nop);
+@@ -135,10 +134,6 @@ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ 	ATOMIC_INIT_NOTIFIER_HEAD(&nop->phy.notifier);
+ 
+ 	return 0;
+-exit:
+-	kfree(nop->phy.otg);
+-	kfree(nop);
+-	return err;
+ }
+ 
+ static int nop_usb_xceiv_remove(struct platform_device *pdev)
+@@ -148,8 +143,6 @@ static int nop_usb_xceiv_remove(struct platform_device *pdev)
+ 	usb_remove_phy(&nop->phy);
+ 
+ 	platform_set_drvdata(pdev, NULL);
+-	kfree(nop->phy.otg);
+-	kfree(nop);
+ 
+ 	return 0;
+ }
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0002-usb-phy-nop-Handle-power-supply-regulator-for-the-PH.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0002-usb-phy-nop-Handle-power-supply-regulator-for-the-PH.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0002-usb-phy-nop-Handle-power-supply-regulator-for-the-PH.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0002-usb-phy-nop-Handle-power-supply-regulator-for-the-PH.patch)
@@ -0,0 +1,73 @@
+From 58f735fe4778d34d9d1e37bcdd59325d66a8793e Mon Sep 17 00:00:00 2001
+From: Roger Quadros <rogerq at ti.com>
+Date: Tue, 12 Mar 2013 13:24:22 +0200
+Subject: [PATCH 2/6] usb: phy: nop: Handle power supply regulator for the PHY
+
+We use "vcc" as the supply name for the PHY's power supply.
+The power supply will be enabled during .init() and disabled
+during .shutdown()
+
+Signed-off-by: Roger Quadros <rogerq at ti.com>
+Signed-off-by: Felipe Balbi <balbi at ti.com>
+---
+ drivers/usb/otg/nop-usb-xceiv.c |   18 ++++++++++++++++++
+ 1 file changed, 18 insertions(+)
+
+diff --git a/drivers/usb/otg/nop-usb-xceiv.c b/drivers/usb/otg/nop-usb-xceiv.c
+index 17c174f..fbdcfef 100644
+--- a/drivers/usb/otg/nop-usb-xceiv.c
++++ b/drivers/usb/otg/nop-usb-xceiv.c
+@@ -33,11 +33,13 @@
+ #include <linux/usb/nop-usb-xceiv.h>
+ #include <linux/slab.h>
+ #include <linux/clk.h>
++#include <linux/regulator/consumer.h>
+ 
+ struct nop_usb_xceiv {
+ 	struct usb_phy		phy;
+ 	struct device		*dev;
+ 	struct clk		*clk;
++	struct regulator	*vcc;
+ };
+ 
+ static struct platform_device *pd;
+@@ -70,6 +72,11 @@ static int nop_init(struct usb_phy *phy)
+ {
+ 	struct nop_usb_xceiv *nop = dev_get_drvdata(phy->dev);
+ 
++	if (!IS_ERR(nop->vcc)) {
++		if (regulator_enable(nop->vcc))
++			dev_err(phy->dev, "Failed to enable power\n");
++	}
++
+ 	if (!IS_ERR(nop->clk))
+ 		clk_enable(nop->clk);
+ 
+@@ -82,6 +89,11 @@ static void nop_shutdown(struct usb_phy *phy)
+ 
+ 	if (!IS_ERR(nop->clk))
+ 		clk_disable(nop->clk);
++
++	if (!IS_ERR(nop->vcc)) {
++		if (regulator_disable(nop->vcc))
++			dev_err(phy->dev, "Failed to disable power\n");
++	}
+ }
+ 
+ static int nop_set_peripheral(struct usb_otg *otg, struct usb_gadget *gadget)
+@@ -154,6 +166,12 @@ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ 		}
+ 	}
+ 
++	nop->vcc = devm_regulator_get(&pdev->dev, "vcc");
++	if (IS_ERR(nop->vcc)) {
++		dev_dbg(&pdev->dev, "Error getting vcc regulator: %ld\n",
++					PTR_ERR(nop->vcc));
++	}
++
+ 	nop->dev		= &pdev->dev;
+ 	nop->phy.dev		= nop->dev;
+ 	nop->phy.label		= "nop-xceiv";
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0003-usb-phy-nop-Handle-RESET-for-the-PHY.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0003-usb-phy-nop-Handle-RESET-for-the-PHY.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0003-usb-phy-nop-Handle-RESET-for-the-PHY.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0003-usb-phy-nop-Handle-RESET-for-the-PHY.patch)
@@ -0,0 +1,73 @@
+From ad63ebfc3565bbdec87ee4e30e4d40d164c1d3b8 Mon Sep 17 00:00:00 2001
+From: Roger Quadros <rogerq at ti.com>
+Date: Tue, 12 Mar 2013 13:24:23 +0200
+Subject: [PATCH 3/6] usb: phy: nop: Handle RESET for the PHY
+
+We expect the RESET line to be modeled as a regulator with supply
+name "reset". The regulator should be modeled such that enabling
+the regulator brings the PHY device out of RESET and disabling the
+regulator holds the device in RESET.
+
+They PHY will be held in RESET in .shutdown() and brought out of
+RESET in .init().
+
+Signed-off-by: Roger Quadros <rogerq at ti.com>
+Signed-off-by: Felipe Balbi <balbi at ti.com>
+---
+ drivers/usb/otg/nop-usb-xceiv.c |   19 +++++++++++++++++++
+ 1 file changed, 19 insertions(+)
+
+diff --git a/drivers/usb/otg/nop-usb-xceiv.c b/drivers/usb/otg/nop-usb-xceiv.c
+index fbdcfef..6efc9b7 100644
+--- a/drivers/usb/otg/nop-usb-xceiv.c
++++ b/drivers/usb/otg/nop-usb-xceiv.c
+@@ -40,6 +40,7 @@ struct nop_usb_xceiv {
+ 	struct device		*dev;
+ 	struct clk		*clk;
+ 	struct regulator	*vcc;
++	struct regulator	*reset;
+ };
+ 
+ static struct platform_device *pd;
+@@ -80,6 +81,12 @@ static int nop_init(struct usb_phy *phy)
+ 	if (!IS_ERR(nop->clk))
+ 		clk_enable(nop->clk);
+ 
++	if (!IS_ERR(nop->reset)) {
++		/* De-assert RESET */
++		if (regulator_enable(nop->reset))
++			dev_err(phy->dev, "Failed to de-assert reset\n");
++	}
++
+ 	return 0;
+ }
+ 
+@@ -87,6 +94,12 @@ static void nop_shutdown(struct usb_phy *phy)
+ {
+ 	struct nop_usb_xceiv *nop = dev_get_drvdata(phy->dev);
+ 
++	if (!IS_ERR(nop->reset)) {
++		/* Assert RESET */
++		if (regulator_disable(nop->reset))
++			dev_err(phy->dev, "Failed to assert reset\n");
++	}
++
+ 	if (!IS_ERR(nop->clk))
+ 		clk_disable(nop->clk);
+ 
+@@ -172,6 +185,12 @@ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ 					PTR_ERR(nop->vcc));
+ 	}
+ 
++	nop->reset = devm_regulator_get(&pdev->dev, "reset");
++	if (IS_ERR(nop->reset)) {
++		dev_dbg(&pdev->dev, "Error getting reset regulator: %ld\n",
++					PTR_ERR(nop->reset));
++	}
++
+ 	nop->dev		= &pdev->dev;
+ 	nop->phy.dev		= nop->dev;
+ 	nop->phy.label		= "nop-xceiv";
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0004-usb-phy-nop-use-new-PHY-API-to-register-PHY.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0004-usb-phy-nop-use-new-PHY-API-to-register-PHY.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0004-usb-phy-nop-use-new-PHY-API-to-register-PHY.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0004-usb-phy-nop-use-new-PHY-API-to-register-PHY.patch)
@@ -0,0 +1,36 @@
+From 90f4232f31f087f86667da03b1a4f3c90a32cb4a Mon Sep 17 00:00:00 2001
+From: Roger Quadros <rogerq at ti.com>
+Date: Tue, 12 Mar 2013 13:24:24 +0200
+Subject: [PATCH 4/6] usb: phy: nop: use new PHY API to register PHY
+
+We would need to support multiple PHYs of the same type
+so use the new PHY API usb_add_phy_dev() to register the PHY.
+
+Signed-off-by: Roger Quadros <rogerq at ti.com>
+Signed-off-by: Felipe Balbi <balbi at ti.com>
+---
+ drivers/usb/otg/nop-usb-xceiv.c |    3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/usb/otg/nop-usb-xceiv.c b/drivers/usb/otg/nop-usb-xceiv.c
+index 6efc9b7..fe7a460 100644
+--- a/drivers/usb/otg/nop-usb-xceiv.c
++++ b/drivers/usb/otg/nop-usb-xceiv.c
+@@ -198,12 +198,13 @@ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ 	nop->phy.init		= nop_init;
+ 	nop->phy.shutdown	= nop_shutdown;
+ 	nop->phy.state		= OTG_STATE_UNDEFINED;
++	nop->phy.type		= type;
+ 
+ 	nop->phy.otg->phy		= &nop->phy;
+ 	nop->phy.otg->set_host		= nop_set_host;
+ 	nop->phy.otg->set_peripheral	= nop_set_peripheral;
+ 
+-	err = usb_add_phy(&nop->phy, type);
++	err = usb_add_phy_dev(&nop->phy);
+ 	if (err) {
+ 		dev_err(&pdev->dev, "can't register transceiver, err: %d\n",
+ 			err);
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0005-usb-phy-nop-Add-device-tree-support-and-binding-info.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0005-usb-phy-nop-Add-device-tree-support-and-binding-info.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0005-usb-phy-nop-Add-device-tree-support-and-binding-info.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0005-usb-phy-nop-Add-device-tree-support-and-binding-info.patch)
@@ -0,0 +1,147 @@
+From 0eba387973f521e57f00584e5e840e5328a61dda Mon Sep 17 00:00:00 2001
+From: Roger Quadros <rogerq at ti.com>
+Date: Tue, 12 Mar 2013 13:24:25 +0200
+Subject: [PATCH 5/6] usb: phy: nop: Add device tree support and binding
+ information
+
+The PHY clock, clock rate, VCC regulator and RESET regulator
+can now be provided via device tree.
+
+Signed-off-by: Roger Quadros <rogerq at ti.com>
+Signed-off-by: Felipe Balbi <balbi at ti.com>
+---
+ .../devicetree/bindings/usb/usb-nop-xceiv.txt      |   34 +++++++++++++++++++
+ drivers/usb/otg/nop-usb-xceiv.c                    |   35 +++++++++++++++-----
+ 2 files changed, 61 insertions(+), 8 deletions(-)
+ create mode 100644 Documentation/devicetree/bindings/usb/usb-nop-xceiv.txt
+
+diff --git a/Documentation/devicetree/bindings/usb/usb-nop-xceiv.txt b/Documentation/devicetree/bindings/usb/usb-nop-xceiv.txt
+new file mode 100644
+index 0000000..d7e2726
+--- /dev/null
++++ b/Documentation/devicetree/bindings/usb/usb-nop-xceiv.txt
+@@ -0,0 +1,34 @@
++USB NOP PHY
++
++Required properties:
++- compatible: should be usb-nop-xceiv
++
++Optional properties:
++- clocks: phandle to the PHY clock. Use as per Documentation/devicetree
++  /bindings/clock/clock-bindings.txt
++  This property is required if clock-frequency is specified.
++
++- clock-names: Should be "main_clk"
++
++- clock-frequency: the clock frequency (in Hz) that the PHY clock must
++  be configured to.
++
++- vcc-supply: phandle to the regulator that provides RESET to the PHY.
++
++- reset-supply: phandle to the regulator that provides power to the PHY.
++
++Example:
++
++	hsusb1_phy {
++		compatible = "usb-nop-xceiv";
++		clock-frequency = <19200000>;
++		clocks = <&osc 0>;
++		clock-names = "main_clk";
++		vcc-supply = <&hsusb1_vcc_regulator>;
++		reset-supply = <&hsusb1_reset_regulator>;
++	};
++
++hsusb1_phy is a NOP USB PHY device that gets its clock from an oscillator
++and expects that clock to be configured to 19.2MHz by the NOP PHY driver.
++hsusb1_vcc_regulator provides power to the PHY and hsusb1_reset_regulator
++controls RESET.
+diff --git a/drivers/usb/otg/nop-usb-xceiv.c b/drivers/usb/otg/nop-usb-xceiv.c
+index fe7a460..b26b1c2 100644
+--- a/drivers/usb/otg/nop-usb-xceiv.c
++++ b/drivers/usb/otg/nop-usb-xceiv.c
+@@ -34,13 +34,14 @@
+ #include <linux/slab.h>
+ #include <linux/clk.h>
+ #include <linux/regulator/consumer.h>
++#include <linux/of.h>
+ 
+ struct nop_usb_xceiv {
+-	struct usb_phy		phy;
+-	struct device		*dev;
+-	struct clk		*clk;
+-	struct regulator	*vcc;
+-	struct regulator	*reset;
++	struct usb_phy phy;
++	struct device *dev;
++	struct clk *clk;
++	struct regulator *vcc;
++	struct regulator *reset;
+ };
+ 
+ static struct platform_device *pd;
+@@ -140,10 +141,12 @@ static int nop_set_host(struct usb_otg *otg, struct usb_bus *host)
+ 
+ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ {
++	struct device *dev = &pdev->dev;
+ 	struct nop_usb_xceiv_platform_data *pdata = pdev->dev.platform_data;
+ 	struct nop_usb_xceiv	*nop;
+ 	enum usb_phy_type	type = USB_PHY_TYPE_USB2;
+ 	int err;
++	u32 clk_rate = 0;
+ 
+ 	nop = devm_kzalloc(&pdev->dev, sizeof(*nop), GFP_KERNEL);
+ 	if (!nop)
+@@ -154,8 +157,16 @@ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ 	if (!nop->phy.otg)
+ 		return -ENOMEM;
+ 
+-	if (pdata)
++	if (dev->of_node) {
++		struct device_node *node = dev->of_node;
++
++		if (of_property_read_u32(node, "clock-frequency", &clk_rate))
++			clk_rate = 0;
++
++	} else if (pdata) {
+ 		type = pdata->type;
++		clk_rate = pdata->clk_rate;
++	}
+ 
+ 	nop->clk = devm_clk_get(&pdev->dev, "main_clk");
+ 	if (IS_ERR(nop->clk)) {
+@@ -163,8 +174,8 @@ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ 					PTR_ERR(nop->clk));
+ 	}
+ 
+-	if (!IS_ERR(nop->clk) && pdata && pdata->clk_rate) {
+-		err = clk_set_rate(nop->clk, pdata->clk_rate);
++	if (!IS_ERR(nop->clk) && clk_rate) {
++		err = clk_set_rate(nop->clk, clk_rate);
+ 		if (err) {
+ 			dev_err(&pdev->dev, "Error setting clock rate\n");
+ 			return err;
+@@ -237,12 +248,20 @@ static int nop_usb_xceiv_remove(struct platform_device *pdev)
+ 	return 0;
+ }
+ 
++static const struct of_device_id nop_xceiv_dt_ids[] = {
++	{ .compatible = "usb-nop-xceiv" },
++	{ }
++};
++
++MODULE_DEVICE_TABLE(of, nop_xceiv_dt_ids);
++
+ static struct platform_driver nop_usb_xceiv_driver = {
+ 	.probe		= nop_usb_xceiv_probe,
+ 	.remove		= nop_usb_xceiv_remove,
+ 	.driver		= {
+ 		.name	= "nop_usb_xceiv",
+ 		.owner	= THIS_MODULE,
++		.of_match_table = of_match_ptr(nop_xceiv_dt_ids),
+ 	},
+ };
+ 
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0006-USB-phy-nop-Defer-probe-if-device-needs-VCC-RESET.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0006-USB-phy-nop-Defer-probe-if-device-needs-VCC-RESET.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0006-USB-phy-nop-Defer-probe-if-device-needs-VCC-RESET.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0006-USB-phy-nop-Defer-probe-if-device-needs-VCC-RESET.patch)
@@ -0,0 +1,71 @@
+From b54b5f56531d9fcbb30908373ba842af4de6a26b Mon Sep 17 00:00:00 2001
+From: Roger Quadros <rogerq at ti.com>
+Date: Tue, 12 Mar 2013 13:24:26 +0200
+Subject: [PATCH 6/6] USB: phy: nop: Defer probe if device needs VCC/RESET
+
+Add 2 flags, needs_vcc and needs_reset to platform data.
+If the flag is set and the regulator couldn't be found
+then we bail out with -EPROBE_DEFER.
+
+For device tree boot we depend on presensce of vcc-supply/
+reset-supply properties to decide if we should bail out
+with -EPROBE_DEFER or just continue in case the regulator
+can't be found.
+
+This is required for proper functionality in cases where the
+regulator is needed but is probed later than the PHY device.
+
+Signed-off-by: Roger Quadros <rogerq at ti.com>
+Signed-off-by: Felipe Balbi <balbi at ti.com>
+---
+ drivers/usb/otg/nop-usb-xceiv.c |   11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+diff --git a/drivers/usb/otg/nop-usb-xceiv.c b/drivers/usb/otg/nop-usb-xceiv.c
+index b26b1c2..2b10cc9 100644
+--- a/drivers/usb/otg/nop-usb-xceiv.c
++++ b/drivers/usb/otg/nop-usb-xceiv.c
+@@ -147,6 +147,8 @@ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ 	enum usb_phy_type	type = USB_PHY_TYPE_USB2;
+ 	int err;
+ 	u32 clk_rate = 0;
++	bool needs_vcc = false;
++	bool needs_reset = false;
+ 
+ 	nop = devm_kzalloc(&pdev->dev, sizeof(*nop), GFP_KERNEL);
+ 	if (!nop)
+@@ -163,9 +165,14 @@ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ 		if (of_property_read_u32(node, "clock-frequency", &clk_rate))
+ 			clk_rate = 0;
+ 
++		needs_vcc = of_property_read_bool(node, "vcc-supply");
++		needs_reset = of_property_read_bool(node, "reset-supply");
++
+ 	} else if (pdata) {
+ 		type = pdata->type;
+ 		clk_rate = pdata->clk_rate;
++		needs_vcc = pdata->needs_vcc;
++		needs_reset = pdata->needs_reset;
+ 	}
+ 
+ 	nop->clk = devm_clk_get(&pdev->dev, "main_clk");
+@@ -194,12 +201,16 @@ static int nop_usb_xceiv_probe(struct platform_device *pdev)
+ 	if (IS_ERR(nop->vcc)) {
+ 		dev_dbg(&pdev->dev, "Error getting vcc regulator: %ld\n",
+ 					PTR_ERR(nop->vcc));
++		if (needs_vcc)
++			return -EPROBE_DEFER;
+ 	}
+ 
+ 	nop->reset = devm_regulator_get(&pdev->dev, "reset");
+ 	if (IS_ERR(nop->reset)) {
+ 		dev_dbg(&pdev->dev, "Error getting reset regulator: %ld\n",
+ 					PTR_ERR(nop->reset));
++		if (needs_reset)
++			return -EPROBE_DEFER;
+ 	}
+ 
+ 	nop->dev		= &pdev->dev;
+-- 
+1.7.9.5
+

Copied: dists/trunk/linux/debian/patches/features/arm/0009-USB-EHCI-split-ehci-omap-out-to-a-separate-driver.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0009-USB-EHCI-split-ehci-omap-out-to-a-separate-driver.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0009-USB-EHCI-split-ehci-omap-out-to-a-separate-driver.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0009-USB-EHCI-split-ehci-omap-out-to-a-separate-driver.patch)
@@ -0,0 +1,197 @@
+From a07cc53bf037c028e5f01419ab335de9a12f6bc4 Mon Sep 17 00:00:00 2001
+From: Alan Stern <stern at rowland.harvard.edu>
+Date: Tue, 12 Mar 2013 10:44:39 +0000
+Subject: [PATCH 09/10] USB: EHCI: split ehci-omap out to a separate driver
+
+This patch (as1645) converts ehci-omap over to the new "ehci-hcd is a
+library" approach, so that it can coexist peacefully with other EHCI
+platform drivers and can make use of the private area allocated at
+the end of struct ehci_hcd.
+
+Signed-off-by: Alan Stern <stern at rowland.harvard.edu>
+Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
+---
+ drivers/usb/host/Kconfig     |    2 +-
+ drivers/usb/host/Makefile    |    1 +
+ drivers/usb/host/ehci-hcd.c  |    6 +---
+ drivers/usb/host/ehci-omap.c |   76 +++++++++++++++++++-----------------------
+ 4 files changed, 37 insertions(+), 48 deletions(-)
+
+diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
+index 3a21c5d..11e102e 100644
+--- a/drivers/usb/host/Kconfig
++++ b/drivers/usb/host/Kconfig
+@@ -155,7 +155,7 @@ config USB_EHCI_MXC
+ 	  Variation of ARC USB block used in some Freescale chips.
+ 
+ config USB_EHCI_HCD_OMAP
+-	bool "EHCI support for OMAP3 and later chips"
++	tristate "EHCI support for OMAP3 and later chips"
+ 	depends on USB_EHCI_HCD && ARCH_OMAP
+ 	default y
+ 	---help---
+diff --git a/drivers/usb/host/Makefile b/drivers/usb/host/Makefile
+index 001fbff..56de410 100644
+--- a/drivers/usb/host/Makefile
++++ b/drivers/usb/host/Makefile
+@@ -27,6 +27,7 @@ obj-$(CONFIG_USB_EHCI_HCD)	+= ehci-hcd.o
+ obj-$(CONFIG_USB_EHCI_PCI)	+= ehci-pci.o
+ obj-$(CONFIG_USB_EHCI_HCD_PLATFORM)	+= ehci-platform.o
+ obj-$(CONFIG_USB_EHCI_MXC)	+= ehci-mxc.o
++obj-$(CONFIG_USB_EHCI_HCD_OMAP)	+= ehci-omap.o
+ 
+ obj-$(CONFIG_USB_OXU210HP_HCD)	+= oxu210hp-hcd.o
+ obj-$(CONFIG_USB_ISP116X_HCD)	+= isp116x-hcd.o
+diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
+index b416a3f..303b022 100644
+--- a/drivers/usb/host/ehci-hcd.c
++++ b/drivers/usb/host/ehci-hcd.c
+@@ -1252,11 +1252,6 @@ MODULE_LICENSE ("GPL");
+ #define PLATFORM_DRIVER		ehci_hcd_sh_driver
+ #endif
+ 
+-#ifdef CONFIG_USB_EHCI_HCD_OMAP
+-#include "ehci-omap.c"
+-#define        PLATFORM_DRIVER         ehci_hcd_omap_driver
+-#endif
+-
+ #ifdef CONFIG_PPC_PS3
+ #include "ehci-ps3.c"
+ #define	PS3_SYSTEM_BUS_DRIVER	ps3_ehci_driver
+@@ -1346,6 +1341,7 @@ MODULE_LICENSE ("GPL");
+ 	!IS_ENABLED(CONFIG_USB_EHCI_HCD_PLATFORM) && \
+ 	!IS_ENABLED(CONFIG_USB_CHIPIDEA_HOST) && \
+ 	!IS_ENABLED(CONFIG_USB_EHCI_MXC) && \
++	!IS_ENABLED(CONFIG_USB_EHCI_HCD_OMAP) && \
+ 	!defined(PLATFORM_DRIVER) && \
+ 	!defined(PS3_SYSTEM_BUS_DRIVER) && \
+ 	!defined(OF_PLATFORM_DRIVER) && \
+diff --git a/drivers/usb/host/ehci-omap.c b/drivers/usb/host/ehci-omap.c
+index 82052fa..9e85ce1 100644
+--- a/drivers/usb/host/ehci-omap.c
++++ b/drivers/usb/host/ehci-omap.c
+@@ -36,6 +36,9 @@
+  *	- convert to use hwmod and runtime PM
+  */
+ 
++#include <linux/kernel.h>
++#include <linux/module.h>
++#include <linux/io.h>
+ #include <linux/platform_device.h>
+ #include <linux/slab.h>
+ #include <linux/usb/ulpi.h>
+@@ -43,6 +46,10 @@
+ #include <linux/pm_runtime.h>
+ #include <linux/gpio.h>
+ #include <linux/clk.h>
++#include <linux/usb.h>
++#include <linux/usb/hcd.h>
++
++#include "ehci.h"
+ 
+ #include <linux/platform_data/usb-omap.h>
+ 
+@@ -57,9 +64,11 @@
+ #define	EHCI_INSNREG05_ULPI_EXTREGADD_SHIFT		8
+ #define	EHCI_INSNREG05_ULPI_WRDATA_SHIFT		0
+ 
+-/*-------------------------------------------------------------------------*/
++#define DRIVER_DESC "OMAP-EHCI Host Controller driver"
+ 
+-static const struct hc_driver ehci_omap_hc_driver;
++static const char hcd_name[] = "ehci-omap";
++
++/*-------------------------------------------------------------------------*/
+ 
+ 
+ static inline void ehci_write(void __iomem *base, u32 reg, u32 val)
+@@ -166,6 +175,12 @@ static void disable_put_regulator(
+ /* configure so an HC device and id are always provided */
+ /* always called with process context; sleeping is OK */
+ 
++static struct hc_driver __read_mostly ehci_omap_hc_driver;
++
++static const struct ehci_driver_overrides ehci_omap_overrides __initdata = {
++	.reset =		omap_ehci_init,
++};
++
+ /**
+  * ehci_hcd_omap_probe - initialize TI-based HCDs
+  *
+@@ -323,56 +338,33 @@ static struct platform_driver ehci_hcd_omap_driver = {
+ 	/*.suspend		= ehci_hcd_omap_suspend, */
+ 	/*.resume		= ehci_hcd_omap_resume, */
+ 	.driver = {
+-		.name		= "ehci-omap",
++		.name		= hcd_name,
+ 	}
+ };
+ 
+ /*-------------------------------------------------------------------------*/
+ 
+-static const struct hc_driver ehci_omap_hc_driver = {
+-	.description		= hcd_name,
+-	.product_desc		= "OMAP-EHCI Host Controller",
+-	.hcd_priv_size		= sizeof(struct ehci_hcd),
+-
+-	/*
+-	 * generic hardware linkage
+-	 */
+-	.irq			= ehci_irq,
+-	.flags			= HCD_MEMORY | HCD_USB2,
+-
+-	/*
+-	 * basic lifecycle operations
+-	 */
+-	.reset			= omap_ehci_init,
+-	.start			= ehci_run,
+-	.stop			= ehci_stop,
+-	.shutdown		= ehci_shutdown,
+-
+-	/*
+-	 * managing i/o requests and associated device resources
+-	 */
+-	.urb_enqueue		= ehci_urb_enqueue,
+-	.urb_dequeue		= ehci_urb_dequeue,
+-	.endpoint_disable	= ehci_endpoint_disable,
+-	.endpoint_reset		= ehci_endpoint_reset,
++static int __init ehci_omap_init(void)
++{
++	if (usb_disabled())
++		return -ENODEV;
+ 
+-	/*
+-	 * scheduling support
+-	 */
+-	.get_frame_number	= ehci_get_frame,
++	pr_info("%s: " DRIVER_DESC "\n", hcd_name);
+ 
+-	/*
+-	 * root hub support
+-	 */
+-	.hub_status_data	= ehci_hub_status_data,
+-	.hub_control		= ehci_hub_control,
+-	.bus_suspend		= ehci_bus_suspend,
+-	.bus_resume		= ehci_bus_resume,
++	ehci_init_driver(&ehci_omap_hc_driver, &ehci_omap_overrides);
++	return platform_driver_register(&ehci_hcd_omap_driver);
++}
++module_init(ehci_omap_init);
+ 
+-	.clear_tt_buffer_complete = ehci_clear_tt_buffer_complete,
+-};
++static void __exit ehci_omap_cleanup(void)
++{
++	platform_driver_unregister(&ehci_hcd_omap_driver);
++}
++module_exit(ehci_omap_cleanup);
+ 
+ MODULE_ALIAS("platform:ehci-omap");
+ MODULE_AUTHOR("Texas Instruments, Inc.");
+ MODULE_AUTHOR("Felipe Balbi <felipe.balbi at nokia.com>");
+ 
++MODULE_DESCRIPTION(DRIVER_DESC);
++MODULE_LICENSE("GPL");
+-- 
+1.7.10.4
+

Copied: dists/trunk/linux/debian/patches/features/arm/0010-USB-EHCI-make-ehci-orion-a-separate-driver.patch (from r20172, dists/sid/linux/debian/patches/features/arm/0010-USB-EHCI-make-ehci-orion-a-separate-driver.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/0010-USB-EHCI-make-ehci-orion-a-separate-driver.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/0010-USB-EHCI-make-ehci-orion-a-separate-driver.patch)
@@ -0,0 +1,255 @@
+From 4181beaae0fbcef78287f0f2a04d150ecc7201d9 Mon Sep 17 00:00:00 2001
+From: Manjunath Goudar <manjunath.goudar at linaro.org>
+Date: Tue, 2 Apr 2013 16:23:59 +0000
+Subject: [PATCH 10/10] USB: EHCI: make ehci-orion a separate driver
+
+Separate the Orion host controller driver from ehci-hcd host
+code into its own driver module because of following reason.
+
+With the multiplatform changes in arm-soc tree, it becomes
+possible to enable the mvebu platform (which uses
+ehci-orion) at the same time as other platforms that require
+a conflicting EHCI bus glue. At the moment, this results
+in a warning like
+
+drivers/usb/host/ehci-hcd.c:1297:0: warning: "PLATFORM_DRIVER" redefined [enabled by default]
+drivers/usb/host/ehci-hcd.c:1277:0: note: this is the location of the previous definition
+drivers/usb/host/ehci-orion.c:334:31: warning: 'ehci_orion_driver' defined but not used [-Wunused-variable]
+
+and an ehci driver that only works on one of them.
+
+With the infrastructure added by Alan Stern in patch 3e0232039
+"USB: EHCI: prepare to make ehci-hcd a library module", we can
+avoid this problem by turning a bus glue into a separate
+module, as we do here for the orion bus glue.
+
+An earlier version of this patch was included in 3.9 but caused
+a regression there, which has subsequently been fixed.
+
+While we are here, use the opportunity to disabiguate the two
+Marvell EHCI controller implementations in Kconfig.
+
+In V4 (arnd):
+- Improve Kconfig text
+
+In V3:
+- More detail provided in commit message regarding this patch.
+- Replaced hcd_name string "ehci-orion" into "orion-ehci".
+- MODULE_LICENSE is GPL v2.
+- In ehci_init_driver calling second argument passed  as NULL instead of
+  ehci_orion_overrides because ehci_orion_overrides is removed.
+
+In V2:
+- Tegra patch related changes removed from this patch.
+
+Signed-off-by: Manjunath Goudar <manjunath.goudar at linaro.org>
+Signed-off-by: Arnd Bergmann <arnd at arndb.de>
+Acked-by: Jason Cooper <jason at lakedaemon.net>
+Tested-by: Andrew Lunn <andrew at lunn.ch>
+Acked-by: Alan Stern <stern at rowland.harvard.edu>
+Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
+---
+ drivers/usb/host/Kconfig      |   17 ++++++++-
+ drivers/usb/host/Makefile     |    1 +
+ drivers/usb/host/ehci-hcd.c   |    6 +--
+ drivers/usb/host/ehci-orion.c |   82 ++++++++++++++++++-----------------------
+ 4 files changed, 53 insertions(+), 53 deletions(-)
+
+diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig
+index 11e102e..539465b 100644
+--- a/drivers/usb/host/Kconfig
++++ b/drivers/usb/host/Kconfig
+@@ -162,6 +162,17 @@ config USB_EHCI_HCD_OMAP
+ 	  Enables support for the on-chip EHCI controller on
+ 	  OMAP3 and later chips.
+ 
++config USB_EHCI_HCD_ORION
++	tristate  "Support for Marvell EBU on-chip EHCI USB controller"
++	depends on USB_EHCI_HCD && PLAT_ORION
++	default y
++	---help---
++	  Enables support for the on-chip EHCI controller on Marvell's
++	  embedded ARM SoCs, including Orion, Kirkwood, Dove, Armada XP,
++	  Armada 370.  This is different from the EHCI implementation
++	  on Marvell's mobile PXA and MMP SoC, see "EHCI support for
++	  Marvell PXA/MMP USB controller" for those.
++
+ config USB_EHCI_MSM
+ 	bool "Support for MSM on-chip EHCI USB controller"
+ 	depends on USB_EHCI_HCD && ARCH_MSM
+@@ -205,13 +216,17 @@ config USB_EHCI_S5P
+ 	 Enable support for the S5P SOC's on-chip EHCI controller.
+ 
+ config USB_EHCI_MV
+-	bool "EHCI support for Marvell on-chip controller"
++	bool "EHCI support for Marvell PXA/MMP USB controller"
+ 	depends on USB_EHCI_HCD && (ARCH_PXA || ARCH_MMP)
+ 	select USB_EHCI_ROOT_HUB_TT
+ 	---help---
+ 	  Enables support for Marvell (including PXA and MMP series) on-chip
+ 	  USB SPH and OTG controller. SPH is a single port host, and it can
+ 	  only be EHCI host. OTG is controller that can switch to host mode.
++	  Note that this driver will not work on Marvell's other EHCI
++	  controller used by the EBU-type SoCs including Orion, Kirkwood,
++	  Dova, Armada 370 and Armada XP. See "Support for Marvell EBU
++	  on-chip EHCI USB controller" for those.
+ 
+ config USB_W90X900_EHCI
+ 	bool "W90X900(W90P910) EHCI support"
+diff --git a/drivers/usb/host/Makefile b/drivers/usb/host/Makefile
+index 56de410..9492f50 100644
+--- a/drivers/usb/host/Makefile
++++ b/drivers/usb/host/Makefile
+@@ -28,6 +28,7 @@ obj-$(CONFIG_USB_EHCI_PCI)	+= ehci-pci.o
+ obj-$(CONFIG_USB_EHCI_HCD_PLATFORM)	+= ehci-platform.o
+ obj-$(CONFIG_USB_EHCI_MXC)	+= ehci-mxc.o
+ obj-$(CONFIG_USB_EHCI_HCD_OMAP)	+= ehci-omap.o
++obj-$(CONFIG_USB_EHCI_HCD_ORION)	+= ehci-orion.o
+ 
+ obj-$(CONFIG_USB_OXU210HP_HCD)	+= oxu210hp-hcd.o
+ obj-$(CONFIG_USB_ISP116X_HCD)	+= isp116x-hcd.o
+diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
+index 303b022..93fd382 100644
+--- a/drivers/usb/host/ehci-hcd.c
++++ b/drivers/usb/host/ehci-hcd.c
+@@ -1267,11 +1267,6 @@ MODULE_LICENSE ("GPL");
+ #define XILINX_OF_PLATFORM_DRIVER	ehci_hcd_xilinx_of_driver
+ #endif
+ 
+-#ifdef CONFIG_PLAT_ORION
+-#include "ehci-orion.c"
+-#define	PLATFORM_DRIVER		ehci_orion_driver
+-#endif
+-
+ #ifdef CONFIG_USB_W90X900_EHCI
+ #include "ehci-w90x900.c"
+ #define	PLATFORM_DRIVER		ehci_hcd_w90x900_driver
+@@ -1342,6 +1337,7 @@ MODULE_LICENSE ("GPL");
+ 	!IS_ENABLED(CONFIG_USB_CHIPIDEA_HOST) && \
+ 	!IS_ENABLED(CONFIG_USB_EHCI_MXC) && \
+ 	!IS_ENABLED(CONFIG_USB_EHCI_HCD_OMAP) && \
++	!IS_ENABLED(CONFIG_USB_EHCI_HCD_ORION) && \
+ 	!defined(PLATFORM_DRIVER) && \
+ 	!defined(PS3_SYSTEM_BUS_DRIVER) && \
+ 	!defined(OF_PLATFORM_DRIVER) && \
+diff --git a/drivers/usb/host/ehci-orion.c b/drivers/usb/host/ehci-orion.c
+index 914a3ec..e24e905 100644
+--- a/drivers/usb/host/ehci-orion.c
++++ b/drivers/usb/host/ehci-orion.c
+@@ -17,6 +17,12 @@
+ #include <linux/of.h>
+ #include <linux/of_device.h>
+ #include <linux/of_irq.h>
++#include <linux/usb.h>
++#include <linux/usb/hcd.h>
++#include <linux/io.h>
++#include <linux/dma-mapping.h>
++
++#include "ehci.h"
+ 
+ #define rdl(off)	__raw_readl(hcd->regs + (off))
+ #define wrl(off, val)	__raw_writel((val), hcd->regs + (off))
+@@ -34,6 +40,12 @@
+ #define USB_PHY_IVREF_CTRL	0x440
+ #define USB_PHY_TST_GRP_CTRL	0x450
+ 
++#define DRIVER_DESC "EHCI orion driver"
++
++static const char hcd_name[] = "ehci-orion";
++
++static struct hc_driver __read_mostly ehci_orion_hc_driver;
++
+ /*
+  * Implement Orion USB controller specification guidelines
+  */
+@@ -104,51 +116,6 @@ static void orion_usb_phy_v1_setup(struct usb_hcd *hcd)
+ 	wrl(USB_MODE, 0x13);
+ }
+ 
+-static const struct hc_driver ehci_orion_hc_driver = {
+-	.description = hcd_name,
+-	.product_desc = "Marvell Orion EHCI",
+-	.hcd_priv_size = sizeof(struct ehci_hcd),
+-
+-	/*
+-	 * generic hardware linkage
+-	 */
+-	.irq = ehci_irq,
+-	.flags = HCD_MEMORY | HCD_USB2,
+-
+-	/*
+-	 * basic lifecycle operations
+-	 */
+-	.reset = ehci_setup,
+-	.start = ehci_run,
+-	.stop = ehci_stop,
+-	.shutdown = ehci_shutdown,
+-
+-	/*
+-	 * managing i/o requests and associated device resources
+-	 */
+-	.urb_enqueue = ehci_urb_enqueue,
+-	.urb_dequeue = ehci_urb_dequeue,
+-	.endpoint_disable = ehci_endpoint_disable,
+-	.endpoint_reset = ehci_endpoint_reset,
+-
+-	/*
+-	 * scheduling support
+-	 */
+-	.get_frame_number = ehci_get_frame,
+-
+-	/*
+-	 * root hub support
+-	 */
+-	.hub_status_data = ehci_hub_status_data,
+-	.hub_control = ehci_hub_control,
+-	.bus_suspend = ehci_bus_suspend,
+-	.bus_resume = ehci_bus_resume,
+-	.relinquish_port = ehci_relinquish_port,
+-	.port_handed_over = ehci_port_handed_over,
+-
+-	.clear_tt_buffer_complete = ehci_clear_tt_buffer_complete,
+-};
+-
+ static void
+ ehci_orion_conf_mbus_windows(struct usb_hcd *hcd,
+ 			     const struct mbus_dram_target_info *dram)
+@@ -323,8 +290,6 @@ static int __exit ehci_orion_drv_remove(struct platform_device *pdev)
+ 	return 0;
+ }
+ 
+-MODULE_ALIAS("platform:orion-ehci");
+-
+ static const struct of_device_id ehci_orion_dt_ids[] = {
+ 	{ .compatible = "marvell,orion-ehci", },
+ 	{},
+@@ -341,3 +306,26 @@ static struct platform_driver ehci_orion_driver = {
+ 		.of_match_table = of_match_ptr(ehci_orion_dt_ids),
+ 	},
+ };
++
++static int __init ehci_orion_init(void)
++{
++	if (usb_disabled())
++		return -ENODEV;
++
++	pr_info("%s: " DRIVER_DESC "\n", hcd_name);
++
++	ehci_init_driver(&ehci_orion_hc_driver, NULL);
++	return platform_driver_register(&ehci_orion_driver);
++}
++module_init(ehci_orion_init);
++
++static void __exit ehci_orion_cleanup(void)
++{
++	platform_driver_unregister(&ehci_orion_driver);
++}
++module_exit(ehci_orion_cleanup);
++
++MODULE_DESCRIPTION(DRIVER_DESC);
++MODULE_ALIAS("platform:orion-ehci");
++MODULE_AUTHOR("Tzachi Perelstein");
++MODULE_LICENSE("GPL v2");
+-- 
+1.7.10.4
+

Copied: dists/trunk/linux/debian/patches/features/arm/ARM-dts-imx-add-imx5x-usb-clock-DT-lookups.patch (from r20172, dists/sid/linux/debian/patches/features/arm/ARM-dts-imx-add-imx5x-usb-clock-DT-lookups.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/ARM-dts-imx-add-imx5x-usb-clock-DT-lookups.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/ARM-dts-imx-add-imx5x-usb-clock-DT-lookups.patch)
@@ -0,0 +1,100 @@
+From 8ed5da7959d5e6d3fcbdfafbacb58614499fb314 Mon Sep 17 00:00:00 2001
+From: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Date: Thu, 11 Apr 2013 10:13:15 +0000
+Subject: ARM: dts: imx: add imx5x usb clock DT lookups
+
+Signed-off-by: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Signed-off-by: Shawn Guo <shawn.guo at linaro.org>
+---
+(limited to 'arch/arm/boot/dts')
+
+diff --git a/arch/arm/boot/dts/imx51.dtsi b/arch/arm/boot/dts/imx51.dtsi
+index 761ae1c..b118e01 100644
+--- a/arch/arm/boot/dts/imx51.dtsi
++++ b/arch/arm/boot/dts/imx51.dtsi
+@@ -179,6 +179,7 @@
+ 				compatible = "fsl,imx51-usb", "fsl,imx27-usb";
+ 				reg = <0x73f80000 0x0200>;
+ 				interrupts = <18>;
++				clocks = <&clks 108>;
+ 				fsl,usbmisc = <&usbmisc 0>;
+ 				status = "disabled";
+ 			};
+@@ -187,6 +188,7 @@
+ 				compatible = "fsl,imx51-usb", "fsl,imx27-usb";
+ 				reg = <0x73f80200 0x0200>;
+ 				interrupts = <14>;
++				clocks = <&clks 108>;
+ 				fsl,usbmisc = <&usbmisc 1>;
+ 				status = "disabled";
+ 			};
+@@ -195,6 +197,7 @@
+ 				compatible = "fsl,imx51-usb", "fsl,imx27-usb";
+ 				reg = <0x73f80400 0x0200>;
+ 				interrupts = <16>;
++				clocks = <&clks 108>;
+ 				fsl,usbmisc = <&usbmisc 2>;
+ 				status = "disabled";
+ 			};
+@@ -203,6 +206,7 @@
+ 				compatible = "fsl,imx51-usb", "fsl,imx27-usb";
+ 				reg = <0x73f80600 0x0200>;
+ 				interrupts = <17>;
++				clocks = <&clks 108>;
+ 				fsl,usbmisc = <&usbmisc 3>;
+ 				status = "disabled";
+ 			};
+@@ -211,6 +215,7 @@
+ 				#index-cells = <1>;
+ 				compatible = "fsl,imx51-usbmisc";
+ 				reg = <0x73f80800 0x200>;
++				clocks = <&clks 108>;
+ 			};
+ 
+ 			gpio1: gpio at 73f84000 {
+diff --git a/arch/arm/boot/dts/imx53.dtsi b/arch/arm/boot/dts/imx53.dtsi
+index 6c8fa7d..faea9fa 100644
+--- a/arch/arm/boot/dts/imx53.dtsi
++++ b/arch/arm/boot/dts/imx53.dtsi
+@@ -167,6 +167,7 @@
+ 				compatible = "fsl,imx53-usb", "fsl,imx27-usb";
+ 				reg = <0x53f80000 0x0200>;
+ 				interrupts = <18>;
++				clocks = <&clks 108>;
+ 				fsl,usbmisc = <&usbmisc 0>;
+ 				status = "disabled";
+ 			};
+@@ -175,6 +176,7 @@
+ 				compatible = "fsl,imx53-usb", "fsl,imx27-usb";
+ 				reg = <0x53f80200 0x0200>;
+ 				interrupts = <14>;
++				clocks = <&clks 108>;
+ 				fsl,usbmisc = <&usbmisc 1>;
+ 				status = "disabled";
+ 			};
+@@ -183,6 +185,7 @@
+ 				compatible = "fsl,imx53-usb", "fsl,imx27-usb";
+ 				reg = <0x53f80400 0x0200>;
+ 				interrupts = <16>;
++				clocks = <&clks 108>;
+ 				fsl,usbmisc = <&usbmisc 2>;
+ 				status = "disabled";
+ 			};
+@@ -191,6 +194,7 @@
+ 				compatible = "fsl,imx53-usb", "fsl,imx27-usb";
+ 				reg = <0x53f80600 0x0200>;
+ 				interrupts = <17>;
++				clocks = <&clks 108>;
+ 				fsl,usbmisc = <&usbmisc 3>;
+ 				status = "disabled";
+ 			};
+@@ -199,6 +203,7 @@
+ 				#index-cells = <1>;
+ 				compatible = "fsl,imx53-usbmisc";
+ 				reg = <0x53f80800 0x200>;
++				clocks = <&clks 108>;
+ 			};
+ 
+ 			gpio1: gpio at 53f84000 {
+--
+cgit v0.9.1

Copied: dists/trunk/linux/debian/patches/features/arm/ARM-dts-imx-add-imx5x-usbmisc-entries.patch (from r20172, dists/sid/linux/debian/patches/features/arm/ARM-dts-imx-add-imx5x-usbmisc-entries.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/ARM-dts-imx-add-imx5x-usbmisc-entries.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/ARM-dts-imx-add-imx5x-usbmisc-entries.patch)
@@ -0,0 +1,102 @@
+From feb57438936827ce9faadd35f4835102b8fd0901 Mon Sep 17 00:00:00 2001
+From: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Date: Thu, 11 Apr 2013 10:13:14 +0000
+Subject: ARM: dts: imx: add imx5x usbmisc entries
+
+Signed-off-by: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Signed-off-by: Shawn Guo <shawn.guo at linaro.org>
+---
+(limited to 'arch/arm/boot/dts')
+
+diff --git a/arch/arm/boot/dts/imx51.dtsi b/arch/arm/boot/dts/imx51.dtsi
+index 21bb786..761ae1c 100644
+--- a/arch/arm/boot/dts/imx51.dtsi
++++ b/arch/arm/boot/dts/imx51.dtsi
+@@ -179,6 +179,7 @@
+ 				compatible = "fsl,imx51-usb", "fsl,imx27-usb";
+ 				reg = <0x73f80000 0x0200>;
+ 				interrupts = <18>;
++				fsl,usbmisc = <&usbmisc 0>;
+ 				status = "disabled";
+ 			};
+ 
+@@ -186,6 +187,7 @@
+ 				compatible = "fsl,imx51-usb", "fsl,imx27-usb";
+ 				reg = <0x73f80200 0x0200>;
+ 				interrupts = <14>;
++				fsl,usbmisc = <&usbmisc 1>;
+ 				status = "disabled";
+ 			};
+ 
+@@ -193,6 +195,7 @@
+ 				compatible = "fsl,imx51-usb", "fsl,imx27-usb";
+ 				reg = <0x73f80400 0x0200>;
+ 				interrupts = <16>;
++				fsl,usbmisc = <&usbmisc 2>;
+ 				status = "disabled";
+ 			};
+ 
+@@ -200,9 +203,16 @@
+ 				compatible = "fsl,imx51-usb", "fsl,imx27-usb";
+ 				reg = <0x73f80600 0x0200>;
+ 				interrupts = <17>;
++				fsl,usbmisc = <&usbmisc 3>;
+ 				status = "disabled";
+ 			};
+ 
++			usbmisc: usbmisc at 73f80800 {
++				#index-cells = <1>;
++				compatible = "fsl,imx51-usbmisc";
++				reg = <0x73f80800 0x200>;
++			};
++
+ 			gpio1: gpio at 73f84000 {
+ 				compatible = "fsl,imx51-gpio", "fsl,imx35-gpio";
+ 				reg = <0x73f84000 0x4000>;
+diff --git a/arch/arm/boot/dts/imx53.dtsi b/arch/arm/boot/dts/imx53.dtsi
+index 845982e..6c8fa7d 100644
+--- a/arch/arm/boot/dts/imx53.dtsi
++++ b/arch/arm/boot/dts/imx53.dtsi
+@@ -167,6 +167,7 @@
+ 				compatible = "fsl,imx53-usb", "fsl,imx27-usb";
+ 				reg = <0x53f80000 0x0200>;
+ 				interrupts = <18>;
++				fsl,usbmisc = <&usbmisc 0>;
+ 				status = "disabled";
+ 			};
+ 
+@@ -174,6 +175,7 @@
+ 				compatible = "fsl,imx53-usb", "fsl,imx27-usb";
+ 				reg = <0x53f80200 0x0200>;
+ 				interrupts = <14>;
++				fsl,usbmisc = <&usbmisc 1>;
+ 				status = "disabled";
+ 			};
+ 
+@@ -181,6 +183,7 @@
+ 				compatible = "fsl,imx53-usb", "fsl,imx27-usb";
+ 				reg = <0x53f80400 0x0200>;
+ 				interrupts = <16>;
++				fsl,usbmisc = <&usbmisc 2>;
+ 				status = "disabled";
+ 			};
+ 
+@@ -188,9 +191,16 @@
+ 				compatible = "fsl,imx53-usb", "fsl,imx27-usb";
+ 				reg = <0x53f80600 0x0200>;
+ 				interrupts = <17>;
++				fsl,usbmisc = <&usbmisc 3>;
+ 				status = "disabled";
+ 			};
+ 
++			usbmisc: usbmisc at 53f80800 {
++				#index-cells = <1>;
++				compatible = "fsl,imx53-usbmisc";
++				reg = <0x53f80800 0x200>;
++			};
++
+ 			gpio1: gpio at 53f84000 {
+ 				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
+ 				reg = <0x53f84000 0x4000>;
+--
+cgit v0.9.1

Copied: dists/trunk/linux/debian/patches/features/arm/ARM-dts-imx-imx53-qsb.dts-enable-usbotg-and-usbh1.patch (from r20172, dists/sid/linux/debian/patches/features/arm/ARM-dts-imx-imx53-qsb.dts-enable-usbotg-and-usbh1.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/ARM-dts-imx-imx53-qsb.dts-enable-usbotg-and-usbh1.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/ARM-dts-imx-imx53-qsb.dts-enable-usbotg-and-usbh1.patch)
@@ -0,0 +1,28 @@
+From c9cb1ec6e2a15e744a6481cb14730a5812471e71 Mon Sep 17 00:00:00 2001
+From: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Date: Thu, 11 Apr 2013 10:13:17 +0000
+Subject: ARM: dts: imx: imx53-qsb.dts: enable usbotg and usbh1
+
+Signed-off-by: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Signed-off-by: Shawn Guo <shawn.guo at linaro.org>
+---
+(limited to 'arch/arm/boot/dts')
+
+diff --git a/arch/arm/boot/dts/imx53-qsb.dts b/arch/arm/boot/dts/imx53-qsb.dts
+index 8f0e9ae..160d1bc 100644
+--- a/arch/arm/boot/dts/imx53-qsb.dts
++++ b/arch/arm/boot/dts/imx53-qsb.dts
+@@ -268,3 +268,11 @@
+ 	phy-reset-gpios = <&gpio7 6 0>;
+ 	status = "okay";
+ };
++
++&usbh1 {
++       status = "okay";
++};
++
++&usbotg {
++       status = "okay";
++};
+--
+cgit v0.9.1

Copied: dists/trunk/linux/debian/patches/features/arm/ARM-dts-imx-use-usb-nop-xceiv-usbphy-entries-for-imx5x.patch (from r20172, dists/sid/linux/debian/patches/features/arm/ARM-dts-imx-use-usb-nop-xceiv-usbphy-entries-for-imx5x.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/ARM-dts-imx-use-usb-nop-xceiv-usbphy-entries-for-imx5x.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/ARM-dts-imx-use-usb-nop-xceiv-usbphy-entries-for-imx5x.patch)
@@ -0,0 +1,77 @@
+From 972a8dd0c7ca37b70d4bf523018e32703937a829 Mon Sep 17 00:00:00 2001
+From: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Date: Thu, 11 Apr 2013 10:13:16 +0000
+Subject: ARM: dts: imx: use usb-nop-xceiv usbphy entries for imx5x
+
+Signed-off-by: Michael Grzeschik <m.grzeschik at pengutronix.de>
+Signed-off-by: Shawn Guo <shawn.guo at linaro.org>
+---
+(limited to 'arch/arm/boot/dts')
+
+diff --git a/arch/arm/boot/dts/imx51.dtsi b/arch/arm/boot/dts/imx51.dtsi
+index b118e01..f23636f 100644
+--- a/arch/arm/boot/dts/imx51.dtsi
++++ b/arch/arm/boot/dts/imx51.dtsi
+@@ -175,12 +175,20 @@
+ 				};
+ 			};
+ 
++			usbphy0: usbphy at 0 {
++				compatible = "usb-nop-xceiv";
++				clocks = <&clks 124>;
++				clock-names = "main_clk";
++				status = "okay";
++			};
++
+ 			usbotg: usb at 73f80000 {
+ 				compatible = "fsl,imx51-usb", "fsl,imx27-usb";
+ 				reg = <0x73f80000 0x0200>;
+ 				interrupts = <18>;
+ 				clocks = <&clks 108>;
+ 				fsl,usbmisc = <&usbmisc 0>;
++				fsl,usbphy = <&usbphy0>;
+ 				status = "disabled";
+ 			};
+ 
+diff --git a/arch/arm/boot/dts/imx53.dtsi b/arch/arm/boot/dts/imx53.dtsi
+index faea9fa..c4ddf51 100644
+--- a/arch/arm/boot/dts/imx53.dtsi
++++ b/arch/arm/boot/dts/imx53.dtsi
+@@ -163,12 +163,27 @@
+ 				};
+ 			};
+ 
++			usbphy0: usbphy at 0 {
++				compatible = "usb-nop-xceiv";
++				clocks = <&clks 124>;
++				clock-names = "main_clk";
++				status = "okay";
++			};
++
++			usbphy1: usbphy at 1 {
++				compatible = "usb-nop-xceiv";
++				clocks = <&clks 125>;
++				clock-names = "main_clk";
++				status = "okay";
++			};
++
+ 			usbotg: usb at 53f80000 {
+ 				compatible = "fsl,imx53-usb", "fsl,imx27-usb";
+ 				reg = <0x53f80000 0x0200>;
+ 				interrupts = <18>;
+ 				clocks = <&clks 108>;
+ 				fsl,usbmisc = <&usbmisc 0>;
++				fsl,usbphy = <&usbphy0>;
+ 				status = "disabled";
+ 			};
+ 
+@@ -178,6 +193,7 @@
+ 				interrupts = <14>;
+ 				clocks = <&clks 108>;
+ 				fsl,usbmisc = <&usbmisc 1>;
++				fsl,usbphy = <&usbphy1>;
+ 				status = "disabled";
+ 			};
+ 
+--
+cgit v0.9.1

Copied: dists/trunk/linux/debian/patches/features/arm/imx53-qsb-usb-power.patch (from r20172, dists/sid/linux/debian/patches/features/arm/imx53-qsb-usb-power.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/imx53-qsb-usb-power.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/imx53-qsb-usb-power.patch)
@@ -0,0 +1,34 @@
+imx53-qsb: enable usb power
+
+Enable usb power pin by using a fixed regulator. With this and the usb clock
+patch is making usb working on my loco.
+
+Signed-off-by: Arnaud Patard <arnaud.patard at rtp-net.org>
+Index: linux/arch/arm/boot/dts/imx53-qsb.dts
+===================================================================
+--- linux.orig/arch/arm/boot/dts/imx53-qsb.dts	2013-05-20 00:46:34.000000000 +0200
++++ linux/arch/arm/boot/dts/imx53-qsb.dts	2013-05-20 01:06:31.000000000 +0200
+@@ -66,6 +66,15 @@
+ 			regulator-max-microvolt = <3200000>;
+ 			regulator-always-on;
+ 		};
++
++		reg_usbpwr: usbpwr {
++			compatible = "regulator-fixed";
++			regulator-name = "usbpwr";
++			regulator-min-microvolt = <5000000>;
++			regulator-max-microvolt = <5000000>;
++			gpio = <&gpio7 8 0>;
++			regulator-always-on;
++		};
+ 	};
+ 
+ 	sound {
+@@ -118,6 +127,7 @@
+ 				697  0x80000000	/* MX53_PAD_EIM_DA12__GPIO3_12 */
+ 				701  0x80000000	/* MX53_PAD_EIM_DA13__GPIO3_13 */
+ 				868  0x80000000	/* MX53_PAD_PATA_DA_0__GPIO7_6 */
++				878  0x80000000 /* MX53_PAD_PATA_DA_2__GPIO7_8 */
+ 				1149 0x80000000 /* MX53_PAD_GPIO_16__GPIO7_11 */
+ 			>;
+ 		};

Copied: dists/trunk/linux/debian/patches/features/arm/usbmisc-imx-add-module_device_table.patch (from r20172, dists/sid/linux/debian/patches/features/arm/usbmisc-imx-add-module_device_table.patch)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/trunk/linux/debian/patches/features/arm/usbmisc-imx-add-module_device_table.patch	Sun Jun  2 16:44:22 2013	(r20174, copy of r20172, dists/sid/linux/debian/patches/features/arm/usbmisc-imx-add-module_device_table.patch)
@@ -0,0 +1,20 @@
+usbmisc_imx: allow autoloading on according to dt ids
+
+[ not yet sent upstream ]
+
+Allow udev to autoload the module when booting with device-tree
+
+Signed-off-by: Arnaud Patard <arnaud.patard at rtp-net.org>
+
+Index: linux/drivers/usb/chipidea/usbmisc_imx.c
+===================================================================
+--- linux.orig/drivers/usb/chipidea/usbmisc_imx.c	2013-05-16 00:46:35.000000000 +0200
++++ linux/drivers/usb/chipidea/usbmisc_imx.c	2013-05-16 09:00:12.000000000 +0200
+@@ -175,6 +175,7 @@ static const struct of_device_id usbmisc
+ 	},
+ 	{ /* sentinel */ }
+ };
++MODULE_DEVICE_TABLE(of, usbmisc_imx_dt_ids);
+ 
+ static int usbmisc_imx_probe(struct platform_device *pdev)
+ {

Modified: dists/trunk/linux/debian/patches/series
==============================================================================
--- dists/trunk/linux/debian/patches/series	Sun Jun  2 05:48:33 2013	(r20173)
+++ dists/trunk/linux/debian/patches/series	Sun Jun  2 16:44:22 2013	(r20174)
@@ -68,9 +68,6 @@
 features/all/alx/mark-as-staging.patch
 
 debian/radeon-firmware-is-required-for-drm-and-kms-on-r600-onward.patch
-bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch
-bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch
-bugfix/x86/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch
 
 bugfix/all/mm-Try-harder-to-allocate-vmemmap-blocks.patch
 features/all/alx/alx-update-for-3.8.patch
@@ -78,3 +75,33 @@
 debian/efivars-remove-check-for-50-full-on-write.patch
 debian/cdc_ncm-cdc_mbim-use-ncm-by-default.patch
 debian/powerpcspe-omit-uimage.patch
+
+features/arm/0009-USB-EHCI-split-ehci-omap-out-to-a-separate-driver.patch
+features/arm/0010-USB-EHCI-make-ehci-orion-a-separate-driver.patch
+bugfix/arm/mvneta-module-fix.patch
+bugfix/arm/i2c-imx-add-module_device_table.patch
+bugfix/arm/imx-sgtl5000-probe-defer.patch
+features/arm/0001-usb-chipidea-usbmisc-rename-file-struct-and-function.patch
+features/arm/0001-usb-chipidea-usbmisc-unset-global-varibale-usbmisc-o.patch
+features/arm/0001-usb-chipidea-usbmisc-fix-a-potential-race-condition.patch
+features/arm/0001-usb-chipidea-usbmisc-prepare-driver-to-handle-more-t.patch
+features/arm/0001-usb-chipidea-usbmisc-add-mx53-support.patch
+features/arm/0001-usb-chipidea-usbmisc-add-post-handling-and-errata-fi.patch
+features/arm/0001-usb-phy-nop-Add-some-parameters-to-platform-data.patch
+features/arm/0001-usb-phy-nop-use-devm_kzalloc.patch
+features/arm/0001-usb-phy-nop-Manage-PHY-clock.patch
+features/arm/0002-usb-phy-nop-Handle-power-supply-regulator-for-the-PH.patch
+features/arm/0003-usb-phy-nop-Handle-RESET-for-the-PHY.patch
+features/arm/0004-usb-phy-nop-use-new-PHY-API-to-register-PHY.patch
+features/arm/0005-usb-phy-nop-Add-device-tree-support-and-binding-info.patch
+features/arm/0006-USB-phy-nop-Defer-probe-if-device-needs-VCC-RESET.patch
+features/arm/ARM-dts-imx-add-imx5x-usbmisc-entries.patch
+features/arm/ARM-dts-imx-add-imx5x-usb-clock-DT-lookups.patch
+features/arm/ARM-dts-imx-use-usb-nop-xceiv-usbphy-entries-for-imx5x.patch
+features/arm/ARM-dts-imx-imx53-qsb.dts-enable-usbotg-and-usbh1.patch
+features/arm/usbmisc-imx-add-module_device_table.patch
+features/arm/imx53-qsb-usb-power.patch
+features/arm/0001-thermal-Add-driver-for-Armada-370-XP-SoC-thermal-man.patch
+features/arm/0001-ARM-mvebu-Add-thermal-support-to-Armada-XP-device-tr.patch 
+
+bugfix/all/iscsi-target-fix-heap-buffer-overflow-on-error.patch



More information about the Kernel-svn-changes mailing list