From 3e77f5c8040f64b37c917e8220d42d37a4c7fc5c Mon Sep 17 00:00:00 2001
From: Denny Harijanto <denny@nusantara-cloud.com>
Date: Sun, 3 Feb 2019 12:26:29 +0700
Subject: [PATCH 3/5] Enable USB Networking

-Since this is based of Android kernel, USB networking is enabled
 through Android USB gadget drivers instead of Eth USB gadget.
 This requires changes from Jhinta to be reverted.
-Modify some files so kernel can compile using GCC 4.7
-Added README
---
 arch/arm/configs/tf101-linux_defconfig | 357 +++++++++++--------------
 drivers/usb/gadget/fsl_udc_core.c      |   1 +
 drivers/video/tegra/dc/nvhdcp.c        |   2 +-
 3 files changed, 161 insertions(+), 199 deletions(-)

diff --git a/arch/arm/configs/tf101-linux_defconfig b/arch/arm/configs/tf101-linux_defconfig
index a669d07c160..650b894915d 100644
--- a/arch/arm/configs/tf101-linux_defconfig
+++ b/arch/arm/configs/tf101-linux_defconfig
@@ -28,6 +28,7 @@ CONFIG_FIQ=y
 CONFIG_ARCH_PROVIDES_UDELAY=y
 CONFIG_VECTORS_BASE=0xffff0000
 # CONFIG_ARM_PATCH_PHYS_VIRT is not set
+CONFIG_GENERIC_BUG=y
 CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
 CONFIG_HAVE_IRQ_WORK=y
 CONFIG_IRQ_WORK=y
@@ -38,7 +39,7 @@ CONFIG_IRQ_WORK=y
 CONFIG_EXPERIMENTAL=y
 CONFIG_INIT_ENV_ARG_LIMIT=32
 CONFIG_CROSS_COMPILE=""
-CONFIG_LOCALVERSION=""
+CONFIG_LOCALVERSION="-15"
 CONFIG_LOCALVERSION_AUTO=y
 CONFIG_HAVE_KERNEL_GZIP=y
 CONFIG_HAVE_KERNEL_LZMA=y
@@ -53,7 +54,10 @@ CONFIG_SYSVIPC_SYSCTL=y
 # CONFIG_POSIX_MQUEUE is not set
 # CONFIG_BSD_PROCESS_ACCT is not set
 # CONFIG_FHANDLE is not set
-# CONFIG_TASKSTATS is not set
+CONFIG_TASKSTATS=y
+CONFIG_TASK_DELAY_ACCT=y
+CONFIG_TASK_XACCT=y
+CONFIG_TASK_IO_ACCOUNTING=y
 # CONFIG_AUDIT is not set
 CONFIG_HAVE_GENERIC_HARDIRQS=y
 
@@ -91,19 +95,22 @@ CONFIG_CGROUP_SCHED=y
 CONFIG_FAIR_GROUP_SCHED=y
 CONFIG_RT_GROUP_SCHED=y
 # CONFIG_BLK_CGROUP is not set
-# CONFIG_NAMESPACES is not set
+CONFIG_NAMESPACES=y
+CONFIG_UTS_NS=y
+CONFIG_IPC_NS=y
+# CONFIG_USER_NS is not set
+CONFIG_PID_NS=y
+CONFIG_NET_NS=y
 # CONFIG_SCHED_AUTOGROUP is not set
 # CONFIG_SYSFS_DEPRECATED is not set
 # CONFIG_RELAY is not set
 CONFIG_BLK_DEV_INITRD=y
 CONFIG_INITRAMFS_SOURCE=""
-# CONFIG_RD_GZIP is not set
+CONFIG_RD_GZIP=y
 # CONFIG_RD_BZIP2 is not set
 CONFIG_RD_LZMA=y
 # CONFIG_RD_XZ is not set
 # CONFIG_RD_LZO is not set
-# CONFIG_INITRAMFS_COMPRESSION_NONE is not set
-# CONFIG_INITRAMFS_COMPRESSION_LZMA is not set
 CONFIG_CC_OPTIMIZE_FOR_SIZE=y
 CONFIG_SYSCTL=y
 CONFIG_ANON_INODES=y
@@ -171,7 +178,7 @@ CONFIG_MODULE_FORCE_UNLOAD=y
 CONFIG_STOP_MACHINE=y
 CONFIG_BLOCK=y
 CONFIG_LBDAF=y
-# CONFIG_BLK_DEV_BSG is not set
+CONFIG_BLK_DEV_BSG=y
 # CONFIG_BLK_DEV_BSGLIB is not set
 # CONFIG_BLK_DEV_INTEGRITY is not set
 
@@ -179,7 +186,7 @@ CONFIG_LBDAF=y
 # IO Schedulers
 #
 CONFIG_IOSCHED_NOOP=y
-# CONFIG_IOSCHED_DEADLINE is not set
+CONFIG_IOSCHED_DEADLINE=m
 CONFIG_IOSCHED_CFQ=y
 CONFIG_DEFAULT_CFQ=y
 # CONFIG_DEFAULT_NOOP is not set
@@ -287,7 +294,7 @@ CONFIG_GPIO_PCA953X=y
 CONFIG_ARCH_TEGRA_2x_SOC=y
 # CONFIG_ARCH_TEGRA_3x_SOC is not set
 CONFIG_ARCH_TEGRA_HAS_PCIE=y
-# CONFIG_TEGRA_PCI is not set
+CONFIG_TEGRA_PCI=y
 
 #
 # Tegra board type
@@ -317,22 +324,26 @@ CONFIG_TEGRA_IOVMM_GART=y
 CONFIG_TEGRA_IOVMM=y
 CONFIG_TEGRA_AVP_KERNEL_ON_MMU=y
 CONFIG_TEGRA_ARB_SEMAPHORE=y
-CONFIG_TEGRA_THERMAL_THROTTLE=y
 # CONFIG_WIFI_CONTROL_FUNC is not set
 CONFIG_TEGRA_CLOCK_DEBUG_WRITE=y
 # CONFIG_TEGRA_MC_PROFILE is not set
 # CONFIG_TEGRA_EDP_LIMITS is not set
 CONFIG_TEGRA_EMC_TO_DDR_CLOCK=2
+CONFIG_TEGRA_SE_ON_CBUS=y
+CONFIG_TEGRA_CBUS_CLOCK_DIVIDER=2
 # CONFIG_TEGRA_CONVSERVATIVE_GOV_ON_EARLYSUPSEND is not set
-# CONFIG_TEGRA_LEGACY_AUDIO is not set
 # CONFIG_TEGRA_STAT_MON is not set
 CONFIG_USB_HOTPLUG=y
+CONFIG_TEGRA_GADGET_BOOST_CPU_FREQ=0
 # CONFIG_TEGRA_DYNAMIC_PWRDET is not set
 CONFIG_TEGRA_USB_MODEM_POWER=y
 # CONFIG_TEGRA_BB_XMM_POWER is not set
 # CONFIG_TEGRA_BB_XMM_POWER2 is not set
 # CONFIG_TEGRA_WDT_RECOVERY is not set
 CONFIG_TEGRA_SLOW_CSITE=y
+# CONFIG_TEGRA_PREINIT_CLOCKS is not set
+# CONFIG_TEGRA_PREPOWER_WIFI is not set
+# CONFIG_TEGRA_DC_USE_HW_BPP is not set
 
 #
 # Processor Type
@@ -365,10 +376,14 @@ CONFIG_CACHE_L2X0=y
 CONFIG_CACHE_PL310=y
 CONFIG_ARM_L1_CACHE_SHIFT=5
 CONFIG_ARM_DMA_MEM_BUFFERABLE=y
+# CONFIG_NON_ALIASED_COHERENT_MEM is not set
+CONFIG_ARM_SAVE_DEBUG_CONTEXT=y
+CONFIG_CPA=y
 CONFIG_CPU_HAS_PMU=y
 # CONFIG_ARM_ERRATA_430973 is not set
 # CONFIG_ARM_ERRATA_458693 is not set
 # CONFIG_ARM_ERRATA_460075 is not set
+CONFIG_ARM_ERRATA_716044=y
 CONFIG_ARM_ERRATA_742230=y
 # CONFIG_ARM_ERRATA_742231 is not set
 # CONFIG_PL310_ERRATA_588369 is not set
@@ -392,10 +407,12 @@ CONFIG_ARM_GIC=y
 #
 CONFIG_PCI=y
 CONFIG_PCI_SYSCALL=y
-# CONFIG_ARCH_SUPPORTS_MSI is not set
+CONFIG_ARCH_SUPPORTS_MSI=y
+CONFIG_PCI_MSI=y
 # CONFIG_PCI_DEBUG is not set
 # CONFIG_PCI_STUB is not set
 # CONFIG_PCI_IOV is not set
+# CONFIG_PCIEPORTBUS is not set
 # CONFIG_PCCARD is not set
 
 #
@@ -413,6 +430,9 @@ CONFIG_VMSPLIT_3G=y
 # CONFIG_VMSPLIT_2G is not set
 # CONFIG_VMSPLIT_1G is not set
 CONFIG_PAGE_OFFSET=0xC0000000
+CONFIG_TASK_SIZE_3G_LESS_16M=y
+# CONFIG_TASK_SIZE_3G_LESS_24M is not set
+CONFIG_TASK_SIZE=0xBF000000
 CONFIG_NR_CPUS=2
 CONFIG_HOTPLUG_CPU=y
 CONFIG_LOCAL_TIMERS=y
@@ -431,6 +451,7 @@ CONFIG_HAVE_ARCH_PFN_VALID=y
 CONFIG_HIGHMEM=y
 # CONFIG_HIGHPTE is not set
 CONFIG_HW_PERF_EVENTS=y
+CONFIG_ARCH_HAS_SUSPEND_PAGETABLE=y
 CONFIG_SELECT_MEMORY_MODEL=y
 CONFIG_FLATMEM_MANUAL=y
 CONFIG_FLATMEM=y
@@ -484,10 +505,10 @@ CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
 # CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
 # CONFIG_CPU_FREQ_DEFAULT_GOV_INTERACTIVE is not set
 CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
-# CONFIG_CPU_FREQ_GOV_POWERSAVE is not set
+CONFIG_CPU_FREQ_GOV_POWERSAVE=y
 CONFIG_CPU_FREQ_GOV_USERSPACE=y
 CONFIG_CPU_FREQ_GOV_ONDEMAND=y
-# CONFIG_CPU_FREQ_GOV_INTERACTIVE is not set
+CONFIG_CPU_FREQ_GOV_INTERACTIVE=y
 CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
 
 #
@@ -497,6 +518,11 @@ CONFIG_CPU_IDLE=y
 CONFIG_CPU_IDLE_GOV_LADDER=y
 CONFIG_CPU_IDLE_GOV_MENU=y
 
+#
+# CPUQUIET Framework
+#
+CONFIG_CPUQUIET_FRAMEWORK=y
+
 #
 # Floating point emulation
 #
@@ -506,7 +532,7 @@ CONFIG_CPU_IDLE_GOV_MENU=y
 #
 CONFIG_VFP=y
 CONFIG_VFPv3=y
-# CONFIG_NEON is not set
+CONFIG_NEON=y
 
 #
 # Userspace binary formats
@@ -663,7 +689,7 @@ CONFIG_NETFILTER_XT_TARGET_CLASSIFY=y
 CONFIG_NETFILTER_XT_TARGET_CONNMARK=y
 # CONFIG_NETFILTER_XT_TARGET_CT is not set
 # CONFIG_NETFILTER_XT_TARGET_DSCP is not set
-# CONFIG_NETFILTER_XT_TARGET_HL is not set
+CONFIG_NETFILTER_XT_TARGET_HL=y
 # CONFIG_NETFILTER_XT_TARGET_IDLETIMER is not set
 CONFIG_NETFILTER_XT_TARGET_MARK=y
 CONFIG_NETFILTER_XT_TARGET_NFLOG=y
@@ -679,7 +705,7 @@ CONFIG_NETFILTER_XT_TARGET_TRACE=y
 #
 # Xtables matches
 #
-# CONFIG_NETFILTER_XT_MATCH_ADDRTYPE is not set
+CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y
 # CONFIG_NETFILTER_XT_MATCH_CLUSTER is not set
 CONFIG_NETFILTER_XT_MATCH_COMMENT=y
 CONFIG_NETFILTER_XT_MATCH_CONNBYTES=y
@@ -699,7 +725,7 @@ CONFIG_NETFILTER_XT_MATCH_LENGTH=y
 CONFIG_NETFILTER_XT_MATCH_LIMIT=y
 CONFIG_NETFILTER_XT_MATCH_MAC=y
 CONFIG_NETFILTER_XT_MATCH_MARK=y
-# CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set
+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y
 # CONFIG_NETFILTER_XT_MATCH_OSF is not set
 # CONFIG_NETFILTER_XT_MATCH_OWNER is not set
 CONFIG_NETFILTER_XT_MATCH_POLICY=y
@@ -774,11 +800,11 @@ CONFIG_IP6_NF_IPTABLES=y
 # CONFIG_IP6_NF_MATCH_EUI64 is not set
 # CONFIG_IP6_NF_MATCH_FRAG is not set
 # CONFIG_IP6_NF_MATCH_OPTS is not set
-# CONFIG_IP6_NF_MATCH_HL is not set
+CONFIG_IP6_NF_MATCH_HL=y
 # CONFIG_IP6_NF_MATCH_IPV6HEADER is not set
 # CONFIG_IP6_NF_MATCH_MH is not set
 # CONFIG_IP6_NF_MATCH_RT is not set
-# CONFIG_IP6_NF_TARGET_HL is not set
+CONFIG_IP6_NF_TARGET_HL=y
 CONFIG_IP6_NF_TARGET_LOG=y
 CONFIG_IP6_NF_FILTER=y
 CONFIG_IP6_NF_TARGET_REJECT=y
@@ -864,6 +890,7 @@ CONFIG_NET_ACT_MIRRED=y
 # CONFIG_NET_CLS_IND is not set
 CONFIG_NET_SCH_FIFO=y
 # CONFIG_DCB is not set
+CONFIG_DNS_RESOLVER=y
 # CONFIG_BATMAN_ADV is not set
 CONFIG_RPS=y
 CONFIG_RFS_ACCEL=y
@@ -898,6 +925,7 @@ CONFIG_BT_HCIUART_H4=y
 CONFIG_BT_HCIUART_LL=y
 # CONFIG_BT_HCIBCM203X is not set
 CONFIG_BT_BLUESLEEP=y
+# CONFIG_BT_TIBLUESLEEP is not set
 # CONFIG_BT_HCIBPA10X is not set
 # CONFIG_BT_HCIBFUSB is not set
 # CONFIG_BT_HCIVHCI is not set
@@ -905,21 +933,17 @@ CONFIG_BT_BLUESLEEP=y
 # CONFIG_AF_RXRPC is not set
 CONFIG_FIB_RULES=y
 CONFIG_WIRELESS=y
-CONFIG_WIRELESS_EXT=y
-CONFIG_WEXT_CORE=y
-CONFIG_WEXT_PROC=y
-CONFIG_WEXT_PRIV=y
 CONFIG_CFG80211=y
-# CONFIG_NL80211_TESTMODE is not set
+CONFIG_NL80211_TESTMODE=y
 # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
 # CONFIG_CFG80211_REG_DEBUG is not set
 CONFIG_CFG80211_DEFAULT_PS=y
 # CONFIG_CFG80211_DEBUGFS is not set
 # CONFIG_CFG80211_INTERNAL_REGDB is not set
-CONFIG_CFG80211_WEXT=y
-CONFIG_WIRELESS_EXT_SYSFS=y
-# CONFIG_LIB80211 is not set
-# CONFIG_CFG80211_ALLOW_RECONNECT is not set
+# CONFIG_CFG80211_WEXT is not set
+CONFIG_LIB80211=y
+# CONFIG_LIB80211_DEBUG is not set
+CONFIG_CFG80211_ALLOW_RECONNECT=y
 # CONFIG_MAC80211 is not set
 # CONFIG_WIMAX is not set
 CONFIG_RFKILL=y
@@ -970,12 +994,15 @@ CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
 # CONFIG_BLK_DEV_NBD is not set
 # CONFIG_BLK_DEV_SX8 is not set
 # CONFIG_BLK_DEV_UB is not set
-# CONFIG_BLK_DEV_RAM is not set
+CONFIG_BLK_DEV_RAM=y
+CONFIG_BLK_DEV_RAM_COUNT=16
+CONFIG_BLK_DEV_RAM_SIZE=4096
+# CONFIG_BLK_DEV_XIP is not set
 # CONFIG_CDROM_PKTCDVD is not set
 # CONFIG_ATA_OVER_ETH is not set
 # CONFIG_MG_DISK is not set
 # CONFIG_BLK_DEV_RBD is not set
-# CONFIG_SENSORS_LIS3LV02D is not set
+CONFIG_SENSORS_LIS3LV02D=y
 CONFIG_MISC_DEVICES=y
 CONFIG_AD525X_DPOT=y
 CONFIG_AD525X_DPOT_I2C=y
@@ -1006,6 +1033,8 @@ CONFIG_UID_STAT=y
 CONFIG_BCM4329_RFKILL=y
 CONFIG_TEGRA_CRYPTO_DEV=y
 CONFIG_FM34_VOICE_PROCESSOR=y
+# CONFIG_THERM_EST is not set
+CONFIG_TEGRA_THROUGHPUT=y
 # CONFIG_C2PORT is not set
 
 #
@@ -1022,10 +1051,11 @@ CONFIG_FM34_VOICE_PROCESSOR=y
 # Texas Instruments shared transport line discipline
 #
 # CONFIG_TI_ST is not set
-# CONFIG_SENSORS_LIS3_I2C is not set
+# CONFIG_ST_GPS is not set
+CONFIG_SENSORS_LIS3_I2C=y
 CONFIG_MPU_SENSORS_TIMERIRQ=y
 CONFIG_INV_SENSORS=y
-CONFIG_MPU_SENSORS_MPU3050=m
+CONFIG_MPU_SENSORS_MPU3050=y
 # CONFIG_MPU_SENSORS_MPU6050A2 is not set
 # CONFIG_MPU_SENSORS_MPU6050B1 is not set
 CONFIG_MPU_SENSORS_MPU3050_GYRO=y
@@ -1035,7 +1065,7 @@ CONFIG_INV_SENSORS_ACCELEROMETERS=y
 # CONFIG_MPU_SENSORS_BMA150 is not set
 # CONFIG_MPU_SENSORS_BMA250 is not set
 # CONFIG_MPU_SENSORS_KXSD9 is not set
-CONFIG_MPU_SENSORS_KXTF9=m
+# CONFIG_MPU_SENSORS_KXTF9 is not set
 # CONFIG_MPU_SENSORS_LIS331DLH is not set
 # CONFIG_MPU_SENSORS_LIS3DH is not set
 # CONFIG_MPU_SENSORS_LSM303DLX_A is not set
@@ -1043,7 +1073,7 @@ CONFIG_MPU_SENSORS_KXTF9=m
 # CONFIG_MPU_SENSORS_MMA845X is not set
 CONFIG_INV_SENSORS_COMPASS=y
 # CONFIG_MPU_SENSORS_AK8963 is not set
-# CONFIG_MPU_SENSORS_AK8975 is not set
+CONFIG_MPU_SENSORS_AK8975=y
 # CONFIG_MPU_SENSORS_AK8972 is not set
 # CONFIG_MPU_SENSORS_MMC314X is not set
 # CONFIG_MPU_SENSORS_AMI30X is not set
@@ -1058,6 +1088,7 @@ CONFIG_INV_SENSORS_PRESSURE=y
 # CONFIG_MPU_SENSORS_BMA085 is not set
 # CONFIG_MPU_USERSPACE_DEBUG is not set
 # CONFIG_TEGRA_BB_SUPPORT is not set
+# CONFIG_TEGRA_CEC_SUPPORT is not set
 CONFIG_HAVE_IDE=y
 # CONFIG_IDE is not set
 
@@ -1183,33 +1214,7 @@ CONFIG_TUN=m
 CONFIG_MII=y
 # CONFIG_PHYLIB is not set
 # CONFIG_NET_ETHERNET is not set
-CONFIG_NETDEV_1000=y
-# CONFIG_ACENIC is not set
-# CONFIG_DL2K is not set
-# CONFIG_E1000 is not set
-# CONFIG_E1000E is not set
-# CONFIG_IP1000 is not set
-# CONFIG_IGB is not set
-# CONFIG_IGBVF is not set
-# CONFIG_NS83820 is not set
-# CONFIG_HAMACHI is not set
-# CONFIG_YELLOWFIN is not set
-CONFIG_R8169=y
-# CONFIG_SIS190 is not set
-# CONFIG_SKGE is not set
-# CONFIG_SKY2 is not set
-# CONFIG_VIA_VELOCITY is not set
-# CONFIG_TIGON3 is not set
-# CONFIG_BNX2 is not set
-# CONFIG_CNIC is not set
-# CONFIG_QLA3XXX is not set
-# CONFIG_ATL1 is not set
-# CONFIG_ATL1E is not set
-# CONFIG_ATL1C is not set
-# CONFIG_JME is not set
-# CONFIG_STMMAC_ETH is not set
-# CONFIG_PCH_GBE is not set
-# CONFIG_FTGMAC100 is not set
+# CONFIG_NETDEV_1000 is not set
 # CONFIG_NETDEV_10000 is not set
 # CONFIG_TR is not set
 CONFIG_WLAN=y
@@ -1218,23 +1223,22 @@ CONFIG_WLAN=y
 # CONFIG_USB_ZD1201 is not set
 # CONFIG_USB_NET_RNDIS_WLAN is not set
 # CONFIG_ATH_COMMON is not set
-CONFIG_BCM4329=m
-CONFIG_BCM4329_FIRST_SCAN=y
-CONFIG_BCM4329_FW_PATH="/lib/firmware/fw_bcm4329.bin"
-CONFIG_BCM4329_NVRAM_PATH="/lib/firmware/nvram.txt"
-CONFIG_BCM4329_WIFI_CONTROL_FUNC=y
-# CONFIG_BCM4329_DHD_USE_STATIC_BUF is not set
-# CONFIG_BCM4329_HW_OOB is not set
-# CONFIG_BCM4329_OOB_INTR_ONLY is not set
-# CONFIG_BCM4329_GET_CUSTOM_MAC_ENABLE is not set
-# CONFIG_BCM4329_CSCAN_ENABLE is not set
-# CONFIG_BCMDHD is not set
+# CONFIG_BCM4329 is not set
+CONFIG_BCMDHD=y
+CONFIG_BCMDHD_FW_DIR="/lib/firmware/"
+CONFIG_BCMDHD_NVRAM_DIR="/lib/firmware/"
+# CONFIG_BCMDHD_WEXT is not set
+CONFIG_BCMDHD_CFG80211=y
+# CONFIG_BCMDHD_NOAPI is not set
+CONFIG_BCMDHD_WIFI_CONTROL_FUNC=y
+CONFIG_BCMDHD_HW_OOB=y
+CONFIG_BCMDHD_CSCAN_ENABLE=y
+CONFIG_BCMDHD_INSMOD_NO_FW_LOAD=y
+# CONFIG_SD8797 is not set
 # CONFIG_HOSTAP is not set
 # CONFIG_IPW2100 is not set
-# CONFIG_IPW2200 is not set
 # CONFIG_IWM is not set
 # CONFIG_LIBERTAS is not set
-# CONFIG_HERMES is not set
 # CONFIG_MWIFIEX is not set
 
 #
@@ -1312,8 +1316,8 @@ CONFIG_SLHC=y
 # Input device support
 #
 CONFIG_INPUT=y
-CONFIG_INPUT_FF_MEMLESS=m
-# CONFIG_INPUT_POLLDEV is not set
+CONFIG_INPUT_FF_MEMLESS=y
+CONFIG_INPUT_POLLDEV=y
 # CONFIG_INPUT_SPARSEKMAP is not set
 
 #
@@ -1340,7 +1344,6 @@ CONFIG_INPUT_KEYBOARD=y
 # CONFIG_KEYBOARD_QT2160 is not set
 # CONFIG_KEYBOARD_LKKBD is not set
 CONFIG_KEYBOARD_GPIO=y
-# CONFIG_KEYBOARD_INTERRUPT is not set
 # CONFIG_KEYBOARD_TCA6416 is not set
 # CONFIG_KEYBOARD_MATRIX is not set
 # CONFIG_KEYBOARD_MAX7359 is not set
@@ -1353,30 +1356,7 @@ CONFIG_KEYBOARD_TEGRA=y
 # CONFIG_KEYBOARD_SUNKBD is not set
 # CONFIG_KEYBOARD_XTKBD is not set
 # CONFIG_INPUT_MOUSE is not set
-CONFIG_INPUT_JOYSTICK=y
-# CONFIG_JOYSTICK_ANALOG is not set
-# CONFIG_JOYSTICK_A3D is not set
-# CONFIG_JOYSTICK_ADI is not set
-# CONFIG_JOYSTICK_COBRA is not set
-# CONFIG_JOYSTICK_GF2K is not set
-# CONFIG_JOYSTICK_GRIP is not set
-# CONFIG_JOYSTICK_GRIP_MP is not set
-# CONFIG_JOYSTICK_GUILLEMOT is not set
-# CONFIG_JOYSTICK_INTERACT is not set
-# CONFIG_JOYSTICK_SIDEWINDER is not set
-# CONFIG_JOYSTICK_TMDC is not set
-# CONFIG_JOYSTICK_IFORCE is not set
-# CONFIG_JOYSTICK_WARRIOR is not set
-# CONFIG_JOYSTICK_MAGELLAN is not set
-# CONFIG_JOYSTICK_SPACEORB is not set
-# CONFIG_JOYSTICK_SPACEBALL is not set
-# CONFIG_JOYSTICK_STINGER is not set
-# CONFIG_JOYSTICK_TWIDJOY is not set
-# CONFIG_JOYSTICK_ZHENHUA is not set
-# CONFIG_JOYSTICK_AS5011 is not set
-# CONFIG_JOYSTICK_JOYDUMP is not set
-CONFIG_JOYSTICK_XPAD=m
-CONFIG_JOYSTICK_XPAD_FF=y
+# CONFIG_INPUT_JOYSTICK is not set
 # CONFIG_INPUT_TABLET is not set
 CONFIG_INPUT_TOUCHSCREEN=y
 # CONFIG_TOUCHSCREEN_AD7879 is not set
@@ -1436,7 +1416,7 @@ CONFIG_INPUT_ADXL34X_I2C=y
 CONFIG_SERIO=y
 CONFIG_SERIO_SERPORT=y
 # CONFIG_SERIO_PCIPS2 is not set
-CONFIG_SERIO_LIBPS2=y
+# CONFIG_SERIO_LIBPS2 is not set
 # CONFIG_SERIO_RAW is not set
 # CONFIG_SERIO_ALTERA_PS2 is not set
 # CONFIG_SERIO_PS2MULT is not set
@@ -1774,6 +1754,7 @@ CONFIG_MFD_TPS6586X=y
 # CONFIG_MFD_TPS65910 is not set
 # CONFIG_MFD_TPS65912_I2C is not set
 # CONFIG_TWL4030_CORE is not set
+# CONFIG_AIC3262_CODEC is not set
 # CONFIG_MFD_STMPE is not set
 # CONFIG_MFD_TC3589X is not set
 # CONFIG_MFD_TMIO is not set
@@ -1782,6 +1763,7 @@ CONFIG_MFD_TPS6586X=y
 # CONFIG_MFD_TC6393XB is not set
 # CONFIG_PMIC_DA903X is not set
 # CONFIG_PMIC_ADP5520 is not set
+# CONFIG_MFD_MAX77665 is not set
 # CONFIG_MFD_MAX8925 is not set
 # CONFIG_MFD_MAX8997 is not set
 # CONFIG_MFD_MAX8998 is not set
@@ -1799,11 +1781,13 @@ CONFIG_MFD_MAX8907C=y
 # CONFIG_MFD_JANZ_CMODIO is not set
 # CONFIG_MFD_VX855 is not set
 # CONFIG_MFD_WL1273_CORE is not set
+# CONFIG_MFD_TPS65090 is not set
 # CONFIG_MFD_AAT2870_CORE is not set
 # CONFIG_MFD_TPS6591X is not set
-# CONFIG_MFD_TPS65090 is not set
+# CONFIG_MFD_RC5T583 is not set
 # CONFIG_MFD_TPS80031 is not set
 # CONFIG_MFD_RICOH583 is not set
+# CONFIG_MFD_PALMAS is not set
 CONFIG_REGULATOR=y
 # CONFIG_REGULATOR_DEBUG is not set
 # CONFIG_REGULATOR_DUMMY is not set
@@ -1816,6 +1800,7 @@ CONFIG_REGULATOR_VIRTUAL_CONSUMER=y
 # CONFIG_REGULATOR_MAX8649 is not set
 # CONFIG_REGULATOR_MAX8660 is not set
 # CONFIG_REGULATOR_MAX8952 is not set
+# CONFIG_REGULATOR_MAX8973 is not set
 CONFIG_REGULATOR_MAX8907C=y
 # CONFIG_REGULATOR_LP3971 is not set
 # CONFIG_REGULATOR_LP3972 is not set
@@ -1823,9 +1808,10 @@ CONFIG_REGULATOR_MAX8907C=y
 # CONFIG_REGULATOR_TPS6507X is not set
 # CONFIG_REGULATOR_ISL6271A is not set
 # CONFIG_REGULATOR_AD5398 is not set
+# CONFIG_REGULATOR_TPS51632 is not set
 CONFIG_REGULATOR_TPS6586X=y
 # CONFIG_REGULATOR_TPS62360 is not set
-# CONFIG_REGULATOR_GPIO_SWITCH is not set
+# CONFIG_REGULATOR_TPS6238X0 is not set
 # CONFIG_REGULATOR_FAN53555 is not set
 CONFIG_MEDIA_SUPPORT=y
 
@@ -1912,6 +1898,7 @@ CONFIG_TEGRA_MEDIASERVER=y
 CONFIG_TEGRA_CAMERA=y
 CONFIG_TEGRA_DTV=y
 # CONFIG_VIDEO_OV5650 is not set
+# CONFIG_VIDEO_OV5640 is not set
 # CONFIG_VIDEO_OV14810 is not set
 # CONFIG_VIDEO_OV9726 is not set
 # CONFIG_VIDEO_OV2710 is not set
@@ -1921,6 +1908,7 @@ CONFIG_TEGRA_DTV=y
 # CONFIG_TORCH_TPS61050 is not set
 # CONFIG_VIDEO_SH532U is not set
 # CONFIG_VIDEO_AD5820 is not set
+# CONFIG_VIDEO_AD5816 is not set
 # CONFIG_VIDEO_CPIA2 is not set
 # CONFIG_VIDEO_SAA7134 is not set
 # CONFIG_VIDEO_MXB is not set
@@ -2033,6 +2021,8 @@ CONFIG_FB_MODE_HELPERS=y
 # NVIDIA Tegra Display Driver options
 #
 CONFIG_TEGRA_GRHOST=y
+CONFIG_TEGRA_GRHOST_USE_NVMAP=y
+CONFIG_TEGRA_GRHOST_DEFAULT_TIMEOUT=30000
 CONFIG_TEGRA_DC=y
 CONFIG_FB_TEGRA=y
 CONFIG_TEGRA_DC_EXTENSIONS=y
@@ -2042,7 +2032,12 @@ CONFIG_NVMAP_ALLOW_SYSMEM=y
 # CONFIG_NVMAP_HIGHMEM_ONLY is not set
 # CONFIG_NVMAP_CARVEOUT_KILLER is not set
 CONFIG_NVMAP_CARVEOUT_COMPACTOR=y
+CONFIG_NVMAP_PAGE_POOLS=y
+CONFIG_NVMAP_PAGE_POOL_SIZE=0x0
+CONFIG_NVMAP_CACHE_MAINT_BY_SET_WAYS=y
+# CONFIG_NVMAP_OUTER_CACHE_MAINT_BY_SET_WAYS is not set
 # CONFIG_NVMAP_VPR is not set
+# CONFIG_NVMAP_FORCE_ZEROED_USER_PAGES is not set
 CONFIG_TEGRA_DSI=y
 CONFIG_TEGRA_NVHDCP=y
 # CONFIG_TEGRA_HDMI_74MHZ_LIMIT is not set
@@ -2084,19 +2079,24 @@ CONFIG_LOGO=y
 # CONFIG_LOGO_LINUX_VGA16 is not set
 CONFIG_LOGO_LINUX_CLUT224=y
 CONFIG_SOUND=y
-# CONFIG_SOUND_OSS_CORE is not set
+CONFIG_SOUND_OSS_CORE=y
+CONFIG_SOUND_OSS_CORE_PRECLAIM=y
 CONFIG_SND=y
 CONFIG_SND_TIMER=y
 CONFIG_SND_PCM=y
 CONFIG_SND_JACK=y
-# CONFIG_SND_SEQUENCER is not set
-# CONFIG_SND_MIXER_OSS is not set
-# CONFIG_SND_PCM_OSS is not set
+CONFIG_SND_SEQUENCER=y
+# CONFIG_SND_SEQ_DUMMY is not set
+CONFIG_SND_OSSEMUL=y
+CONFIG_SND_MIXER_OSS=y
+CONFIG_SND_PCM_OSS=y
+CONFIG_SND_PCM_OSS_PLUGINS=y
+CONFIG_SND_SEQUENCER_OSS=y
 # CONFIG_SND_HRTIMER is not set
 # CONFIG_SND_DYNAMIC_MINORS is not set
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
-# CONFIG_SND_VERBOSE_PRINTK is not set
+CONFIG_SND_VERBOSE_PRINTK=y
 # CONFIG_SND_DEBUG is not set
 # CONFIG_SND_RAWMIDI_SEQ is not set
 # CONFIG_SND_OPL3_LIB_SEQ is not set
@@ -2106,80 +2106,13 @@ CONFIG_SND_VERBOSE_PROCFS=y
 CONFIG_SND_DRIVERS=y
 # CONFIG_SND_DUMMY is not set
 # CONFIG_SND_ALOOP is not set
+# CONFIG_SND_VIRMIDI is not set
 # CONFIG_SND_MTPAV is not set
 # CONFIG_SND_SERIAL_U16550 is not set
 # CONFIG_SND_MPU401 is not set
-CONFIG_SND_PCI=y
-# CONFIG_SND_AD1889 is not set
-# CONFIG_SND_ALS300 is not set
-# CONFIG_SND_ALI5451 is not set
-# CONFIG_SND_ATIIXP is not set
-# CONFIG_SND_ATIIXP_MODEM is not set
-# CONFIG_SND_AU8810 is not set
-# CONFIG_SND_AU8820 is not set
-# CONFIG_SND_AU8830 is not set
-# CONFIG_SND_AW2 is not set
-# CONFIG_SND_AZT3328 is not set
-# CONFIG_SND_BT87X is not set
-# CONFIG_SND_CA0106 is not set
-# CONFIG_SND_CMIPCI is not set
-# CONFIG_SND_OXYGEN is not set
-# CONFIG_SND_CS4281 is not set
-# CONFIG_SND_CS46XX is not set
-# CONFIG_SND_CS5535AUDIO is not set
-# CONFIG_SND_CTXFI is not set
-# CONFIG_SND_DARLA20 is not set
-# CONFIG_SND_GINA20 is not set
-# CONFIG_SND_LAYLA20 is not set
-# CONFIG_SND_DARLA24 is not set
-# CONFIG_SND_GINA24 is not set
-# CONFIG_SND_LAYLA24 is not set
-# CONFIG_SND_MONA is not set
-# CONFIG_SND_MIA is not set
-# CONFIG_SND_ECHO3G is not set
-# CONFIG_SND_INDIGO is not set
-# CONFIG_SND_INDIGOIO is not set
-# CONFIG_SND_INDIGODJ is not set
-# CONFIG_SND_INDIGOIOX is not set
-# CONFIG_SND_INDIGODJX is not set
-# CONFIG_SND_EMU10K1 is not set
-# CONFIG_SND_EMU10K1X is not set
-# CONFIG_SND_ENS1370 is not set
-# CONFIG_SND_ENS1371 is not set
-# CONFIG_SND_ES1938 is not set
-# CONFIG_SND_ES1968 is not set
-# CONFIG_SND_FM801 is not set
-# CONFIG_SND_HDA_INTEL is not set
-# CONFIG_SND_HDSP is not set
-# CONFIG_SND_HDSPM is not set
-# CONFIG_SND_ICE1712 is not set
-# CONFIG_SND_ICE1724 is not set
-# CONFIG_SND_INTEL8X0 is not set
-# CONFIG_SND_INTEL8X0M is not set
-# CONFIG_SND_KORG1212 is not set
-# CONFIG_SND_LOLA is not set
-# CONFIG_SND_LX6464ES is not set
-# CONFIG_SND_MAESTRO3 is not set
-# CONFIG_SND_MIXART is not set
-# CONFIG_SND_NM256 is not set
-# CONFIG_SND_PCXHR is not set
-# CONFIG_SND_RIPTIDE is not set
-# CONFIG_SND_RME32 is not set
-# CONFIG_SND_RME96 is not set
-# CONFIG_SND_RME9652 is not set
-# CONFIG_SND_SONICVIBES is not set
-# CONFIG_SND_TRIDENT is not set
-# CONFIG_SND_VIA82XX is not set
-# CONFIG_SND_VIA82XX_MODEM is not set
-# CONFIG_SND_VIRTUOSO is not set
-# CONFIG_SND_VX222 is not set
-# CONFIG_SND_YMFPCI is not set
-CONFIG_SND_ARM=y
-CONFIG_SND_USB=y
-# CONFIG_SND_USB_AUDIO is not set
-# CONFIG_SND_USB_UA101 is not set
-# CONFIG_SND_USB_CAIAQ is not set
-# CONFIG_SND_USB_6FIRE is not set
+# CONFIG_SND_PCI is not set
+# CONFIG_SND_ARM is not set
+# CONFIG_SND_USB is not set
 CONFIG_SND_SOC=y
 # CONFIG_SND_SOC_CACHE_LZO is not set
 CONFIG_SND_SOC_TEGRA=y
@@ -2210,7 +2143,7 @@ CONFIG_USB_HID=y
 #
 # CONFIG_HID_A4TECH is not set
 # CONFIG_HID_ACRUX is not set
-CONFIG_HID_APPLE=y
+# CONFIG_HID_APPLE is not set
 # CONFIG_HID_BELKIN is not set
 # CONFIG_HID_CHERRY is not set
 # CONFIG_HID_CHICONY is not set
@@ -2242,7 +2175,7 @@ CONFIG_HID_APPLE=y
 # CONFIG_HID_QUANTA is not set
 # CONFIG_HID_ROCCAT is not set
 # CONFIG_HID_SAMSUNG is not set
-CONFIG_HID_SONY=y
+# CONFIG_HID_SONY is not set
 # CONFIG_HID_SPEEDLINK is not set
 # CONFIG_HID_SUNPLUS is not set
 # CONFIG_HID_GREENASIA is not set
@@ -2420,9 +2353,10 @@ CONFIG_USB_GADGET=y
 # CONFIG_USB_GADGET_DEBUG is not set
 # CONFIG_USB_GADGET_DEBUG_FILES is not set
 # CONFIG_USB_GADGET_DEBUG_FS is not set
-CONFIG_USB_GADGET_VBUS_DRAW=500
-CONFIG_USB_FSL_USB2=y
+CONFIG_USB_GADGET_VBUS_DRAW=2
+# CONFIG_USB_FSL_USB2 is not set
 # CONFIG_USB_FUSB300 is not set
+CONFIG_USB_TEGRA=y
 # CONFIG_USB_R8A66597 is not set
 # CONFIG_USB_M66592 is not set
 # CONFIG_USB_AMD5536UDC is not set
@@ -2436,9 +2370,7 @@ CONFIG_USB_FSL_USB2=y
 CONFIG_USB_GADGET_DUALSPEED=y
 # CONFIG_USB_ZERO is not set
 # CONFIG_USB_AUDIO is not set
-CONFIG_USB_ETH=y
-CONFIG_USB_ETH_RNDIS=y
-CONFIG_USB_ETH_EEM=y
+# CONFIG_USB_ETH is not set
 # CONFIG_USB_G_NCM is not set
 # CONFIG_USB_GADGETFS is not set
 # CONFIG_USB_FUNCTIONFS is not set
@@ -2447,7 +2379,7 @@ CONFIG_USB_ETH_EEM=y
 # CONFIG_USB_G_SERIAL is not set
 # CONFIG_USB_MIDI_GADGET is not set
 # CONFIG_USB_G_PRINTER is not set
-# CONFIG_USB_G_ANDROID is not set
+CONFIG_USB_G_ANDROID=y
 # CONFIG_USB_CDC_COMPOSITE is not set
 # CONFIG_USB_G_MULTI is not set
 # CONFIG_USB_G_HID is not set
@@ -2481,6 +2413,7 @@ CONFIG_MMC_BLOCK_BOUNCE=y
 # CONFIG_MMC_BLOCK_DEFERRED_RESUME is not set
 # CONFIG_SDIO_UART is not set
 # CONFIG_MMC_TEST is not set
+# CONFIG_MMC_BKOPS is not set
 
 #
 # MMC/SD/SDIO Host Controller Drivers
@@ -2581,11 +2514,11 @@ CONFIG_RTC_DRV_TEGRA=y
 # CONFIG_VIRTIO_PCI is not set
 # CONFIG_VIRTIO_BALLOON is not set
 CONFIG_STAGING=y
-# CONFIG_ET131X is not set
 # CONFIG_USBIP_CORE is not set
 # CONFIG_PRISM2_USB is not set
 # CONFIG_ECHO is not set
 # CONFIG_BRCMUTIL is not set
+# CONFIG_BRCMFMAC is not set
 # CONFIG_ASUS_OLED is not set
 # CONFIG_R8187SE is not set
 # CONFIG_RTL8192U is not set
@@ -2656,6 +2589,7 @@ CONFIG_SENSORS_ISL29018=y
 # CONFIG_SENSORS_ISL29028 is not set
 # CONFIG_SENSORS_TSL2563 is not set
 # CONFIG_TSL2583 is not set
+# CONFIG_SENSORS_LTR558 is not set
 
 #
 # Magnetometer sensors
@@ -2724,6 +2658,7 @@ CONFIG_FS_MBCACHE=y
 # CONFIG_BTRFS_FS is not set
 # CONFIG_NILFS2_FS is not set
 CONFIG_FS_POSIX_ACL=y
+CONFIG_EXPORTFS=y
 CONFIG_FILE_LOCKING=y
 CONFIG_FSNOTIFY=y
 # CONFIG_DNOTIFY is not set
@@ -2754,7 +2689,9 @@ CONFIG_FAT_FS=y
 CONFIG_VFAT_FS=y
 CONFIG_FAT_DEFAULT_CODEPAGE=437
 CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
-# CONFIG_NTFS_FS is not set
+CONFIG_NTFS_FS=m
+# CONFIG_NTFS_DEBUG is not set
+CONFIG_NTFS_RW=y
 
 #
 # Pseudo filesystems
@@ -2772,6 +2709,7 @@ CONFIG_TMPFS=y
 CONFIG_MISC_FILESYSTEMS=y
 # CONFIG_ADFS_FS is not set
 # CONFIG_AFFS_FS is not set
+# CONFIG_ECRYPT_FS is not set
 # CONFIG_HFS_FS is not set
 # CONFIG_HFSPLUS_FS is not set
 # CONFIG_BEFS_FS is not set
@@ -2790,10 +2728,31 @@ CONFIG_MISC_FILESYSTEMS=y
 # CONFIG_SYSV_FS is not set
 # CONFIG_UFS_FS is not set
 CONFIG_NETWORK_FILESYSTEMS=y
-# CONFIG_NFS_FS is not set
-# CONFIG_NFSD is not set
+CONFIG_NFS_FS=y
+CONFIG_NFS_V3=y
+# CONFIG_NFS_V3_ACL is not set
+CONFIG_NFS_V4=y
+# CONFIG_NFS_V4_1 is not set
+# CONFIG_NFS_USE_LEGACY_DNS is not set
+CONFIG_NFS_USE_KERNEL_DNS=y
+# CONFIG_NFS_USE_NEW_IDMAPPER is not set
+CONFIG_NFSD=y
+CONFIG_NFSD_V3=y
+# CONFIG_NFSD_V3_ACL is not set
+# CONFIG_NFSD_V4 is not set
+CONFIG_LOCKD=y
+CONFIG_LOCKD_V4=y
+CONFIG_NFS_COMMON=y
+CONFIG_SUNRPC=y
+CONFIG_SUNRPC_GSS=y
 # CONFIG_CEPH_FS is not set
-# CONFIG_CIFS is not set
+CONFIG_CIFS=m
+# CONFIG_CIFS_STATS is not set
+# CONFIG_CIFS_WEAK_PW_HASH is not set
+# CONFIG_CIFS_UPCALL is not set
+# CONFIG_CIFS_XATTR is not set
+# CONFIG_CIFS_DEBUG2 is not set
+# CONFIG_CIFS_DFS_UPCALL is not set
 # CONFIG_NCP_FS is not set
 # CONFIG_CODA_FS is not set
 # CONFIG_AFS_FS is not set
@@ -2820,7 +2779,7 @@ CONFIG_MSDOS_PARTITION=y
 CONFIG_EFI_PARTITION=y
 # CONFIG_SYSV68_PARTITION is not set
 CONFIG_NLS=y
-CONFIG_NLS_DEFAULT="iso8859-1"
+CONFIG_NLS_DEFAULT="utf-8"
 CONFIG_NLS_CODEPAGE_437=y
 # CONFIG_NLS_CODEPAGE_737 is not set
 # CONFIG_NLS_CODEPAGE_775 is not set
@@ -2967,7 +2926,8 @@ CONFIG_ARM_UNWIND=y
 #
 # Security options
 #
-# CONFIG_KEYS is not set
+CONFIG_KEYS=y
+# CONFIG_KEYS_DEBUG_PROC_KEYS is not set
 # CONFIG_SECURITY_DMESG_RESTRICT is not set
 # CONFIG_SECURITY is not set
 # CONFIG_SECURITYFS is not set
@@ -3030,7 +2990,7 @@ CONFIG_CRYPTO_HMAC=y
 #
 CONFIG_CRYPTO_CRC32C=y
 # CONFIG_CRYPTO_GHASH is not set
-CONFIG_CRYPTO_MD4=m
+CONFIG_CRYPTO_MD4=y
 CONFIG_CRYPTO_MD5=y
 # CONFIG_CRYPTO_MICHAEL_MIC is not set
 # CONFIG_CRYPTO_RMD128 is not set
@@ -3099,6 +3059,7 @@ CONFIG_LZO_COMPRESS=m
 CONFIG_LZO_DECOMPRESS=m
 # CONFIG_XZ_DEC is not set
 # CONFIG_XZ_DEC_BCJ is not set
+CONFIG_DECOMPRESS_GZIP=y
 CONFIG_DECOMPRESS_LZMA=y
 CONFIG_TEXTSEARCH=y
 CONFIG_TEXTSEARCH_KMP=y
@@ -3110,4 +3071,4 @@ CONFIG_HAS_DMA=y
 CONFIG_CPU_RMAP=y
 CONFIG_NLATTR=y
 # CONFIG_AVERAGE is not set
-# CONFIG_CORDIC is not set
\ No newline at end of file
+# CONFIG_CORDIC is not set
diff --git a/drivers/usb/gadget/fsl_udc_core.c b/drivers/usb/gadget/fsl_udc_core.c
index e3196ba2833..68839d8f012 100644
--- a/drivers/usb/gadget/fsl_udc_core.c
+++ b/drivers/usb/gadget/fsl_udc_core.c
@@ -44,6 +44,7 @@
 #include <linux/delay.h>
 #include <linux/regulator/consumer.h>
 #include <linux/workqueue.h>
+#include <linux/pm_qos_params.h>
 
 #include <asm/byteorder.h>
 #include <asm/io.h>
diff --git a/drivers/video/tegra/dc/nvhdcp.c b/drivers/video/tegra/dc/nvhdcp.c
index 3566e2bd33b..8489ebf6971 100644
--- a/drivers/video/tegra/dc/nvhdcp.c
+++ b/drivers/video/tegra/dc/nvhdcp.c
@@ -760,7 +760,7 @@ static int get_repeater_info(struct tegra_nvhdcp *nvhdcp)
 {
 	int e, retries;
 	u8 b_caps;
-	u16 b_status;
+	u16 b_status = 0;
 
 	nvhdcp_vdbg("repeater found:fetching repeater info\n");
 
-- 
2.19.1

