From 7e9502a8319408483a994169258faf6fa41e3e97 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Thu, 12 Feb 2015 21:38:19 +0100 Subject: [PATCH] projects/RPi*: add kernel 3.19 support, build with kernel 3.19 Signed-off-by: Stephan Raue --- projects/RPi/linux/linux.arm.conf | 87 +- projects/RPi/options | 2 +- .../patches/linux/linux-01-RPi_support.patch | 2077 ++++++++--------- projects/RPi2/linux/linux.arm.conf | 87 +- projects/RPi2/options | 2 +- .../patches/linux/linux-01-RPi_support.patch | 2077 ++++++++--------- 6 files changed, 2054 insertions(+), 2278 deletions(-) diff --git a/projects/RPi/linux/linux.arm.conf b/projects/RPi/linux/linux.arm.conf index 50a96f238c..d3b738efed 100644 --- a/projects/RPi/linux/linux.arm.conf +++ b/projects/RPi/linux/linux.arm.conf @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 3.18.6 Kernel Configuration +# Linux/arm 3.19.0 Kernel Configuration # CONFIG_ARM=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y @@ -91,7 +91,6 @@ CONFIG_TICK_CPU_ACCOUNTING=y # # RCU Subsystem # -CONFIG_TREE_PREEMPT_RCU=y CONFIG_PREEMPT_RCU=y # CONFIG_TASKS_RCU is not set CONFIG_RCU_STALL_COMMON=y @@ -100,7 +99,7 @@ CONFIG_RCU_FANOUT_LEAF=16 # CONFIG_RCU_FANOUT_EXACT is not set # CONFIG_TREE_RCU_TRACE is not set CONFIG_RCU_BOOST=y -CONFIG_RCU_BOOST_PRIO=1 +CONFIG_RCU_KTHREAD_PRIO=1 CONFIG_RCU_BOOST_DELAY=500 CONFIG_RCU_NOCB_CPU=y # CONFIG_RCU_NOCB_CPU_NONE is not set @@ -117,14 +116,14 @@ CONFIG_CGROUPS=y # CONFIG_CGROUP_DEVICE is not set # CONFIG_CPUSETS is not set # CONFIG_CGROUP_CPUACCT is not set -# CONFIG_RESOURCE_COUNTERS is not set +# CONFIG_MEMCG is not set # CONFIG_CGROUP_SCHED is not set # CONFIG_BLK_CGROUP is not set # CONFIG_CHECKPOINT_RESTORE is not set # CONFIG_NAMESPACES is not set # CONFIG_SCHED_AUTOGROUP is not set # CONFIG_SYSFS_DEPRECATED is not set -# CONFIG_RELAY is not set +CONFIG_RELAY=y CONFIG_BLK_DEV_INITRD=y CONFIG_INITRAMFS_SOURCE=" " CONFIG_INITRAMFS_ROOT_UID=0 @@ -135,6 +134,7 @@ CONFIG_RD_GZIP=y # CONFIG_RD_XZ is not set # CONFIG_RD_LZO is not set # CONFIG_RD_LZ4 is not set +# CONFIG_INIT_FALLBACK is not set # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set CONFIG_SYSCTL=y CONFIG_ANON_INODES=y @@ -215,6 +215,7 @@ CONFIG_OLD_SIGACTION=y # GCOV-based kernel profiling # # CONFIG_GCOV_KERNEL is not set +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y CONFIG_HAVE_GENERIC_DMA_COHERENT=y CONFIG_SLABINFO=y CONFIG_RT_MUTEXES=y @@ -278,7 +279,6 @@ CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y # CONFIG_MMU=y # CONFIG_ARCH_MULTIPLATFORM is not set -# CONFIG_ARCH_INTEGRATOR is not set # CONFIG_ARCH_REALVIEW is not set # CONFIG_ARCH_VERSATILE is not set # CONFIG_ARCH_AT91 is not set @@ -348,6 +348,7 @@ CONFIG_KUSER_HELPERS=y # CONFIG_CACHE_L2X0 is not set CONFIG_ARM_L1_CACHE_SHIFT=5 CONFIG_ARM_DMA_MEM_BUFFERABLE=y +# CONFIG_ARM_KERNMEM_PERMS is not set CONFIG_ARM_ERRATA_326103=y CONFIG_ARM_ERRATA_411920=y CONFIG_ARM_ERRATA_364296=y @@ -355,7 +356,6 @@ CONFIG_ARM_ERRATA_364296=y # # Bus support # -CONFIG_ARM_AMBA=y # CONFIG_PCI_SYSCALL is not set # CONFIG_PCCARD is not set @@ -456,11 +456,11 @@ CONFIG_CPU_FREQ_GOV_POWERSAVE=y # CONFIG_CPU_FREQ_GOV_USERSPACE is not set CONFIG_CPU_FREQ_GOV_ONDEMAND=y # CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set -# CONFIG_CPUFREQ_DT is not set # -# ARM CPU frequency scaling drivers +# CPU frequency scaling drivers # +# CONFIG_CPUFREQ_DT is not set # CONFIG_ARM_KIRKWOOD_CPUFREQ is not set CONFIG_ARM_BCM2835_CPUFREQ=y @@ -501,7 +501,7 @@ CONFIG_COREDUMP=y # # CONFIG_SUSPEND is not set # CONFIG_HIBERNATION is not set -# CONFIG_PM_RUNTIME is not set +# CONFIG_PM is not set CONFIG_CPU_PM=y CONFIG_ARCH_SUSPEND_POSSIBLE=y # CONFIG_ARM_CPU_SUSPEND is not set @@ -533,6 +533,7 @@ CONFIG_IP_MROUTE=y # CONFIG_SYN_COOKIES is not set # CONFIG_NET_UDP_TUNNEL is not set # CONFIG_NET_FOU is not set +# CONFIG_NET_FOU_IP_TUNNELS is not set # CONFIG_GENEVE is not set # CONFIG_INET_AH is not set # CONFIG_INET_ESP is not set @@ -612,6 +613,7 @@ CONFIG_NF_NAT_FTP=m CONFIG_NF_NAT_IRC=m CONFIG_NF_NAT_SIP=m # CONFIG_NF_NAT_TFTP is not set +# CONFIG_NF_NAT_REDIRECT is not set # CONFIG_NF_TABLES is not set CONFIG_NETFILTER_XTABLES=m @@ -777,6 +779,7 @@ CONFIG_DNS_RESOLVER=y # CONFIG_NETLINK_DIAG is not set # CONFIG_NET_MPLS_GSO is not set # CONFIG_HSR is not set +# CONFIG_NET_SWITCHDEV is not set # CONFIG_CGROUP_NET_PRIO is not set # CONFIG_CGROUP_NET_CLASSID is not set CONFIG_NET_RX_BUSY_POLL=y @@ -791,10 +794,12 @@ CONFIG_BQL=y # CONFIG_CAN is not set # CONFIG_IRDA is not set CONFIG_BT=m +CONFIG_BT_BREDR=y CONFIG_BT_RFCOMM=m CONFIG_BT_RFCOMM_TTY=y # CONFIG_BT_BNEP is not set CONFIG_BT_HIDP=m +CONFIG_BT_LE=y # # Bluetooth device drivers @@ -828,6 +833,7 @@ CONFIG_MAC80211=m CONFIG_MAC80211_HAS_RC=y CONFIG_MAC80211_RC_MINSTREL=y CONFIG_MAC80211_RC_MINSTREL_HT=y +CONFIG_MAC80211_RC_MINSTREL_VHT=y CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" # CONFIG_MAC80211_MESH is not set @@ -846,6 +852,8 @@ CONFIG_HAVE_BPF_JIT=y # # Device Drivers # +CONFIG_ARM_AMBA=y +# CONFIG_TEGRA_AHB is not set # # Generic Driver Options @@ -896,7 +904,7 @@ CONFIG_OF=y # # Device Tree and Open Firmware support # -# CONFIG_OF_SELFTEST is not set +# CONFIG_OF_UNITTEST is not set CONFIG_OF_FLATTREE=y CONFIG_OF_EARLY_FLATTREE=y CONFIG_OF_ADDRESS=y @@ -1037,6 +1045,7 @@ CONFIG_NET_CORE=y # CONFIG_EQUALIZER is not set # CONFIG_NET_TEAM is not set # CONFIG_MACVLAN is not set +# CONFIG_IPVLAN is not set # CONFIG_VXLAN is not set CONFIG_NETCONSOLE=y CONFIG_NETPOLL=y @@ -1058,6 +1067,7 @@ CONFIG_TUN=y # CONFIG_NET_DSA_MV88E6131 is not set # CONFIG_NET_DSA_MV88E6123_61_65 is not set # CONFIG_NET_DSA_MV88E6171 is not set +# CONFIG_NET_DSA_MV88E6352 is not set # CONFIG_NET_DSA_BCM_SF2 is not set # CONFIG_ETHERNET is not set CONFIG_PHYLIB=y @@ -1153,6 +1163,7 @@ CONFIG_ATH9K_AHB=y # CONFIG_ATH9K_DEBUGFS is not set # CONFIG_ATH9K_DYNACK is not set # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +CONFIG_ATH9K_PCOEM=y CONFIG_ATH9K_HTC=m # CONFIG_ATH9K_HTC_DEBUGFS is not set CONFIG_CARL9170=m @@ -1348,6 +1359,7 @@ CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y # CONFIG_SERIAL_SCCNXP is not set # CONFIG_SERIAL_SC16IS7XX is not set +# CONFIG_SERIAL_BCM63XX is not set # CONFIG_SERIAL_ALTERA_JTAGUART is not set # CONFIG_SERIAL_ALTERA_UART is not set # CONFIG_SERIAL_IFX6X60 is not set @@ -1423,6 +1435,7 @@ CONFIG_I2C_GPIO=y # Other I2C/SMBus bus drivers # # CONFIG_I2C_STUB is not set +# CONFIG_I2C_SLAVE is not set # CONFIG_I2C_DEBUG_CORE is not set # CONFIG_I2C_DEBUG_ALGO is not set # CONFIG_I2C_DEBUG_BUS is not set @@ -1495,6 +1508,7 @@ CONFIG_GPIO_SYSFS=y # # Memory mapped GPIO drivers: # +# CONFIG_GPIO_74XX_MMIO is not set # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_DWAPB is not set # CONFIG_GPIO_EM is not set @@ -1642,6 +1656,7 @@ CONFIG_HWMON=y # CONFIG_SENSORS_NTC_THERMISTOR is not set # CONFIG_SENSORS_NCT6683 is not set # CONFIG_SENSORS_NCT6775 is not set +# CONFIG_SENSORS_NCT7802 is not set # CONFIG_SENSORS_PCF8591 is not set # CONFIG_PMBUS is not set # CONFIG_SENSORS_SHT15 is not set @@ -1750,6 +1765,7 @@ CONFIG_MFD_CORE=y # CONFIG_MFD_AS3722 is not set # CONFIG_PMIC_ADP5520 is not set # CONFIG_MFD_AAT2870_CORE is not set +# CONFIG_MFD_ATMEL_HLCDC is not set # CONFIG_MFD_BCM590XX is not set # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_CROS_EC is not set @@ -1759,6 +1775,7 @@ CONFIG_MFD_CORE=y # CONFIG_MFD_DA9052_I2C is not set # CONFIG_MFD_DA9055 is not set # CONFIG_MFD_DA9063 is not set +# CONFIG_MFD_DLN2 is not set # CONFIG_MFD_MC13XXX_SPI is not set # CONFIG_MFD_MC13XXX_I2C is not set # CONFIG_MFD_HI6421_PMIC is not set @@ -1885,9 +1902,9 @@ CONFIG_IR_IMON=m CONFIG_IR_MCEUSB=m CONFIG_IR_REDRAT3=m CONFIG_IR_STREAMZAP=m +CONFIG_IR_IGORPLUGUSB=m CONFIG_IR_IGUANA=m CONFIG_IR_TTUSBIR=m -# CONFIG_IR_IMG is not set # CONFIG_RC_LOOPBACK is not set CONFIG_IR_GPIO_CIR=m CONFIG_MEDIA_USB_SUPPORT=y @@ -1912,7 +1929,6 @@ CONFIG_VIDEO_PVRUSB2_SYSFS=y CONFIG_VIDEO_PVRUSB2_DVB=y # CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set # CONFIG_VIDEO_HDPVR is not set -# CONFIG_VIDEO_TLG2300 is not set # CONFIG_VIDEO_USBVISION is not set CONFIG_VIDEO_STK1160_COMMON=m # CONFIG_VIDEO_STK1160_AC97 is not set @@ -2184,6 +2200,10 @@ CONFIG_DVB_S921=m CONFIG_DVB_DIB8000=m CONFIG_DVB_MB86A20S=m +# +# ISDB-S (satellite) & ISDB-T (terrestrial) frontends +# + # # Digital terrestrial only tuners/PLL # @@ -2200,6 +2220,7 @@ CONFIG_DVB_LNBP22=m CONFIG_DVB_ISL6421=m CONFIG_DVB_ISL6423=m CONFIG_DVB_A8293=m +CONFIG_DVB_SP2=m CONFIG_DVB_LGS8GXX=m CONFIG_DVB_ATBM8830=m CONFIG_DVB_IX2505V=m @@ -2350,12 +2371,14 @@ CONFIG_SND_SOC_I2C_AND_SPI=m # CONFIG_SND_SOC_AK5386 is not set # CONFIG_SND_SOC_ALC5623 is not set # CONFIG_SND_SOC_CS35L32 is not set +# CONFIG_SND_SOC_CS42L51_I2C is not set # CONFIG_SND_SOC_CS42L52 is not set # CONFIG_SND_SOC_CS42L56 is not set # CONFIG_SND_SOC_CS42L73 is not set # CONFIG_SND_SOC_CS4265 is not set # CONFIG_SND_SOC_CS4270 is not set -# CONFIG_SND_SOC_CS4271 is not set +# CONFIG_SND_SOC_CS4271_I2C is not set +# CONFIG_SND_SOC_CS4271_SPI is not set # CONFIG_SND_SOC_CS42XX8_I2C is not set # CONFIG_SND_SOC_HDMI_CODEC is not set # CONFIG_SND_SOC_ES8328 is not set @@ -2366,6 +2389,8 @@ CONFIG_SND_SOC_PCM512x_I2C=m # CONFIG_SND_SOC_PCM512x_SPI is not set CONFIG_SND_SOC_PCM1794A=m CONFIG_SND_SOC_PCM5102A=m +# CONFIG_SND_SOC_RT5631 is not set +# CONFIG_SND_SOC_RT5677_SPI is not set # CONFIG_SND_SOC_SGTL5000 is not set # CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set # CONFIG_SND_SOC_SPDIF is not set @@ -2375,9 +2400,13 @@ CONFIG_SND_SOC_PCM5102A=m # CONFIG_SND_SOC_STA350 is not set # CONFIG_SND_SOC_TAS2552 is not set # CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TFA9879 is not set CONFIG_SND_SOC_TAS5713=m +# CONFIG_SND_SOC_TLV320AIC23_I2C is not set +# CONFIG_SND_SOC_TLV320AIC23_SPI is not set # CONFIG_SND_SOC_TLV320AIC31XX is not set # CONFIG_SND_SOC_TLV320AIC3X is not set +# CONFIG_SND_SOC_TS3A227E is not set # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set # CONFIG_SND_SOC_WM8580 is not set @@ -2443,6 +2472,7 @@ CONFIG_HID_LCPOWER=y CONFIG_HID_LENOVO=y CONFIG_HID_LOGITECH=y CONFIG_HID_LOGITECH_DJ=y +CONFIG_HID_LOGITECH_HIDPP=y CONFIG_LOGITECH_FF=y CONFIG_LOGIRUMBLEPAD2_FF=y CONFIG_LOGIG940_FF=y @@ -2458,6 +2488,7 @@ CONFIG_PANTHERLORD_FF=y CONFIG_HID_PENMOUNT=y CONFIG_HID_PETALYNX=y # CONFIG_HID_PICOLCD is not set +# CONFIG_HID_PLANTRONICS is not set # CONFIG_HID_PRIMAX is not set # CONFIG_HID_ROCCAT is not set # CONFIG_HID_SAITEK is not set @@ -2715,6 +2746,7 @@ CONFIG_LEDS_GPIO=y # CONFIG_LEDS_LP5523 is not set # CONFIG_LEDS_LP5562 is not set # CONFIG_LEDS_LP8501 is not set +# CONFIG_LEDS_LP8860 is not set # CONFIG_LEDS_PCA955X is not set # CONFIG_LEDS_PCA963X is not set # CONFIG_LEDS_DAC124S085 is not set @@ -2881,7 +2913,6 @@ CONFIG_R8712U=m # CONFIG_R8188EU is not set # CONFIG_LINE6_USB is not set CONFIG_VT6656=m -# CONFIG_BCM_WIMAX is not set # CONFIG_FT1000 is not set # @@ -2891,9 +2922,11 @@ CONFIG_VT6656=m # CONFIG_TOUCHSCREEN_CLEARPAD_TM1217 is not set # CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4 is not set CONFIG_STAGING_MEDIA=y -# CONFIG_VIDEO_TCM825X is not set +# CONFIG_VIDEO_TLG2300 is not set +CONFIG_DVB_MN88472=m +CONFIG_DVB_MN88473=m +# CONFIG_VIDEO_SAA7191 is not set CONFIG_LIRC_STAGING=y -CONFIG_LIRC_IGORPLUGUSB=m # CONFIG_LIRC_IMON is not set CONFIG_LIRC_RPI=m # CONFIG_LIRC_SASEM is not set @@ -2905,18 +2938,13 @@ CONFIG_LIRC_XBOX=m # # Android # -# CONFIG_ANDROID is not set # CONFIG_USB_WPAN_HCD is not set # CONFIG_WIMAX_GDM72XX is not set # CONFIG_LTE_GDM724X is not set # CONFIG_LUSTRE_FS is not set # CONFIG_DGAP is not set # CONFIG_GS_FPGABOOT is not set - -# -# SOC (System On Chip) specific Drivers -# -# CONFIG_SOC_TI is not set +# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set CONFIG_CLKDEV_LOOKUP=y CONFIG_HAVE_CLK_PREPARE=y CONFIG_COMMON_CLK=y @@ -2957,6 +2985,7 @@ CONFIG_COMMON_CLK=y # # SOC (System On Chip) specific Drivers # +# CONFIG_SOC_TI is not set # CONFIG_PM_DEVFREQ is not set CONFIG_EXTCON=m @@ -2983,6 +3012,11 @@ CONFIG_IRQCHIP=y # CONFIG_POWERCAP is not set # CONFIG_MCB is not set +# +# Android +# +# CONFIG_ANDROID is not set + # # File systems # @@ -3091,6 +3125,7 @@ CONFIG_SQUASHFS_FILE_DIRECT=y CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y # CONFIG_SQUASHFS_XATTR is not set CONFIG_SQUASHFS_ZLIB=y +CONFIG_SQUASHFS_LZ4=y CONFIG_SQUASHFS_LZO=y CONFIG_SQUASHFS_XZ=y # CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set @@ -3223,6 +3258,7 @@ CONFIG_FRAME_WARN=1024 CONFIG_STRIP_ASM_SYMS=y # CONFIG_READABLE_ASM is not set # CONFIG_UNUSED_SYMBOLS is not set +# CONFIG_PAGE_OWNER is not set CONFIG_DEBUG_FS=y # CONFIG_HEADERS_CHECK is not set # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -3235,6 +3271,7 @@ CONFIG_DEBUG_KERNEL=y # # Memory Debugging # +# CONFIG_PAGE_EXTENSION is not set # CONFIG_DEBUG_PAGEALLOC is not set # CONFIG_DEBUG_OBJECTS is not set # CONFIG_SLUB_DEBUG_ON is not set @@ -3291,7 +3328,6 @@ CONFIG_PANIC_TIMEOUT=0 # CONFIG_TORTURE_TEST is not set # CONFIG_RCU_TORTURE_TEST is not set CONFIG_RCU_CPU_STALL_TIMEOUT=21 -CONFIG_RCU_CPU_STALL_VERBOSE=y # CONFIG_RCU_CPU_STALL_INFO is not set # CONFIG_RCU_TRACE is not set # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set @@ -3339,9 +3375,9 @@ CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" # CONFIG_DEBUG_UART_8250 is not set # CONFIG_DEBUG_UART_BCM63XX is not set CONFIG_UNCOMPRESS_INCLUDE="mach/uncompress.h" -# CONFIG_OC_ETM is not set # CONFIG_PID_IN_CONTEXTIDR is not set # CONFIG_DEBUG_SET_MODULE_RONX is not set +# CONFIG_CORESIGHT is not set # # Security options @@ -3502,6 +3538,7 @@ CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=m CONFIG_LZO_COMPRESS=y CONFIG_LZO_DECOMPRESS=y +CONFIG_LZ4_DECOMPRESS=y CONFIG_XZ_DEC=y # CONFIG_XZ_DEC_X86 is not set # CONFIG_XZ_DEC_POWERPC is not set diff --git a/projects/RPi/options b/projects/RPi/options index 1a42b95c2f..4c34a82366 100644 --- a/projects/RPi/options +++ b/projects/RPi/options @@ -57,7 +57,7 @@ # Kernel to use. values can be: # default: default mainline kernel - LINUX="3.18" + LINUX="default" # NOOBS supported hex versions NOOBS_HEX="2,3,4,5,6,7,8,9,d,e,f,10,11,12,14,19" diff --git a/projects/RPi/patches/linux/linux-01-RPi_support.patch b/projects/RPi/patches/linux/linux-01-RPi_support.patch index 1e48129f00..9b2c9d9f73 100644 --- a/projects/RPi/patches/linux/linux-01-RPi_support.patch +++ b/projects/RPi/patches/linux/linux-01-RPi_support.patch @@ -1,7 +1,7 @@ -From 95293790045ab4ae5c357460372dd1b57fc74f29 Mon Sep 17 00:00:00 2001 +From 0222939a3735e3ad819ce793bbcaa3f4759d6543 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 12 May 2013 12:24:19 +0100 -Subject: [PATCH 001/114] Main bcm2708 linux port +Subject: [PATCH 001/109] Main bcm2708 linux port Signed-off-by: popcornmix --- @@ -47,8 +47,7 @@ Signed-off-by: popcornmix arch/arm/tools/mach-types | 1 + drivers/tty/serial/amba-pl011.c | 2 +- include/linux/mmc/host.h | 1 + - include/linux/mmc/sdhci.h | 1 + - 43 files changed, 4716 insertions(+), 5 deletions(-) + 42 files changed, 4715 insertions(+), 5 deletions(-) create mode 100644 arch/arm/configs/bcmrpi_defconfig create mode 100644 arch/arm/mach-bcm2708/Kconfig create mode 100644 arch/arm/mach-bcm2708/Makefile @@ -84,12 +83,12 @@ Signed-off-by: popcornmix create mode 100644 arch/arm/mach-bcm2708/vcio.c diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 89c4b5c..4cedaf2 100644 +index 97d07ed..1dc698c 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -381,6 +381,22 @@ config ARCH_AT91 +@@ -367,6 +367,22 @@ config ARCH_AT91 This enables support for systems based on Atmel - AT91RM9200 and AT91SAM9* processors. + AT91RM9200, AT91SAM9 and SAMA5 processors. +config ARCH_BCM2708 + bool "Broadcom BCM2708 family" @@ -110,7 +109,7 @@ index 89c4b5c..4cedaf2 100644 config ARCH_CLPS711X bool "Cirrus Logic CLPS711x/EP721x/EP731x-based" select ARCH_REQUIRE_GPIOLIB -@@ -972,6 +988,7 @@ source "arch/arm/plat-versatile/Kconfig" +@@ -962,6 +978,7 @@ source "arch/arm/plat-versatile/Kconfig" source "arch/arm/mach-vt8500/Kconfig" source "arch/arm/mach-w90x900/Kconfig" @@ -119,10 +118,10 @@ index 89c4b5c..4cedaf2 100644 source "arch/arm/mach-zynq/Kconfig" diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug -index d8f6a2e..526e50d 100644 +index 5ddd490..e5b2370 100644 --- a/arch/arm/Kconfig.debug +++ b/arch/arm/Kconfig.debug -@@ -985,6 +985,14 @@ choice +@@ -1107,6 +1107,14 @@ choice options; the platform specific options are deprecated and will be soon removed. @@ -138,7 +137,7 @@ index d8f6a2e..526e50d 100644 config DEBUG_EXYNOS_UART diff --git a/arch/arm/Makefile b/arch/arm/Makefile -index 034a949..fea9213 100644 +index c1785ee..ceb8a4e 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -146,6 +146,7 @@ textofs-$(CONFIG_ARCH_AXXIA) := 0x00308000 @@ -620,7 +619,7 @@ index 0000000..8950e53 +CONFIG_CRC_ITU_T=y +CONFIG_LIBCRC32C=y diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c -index fe972a2..f4f3bfd 100644 +index fdfa3a7..f5ffaacb 100644 --- a/arch/arm/kernel/process.c +++ b/arch/arm/kernel/process.c @@ -166,6 +166,16 @@ void arch_cpu_idle_dead(void) @@ -5032,15 +5031,15 @@ index 0000000..5e43e85 +MODULE_LICENSE("GPL"); +MODULE_ALIAS("platform:bcm-mbox"); diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig -index 7eb94e6..7b58dae 100644 +index c43c714..9bedaea 100644 --- a/arch/arm/mm/Kconfig +++ b/arch/arm/mm/Kconfig @@ -358,7 +358,7 @@ config CPU_PJ4B # ARMv6 config CPU_V6 -- bool "Support ARM V6 processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX -+ bool "Support ARM V6 processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX || MACH_BCM2708 +- bool "Support ARM V6 processor" if (!ARCH_MULTIPLATFORM || ARCH_MULTI_V6) && (ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX) ++ bool "Support ARM V6 processor" if (!ARCH_MULTIPLATFORM || ARCH_MULTI_V6) && (ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX || MACH_BCM2708) select CPU_32v6 select CPU_ABRT_EV6 select CPU_CACHE_V6 @@ -5084,7 +5083,7 @@ index a10297d..c9ddd87 100644 ics_if_voip MACH_ICS_IF_VOIP ICS_IF_VOIP 3206 wlf_cragg_6410 MACH_WLF_CRAGG_6410 WLF_CRAGG_6410 3207 diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c -index 02016fc..fed2b92 100644 +index 8d94c19..16ca535 100644 --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c @@ -84,7 +84,7 @@ struct vendor_data { @@ -5097,34 +5096,22 @@ index 02016fc..fed2b92 100644 static struct vendor_data vendor_arm = { diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h -index df0c153..c226105 100644 +index 9f32270..17ee61b 100644 --- a/include/linux/mmc/host.h +++ b/include/linux/mmc/host.h -@@ -290,6 +290,7 @@ struct mmc_host { - #define MMC_CAP2_HS400 (MMC_CAP2_HS400_1_8V | \ +@@ -291,6 +291,7 @@ struct mmc_host { MMC_CAP2_HS400_1_2V) + #define MMC_CAP2_HSX00_1_2V (MMC_CAP2_HS200_1_2V_SDR | MMC_CAP2_HS400_1_2V) #define MMC_CAP2_SDIO_IRQ_NOTHREAD (1 << 17) +#define MMC_CAP2_FORCE_MULTIBLOCK (1 << 31) /* Always use multiblock transfers */ mmc_pm_flag_t pm_caps; /* supported pm features */ -diff --git a/include/linux/mmc/sdhci.h b/include/linux/mmc/sdhci.h -index dba793e..9300f87 100644 ---- a/include/linux/mmc/sdhci.h -+++ b/include/linux/mmc/sdhci.h -@@ -130,6 +130,7 @@ struct sdhci_host { - #define SDHCI_SDIO_IRQ_ENABLED (1<<9) /* SDIO irq enabled */ - #define SDHCI_SDR104_NEEDS_TUNING (1<<10) /* SDR104/HS200 needs tuning */ - #define SDHCI_USING_RETUNING_TIMER (1<<11) /* Host is using a retuning timer for the card */ -+#define SDHCI_USE_PLATDMA (1<<12) /* Host uses 3rd party DMA */ - - unsigned int version; /* SDHCI spec. version */ - -From 4f339b429583965a8eb7c23474414d0730db1215 Mon Sep 17 00:00:00 2001 +From db89dca23e5f1de2895f0f07d4fd14c00ab72e6e Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 8 Oct 2014 18:50:05 +0100 -Subject: [PATCH 002/114] Add bcm2708_gpio driver +Subject: [PATCH 002/109] Add bcm2708_gpio driver Signed-off-by: popcornmix @@ -5728,10 +5715,10 @@ index 0000000..fb69624 + +#endif -From cb3aee0334aa33348f1064301a6dff55cc31c84f Mon Sep 17 00:00:00 2001 +From 138919e0b3e213effd883f4a80dd8b2cc4f55f4a Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 7 May 2013 22:20:24 +0100 -Subject: [PATCH 003/114] Add quick config. +Subject: [PATCH 003/109] Add quick config. This is designed for quick compiling when developing. No modules are needed and it includes all Pi specific drivers @@ -5944,10 +5931,10 @@ index 0000000..e5efe75 +CONFIG_CRC_ITU_T=y +CONFIG_LIBCRC32C=y -From 9964a43723df02a84b7f132695193cd452d45b58 Mon Sep 17 00:00:00 2001 +From a2dc1f5efb2a618b0970218f3e96039776f3eaaf Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 1 May 2013 19:46:17 +0100 -Subject: [PATCH 004/114] Add dwc_otg driver +Subject: [PATCH 004/109] Add dwc_otg driver Signed-off-by: popcornmix @@ -10037,10 +10024,10 @@ index 0000000..a896d73 +} +module_exit(fsg_cleanup); diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig -index a3ca137..4937c9c 100644 +index fafc628..83c34af 100644 --- a/drivers/usb/host/Kconfig +++ b/drivers/usb/host/Kconfig -@@ -744,6 +744,19 @@ config USB_HWA_HCD +@@ -752,6 +752,19 @@ config USB_HWA_HCD To compile this driver a module, choose M here: the module will be called "hwa-hc". @@ -10061,7 +10048,7 @@ index a3ca137..4937c9c 100644 tristate "i.MX21 HCD support" depends on ARM && ARCH_MXC diff --git a/drivers/usb/host/Makefile b/drivers/usb/host/Makefile -index 348c243..7ca1836 100644 +index d6216a4..c6dfede 100644 --- a/drivers/usb/host/Makefile +++ b/drivers/usb/host/Makefile @@ -71,6 +71,8 @@ obj-$(CONFIG_USB_U132_HCD) += u132-hcd.o @@ -10072,7 +10059,7 @@ index 348c243..7ca1836 100644 +obj-$(CONFIG_USB_DWCOTG) += dwc_otg/ dwc_common_port/ obj-$(CONFIG_USB_IMX21_HCD) += imx21-hcd.o obj-$(CONFIG_USB_FSL_MPH_DR_OF) += fsl-mph-dr-of.o - obj-$(CONFIG_USB_OCTEON2_COMMON) += octeon2-common.o + obj-$(CONFIG_USB_HCD_BCMA) += bcma-hcd.o diff --git a/drivers/usb/host/dwc_common_port/Makefile b/drivers/usb/host/dwc_common_port/Makefile new file mode 100644 index 0000000..f10d466 @@ -63000,10 +62987,10 @@ index 0000000..cdc9963 +test_main(); +0; -From 633194396e40f919974dd8b81e97ddfea463b733 Mon Sep 17 00:00:00 2001 +From 426f9dbea63f0d6a35e05e80fd188b89dca321cd Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 1 May 2013 19:54:32 +0100 -Subject: [PATCH 005/114] bcm2708 watchdog driver +Subject: [PATCH 005/109] bcm2708 watchdog driver Signed-off-by: popcornmix --- @@ -63014,7 +63001,7 @@ Signed-off-by: popcornmix create mode 100644 drivers/watchdog/bcm2708_wdog.c diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig -index d0107d4..ff56894 100644 +index 08f41ad..3bc50f2 100644 --- a/drivers/watchdog/Kconfig +++ b/drivers/watchdog/Kconfig @@ -452,6 +452,12 @@ config RETU_WATCHDOG @@ -63431,11 +63418,10 @@ index 0000000..8a27d68 +MODULE_ALIAS_MISCDEV(TEMP_MINOR); +MODULE_LICENSE("GPL"); - -From 91fca9dd33742a38061dc9e949e4e88b9d5f645b Mon Sep 17 00:00:00 2001 +From 541af491f8c24af061d3e62fdc7da4fad34e5003 Mon Sep 17 00:00:00 2001 From: Harm Hanemaaijer Date: Thu, 20 Jun 2013 20:21:39 +0200 -Subject: [PATCH 007/114] Speed up console framebuffer imageblit function +Subject: [PATCH 008/109] Speed up console framebuffer imageblit function Especially on platforms with a slower CPU but a relatively high framebuffer fill bandwidth, like current ARM devices, the existing @@ -63644,10 +63630,10 @@ index a2bb276..436494f 100644 start_index, pitch_index); } else -From f67ad61f5999035fad1610d00a966989f34e3ce5 Mon Sep 17 00:00:00 2001 +From 21cf00e8ae1b424b05c9e218f28c509f296ac949 Mon Sep 17 00:00:00 2001 From: Siarhei Siamashka Date: Mon, 17 Jun 2013 13:32:11 +0300 -Subject: [PATCH 008/114] fbdev: add FBIOCOPYAREA ioctl +Subject: [PATCH 009/109] fbdev: add FBIOCOPYAREA ioctl Based on the patch authored by Ali Gholami Rudi at https://lkml.org/lkml/2009/7/13/153 @@ -63740,10 +63726,10 @@ index fb795c3..fa72af0 100644 #define FB_TYPE_PACKED_PIXELS 0 /* Packed Pixels */ #define FB_TYPE_PLANES 1 /* Non interleaved planes */ -From 49250f2d77bd76d753488caf226970c085eb112d Mon Sep 17 00:00:00 2001 +From 57a4b2b0d8e5849d4b4cff404ac6a90bcdab0f37 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 1 May 2013 19:55:09 +0100 -Subject: [PATCH 009/114] bcm2708 framebuffer driver +Subject: [PATCH 010/109] bcm2708 framebuffer driver Signed-off-by: popcornmix @@ -63835,7 +63821,7 @@ index f2568d4..a4aac4c 100644 /* When listing features we can ask for when allocating DMA channels give diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig -index c7bf606..0349473 100644 +index 4916c97..95fcb7f 100644 --- a/drivers/video/fbdev/Kconfig +++ b/drivers/video/fbdev/Kconfig @@ -224,6 +224,20 @@ config FB_TILEBLITTING @@ -64696,7 +64682,7 @@ index 0000000..dcc4de2 +MODULE_PARM_DESC(fbdepth, "Bit depth of ARM Framebuffer"); +MODULE_PARM_DESC(fbswap, "Swap order of red and blue in 24 and 32 bit modes"); diff --git a/drivers/video/logo/logo_linux_clut224.ppm b/drivers/video/logo/logo_linux_clut224.ppm -index 3c14e43..7626beb 100644 +index 3c14e43..7626beb6a 100644 --- a/drivers/video/logo/logo_linux_clut224.ppm +++ b/drivers/video/logo/logo_linux_clut224.ppm @@ -1,1604 +1,883 @@ @@ -67186,10 +67172,10 @@ index 3c14e43..7626beb 100644 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 -From adee2a81f0be488e079498ac457bf01c954a029e Mon Sep 17 00:00:00 2001 +From 8178b4e7f56a040774a673f21b6d860a83d86d1d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 2 Jul 2013 23:42:01 +0100 -Subject: [PATCH 010/114] bcm2708 vchiq driver +Subject: [PATCH 011/109] bcm2708 vchiq driver Signed-off-by: popcornmix @@ -67311,7 +67297,7 @@ described above. create mode 100644 drivers/misc/vc04_services/interface/vchiq_arm/vchiq_version.c diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig -index bbeb451..b6109a2 100644 +index 006242c..4e6f46c 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig @@ -524,6 +524,7 @@ source "drivers/misc/carma/Kconfig" @@ -80138,10 +80124,10 @@ index 0000000..b6bfa21 + return vchiq_build_time; +} -From e0412853d9f9e12fc7d8a3125cc3b4a62d19007d Mon Sep 17 00:00:00 2001 +From 48c4a760bace73c6c2e10ace250faf0b1c2cf603 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 12 May 2014 15:12:02 +0100 -Subject: [PATCH 011/114] vchiq: Avoid high load when blocked and unkillable +Subject: [PATCH 012/109] vchiq: Avoid high load when blocked and unkillable vchiq: Include SIGSTOP and SIGCONT in list of signals not-masked by vchiq to allow gdb to work --- @@ -80303,10 +80289,10 @@ index c2eefef..05e7979 100644 static inline int is_pow2(int i) { -From 725e07b7b70c601ebbe15436736addc01953dfe7 Mon Sep 17 00:00:00 2001 +From d36beb1f111d0621d672edfc864c2ac018a05053 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:31:47 +0100 -Subject: [PATCH 012/114] cma: Add vc_cma driver to enable use of CMA +Subject: [PATCH 013/109] cma: Add vc_cma driver to enable use of CMA Signed-off-by: popcornmix --- @@ -81593,10 +81579,10 @@ index 0000000..5325832 + +#endif /* VC_CMA_H */ -From 40fe0b17b886f30b316614830eedf0cfc755bbbd Mon Sep 17 00:00:00 2001 +From 9a5da41b08c71c403f7a50e3f1790bc7ce061c5d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 26 Mar 2012 22:15:50 +0100 -Subject: [PATCH 013/114] bcm2708: alsa sound driver +Subject: [PATCH 014/109] bcm2708: alsa sound driver Signed-off-by: popcornmix @@ -84359,10 +84345,10 @@ index 0000000..af3e6eb + +#endif // _VC_AUDIO_DEFS_H_ -From 225e1250dfcec7b09493b6a86bdeaab9f2669221 Mon Sep 17 00:00:00 2001 +From e191bd0eb4395d58ca38628cac3a9832ac2a6644 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:51:55 +0100 -Subject: [PATCH 014/114] Add hwrng (hardware random number generator) driver +Subject: [PATCH 015/109] Add hwrng (hardware random number generator) driver --- drivers/char/hw_random/Kconfig | 11 ++++ @@ -84372,7 +84358,7 @@ Subject: [PATCH 014/114] Add hwrng (hardware random number generator) driver create mode 100755 drivers/char/hw_random/bcm2708-rng.c diff --git a/drivers/char/hw_random/Kconfig b/drivers/char/hw_random/Kconfig -index 91a04ae..0d2ca0d 100644 +index de57b38..2a24bec 100644 --- a/drivers/char/hw_random/Kconfig +++ b/drivers/char/hw_random/Kconfig @@ -320,6 +320,17 @@ config HW_RANDOM_TPM @@ -84529,10 +84515,10 @@ index 0000000..340f004 +MODULE_DESCRIPTION("BCM2708 H/W Random Number Generator (RNG) driver"); +MODULE_LICENSE("GPL and additional rights"); -From 96fbef3b8f8ab61f7f32d52b54d7993117a5fdbc Mon Sep 17 00:00:00 2001 +From c8dfc6610d8ec3c1b55b9988aa93749420ef5ae5 Mon Sep 17 00:00:00 2001 From: Aron Szabo Date: Sat, 16 Jun 2012 12:15:55 +0200 -Subject: [PATCH 015/114] lirc: added support for RaspberryPi GPIO +Subject: [PATCH 016/109] lirc: added support for RaspberryPi GPIO lirc_rpi: Use read_current_timer to determine transmitter delay. Thanks to jjmz and others See: https://github.com/raspberrypi/linux/issues/525 @@ -84570,10 +84556,10 @@ lirc-rpi: Correct the interrupt usage create mode 100644 drivers/staging/media/lirc/lirc_rpi.c diff --git a/drivers/staging/media/lirc/Kconfig b/drivers/staging/media/lirc/Kconfig -index e60a59f..6b7ff70 100644 +index 6879c46..77c69f2 100644 --- a/drivers/staging/media/lirc/Kconfig +++ b/drivers/staging/media/lirc/Kconfig -@@ -38,6 +38,12 @@ config LIRC_PARALLEL +@@ -32,6 +32,12 @@ config LIRC_PARALLEL help Driver for Homebrew Parallel Port Receivers @@ -84587,11 +84573,11 @@ index e60a59f..6b7ff70 100644 tristate "Sasem USB IR Remote" depends on LIRC && USB diff --git a/drivers/staging/media/lirc/Makefile b/drivers/staging/media/lirc/Makefile -index b90fcab..2b227fd 100644 +index 5430adf..9e53cd0 100644 --- a/drivers/staging/media/lirc/Makefile +++ b/drivers/staging/media/lirc/Makefile -@@ -7,6 +7,7 @@ obj-$(CONFIG_LIRC_BT829) += lirc_bt829.o - obj-$(CONFIG_LIRC_IGORPLUGUSB) += lirc_igorplugusb.o +@@ -6,6 +6,7 @@ + obj-$(CONFIG_LIRC_BT829) += lirc_bt829.o obj-$(CONFIG_LIRC_IMON) += lirc_imon.o obj-$(CONFIG_LIRC_PARALLEL) += lirc_parallel.o +obj-$(CONFIG_LIRC_RPI) += lirc_rpi.o @@ -85264,10 +85250,10 @@ index 0000000..c688364 +module_param(debug, bool, S_IRUGO | S_IWUSR); +MODULE_PARM_DESC(debug, "Enable debugging messages"); -From f8628f418651bcb52604f943c00c45d932ff3572 Mon Sep 17 00:00:00 2001 +From 95d8a71baa57259706f2211e2831910c5e8732df Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:49:20 +0100 -Subject: [PATCH 016/114] Add cpufreq driver +Subject: [PATCH 017/109] Add cpufreq driver --- arch/arm/Kconfig | 1 + @@ -85278,10 +85264,10 @@ Subject: [PATCH 016/114] Add cpufreq driver create mode 100755 drivers/cpufreq/bcm2835-cpufreq.c diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 4cedaf2..6283d7d 100644 +index 1dc698c..fdfb230 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -390,6 +390,7 @@ config ARCH_BCM2708 +@@ -376,6 +376,7 @@ config ARCH_BCM2708 select NEED_MACH_GPIO_H select NEED_MACH_MEMORY_H select CLKDEV_LOOKUP @@ -85290,7 +85276,7 @@ index 4cedaf2..6283d7d 100644 select ARM_ERRATA_411920 select MACH_BCM2708 diff --git a/drivers/cpufreq/Kconfig.arm b/drivers/cpufreq/Kconfig.arm -index 83a75dc..210394f 100644 +index 0f9a2c3..c71b6e1 100644 --- a/drivers/cpufreq/Kconfig.arm +++ b/drivers/cpufreq/Kconfig.arm @@ -241,6 +241,14 @@ config ARM_SPEAR_CPUFREQ @@ -85309,10 +85295,10 @@ index 83a75dc..210394f 100644 bool "TEGRA CPUFreq support" depends on ARCH_TEGRA diff --git a/drivers/cpufreq/Makefile b/drivers/cpufreq/Makefile -index 40c53dc..47d2922 100644 +index b3ca7b0..2824b68 100644 --- a/drivers/cpufreq/Makefile +++ b/drivers/cpufreq/Makefile -@@ -75,6 +75,7 @@ obj-$(CONFIG_ARM_S5PV210_CPUFREQ) += s5pv210-cpufreq.o +@@ -74,6 +74,7 @@ obj-$(CONFIG_ARM_S5PV210_CPUFREQ) += s5pv210-cpufreq.o obj-$(CONFIG_ARM_SA1100_CPUFREQ) += sa1100-cpufreq.o obj-$(CONFIG_ARM_SA1110_CPUFREQ) += sa1110-cpufreq.o obj-$(CONFIG_ARM_SPEAR_CPUFREQ) += spear-cpufreq.o @@ -85551,10 +85537,10 @@ index 0000000..447ca09 +module_init(bcm2835_cpufreq_module_init); +module_exit(bcm2835_cpufreq_module_exit); -From de9bdcff7ec73589cb314a1569ce5aba5fe09146 Mon Sep 17 00:00:00 2001 +From 59ae3e5f2544dacbdea86d9f005fe7f5598cdd30 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 26 Mar 2013 19:24:24 +0000 -Subject: [PATCH 017/114] Added hwmon/thermal driver for reporting core +Subject: [PATCH 018/109] Added hwmon/thermal driver for reporting core temperature. Thanks Dorian --- @@ -85599,10 +85585,10 @@ index f3dccae..af57d11 100644 struct amba_device *d = amba_devs[i]; amba_device_register(d, &iomem_resource); diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig -index 5286d7c..d52e192 100644 +index a7de26d..42c82b4 100644 --- a/drivers/hwmon/Kconfig +++ b/drivers/hwmon/Kconfig -@@ -1680,6 +1680,16 @@ config SENSORS_ULTRA45 +@@ -1702,6 +1702,16 @@ config SENSORS_ULTRA45 This driver provides support for the Ultra45 workstation environmental sensors. @@ -85620,10 +85606,10 @@ index 5286d7c..d52e192 100644 comment "ACPI drivers" diff --git a/drivers/hwmon/Makefile b/drivers/hwmon/Makefile -index c90a761..15aaecf 100644 +index 6c94147..e7c60cb 100644 --- a/drivers/hwmon/Makefile +++ b/drivers/hwmon/Makefile -@@ -153,6 +153,7 @@ obj-$(CONFIG_SENSORS_W83L785TS) += w83l785ts.o +@@ -155,6 +155,7 @@ obj-$(CONFIG_SENSORS_W83L785TS) += w83l785ts.o obj-$(CONFIG_SENSORS_W83L786NG) += w83l786ng.o obj-$(CONFIG_SENSORS_WM831X) += wm831x-hwmon.o obj-$(CONFIG_SENSORS_WM8350) += wm8350-hwmon.o @@ -85857,10 +85843,10 @@ index 0000000..5bbed45 + +module_platform_driver(bcm2835_hwmon_driver); diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig -index f554d25..fecc621 100644 +index af40db0..4584b1e 100644 --- a/drivers/thermal/Kconfig +++ b/drivers/thermal/Kconfig -@@ -206,6 +206,12 @@ config INTEL_POWERCLAMP +@@ -238,6 +238,12 @@ config INTEL_POWERCLAMP enforce idle time which results in more package C-state residency. The user interface is exposed via generic thermal framework. @@ -85874,10 +85860,10 @@ index f554d25..fecc621 100644 tristate "X86 package temperature thermal driver" depends on X86_THERMAL_VECTOR diff --git a/drivers/thermal/Makefile b/drivers/thermal/Makefile -index 39c4fe8..30a4741 100644 +index fa0dc48..453d4d9 100644 --- a/drivers/thermal/Makefile +++ b/drivers/thermal/Makefile -@@ -29,6 +29,7 @@ obj-$(CONFIG_ARMADA_THERMAL) += armada_thermal.o +@@ -33,6 +33,7 @@ obj-$(CONFIG_ARMADA_THERMAL) += armada_thermal.o obj-$(CONFIG_IMX_THERMAL) += imx_thermal.o obj-$(CONFIG_DB8500_CPUFREQ_COOLING) += db8500_cpufreq_cooling.o obj-$(CONFIG_INTEL_POWERCLAMP) += intel_powerclamp.o @@ -86076,10 +86062,10 @@ index 0000000..85fceb5 + +module_platform_driver(bcm2835_thermal_driver); -From c732e3a3218671786b589835260995bc24715248 Mon Sep 17 00:00:00 2001 +From 5a2d7d0a26de7791c61462bd36cb190c8ac0857d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 26 Mar 2013 17:26:38 +0000 -Subject: [PATCH 018/114] Allow mac address to be set in smsc95xx +Subject: [PATCH 019/109] Allow mac address to be set in smsc95xx Signed-off-by: popcornmix --- @@ -86087,7 +86073,7 @@ Signed-off-by: popcornmix 1 file changed, 56 insertions(+) diff --git a/drivers/net/usb/smsc95xx.c b/drivers/net/usb/smsc95xx.c -index d07bf4c..5ae60ab 100644 +index 26423ad..e29a323 100644 --- a/drivers/net/usb/smsc95xx.c +++ b/drivers/net/usb/smsc95xx.c @@ -59,6 +59,7 @@ @@ -86170,10 +86156,10 @@ index d07bf4c..5ae60ab 100644 if (smsc95xx_read_eeprom(dev, EEPROM_MAC_OFFSET, ETH_ALEN, dev->net->dev_addr) == 0) { -From 66ea263246ca6dd9f63dce8fb22157fa83693300 Mon Sep 17 00:00:00 2001 +From 196215044abd081236a1acbecc02f007cb62b99c Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 4 Nov 2013 18:56:10 +0000 -Subject: [PATCH 019/114] Add Chris Boot's i2c and spi drivers. +Subject: [PATCH 020/109] Add Chris Boot's i2c and spi drivers. i2c-bcm2708: fixed baudrate @@ -86389,10 +86375,10 @@ index af57d11..82f56fb 100644 static void timer_set_mode(enum clock_event_mode mode, diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig -index 917c358..3d3db41 100644 +index ab838d9..68362ab 100644 --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig -@@ -371,6 +371,25 @@ config I2C_BCM2835 +@@ -372,6 +372,25 @@ config I2C_BCM2835 This support is also available as a module. If so, the module will be called i2c-bcm2835. @@ -86419,7 +86405,7 @@ index 917c358..3d3db41 100644 tristate "BCM Kona I2C adapter" depends on ARCH_BCM_MOBILE diff --git a/drivers/i2c/busses/Makefile b/drivers/i2c/busses/Makefile -index 78d56c5..abe642f 100644 +index 56388f6..5403a9b 100644 --- a/drivers/i2c/busses/Makefile +++ b/drivers/i2c/busses/Makefile @@ -33,6 +33,7 @@ obj-$(CONFIG_I2C_AT91) += i2c-at91.o @@ -86857,7 +86843,7 @@ index 0000000..09203c0 +MODULE_LICENSE("GPL v2"); +MODULE_ALIAS("platform:" DRV_NAME); diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig -index 84e7c9e..71b4741 100644 +index 9982998..ae4ea48 100644 --- a/drivers/spi/Kconfig +++ b/drivers/spi/Kconfig @@ -86,6 +86,14 @@ config SPI_BCM2835 @@ -86876,7 +86862,7 @@ index 84e7c9e..71b4741 100644 tristate "SPI controller driver for ADI Blackfin5xx" depends on BLACKFIN && !BF60x diff --git a/drivers/spi/Makefile b/drivers/spi/Makefile -index 78f24ca..fdd29d3 100644 +index 6b9d2ac..b322f27 100644 --- a/drivers/spi/Makefile +++ b/drivers/spi/Makefile @@ -20,6 +20,7 @@ obj-$(CONFIG_SPI_BCM63XX) += spi-bcm63xx.o @@ -87520,10 +87506,10 @@ index 0000000..b04a57d +MODULE_LICENSE("GPL v2"); +MODULE_ALIAS("platform:" DRV_NAME); -From 0262abfaac71799e3688285f1f30bead42b8ff7e Mon Sep 17 00:00:00 2001 +From e9ce3b546b6fd5fb38952ba1437d479c6847ef5f Mon Sep 17 00:00:00 2001 From: cbeytas Date: Mon, 24 Jun 2013 00:05:40 -0400 -Subject: [PATCH 020/114] Perform I2C combined transactions when possible +Subject: [PATCH 021/109] Perform I2C combined transactions when possible Perform I2C combined transactions whenever possible, within the restrictions of the Broadcomm Serial Controller. @@ -87595,10 +87581,10 @@ index 09203c0..7d385a3 100644 } -From bd7d1508a83c544f2d52f668ebabe55c2ea207c5 Mon Sep 17 00:00:00 2001 +From 3eeb43c7ff0ec0308e78481ef4c9612ee90c2e77 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 8 May 2013 11:46:50 +0100 -Subject: [PATCH 021/114] enabling the realtime clock 1-wire chip DS1307 and +Subject: [PATCH 022/109] enabling the realtime clock 1-wire chip DS1307 and 1-wire on GPIO4 (as a module) 1-wire: Add support for configuring pin for w1-gpio kernel module @@ -87695,7 +87681,7 @@ index 82f56fb..7dd89a7f 100644 +module_param(w1_gpio_pin, uint, 0644); +module_param(w1_gpio_pullup, uint, 0644); diff --git a/drivers/w1/masters/w1-gpio.c b/drivers/w1/masters/w1-gpio.c -index 1d111e5..61be2cd 100644 +index b99a932..3ad15cc 100644 --- a/drivers/w1/masters/w1-gpio.c +++ b/drivers/w1/masters/w1-gpio.c @@ -23,6 +23,15 @@ @@ -87870,17 +87856,17 @@ index 2820924..fd0550f 100644 } } -From 13c96adb3a82e72a05a12ba833743b49d2e00ed9 Mon Sep 17 00:00:00 2001 +From b356d2a5324517f468c05664c36ae2d3ad51814e Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 12 Apr 2013 23:58:47 +0100 -Subject: [PATCH 023/114] config: add missing options from 3.6.y kernel +Subject: [PATCH 024/109] config: add missing options from 3.6.y kernel --- - arch/arm/configs/bcmrpi_defconfig | 658 ++++++++++++++++++++++++++++++++++++-- - 1 file changed, 636 insertions(+), 22 deletions(-) + arch/arm/configs/bcmrpi_defconfig | 692 ++++++++++++++++++++++++++++++++++++-- + 1 file changed, 667 insertions(+), 25 deletions(-) diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 6d2eae1..e2da9da 100644 +index 6d2eae1..6b39872 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig @@ -1,3 +1,5 @@ @@ -87945,7 +87931,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_CPU_IDLE=y CONFIG_VFP=y CONFIG_BINFMT_MISC=m -@@ -48,19 +67,272 @@ CONFIG_XFRM_USER=y +@@ -48,19 +67,278 @@ CONFIG_XFRM_USER=y CONFIG_NET_KEY=m CONFIG_INET=y CONFIG_IP_MULTICAST=y @@ -88094,14 +88080,18 @@ index 6d2eae1..e2da9da 100644 +CONFIG_IP_VS_FTP=m +CONFIG_IP_VS_PE_SIP=m +CONFIG_NF_CONNTRACK_IPV4=m -+CONFIG_NF_NAT_IPV4=m +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_MATCH_AH=m +CONFIG_IP_NF_MATCH_ECN=m +CONFIG_IP_NF_MATCH_TTL=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_TARGET_REJECT=m ++CONFIG_IP_NF_NAT=m ++CONFIG_IP_NF_TARGET_MASQUERADE=m ++CONFIG_IP_NF_TARGET_NETMAP=m ++CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_MANGLE=m ++CONFIG_IP_NF_TARGET_CLUSTERIP=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_NF_RAW=m @@ -88109,7 +88099,6 @@ index 6d2eae1..e2da9da 100644 +CONFIG_IP_NF_ARPFILTER=m +CONFIG_IP_NF_ARP_MANGLE=m +CONFIG_NF_CONNTRACK_IPV6=m -+CONFIG_NF_NAT_IPV6=m +CONFIG_IP6_NF_IPTABLES=m +CONFIG_IP6_NF_MATCH_AH=m +CONFIG_IP6_NF_MATCH_EUI64=m @@ -88124,6 +88113,9 @@ index 6d2eae1..e2da9da 100644 +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_RAW=m ++CONFIG_IP6_NF_NAT=m ++CONFIG_IP6_NF_TARGET_MASQUERADE=m ++CONFIG_IP6_NF_TARGET_NPT=m +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_T_FILTER=m @@ -88224,7 +88216,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_IRCOMM=m CONFIG_IRDA_ULTRA=y CONFIG_IRDA_CACHE_LAST_LSAP=y -@@ -87,45 +359,87 @@ CONFIG_BT_HCIVHCI=m +@@ -87,45 +365,88 @@ CONFIG_BT_HCIVHCI=m CONFIG_BT_MRVL=m CONFIG_BT_MRVL_SDIO=m CONFIG_BT_ATH3K=m @@ -88282,6 +88274,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_NETCONSOLE=m CONFIG_TUN=m +CONFIG_VETH=m ++CONFIG_ENC28J60=m CONFIG_MDIO_BITBANG=m CONFIG_PPP=m CONFIG_PPP_BSDCOMP=m @@ -88316,7 +88309,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_USB_NET_SMSC75XX=m CONFIG_USB_NET_SMSC95XX=y CONFIG_USB_NET_GL620A=m -@@ -135,10 +449,13 @@ CONFIG_USB_NET_MCS7830=m +@@ -135,10 +456,13 @@ CONFIG_USB_NET_MCS7830=m CONFIG_USB_NET_CDC_SUBSET=m CONFIG_USB_ALI_M5632=y CONFIG_USB_AN2720=y @@ -88331,7 +88324,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_USB_NET_INT51X1=m CONFIG_USB_IPHETH=m CONFIG_USB_SIERRA_NET=m -@@ -150,7 +467,15 @@ CONFIG_USB_ZD1201=m +@@ -150,8 +474,18 @@ CONFIG_USB_ZD1201=m CONFIG_USB_NET_RNDIS_WLAN=m CONFIG_RTL8187=m CONFIG_MAC80211_HWSIM=m @@ -88345,9 +88338,12 @@ index 6d2eae1..e2da9da 100644 CONFIG_B43=m +# CONFIG_B43_PHY_N is not set CONFIG_B43LEGACY=m ++CONFIG_BRCMFMAC=m ++CONFIG_BRCMFMAC_USB=y CONFIG_HOSTAP=m CONFIG_LIBERTAS=m -@@ -162,7 +487,10 @@ CONFIG_RT2X00=m + CONFIG_LIBERTAS_USB=m +@@ -162,7 +496,10 @@ CONFIG_RT2X00=m CONFIG_RT2500USB=m CONFIG_RT73USB=m CONFIG_RT2800USB=m @@ -88358,7 +88354,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_RTL8192CU=m CONFIG_ZD1211RW=m CONFIG_MWIFIEX=m -@@ -174,6 +502,13 @@ CONFIG_INPUT_JOYDEV=m +@@ -174,6 +511,13 @@ CONFIG_INPUT_JOYDEV=m CONFIG_INPUT_EVDEV=m # CONFIG_INPUT_KEYBOARD is not set # CONFIG_INPUT_MOUSE is not set @@ -88372,7 +88368,15 @@ index 6d2eae1..e2da9da 100644 CONFIG_INPUT_MISC=y CONFIG_INPUT_AD714X=m CONFIG_INPUT_ATI_REMOTE2=m -@@ -189,22 +524,207 @@ CONFIG_SERIO_RAW=m +@@ -182,6 +526,7 @@ CONFIG_INPUT_POWERMATE=m + CONFIG_INPUT_YEALINK=m + CONFIG_INPUT_CM109=m + CONFIG_INPUT_UINPUT=m ++CONFIG_INPUT_GPIO_ROTARY_ENCODER=m + CONFIG_INPUT_ADXL34X=m + CONFIG_INPUT_CMA3000=m + CONFIG_SERIO=m +@@ -189,22 +534,223 @@ CONFIG_SERIO_RAW=m CONFIG_GAMEPORT=m CONFIG_GAMEPORT_NS558=m CONFIG_GAMEPORT_L4=m @@ -88391,11 +88395,15 @@ index 6d2eae1..e2da9da 100644 +CONFIG_BCM_VC_SM=y CONFIG_I2C=y CONFIG_I2C_CHARDEV=m ++CONFIG_I2C_MUX=m CONFIG_I2C_BCM2708=m CONFIG_SPI=y CONFIG_SPI_BCM2708=m -CONFIG_SPI_SPIDEV=m +CONFIG_SPI_SPIDEV=y ++CONFIG_PPS=m ++CONFIG_PPS_CLIENT_LDISC=m ++CONFIG_PPS_CLIENT_GPIO=m CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_ARIZONA=m +CONFIG_W1=m @@ -88555,16 +88563,19 @@ index 6d2eae1..e2da9da 100644 +CONFIG_DVB_USB_LME2510=m +CONFIG_DVB_USB_MXL111SF=m +CONFIG_DVB_USB_RTL28XXU=m ++CONFIG_DVB_USB_DVBSKY=m +CONFIG_SMS_USB_DRV=m +CONFIG_DVB_B2C2_FLEXCOP_USB=m +CONFIG_DVB_AS102=m +CONFIG_VIDEO_EM28XX=m ++CONFIG_VIDEO_EM28XX_V4L2=m +CONFIG_VIDEO_EM28XX_ALSA=m +CONFIG_VIDEO_EM28XX_DVB=m +CONFIG_RADIO_SI470X=y +CONFIG_USB_SI470X=m +CONFIG_I2C_SI470X=m +CONFIG_RADIO_SI4713=m ++CONFIG_I2C_SI4713=m +CONFIG_USB_MR800=m +CONFIG_USB_DSBR=m +CONFIG_RADIO_SHARK=m @@ -88576,13 +88587,22 @@ index 6d2eae1..e2da9da 100644 +CONFIG_RADIO_TEF6862=m +CONFIG_RADIO_WL1273=m +CONFIG_RADIO_WL128X=m ++# CONFIG_MEDIA_SUBDRV_AUTOSELECT is not set ++CONFIG_VIDEO_UDA1342=m ++CONFIG_VIDEO_SONY_BTF_MPX=m ++CONFIG_VIDEO_TVP5150=m ++CONFIG_VIDEO_TW2804=m ++CONFIG_VIDEO_TW9903=m ++CONFIG_VIDEO_TW9906=m ++CONFIG_VIDEO_OV7640=m ++CONFIG_VIDEO_MT9V011=m CONFIG_FB=y +CONFIG_FB_BCM2708=y +# CONFIG_BACKLIGHT_GENERIC is not set CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_LOGO=y # CONFIG_LOGO_LINUX_MONO is not set -@@ -227,8 +747,10 @@ CONFIG_SND_BCM2835=m +@@ -227,8 +773,10 @@ CONFIG_SND_BCM2835=m CONFIG_SND_USB_AUDIO=m CONFIG_SND_USB_UA101=m CONFIG_SND_USB_CAIAQ=m @@ -88593,7 +88613,15 @@ index 6d2eae1..e2da9da 100644 CONFIG_HID_A4TECH=m CONFIG_HID_ACRUX=m CONFIG_HID_APPLE=m -@@ -267,9 +789,11 @@ CONFIG_HID_SUNPLUS=m +@@ -239,6 +787,7 @@ CONFIG_HID_CYPRESS=m + CONFIG_HID_DRAGONRISE=m + CONFIG_HID_EMS_FF=m + CONFIG_HID_ELECOM=m ++CONFIG_HID_ELO=m + CONFIG_HID_EZKEY=m + CONFIG_HID_HOLTEK=m + CONFIG_HID_KEYTOUCH=m +@@ -267,9 +816,11 @@ CONFIG_HID_SUNPLUS=m CONFIG_HID_GREENASIA=m CONFIG_HID_SMARTJOYPLUS=m CONFIG_HID_TOPSEED=m @@ -88605,7 +88633,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_HID_ZEROPLUS=m CONFIG_HID_ZYDACRON=m CONFIG_HID_PID=y -@@ -277,6 +801,8 @@ CONFIG_USB_HIDDEV=y +@@ -277,6 +828,8 @@ CONFIG_USB_HIDDEV=y CONFIG_USB=y CONFIG_USB_ANNOUNCE_NEW_DEVICES=y CONFIG_USB_MON=m @@ -88614,7 +88642,17 @@ index 6d2eae1..e2da9da 100644 CONFIG_USB_STORAGE=y CONFIG_USB_STORAGE_REALTEK=m CONFIG_USB_STORAGE_DATAFAB=m -@@ -311,6 +837,7 @@ CONFIG_USB_SERIAL_IPAQ=m +@@ -294,6 +847,9 @@ CONFIG_USB_STORAGE_ENE_UB6250=m + CONFIG_USB_UAS=m + CONFIG_USB_MDC800=m + CONFIG_USB_MICROTEK=m ++CONFIG_USBIP_CORE=m ++CONFIG_USBIP_VHCI_HCD=m ++CONFIG_USBIP_HOST=m + CONFIG_USB_SERIAL=m + CONFIG_USB_SERIAL_GENERIC=y + CONFIG_USB_SERIAL_AIRCABLE=m +@@ -311,6 +867,7 @@ CONFIG_USB_SERIAL_IPAQ=m CONFIG_USB_SERIAL_IR=m CONFIG_USB_SERIAL_EDGEPORT=m CONFIG_USB_SERIAL_EDGEPORT_TI=m @@ -88622,7 +88660,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_USB_SERIAL_GARMIN=m CONFIG_USB_SERIAL_IPW=m CONFIG_USB_SERIAL_IUU=m -@@ -319,6 +846,7 @@ CONFIG_USB_SERIAL_KEYSPAN=m +@@ -319,6 +876,7 @@ CONFIG_USB_SERIAL_KEYSPAN=m CONFIG_USB_SERIAL_KLSI=m CONFIG_USB_SERIAL_KOBIL_SCT=m CONFIG_USB_SERIAL_MCT_U232=m @@ -88630,7 +88668,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_USB_SERIAL_MOS7720=m CONFIG_USB_SERIAL_MOS7840=m CONFIG_USB_SERIAL_NAVMAN=m -@@ -336,7 +864,10 @@ CONFIG_USB_SERIAL_XIRCOM=m +@@ -336,7 +894,10 @@ CONFIG_USB_SERIAL_XIRCOM=m CONFIG_USB_SERIAL_OPTION=m CONFIG_USB_SERIAL_OMNINET=m CONFIG_USB_SERIAL_OPTICON=m @@ -88641,7 +88679,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_USB_SERIAL_DEBUG=m CONFIG_USB_EMI62=m CONFIG_USB_EMI26=m -@@ -357,12 +888,81 @@ CONFIG_USB_IOWARRIOR=m +@@ -357,12 +918,81 @@ CONFIG_USB_IOWARRIOR=m CONFIG_USB_TEST=m CONFIG_USB_ISIGHTFW=m CONFIG_USB_YUREX=m @@ -88723,7 +88761,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_EXT4_FS=y CONFIG_EXT4_FS_POSIX_ACL=y CONFIG_EXT4_FS_SECURITY=y -@@ -384,6 +984,8 @@ CONFIG_BTRFS_FS=m +@@ -384,6 +1014,8 @@ CONFIG_BTRFS_FS=m CONFIG_BTRFS_FS_POSIX_ACL=y CONFIG_NILFS2_FS=m CONFIG_FANOTIFY=y @@ -88732,7 +88770,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_AUTOFS4_FS=y CONFIG_FUSE_FS=m CONFIG_CUSE=m -@@ -399,18 +1001,26 @@ CONFIG_MSDOS_FS=y +@@ -399,18 +1031,27 @@ CONFIG_MSDOS_FS=y CONFIG_VFAT_FS=y CONFIG_FAT_DEFAULT_IOCHARSET="ascii" CONFIG_NTFS_FS=m @@ -88751,6 +88789,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_NFS_FS=y CONFIG_NFS_V3_ACL=y CONFIG_NFS_V4=y ++CONFIG_NFS_SWAP=y CONFIG_ROOT_NFS=y CONFIG_NFS_FSCACHE=y +CONFIG_NFSD=m @@ -88759,7 +88798,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_CIFS=m CONFIG_CIFS_WEAK_PW_HASH=y CONFIG_CIFS_XATTR=y -@@ -455,36 +1065,40 @@ CONFIG_NLS_ISO8859_14=m +@@ -455,36 +1096,37 @@ CONFIG_NLS_ISO8859_14=m CONFIG_NLS_ISO8859_15=m CONFIG_NLS_KOI8_R=m CONFIG_NLS_KOI8_U=m @@ -88783,7 +88822,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_KGDB=y CONFIG_KGDB_KDB=y CONFIG_KDB_KEYBOARD=y - CONFIG_STRICT_DEVMEM=y +-CONFIG_STRICT_DEVMEM=y -CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_USER=m +CONFIG_CRYPTO_NULL=m @@ -88793,8 +88832,8 @@ index 6d2eae1..e2da9da 100644 +CONFIG_CRYPTO_CTS=m +CONFIG_CRYPTO_XTS=m CONFIG_CRYPTO_XCBC=m - CONFIG_CRYPTO_MD5=y - CONFIG_CRYPTO_SHA1=y +-CONFIG_CRYPTO_MD5=y +-CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA1_ARM=m CONFIG_CRYPTO_SHA512=m CONFIG_CRYPTO_TGR192=m @@ -88807,10 +88846,10 @@ index 6d2eae1..e2da9da 100644 # CONFIG_CRYPTO_HW is not set CONFIG_CRC_ITU_T=y -From 32839a570568823b3a1128bb1ae6c5fe3e9870af Mon Sep 17 00:00:00 2001 +From 3c7bee5134f4d492af3b6ba74ac91a76241979cf Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 18 Dec 2013 22:16:19 +0000 -Subject: [PATCH 024/114] config: Enable CONFIG_MEMCG, but leave it disabled +Subject: [PATCH 025/109] config: Enable CONFIG_MEMCG, but leave it disabled (due to memory cost). Enable with cgroup_enable=memory. --- @@ -88820,7 +88859,7 @@ Subject: [PATCH 024/114] config: Enable CONFIG_MEMCG, but leave it disabled 3 files changed, 25 insertions(+) diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index e2da9da..897616c 100644 +index 6b39872..ef20985 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig @@ -19,6 +19,7 @@ CONFIG_CGROUP_FREEZER=y @@ -88832,10 +88871,10 @@ index e2da9da..897616c 100644 CONFIG_NAMESPACES=y CONFIG_SCHED_AUTOGROUP=y diff --git a/kernel/cgroup.c b/kernel/cgroup.c -index 136ecea..c909506 100644 +index 04cfe8a..399cea3 100644 --- a/kernel/cgroup.c +++ b/kernel/cgroup.c -@@ -5322,6 +5322,29 @@ static int __init cgroup_disable(char *str) +@@ -5389,6 +5389,29 @@ static int __init cgroup_disable(char *str) } __setup("cgroup_disable=", cgroup_disable); @@ -88866,10 +88905,10 @@ index 136ecea..c909506 100644 { printk("cgroup: using legacy files on the default hierarchy\n"); diff --git a/mm/memcontrol.c b/mm/memcontrol.c -index 4918b6e..168498c 100644 +index 2f6893c..8778eba 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c -@@ -6207,6 +6207,7 @@ struct cgroup_subsys memory_cgrp_subsys = { +@@ -5398,6 +5398,7 @@ struct cgroup_subsys memory_cgrp_subsys = { .bind = mem_cgroup_bind, .legacy_cftypes = mem_cgroup_files, .early_init = 0, @@ -88878,10 +88917,10 @@ index 4918b6e..168498c 100644 #ifdef CONFIG_MEMCG_SWAP -From a29a51d9320d44124fe13457c45663d3051a9452 Mon Sep 17 00:00:00 2001 +From 675b0e93160dcb81e3d36ea3548c6d9f289928c9 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:46:42 +0100 -Subject: [PATCH 025/114] Add FIQ patch to dwc_otg driver. Enable with +Subject: [PATCH 026/109] Add FIQ patch to dwc_otg driver. Enable with dwc_otg.fiq_fix_enable=1. Should give about 10% more ARM performance. Thanks to Gordon and Costas @@ -89163,10 +89202,10 @@ incarnations. create mode 100755 drivers/usb/host/dwc_otg/dwc_otg_mphi_fix.h diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 6283d7d..ba9c18e 100644 +index fdfb230..f607868 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -395,6 +395,7 @@ config ARCH_BCM2708 +@@ -381,6 +381,7 @@ config ARCH_BCM2708 select ARM_ERRATA_411920 select MACH_BCM2708 select VC4 @@ -92174,10 +92213,10 @@ index 1b1f83c..c8590b5 100644 if (status.b.sr) { -From d434f75bc6411d2964fce7fee50fe0ce49dd02eb Mon Sep 17 00:00:00 2001 +From 8c9d2b02c39e52c89c27d306fa1a2781fd48b014 Mon Sep 17 00:00:00 2001 From: P33M Date: Wed, 19 Mar 2014 12:58:23 +0000 -Subject: [PATCH 026/114] dwc_otg: fiq_fsm: Base commit for driver rewrite +Subject: [PATCH 027/109] dwc_otg: fiq_fsm: Base commit for driver rewrite This commit removes the previous FIQ fixes entirely and adds fiq_fsm. @@ -97072,10 +97111,10 @@ index 5d310df..4b32941 100644 return -EBUSY; } -From 19c1ada1c282d61163b6a24a6ee53517caec094c Mon Sep 17 00:00:00 2001 +From c6121acf96ef39f9c95b15760846f58b45027ee9 Mon Sep 17 00:00:00 2001 From: Vincent Sanders Date: Wed, 30 Jan 2013 12:45:18 +0000 -Subject: [PATCH 027/114] bcm2835: add v4l2 camera device +Subject: [PATCH 028/109] bcm2835: add v4l2 camera device - Supports raw YUV capture, preview, JPEG and H264. - Uses videobuf2 for data transfer, using dma_buf. @@ -97187,10 +97226,10 @@ index 0000000..c585a8f + +$ v4l2-ctl --list-formats diff --git a/drivers/media/platform/Kconfig b/drivers/media/platform/Kconfig -index 3aac88f..9bc18aa 100644 +index 765bffb..286b7ad 100644 --- a/drivers/media/platform/Kconfig +++ b/drivers/media/platform/Kconfig -@@ -126,6 +126,7 @@ config VIDEO_S3C_CAMIF +@@ -118,6 +118,7 @@ config VIDEO_S3C_CAMIF source "drivers/media/platform/soc_camera/Kconfig" source "drivers/media/platform/exynos4-is/Kconfig" source "drivers/media/platform/s5p-tv/Kconfig" @@ -97199,10 +97238,10 @@ index 3aac88f..9bc18aa 100644 endif # V4L_PLATFORM_DRIVERS diff --git a/drivers/media/platform/Makefile b/drivers/media/platform/Makefile -index 579046b..9c9cb34 100644 +index a49936b..414b28c 100644 --- a/drivers/media/platform/Makefile +++ b/drivers/media/platform/Makefile -@@ -49,4 +49,6 @@ obj-$(CONFIG_VIDEO_RENESAS_VSP1) += vsp1/ +@@ -46,4 +46,6 @@ obj-$(CONFIG_VIDEO_RENESAS_VSP1) += vsp1/ obj-y += omap/ @@ -103057,10 +103096,10 @@ index 0000000..9d1d11e + +#endif /* MMAL_VCHIQ_H */ -From c8fb291144efa1ab7f0628119894a1e72f08bce4 Mon Sep 17 00:00:00 2001 +From 876eadd8476087d347e6114781d2897bb8a63ee9 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Mon, 9 Dec 2013 10:58:01 +0000 -Subject: [PATCH 028/114] V4L2: Fixes from 6by9 +Subject: [PATCH 029/109] V4L2: Fixes from 6by9 V4L2: Fix EV values. Add manual shutter speed control @@ -103292,11 +103331,11 @@ bcm2835-camera: stop_streaming now has a void return 8 files changed, 1300 insertions(+), 187 deletions(-) diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 897616c..3f99687 100644 +index ef20985..63a6546 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -708,6 +708,9 @@ CONFIG_DVB_AS102=m - CONFIG_VIDEO_EM28XX=m +@@ -724,6 +724,9 @@ CONFIG_VIDEO_EM28XX=m + CONFIG_VIDEO_EM28XX_V4L2=m CONFIG_VIDEO_EM28XX_ALSA=m CONFIG_VIDEO_EM28XX_DVB=m +CONFIG_V4L_PLATFORM_DRIVERS=y @@ -105472,10 +105511,10 @@ index a06fb44..76f249e 100644 release_msg: -From ce3d899b0ed284a6e901fb6f4a459fdcf003cadb Mon Sep 17 00:00:00 2001 +From 1216981dc3569162148f1564fc923ee684e38f0a Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 14:22:53 +0100 -Subject: [PATCH 029/114] dmaengine: Add support for BCM2708 +Subject: [PATCH 030/109] dmaengine: Add support for BCM2708 Add support for DMA controller of BCM2708 as used in the Raspberry Pi. Currently it only supports cyclic DMA. @@ -105527,10 +105566,10 @@ index a4aac4c..d03e7b5 100644 /* return channel no or -ve error */ extern int bcm_dma_chan_alloc(unsigned preferred_feature_set, diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig -index de46982..c9b8eb5 100644 +index f2b2c4e..5b9e196 100644 --- a/drivers/dma/Kconfig +++ b/drivers/dma/Kconfig -@@ -330,6 +330,12 @@ config DMA_BCM2835 +@@ -337,6 +337,12 @@ config DMA_BCM2835 select DMA_ENGINE select DMA_VIRTUAL_CHANNELS @@ -105544,10 +105583,10 @@ index de46982..c9b8eb5 100644 tristate "AM33xx CPPI41 DMA support" depends on ARCH_OMAP diff --git a/drivers/dma/Makefile b/drivers/dma/Makefile -index cb626c1..d3c4a82 100644 +index 2022b54..e50c8b8 100644 --- a/drivers/dma/Makefile +++ b/drivers/dma/Makefile -@@ -38,6 +38,7 @@ obj-$(CONFIG_DMA_SA11X0) += sa11x0-dma.o +@@ -39,6 +39,7 @@ obj-$(CONFIG_DMA_SA11X0) += sa11x0-dma.o obj-$(CONFIG_MMP_TDMA) += mmp_tdma.o obj-$(CONFIG_DMA_OMAP) += omap-dma.o obj-$(CONFIG_DMA_BCM2835) += bcm2835-dma.o @@ -106614,10 +106653,10 @@ index 0000000..10463db +MODULE_AUTHOR("Gellert Weisz "); +MODULE_LICENSE("GPL v2"); -From ec589c88e88452a80a20ad4ebc90e8fe5d80e7cd Mon Sep 17 00:00:00 2001 +From 9958213bdc57c1c3fd8b22995b1f7a2395ba2583 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 14:33:38 +0100 -Subject: [PATCH 030/114] ASoC: Add support for BCM2708 +Subject: [PATCH 031/109] ASoC: Add support for BCM2708 This driver adds support for digital audio (I2S) for the BCM2708 SoC that is used by the @@ -107749,10 +107788,10 @@ index 0000000..6fdcbc1 + +#endif -From c3294683a11a781ec75c31d0717bee4f6438c6e6 Mon Sep 17 00:00:00 2001 +From fb6b211a34ec8a53dc8802462e801cdb431fc083 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 14:59:51 +0100 -Subject: [PATCH 031/114] ASoC: Add support for PCM5102A codec +Subject: [PATCH 032/109] ASoC: Add support for PCM5102A codec Some definitions to support the PCM5102A codec by Texas Instruments. @@ -107766,10 +107805,10 @@ Signed-off-by: Florian Meier create mode 100644 sound/soc/codecs/pcm5102a.c diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig -index a68d173..0ef8bb7 100644 +index 8349f98..b289dd2 100644 --- a/sound/soc/codecs/Kconfig +++ b/sound/soc/codecs/Kconfig -@@ -80,6 +80,7 @@ config SND_SOC_ALL_CODECS +@@ -81,6 +81,7 @@ config SND_SOC_ALL_CODECS select SND_SOC_PCM512x_I2C if I2C select SND_SOC_PCM512x_SPI if SPI_MASTER select SND_SOC_RT286 if I2C @@ -107777,7 +107816,7 @@ index a68d173..0ef8bb7 100644 select SND_SOC_RT5631 if I2C select SND_SOC_RT5640 if I2C select SND_SOC_RT5645 if I2C -@@ -486,6 +487,9 @@ config SND_SOC_RT286 +@@ -502,6 +503,9 @@ config SND_SOC_RT286 tristate depends on I2C @@ -107785,13 +107824,13 @@ index a68d173..0ef8bb7 100644 + tristate + config SND_SOC_RT5631 - tristate - + tristate "Realtek ALC5631/RT5631 CODEC" + depends on I2C diff --git a/sound/soc/codecs/Makefile b/sound/soc/codecs/Makefile -index 5dce451..7b606e6 100644 +index bbdfd1e..3dd07b1 100644 --- a/sound/soc/codecs/Makefile +++ b/sound/soc/codecs/Makefile -@@ -74,6 +74,7 @@ snd-soc-pcm512x-i2c-objs := pcm512x-i2c.o +@@ -76,6 +76,7 @@ snd-soc-pcm512x-i2c-objs := pcm512x-i2c.o snd-soc-pcm512x-spi-objs := pcm512x-spi.o snd-soc-rl6231-objs := rl6231.o snd-soc-rt286-objs := rt286.o @@ -107799,7 +107838,7 @@ index 5dce451..7b606e6 100644 snd-soc-rt5631-objs := rt5631.o snd-soc-rt5640-objs := rt5640.o snd-soc-rt5645-objs := rt5645.o -@@ -250,6 +251,7 @@ obj-$(CONFIG_SND_SOC_PCM512x_I2C) += snd-soc-pcm512x-i2c.o +@@ -257,6 +258,7 @@ obj-$(CONFIG_SND_SOC_PCM512x_I2C) += snd-soc-pcm512x-i2c.o obj-$(CONFIG_SND_SOC_PCM512x_SPI) += snd-soc-pcm512x-spi.o obj-$(CONFIG_SND_SOC_RL6231) += snd-soc-rl6231.o obj-$(CONFIG_SND_SOC_RT286) += snd-soc-rt286.o @@ -107877,10 +107916,10 @@ index 0000000..126f1e9 +MODULE_AUTHOR("Florian Meier "); +MODULE_LICENSE("GPL v2"); -From 92f48ad219db73d6fb34f909965622ca4067da4f Mon Sep 17 00:00:00 2001 +From 9f755aa80ac220c641d5ed21166467ddd7dfac64 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 19:04:54 +0100 -Subject: [PATCH 032/114] BCM2708: Add I2S support to board file +Subject: [PATCH 033/109] BCM2708: Add I2S support to board file Adds the required initializations for I2S to the board file of mach-bcm2708. @@ -107935,10 +107974,10 @@ index a740344..dca28ad 100644 struct amba_device *d = amba_devs[i]; amba_device_register(d, &iomem_resource); -From 77afe84c37210adb241e9b48f1a415f49f183a68 Mon Sep 17 00:00:00 2001 +From f20bd5bbe4efd70685acd16e51bd4fd414f374fa Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 19:19:08 +0100 -Subject: [PATCH 033/114] ASoC: Add support for HifiBerry DAC +Subject: [PATCH 034/109] ASoC: Add support for HifiBerry DAC This adds a machine driver for the HifiBerry DAC. It is a sound card that can @@ -108087,10 +108126,10 @@ index 0000000..4b70b45 +MODULE_DESCRIPTION("ASoC Driver for HifiBerry DAC"); +MODULE_LICENSE("GPL v2"); -From 75d90451c5929bc54e169ac92fc3faf234f28543 Mon Sep 17 00:00:00 2001 +From 29f894439b2d2fb15351dfa6486c7d8cba374af3 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 19:21:34 +0100 -Subject: [PATCH 034/114] BCM2708: Add HifiBerry DAC to board file +Subject: [PATCH 035/109] BCM2708: Add HifiBerry DAC to board file This adds the initalization of the HifiBerry DAC to the mach-bcm2708 board file. @@ -108138,10 +108177,10 @@ index dca28ad..50d4991 100644 struct amba_device *d = amba_devs[i]; amba_device_register(d, &iomem_resource); -From dc87b04d76f021cc710a986285bee4ca722b55fd Mon Sep 17 00:00:00 2001 +From ca637d75dfa6916b8c5d2d1dbd4114bfeacc086a Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Mon, 2 Dec 2013 20:28:22 +0100 -Subject: [PATCH 035/114] BCM2708: Add I2S and DMA support to default config +Subject: [PATCH 036/109] BCM2708: Add I2S and DMA support to default config This commit adds several modules that are needed for I2S support for the Raspberry Pi to the defconfig. @@ -108152,10 +108191,10 @@ Signed-off-by: Florian Meier 1 file changed, 6 insertions(+) diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 3f99687..dfd98df 100644 +index 63a6546..9a0e922 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -753,6 +753,10 @@ CONFIG_SND_USB_UA101=m +@@ -779,6 +779,10 @@ CONFIG_SND_USB_UA101=m CONFIG_SND_USB_CAIAQ=m CONFIG_SND_USB_CAIAQ_INPUT=y CONFIG_SND_USB_6FIRE=m @@ -108166,7 +108205,7 @@ index 3f99687..dfd98df 100644 CONFIG_SOUND_PRIME=m CONFIG_HIDRAW=y CONFIG_HID_A4TECH=m -@@ -947,6 +951,8 @@ CONFIG_RTC_DRV_RS5C348=m +@@ -977,6 +981,8 @@ CONFIG_RTC_DRV_RS5C348=m CONFIG_RTC_DRV_DS3234=m CONFIG_RTC_DRV_PCF2123=m CONFIG_RTC_DRV_RX4581=m @@ -108176,10 +108215,10 @@ index 3f99687..dfd98df 100644 CONFIG_UIO_PDRV_GENIRQ=m CONFIG_STAGING=y -From 52fceff596533a847231d1f9b8ea13d4e6ee829b Mon Sep 17 00:00:00 2001 +From d4cda2a2b50cc69386e6f2292fc042baec93c418 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 6 Dec 2013 20:50:28 +0100 -Subject: [PATCH 036/114] ASoC: BCM2708: Add support for RPi-DAC +Subject: [PATCH 037/109] ASoC: BCM2708: Add support for RPi-DAC This adds a machine driver for the RPi-DAC. @@ -108198,10 +108237,10 @@ Signed-off-by: Florian Meier create mode 100644 sound/soc/codecs/pcm1794a.c diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index dfd98df..f688da5 100644 +index 9a0e922..3f7a237 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -756,6 +756,7 @@ CONFIG_SND_USB_6FIRE=m +@@ -782,6 +782,7 @@ CONFIG_SND_USB_6FIRE=m CONFIG_SND_SOC=m CONFIG_SND_BCM2708_SOC_I2S=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC=m @@ -108377,10 +108416,10 @@ index 0000000..6d6e0ba +MODULE_DESCRIPTION("ASoC Driver for RPi-DAC"); +MODULE_LICENSE("GPL v2"); diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig -index 0ef8bb7..3c236a6 100644 +index b289dd2..c32ecbe 100644 --- a/sound/soc/codecs/Kconfig +++ b/sound/soc/codecs/Kconfig -@@ -81,6 +81,7 @@ config SND_SOC_ALL_CODECS +@@ -82,6 +82,7 @@ config SND_SOC_ALL_CODECS select SND_SOC_PCM512x_SPI if SPI_MASTER select SND_SOC_RT286 if I2C select SND_SOC_PCM5102A if I2C @@ -108388,7 +108427,7 @@ index 0ef8bb7..3c236a6 100644 select SND_SOC_RT5631 if I2C select SND_SOC_RT5640 if I2C select SND_SOC_RT5645 if I2C -@@ -487,6 +488,9 @@ config SND_SOC_RT286 +@@ -503,6 +504,9 @@ config SND_SOC_RT286 tristate depends on I2C @@ -108399,10 +108438,10 @@ index 0ef8bb7..3c236a6 100644 tristate diff --git a/sound/soc/codecs/Makefile b/sound/soc/codecs/Makefile -index 7b606e6..2a7f823 100644 +index 3dd07b1..1548bf33 100644 --- a/sound/soc/codecs/Makefile +++ b/sound/soc/codecs/Makefile -@@ -74,6 +74,7 @@ snd-soc-pcm512x-i2c-objs := pcm512x-i2c.o +@@ -76,6 +76,7 @@ snd-soc-pcm512x-i2c-objs := pcm512x-i2c.o snd-soc-pcm512x-spi-objs := pcm512x-spi.o snd-soc-rl6231-objs := rl6231.o snd-soc-rt286-objs := rt286.o @@ -108410,7 +108449,7 @@ index 7b606e6..2a7f823 100644 snd-soc-pcm5102a-objs := pcm5102a.o snd-soc-rt5631-objs := rt5631.o snd-soc-rt5640-objs := rt5640.o -@@ -251,6 +252,7 @@ obj-$(CONFIG_SND_SOC_PCM512x_I2C) += snd-soc-pcm512x-i2c.o +@@ -258,6 +259,7 @@ obj-$(CONFIG_SND_SOC_PCM512x_I2C) += snd-soc-pcm512x-i2c.o obj-$(CONFIG_SND_SOC_PCM512x_SPI) += snd-soc-pcm512x-spi.o obj-$(CONFIG_SND_SOC_RL6231) += snd-soc-rl6231.o obj-$(CONFIG_SND_SOC_RT286) += snd-soc-rt286.o @@ -108487,10 +108526,10 @@ index 0000000..b4eaa44 +MODULE_AUTHOR("Florian Meier "); +MODULE_LICENSE("GPL v2"); -From f33231bfe57c745235a346d5529a4bac717d925e Mon Sep 17 00:00:00 2001 +From 72230403d9af4ca82a9075a9d9641a6fbad5ae8a Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Wed, 15 Jan 2014 21:41:23 +0100 -Subject: [PATCH 037/114] ASoC: wm8804: Implement MCLK configuration options, +Subject: [PATCH 038/109] ASoC: wm8804: Implement MCLK configuration options, add 32bit support WM8804 can run with PLL frequencies of 256xfs and 128xfs for most sample rates. At 192kHz only 128xfs is supported. The existing driver selects 128xfs automatically for some lower samples rates. By using an @@ -108509,7 +108548,7 @@ Signed-off-by: Daniel Matuschek 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sound/soc/codecs/wm8804.c b/sound/soc/codecs/wm8804.c -index 3addc5f..d060b23 100644 +index 1315f76..3d86ba8 100644 --- a/sound/soc/codecs/wm8804.c +++ b/sound/soc/codecs/wm8804.c @@ -278,6 +278,7 @@ static int wm8804_hw_params(struct snd_pcm_substream *substream, @@ -108520,7 +108559,7 @@ index 3addc5f..d060b23 100644 blen = 0x2; break; default: -@@ -624,7 +625,7 @@ static const struct snd_soc_dai_ops wm8804_dai_ops = { +@@ -621,7 +622,7 @@ static const struct snd_soc_dai_ops wm8804_dai_ops = { }; #define WM8804_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3LE | \ @@ -108530,10 +108569,10 @@ index 3addc5f..d060b23 100644 #define WM8804_RATES (SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | \ SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_64000 | \ -From bccfebf3bc4457faddaa65e3492ec9f07cb5750b Mon Sep 17 00:00:00 2001 +From 0bb2e4cadda70cee999665f14243faaf2c19150a Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Wed, 15 Jan 2014 21:42:08 +0100 -Subject: [PATCH 038/114] ASoC: BCM:Add support for HiFiBerry Digi. Driver is +Subject: [PATCH 039/109] ASoC: BCM:Add support for HiFiBerry Digi. Driver is based on the patched WM8804 driver. Signed-off-by: Daniel Matuschek @@ -108736,10 +108775,10 @@ index 0000000..e4f769d +MODULE_DESCRIPTION("ASoC Driver for HifiBerry Digi"); +MODULE_LICENSE("GPL v2"); -From 2a04dad39006e26f9ee4c56e78255d5e4dc20075 Mon Sep 17 00:00:00 2001 +From 2d6d6cd0ba7c029da824b0ca5c17eb17edad10ce Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Thu, 16 Jan 2014 07:26:08 +0100 -Subject: [PATCH 039/114] BCM2708: Added support for HiFiBerry Digi board Board +Subject: [PATCH 040/109] BCM2708: Added support for HiFiBerry Digi board Board initalization by I2C Signed-off-by: Daniel Matuschek @@ -108786,10 +108825,10 @@ index 100c223..a57cb85 100644 bcm_register_device(&snd_rpi_dac_device); bcm_register_device(&snd_pcm1794a_codec_device); -From 7ea75f6521191c234c02d6849388bb3ad5071754 Mon Sep 17 00:00:00 2001 +From 501ead58b3fb28519674af7f7ca770f40fbdea49 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Thu, 16 Jan 2014 07:27:28 +0100 -Subject: [PATCH 040/114] BCM2708: Added HiFiBerry Digi configuration option It +Subject: [PATCH 041/109] BCM2708: Added HiFiBerry Digi configuration option It will be compiled as a module by default. This also includes the WM8804 driver. @@ -108799,10 +108838,10 @@ Signed-off-by: Daniel Matuschek 1 file changed, 1 insertion(+) diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index f688da5..c9d3fac 100644 +index 3f7a237..cbd53b1 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -756,6 +756,7 @@ CONFIG_SND_USB_6FIRE=m +@@ -782,6 +782,7 @@ CONFIG_SND_USB_6FIRE=m CONFIG_SND_SOC=m CONFIG_SND_BCM2708_SOC_I2S=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC=m @@ -108811,10 +108850,10 @@ index f688da5..c9d3fac 100644 CONFIG_SND_SIMPLE_CARD=m CONFIG_SOUND_PRIME=m -From 999241ea1ab8a7b1526f41c100cd636ab3511fe9 Mon Sep 17 00:00:00 2001 +From 819ab2ffbc41d5d4c6cc27ee6bb334fb7dd777ae Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Thu, 16 Jan 2014 07:36:35 +0100 -Subject: [PATCH 041/114] ASoC: wm8804: Set idle_bias_off to false Idle bias +Subject: [PATCH 042/109] ASoC: wm8804: Set idle_bias_off to false Idle bias has been change to remove warning on driver startup Signed-off-by: Daniel Matuschek @@ -108823,10 +108862,10 @@ Signed-off-by: Daniel Matuschek 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sound/soc/codecs/wm8804.c b/sound/soc/codecs/wm8804.c -index d060b23..d486a9d 100644 +index 3d86ba8..34f7f76 100644 --- a/sound/soc/codecs/wm8804.c +++ b/sound/soc/codecs/wm8804.c -@@ -656,7 +656,7 @@ static struct snd_soc_codec_driver soc_codec_dev_wm8804 = { +@@ -653,7 +653,7 @@ static struct snd_soc_codec_driver soc_codec_dev_wm8804 = { .probe = wm8804_probe, .remove = wm8804_remove, .set_bias_level = wm8804_set_bias_level, @@ -108836,10 +108875,10 @@ index d060b23..d486a9d 100644 .controls = wm8804_snd_controls, .num_controls = ARRAY_SIZE(wm8804_snd_controls), -From 19b5aa63015268ce3c736b720e1e7f8211f7cf98 Mon Sep 17 00:00:00 2001 +From c79ade9511f2b90a0cf84d152b7ea8e2afd6293e Mon Sep 17 00:00:00 2001 From: Gordon Garrity Date: Sat, 8 Mar 2014 16:56:57 +0000 -Subject: [PATCH 042/114] Add IQaudIO Sound Card support for Raspberry Pi +Subject: [PATCH 043/109] Add IQaudIO Sound Card support for Raspberry Pi --- arch/arm/configs/bcmrpi_defconfig | 1 + @@ -108851,10 +108890,10 @@ Subject: [PATCH 042/114] Add IQaudIO Sound Card support for Raspberry Pi create mode 100644 sound/soc/bcm/iqaudio-dac.c diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index c9d3fac..f15a4b9 100644 +index cbd53b1..7ba662a 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -758,6 +758,7 @@ CONFIG_SND_BCM2708_SOC_I2S=m +@@ -784,6 +784,7 @@ CONFIG_SND_BCM2708_SOC_I2S=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI=m CONFIG_SND_BCM2708_SOC_RPI_DAC=m @@ -109049,10 +109088,10 @@ index 0000000..8d0e2ae +MODULE_DESCRIPTION("ASoC Driver for IQAudio DAC"); +MODULE_LICENSE("GPL v2"); -From 197803c176d753bc23fdf705306596cbd1e8b658 Mon Sep 17 00:00:00 2001 +From c359a5ee3bd738961427186256be97188a87bfef Mon Sep 17 00:00:00 2001 From: Howard Mitchell Date: Fri, 28 Mar 2014 16:40:31 +0000 -Subject: [PATCH 043/114] pcm512x: Use a range macro for Volume and rename to +Subject: [PATCH 044/109] pcm512x: Use a range macro for Volume and rename to PCM. This allows limiting the output gain to avoid clipping in the @@ -109062,7 +109101,7 @@ DAC ouput stages. 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sound/soc/codecs/pcm512x.c b/sound/soc/codecs/pcm512x.c -index 640c991..b405719 100644 +index 30c673c..2054a69 100644 --- a/sound/soc/codecs/pcm512x.c +++ b/sound/soc/codecs/pcm512x.c @@ -259,8 +259,8 @@ static const struct soc_enum pcm512x_veds = @@ -109077,10 +109116,10 @@ index 640c991..b405719 100644 PCM512x_LAGN_SHIFT, PCM512x_RAGN_SHIFT, 1, 1, analog_tlv), SOC_DOUBLE_TLV("Playback Boost Volume", PCM512x_ANALOG_GAIN_BOOST, -From de30840b98e508ea9d650570686e35b1a64c900c Mon Sep 17 00:00:00 2001 +From d985ba5c1251ebf4e0d53e9e49808e56f0cc8742 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 18 Jun 2014 13:42:01 +0100 -Subject: [PATCH 044/114] vmstat: Workaround for issue where dirty page count +Subject: [PATCH 045/109] vmstat: Workaround for issue where dirty page count goes negative See: @@ -109107,10 +109146,10 @@ index 82e7db7..f87d16d 100644 static inline void __inc_zone_page_state(struct page *page, -From 8eb79690a70cce34e9a1c35cf165716f78301d2e Mon Sep 17 00:00:00 2001 +From 562475ed074e8496d440350422bf2537820e4b2e Mon Sep 17 00:00:00 2001 From: P33M Date: Fri, 20 Jun 2014 16:03:12 +0100 -Subject: [PATCH 045/114] dwc_otg: Fix various issues with root port and +Subject: [PATCH 046/109] dwc_otg: Fix various issues with root port and transaction errors Process the host port interrupts correctly (and don't trample them). @@ -109180,10 +109219,10 @@ index 4195ff2..a5566bc 100644 fiq_print(FIQDBG_ERR, dwc_otg_hcd->fiq_state, "RESET "); } -From 099581aeb11b7eafbca02c9e69f6e6c8de0c57ec Mon Sep 17 00:00:00 2001 +From e4364915e5e486400186b16743f27e8e683bb122 Mon Sep 17 00:00:00 2001 From: P33M Date: Fri, 20 Jun 2014 17:23:20 +0100 -Subject: [PATCH 046/114] fiq_fsm: Implement hack for Split Interrupt +Subject: [PATCH 047/109] fiq_fsm: Implement hack for Split Interrupt transactions Hubs aren't too picky about which endpoint we send Control type split @@ -109269,10 +109308,10 @@ index 130096b..68d4f3b 100644 break; } -From d828fe6d765939e457e87d7f348adfe69cfd4175 Mon Sep 17 00:00:00 2001 +From c879a654179c1997fb31343ffe193cba4ce8445e Mon Sep 17 00:00:00 2001 From: notro Date: Sun, 6 Jul 2014 12:07:25 +0200 -Subject: [PATCH 047/114] spi-bcm2708: Prepare for Common Clock Framework +Subject: [PATCH 048/109] spi-bcm2708: Prepare for Common Clock Framework migration As part of migrating to use the Common Clock Framework, replace clk_enable() @@ -109317,10 +109356,10 @@ index b04a57d..349d21f 100644 free_irq(bs->irq, master); iounmap(bs->base); -From 466743ec93a99240c1a5a04d65f490fd8370fbc3 Mon Sep 17 00:00:00 2001 +From 7a09a3dce774a0a5be04e106d6cab4c45a4b8225 Mon Sep 17 00:00:00 2001 From: notro Date: Sun, 6 Jul 2014 12:09:30 +0200 -Subject: [PATCH 048/114] BCM2708: Migrate to the Common Clock Framework +Subject: [PATCH 049/109] BCM2708: Migrate to the Common Clock Framework As part of moving towards using Device Tree, the Common Clock Framework has to be used instead of the BCM2708 clock implementation. @@ -109341,10 +109380,10 @@ Signed-off-by: Noralf Tronnes delete mode 100644 arch/arm/mach-bcm2708/clock.h diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index ba9c18e..0f2287f 100644 +index f607868..96f98ce 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -385,11 +385,10 @@ config ARCH_BCM2708 +@@ -371,11 +371,10 @@ config ARCH_BCM2708 bool "Broadcom BCM2708 family" select CPU_V6 select ARM_AMBA @@ -109590,10 +109629,10 @@ index 5f9d725..0000000 - unsigned long rate; -}; -From f6459ef9602c16b02516be4848a77d30ce75d168 Mon Sep 17 00:00:00 2001 +From c2eb05044f3740a2183b5b39203e970e760a07c6 Mon Sep 17 00:00:00 2001 From: notro Date: Wed, 9 Jul 2014 14:46:08 +0200 -Subject: [PATCH 049/114] BCM2708: Add core Device Tree support +Subject: [PATCH 050/109] BCM2708: Add core Device Tree support Add the bare minimum needed to boot BCM2708 from a Device Tree. @@ -109617,7 +109656,7 @@ Signed-off-by: Noralf Tronnes notro@tronnes.org create mode 100644 arch/arm/boot/dts/bcm2708.dtsi diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 38c89ca..c727f71 100644 +index 91bd5bd..d177201 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -53,6 +53,7 @@ dtb-$(CONFIG_ARCH_AT91) += at91-sama5d4ek.dtb @@ -109626,8 +109665,8 @@ index 38c89ca..c727f71 100644 dtb-$(CONFIG_ARCH_AXXIA) += axm5516-amarillo.dtb +dtb-$(CONFIG_BCM2708_DT) += bcm2708-rpi-b.dtb dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b.dtb - dtb-$(CONFIG_ARCH_BCM_5301X) += bcm4708-netgear-r6250.dtb - dtb-$(CONFIG_ARCH_BCM_63XX) += bcm963138dvt.dtb + dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b-plus.dtb + dtb-$(CONFIG_ARCH_BCM_5301X) += \ diff --git a/arch/arm/boot/dts/bcm2708-rpi-b.dts b/arch/arm/boot/dts/bcm2708-rpi-b.dts new file mode 100644 index 0000000..e319c8e @@ -109758,10 +109797,10 @@ index ef12cb8..747e27a 100644 module_param(boardrev, uint, 0644); -From 6be3809614db2d52724eb4b5193c27d2466142be Mon Sep 17 00:00:00 2001 +From fa27429ce9578e756197cf04b9835603f57dfb8f Mon Sep 17 00:00:00 2001 From: notro Date: Wed, 9 Jul 2014 14:47:48 +0200 -Subject: [PATCH 050/114] BCM2708: armctrl: Add IRQ Device Tree support +Subject: [PATCH 051/109] BCM2708: armctrl: Add IRQ Device Tree support Add Device Tree IRQ support for BCM2708. Usage is the same as for irq-bcm2835. @@ -109931,10 +109970,10 @@ index 96fa9b9..74bacb3 100644 return 0; } -From fff70fcc73e09e86d46f87dd44459870f15423b2 Mon Sep 17 00:00:00 2001 +From 276be851fc57b1badfef77e9bd067fd51875e462 Mon Sep 17 00:00:00 2001 From: notro Date: Thu, 10 Jul 2014 13:59:47 +0200 -Subject: [PATCH 051/114] BCM2708: use pinctrl-bcm2835 +Subject: [PATCH 052/109] BCM2708: use pinctrl-bcm2835 Use pinctrl-bcm2835 instead of the pinctrl-bcm2708 and bcm2708_gpio combination. @@ -109998,7 +110037,7 @@ index 747e27a..0e5bd43 100644 #if defined(CONFIG_W1_MASTER_GPIO) || defined(CONFIG_W1_MASTER_GPIO_MODULE) w1_gpio_pdata.pin = w1_gpio_pin; diff --git a/drivers/pinctrl/pinctrl-bcm2835.c b/drivers/pinctrl/pinctrl-bcm2835.c -index eabba02..962e180 100644 +index 9aa8a3f..9d1149e 100644 --- a/drivers/pinctrl/pinctrl-bcm2835.c +++ b/drivers/pinctrl/pinctrl-bcm2835.c @@ -382,7 +382,7 @@ static struct gpio_chip bcm2835_gpio_chip = { @@ -110011,10 +110050,10 @@ index eabba02..962e180 100644 .can_sleep = false, }; -From 5de6baef9b5d9e3a84e0c3752cfb7eaef2eb1a0f Mon Sep 17 00:00:00 2001 +From 921c71ddf380c8fc028d90b8807ef4ace70086e6 Mon Sep 17 00:00:00 2001 From: notro Date: Sun, 27 Jul 2014 20:12:58 +0200 -Subject: [PATCH 052/114] spi: bcm2708: add device tree support +Subject: [PATCH 053/109] spi: bcm2708: add device tree support Add DT support to driver and add to .dtsi file. Setup pins and spidev in .dts file. @@ -110178,7 +110217,7 @@ index 0e5bd43..a2069f8 100644 } diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig -index 71b4741..a5238ab 100644 +index ae4ea48..9f202dd 100644 --- a/drivers/spi/Kconfig +++ b/drivers/spi/Kconfig @@ -77,7 +77,7 @@ config SPI_ATMEL @@ -110221,10 +110260,10 @@ index 349d21f..041b5e2 100644 .probe = bcm2708_spi_probe, .remove = bcm2708_spi_remove, -From 772f3f8c0c321b2817d35f48d553db023ead2d90 Mon Sep 17 00:00:00 2001 +From e3bc961a920dfffd560efdc592d3c3a28b92630d Mon Sep 17 00:00:00 2001 From: notro Date: Tue, 29 Jul 2014 11:04:49 +0200 -Subject: [PATCH 053/114] i2c: bcm2708: add device tree support +Subject: [PATCH 054/109] i2c: bcm2708: add device tree support Add DT support to driver and add to .dtsi file. Setup pins in .dts file. @@ -110375,10 +110414,10 @@ index a2069f8..b45f327 100644 bcm_register_device(&bcm2835_hwmon_device); bcm_register_device(&bcm2835_thermal_device); diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig -index 3d3db41..d30a986 100644 +index 68362ab..7b7ba6f 100644 --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig -@@ -361,7 +361,7 @@ config I2C_AXXIA +@@ -362,7 +362,7 @@ config I2C_AXXIA config I2C_BCM2835 tristate "Broadcom BCM2835 I2C controller" @@ -110448,10 +110487,10 @@ index 7d385a3..526129b 100644 .probe = bcm2708_i2c_probe, .remove = bcm2708_i2c_remove, -From 4c2238bfb5f0345f889d2f22d52601eb76f62eaf Mon Sep 17 00:00:00 2001 +From dd70f130500963aafafcee3d5dc1564c51363674 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 14 Jul 2014 22:02:09 +0100 -Subject: [PATCH 054/114] hid: Reduce default mouse polling interval to 60Hz +Subject: [PATCH 055/109] hid: Reduce default mouse polling interval to 60Hz Reduces overhead when using X --- @@ -110459,7 +110498,7 @@ Reduces overhead when using X 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/drivers/hid/usbhid/hid-core.c b/drivers/hid/usbhid/hid-core.c -index ca6849a..4671921 100644 +index bfbe1be..a738b25 100644 --- a/drivers/hid/usbhid/hid-core.c +++ b/drivers/hid/usbhid/hid-core.c @@ -49,7 +49,7 @@ @@ -110471,7 +110510,7 @@ index ca6849a..4671921 100644 module_param_named(mousepoll, hid_mousepoll_interval, uint, 0644); MODULE_PARM_DESC(mousepoll, "Polling interval of mice"); -@@ -1079,8 +1079,12 @@ static int usbhid_start(struct hid_device *hid) +@@ -1090,8 +1090,12 @@ static int usbhid_start(struct hid_device *hid) } /* Change the polling interval of mice. */ @@ -110487,10 +110526,10 @@ index ca6849a..4671921 100644 ret = -ENOMEM; if (usb_endpoint_dir_in(endpoint)) { -From 19e17e411eb8eb971ee963f083ec8446dcd0538e Mon Sep 17 00:00:00 2001 +From a87afb0647b5f16ab95189f1048c3e9098c59d04 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 24 Jul 2014 21:24:03 +0100 -Subject: [PATCH 055/114] usb: core: make overcurrent messages more prominent +Subject: [PATCH 056/109] usb: core: make overcurrent messages more prominent Hub overcurrent messages are more serious than "debug". Increase loglevel. --- @@ -110498,10 +110537,10 @@ Hub overcurrent messages are more serious than "debug". Increase loglevel. 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c -index b649fef..5f8d914 100644 +index aeb50bb..21844a7 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c -@@ -4923,7 +4923,7 @@ static void port_event(struct usb_hub *hub, int port1) +@@ -4921,7 +4921,7 @@ static void port_event(struct usb_hub *hub, int port1) if (portchange & USB_PORT_STAT_C_OVERCURRENT) { u16 status = 0, unused; @@ -110511,10 +110550,10 @@ index b649fef..5f8d914 100644 USB_PORT_FEAT_C_OVER_CURRENT); msleep(100); /* Cool down */ -From 2b68b9460155e22c8ddcdc10a485640b9b32301b Mon Sep 17 00:00:00 2001 +From b3c65bc61773703cd8993ffb457f23a85c7487d0 Mon Sep 17 00:00:00 2001 From: Tim Gover Date: Tue, 22 Jul 2014 15:41:04 +0100 -Subject: [PATCH 056/114] vcsm: VideoCore shared memory service for BCM2835 +Subject: [PATCH 057/109] vcsm: VideoCore shared memory service for BCM2835 Add experimental support for the VideoCore shared memory service. This allows user processes to allocate memory from VideoCore's @@ -114848,10 +114887,10 @@ index 0000000..da1c523 +MODULE_DESCRIPTION("VideoCore SharedMemory Driver"); +MODULE_LICENSE("GPL v2"); -From 48c48c4437603bad79eb848ac03b21a86cc3bb90 Mon Sep 17 00:00:00 2001 +From 8d8dc6295c000c8c7b0e56cbb74b48eb4649ee3d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Thu, 7 Aug 2014 02:03:50 +0100 -Subject: [PATCH 057/114] Revert "ARM: dma: Use dma_pfn_offset for dma address +Subject: [PATCH 058/109] Revert "ARM: dma: Use dma_pfn_offset for dma address translation" This reverts commit 6ce0d20016925d031f1e24d64302e4c976d7cec6. @@ -114860,7 +114899,7 @@ This reverts commit 6ce0d20016925d031f1e24d64302e4c976d7cec6. 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/arch/arm/include/asm/dma-mapping.h b/arch/arm/include/asm/dma-mapping.h -index 85738b2..9477f09 100644 +index b52101d..f5572d9 100644 --- a/arch/arm/include/asm/dma-mapping.h +++ b/arch/arm/include/asm/dma-mapping.h @@ -58,37 +58,21 @@ static inline int dma_set_mask(struct device *dev, u64 mask) @@ -114903,25 +114942,25 @@ index 85738b2..9477f09 100644 } -From 7da0618348811dbb38825457f63e12d3b8ba943f Mon Sep 17 00:00:00 2001 +From 4c9c17fcc1f351cc06268e4902d0dee92fe1a68a Mon Sep 17 00:00:00 2001 From: gellert Date: Fri, 15 Aug 2014 16:35:06 +0100 -Subject: [PATCH 058/114] MMC: added alternative MMC driver +Subject: [PATCH 059/109] MMC: added alternative MMC driver --- arch/arm/configs/bcmrpi_defconfig | 2 + arch/arm/mach-bcm2708/bcm2708.c | 31 + drivers/mmc/host/Kconfig | 40 +- drivers/mmc/host/Makefile | 1 + - drivers/mmc/host/bcm2835-mmc.c | 1557 +++++++++++++++++++++++++++++++++++++ - 5 files changed, 1620 insertions(+), 11 deletions(-) + drivers/mmc/host/bcm2835-mmc.c | 1553 +++++++++++++++++++++++++++++++++++++ + 5 files changed, 1616 insertions(+), 11 deletions(-) create mode 100644 drivers/mmc/host/bcm2835-mmc.c diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index f15a4b9..c363a10 100644 +index 7ba662a..0db8119 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -908,6 +908,8 @@ CONFIG_MMC=y +@@ -938,6 +938,8 @@ CONFIG_MMC=y CONFIG_MMC_BLOCK_MINORS=32 CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_PLTFM=y @@ -114980,7 +115019,7 @@ index b45f327..5ff1299 100644 for (i = 0; i < ARRAY_SIZE(bcm2708_alsa_devices); i++) bcm_register_device(&bcm2708_alsa_devices[i]); diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig -index 1386065..977aeef 100644 +index 2d6fbdd..b6077b5 100644 --- a/drivers/mmc/host/Kconfig +++ b/drivers/mmc/host/Kconfig @@ -281,17 +281,6 @@ config MMC_SDHCI_BCM_KONA @@ -115038,7 +115077,7 @@ index 1386065..977aeef 100644 tristate "TI OMAP Multimedia Card Interface support" depends on ARCH_OMAP diff --git a/drivers/mmc/host/Makefile b/drivers/mmc/host/Makefile -index b09ecfb..7b17387 100644 +index f7b0a77..378aed9 100644 --- a/drivers/mmc/host/Makefile +++ b/drivers/mmc/host/Makefile @@ -17,6 +17,7 @@ obj-$(CONFIG_MMC_SDHCI_PXAV2) += sdhci-pxav2.o @@ -115051,10 +115090,10 @@ index b09ecfb..7b17387 100644 obj-$(CONFIG_MMC_OMAP) += omap.o diff --git a/drivers/mmc/host/bcm2835-mmc.c b/drivers/mmc/host/bcm2835-mmc.c new file mode 100644 -index 0000000..cefba7c +index 0000000..92febc3 --- /dev/null +++ b/drivers/mmc/host/bcm2835-mmc.c -@@ -0,0 +1,1557 @@ +@@ -0,0 +1,1553 @@ +/* + * BCM2835 MMC host driver. + * @@ -115184,15 +115223,11 @@ index 0000000..cefba7c + int max_delay; /* maximum length of time spent waiting */ + + int flags; /* Host attributes */ -+#define SDHCI_USE_SDMA (1<<0) /* Host is SDMA capable */ -+#define SDHCI_USE_ADMA (1<<1) /* Host is ADMA capable */ +#define SDHCI_REQ_USE_DMA (1<<2) /* Use DMA for this req. */ +#define SDHCI_DEVICE_DEAD (1<<3) /* Device unresponsive */ +#define SDHCI_AUTO_CMD12 (1<<6) /* Auto CMD12 support */ +#define SDHCI_AUTO_CMD23 (1<<7) /* Auto CMD23 support */ -+#define SDHCI_PV_ENABLED (1<<8) /* Preset value enabled */ +#define SDHCI_SDIO_IRQ_ENABLED (1<<9) /* SDIO irq enabled */ -+#define SDHCI_USE_PLATDMA (1<<12) /* Host uses 3rd party DMA */ +}; + + @@ -116613,10 +116648,10 @@ index 0000000..cefba7c +MODULE_LICENSE("GPL v2"); +MODULE_AUTHOR("Gellert Weisz"); -From 06c752756a452a0c59447836edce57ef7393be5c Mon Sep 17 00:00:00 2001 +From 8e777a27499279a8351836a80d4df838264dc0e3 Mon Sep 17 00:00:00 2001 From: P33M Date: Tue, 13 Jan 2015 17:12:18 +0000 -Subject: [PATCH 059/114] mmc: Disable CMD23 transfers on all cards +Subject: [PATCH 060/109] mmc: Disable CMD23 transfers on all cards Pending wire-level investigation of these types of transfers and associated errors on bcm2835-mmc, disable for now. Fallback of @@ -116642,10 +116677,10 @@ index dd1d1e0..f472082 100644 } EXPORT_SYMBOL(mmc_fixup_device); -From fb7a1cc51aee2d66232d3a170e1343dfbb7b3485 Mon Sep 17 00:00:00 2001 +From a869a7389e5a734bbbc42c70c3950b2f49cc3591 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Mon, 4 Aug 2014 10:06:56 +0200 -Subject: [PATCH 060/114] Added support for HiFiBerry DAC+ +Subject: [PATCH 061/109] Added support for HiFiBerry DAC+ The driver is based on the HiFiBerry DAC driver. However HiFiBerry DAC+ uses a different codec chip (PCM5122), therefore a new driver is necessary. @@ -116659,10 +116694,10 @@ a different codec chip (PCM5122), therefore a new driver is necessary. create mode 100644 sound/soc/bcm/hifiberry_dacplus.c diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index c363a10..28547eb 100644 +index 0db8119..a8c60cf 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -756,6 +756,7 @@ CONFIG_SND_USB_6FIRE=m +@@ -782,6 +782,7 @@ CONFIG_SND_USB_6FIRE=m CONFIG_SND_SOC=m CONFIG_SND_BCM2708_SOC_I2S=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC=m @@ -116869,10 +116904,10 @@ index 0000000..c63387b +MODULE_DESCRIPTION("ASoC Driver for HiFiBerry DAC+"); +MODULE_LICENSE("GPL v2"); -From 709288ac793d8a070f33c36e76ca03281fa6b417 Mon Sep 17 00:00:00 2001 +From 45fa955cf4e5d54a01c807c1a18cb0828bd45b9a Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Mon, 4 Aug 2014 11:09:58 +0200 -Subject: [PATCH 061/114] Added driver for HiFiBerry Amp amplifier add-on board +Subject: [PATCH 062/109] Added driver for HiFiBerry Amp amplifier add-on board The driver contains a low-level hardware driver for the TAS5713 and the drivers for the Raspberry Pi I2S subsystem. @@ -116892,10 +116927,10 @@ drivers for the Raspberry Pi I2S subsystem. create mode 100644 sound/soc/codecs/tas5713.h diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 28547eb..997e1f3 100644 +index a8c60cf..8381041 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -758,6 +758,7 @@ CONFIG_SND_BCM2708_SOC_I2S=m +@@ -784,6 +784,7 @@ CONFIG_SND_BCM2708_SOC_I2S=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DACPLUS=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI=m @@ -117090,19 +117125,19 @@ index 0000000..1e87ee0 +MODULE_DESCRIPTION("ASoC driver for HiFiBerry-AMP"); +MODULE_LICENSE("GPL v2"); diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig -index 3c236a6..83c55f8 100644 +index c32ecbe..664dc4d 100644 --- a/sound/soc/codecs/Kconfig +++ b/sound/soc/codecs/Kconfig -@@ -105,6 +105,7 @@ config SND_SOC_ALL_CODECS - select SND_SOC_TAS5086 if I2C +@@ -107,6 +107,7 @@ config SND_SOC_ALL_CODECS + select SND_SOC_TFA9879 if I2C select SND_SOC_TLV320AIC23_I2C if I2C select SND_SOC_TLV320AIC23_SPI if SPI_MASTER + select SND_SOC_TAS5713 if I2C select SND_SOC_TLV320AIC26 if SPI_MASTER select SND_SOC_TLV320AIC31XX if I2C select SND_SOC_TLV320AIC32X4 if I2C -@@ -585,6 +586,9 @@ config SND_SOC_TAS5086 - tristate "Texas Instruments TAS5086 speaker amplifier" +@@ -612,6 +613,9 @@ config SND_SOC_TFA9879 + tristate "NXP Semiconductors TFA9879 amplifier" depends on I2C +config SND_SOC_TAS5713 @@ -117112,21 +117147,21 @@ index 3c236a6..83c55f8 100644 tristate diff --git a/sound/soc/codecs/Makefile b/sound/soc/codecs/Makefile -index 2a7f823..ca76a2b 100644 +index 1548bf33..756f628 100644 --- a/sound/soc/codecs/Makefile +++ b/sound/soc/codecs/Makefile -@@ -103,6 +103,7 @@ snd-soc-sta350-objs := sta350.o - snd-soc-sta529-objs := sta529.o +@@ -107,6 +107,7 @@ snd-soc-sta529-objs := sta529.o snd-soc-stac9766-objs := stac9766.o snd-soc-tas5086-objs := tas5086.o + snd-soc-tfa9879-objs := tfa9879.o +snd-soc-tas5713-objs := tas5713.o snd-soc-tlv320aic23-objs := tlv320aic23.o snd-soc-tlv320aic23-i2c-objs := tlv320aic23-i2c.o snd-soc-tlv320aic23-spi-objs := tlv320aic23-spi.o -@@ -278,6 +279,7 @@ obj-$(CONFIG_SND_SOC_STA529) += snd-soc-sta529.o - obj-$(CONFIG_SND_SOC_STAC9766) += snd-soc-stac9766.o +@@ -287,6 +288,7 @@ obj-$(CONFIG_SND_SOC_STAC9766) += snd-soc-stac9766.o obj-$(CONFIG_SND_SOC_TAS2552) += snd-soc-tas2552.o obj-$(CONFIG_SND_SOC_TAS5086) += snd-soc-tas5086.o + obj-$(CONFIG_SND_SOC_TFA9879) += snd-soc-tfa9879.o +obj-$(CONFIG_SND_SOC_TAS5713) += snd-soc-tas5713.o obj-$(CONFIG_SND_SOC_TLV320AIC23) += snd-soc-tlv320aic23.o obj-$(CONFIG_SND_SOC_TLV320AIC23_I2C) += snd-soc-tlv320aic23-i2c.o @@ -117716,10 +117751,10 @@ index 0000000..8f019e0 + +#endif /* _TAS5713_H */ -From 49e011c979aee23801198617a0052b0b087583a6 Mon Sep 17 00:00:00 2001 +From 861c08aec9f2f1c1a22b3d7d8ae19fec798f7832 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 13 Oct 2014 11:47:53 +0100 -Subject: [PATCH 062/114] Improve __copy_to_user and __copy_from_user +Subject: [PATCH 063/109] Improve __copy_to_user and __copy_from_user performance Provide a __copy_from_user that uses memcpy. On BCM2708, use @@ -117972,10 +118007,10 @@ index 0000000..5d4bda1 +92: +.endm diff --git a/arch/arm/lib/copy_from_user.S b/arch/arm/lib/copy_from_user.S -index 66a477a..3faddf7 100644 +index 7a235b9..8aff879 100644 --- a/arch/arm/lib/copy_from_user.S +++ b/arch/arm/lib/copy_from_user.S -@@ -84,11 +84,13 @@ +@@ -89,11 +89,13 @@ .text @@ -119243,10 +119278,10 @@ index 3e58d71..0622891 100644 static unsigned long noinline __clear_user_memset(void __user *addr, unsigned long n) -From 37fd085e3449fabd2d976d671ebf2a6c631c9afd Mon Sep 17 00:00:00 2001 +From 118e894115980f246a4e092d51c15fa8fa17b242 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 1 Sep 2014 16:35:56 +0100 -Subject: [PATCH 063/114] bcm2708: Allow option card devices to be configured +Subject: [PATCH 064/109] bcm2708: Allow option card devices to be configured via DT If the kernel is built with Device Tree support, and if a DT blob @@ -119258,10 +119293,9 @@ support code with each new device. arch/arm/mach-bcm2708/bcm2708.c | 70 ++++++++++++++++++++--------------------- drivers/dma/bcm2708-dmaengine.c | 14 ++++----- drivers/mmc/host/bcm2835-mmc.c | 24 +++++++------- - drivers/of/fdt.c | 6 +++- sound/soc/bcm/bcm2708-i2s.c | 29 +++++++++++------ sound/soc/bcm/bcm2835-i2s.c | 1 + - 6 files changed, 80 insertions(+), 64 deletions(-) + 5 files changed, 75 insertions(+), 63 deletions(-) diff --git a/arch/arm/mach-bcm2708/bcm2708.c b/arch/arm/mach-bcm2708/bcm2708.c index 5f6a1fa..2c6a29d 100644 @@ -119507,7 +119541,7 @@ index 10463db..3f9be02 100644 static struct platform_driver bcm2835_dma_driver = { diff --git a/drivers/mmc/host/bcm2835-mmc.c b/drivers/mmc/host/bcm2835-mmc.c -index cefba7c..34d6167 100644 +index 92febc3..79808cb 100644 --- a/drivers/mmc/host/bcm2835-mmc.c +++ b/drivers/mmc/host/bcm2835-mmc.c @@ -42,7 +42,7 @@ @@ -119519,7 +119553,7 @@ index cefba7c..34d6167 100644 #define BCM2835_CLOCK_FREQ 250000000 #endif -@@ -662,7 +662,7 @@ void bcm2835_mmc_send_command(struct bcm2835_host *host, struct mmc_command *cmd +@@ -658,7 +658,7 @@ void bcm2835_mmc_send_command(struct bcm2835_host *host, struct mmc_command *cmd } timeout = jiffies; @@ -119528,7 +119562,7 @@ index cefba7c..34d6167 100644 if (!cmd->data && cmd->busy_timeout > 9000) timeout += DIV_ROUND_UP(cmd->busy_timeout, 1000) * HZ + HZ; else -@@ -962,7 +962,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) +@@ -958,7 +958,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) struct bcm2835_host *host = dev_id; u32 intmask, mask, unexpected = 0; int max_loops = 16; @@ -119537,7 +119571,7 @@ index cefba7c..34d6167 100644 int cardint = 0; #endif -@@ -993,7 +993,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) +@@ -989,7 +989,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) mmc_hostname(host->mmc)); if (intmask & SDHCI_INT_CARD_INT) { @@ -119546,7 +119580,7 @@ index cefba7c..34d6167 100644 cardint = 1; #else bcm2835_mmc_enable_sdio_irq_nolock(host, false); -@@ -1026,7 +1026,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) +@@ -1022,7 +1022,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) bcm2835_mmc_dumpregs(host); } @@ -119555,7 +119589,7 @@ index cefba7c..34d6167 100644 if (cardint) mmc_signal_sdio_irq(host->mmc); #endif -@@ -1034,7 +1034,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) +@@ -1030,7 +1030,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) return result; } @@ -119564,7 +119598,7 @@ index cefba7c..34d6167 100644 static irqreturn_t bcm2835_mmc_thread_irq(int irq, void *dev_id) { struct bcm2835_host *host = dev_id; -@@ -1288,7 +1288,7 @@ int bcm2835_mmc_add_host(struct bcm2835_host *host) +@@ -1284,7 +1284,7 @@ int bcm2835_mmc_add_host(struct bcm2835_host *host) /* SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK */ host->timeout_clk = mmc->f_max / 1000; @@ -119573,7 +119607,7 @@ index cefba7c..34d6167 100644 mmc->max_busy_timeout = (1 << 27) / host->timeout_clk; #endif /* host controller capabilities */ -@@ -1345,7 +1345,7 @@ int bcm2835_mmc_add_host(struct bcm2835_host *host) +@@ -1341,7 +1341,7 @@ int bcm2835_mmc_add_host(struct bcm2835_host *host) init_waitqueue_head(&host->buf_ready_int); bcm2835_mmc_init(host, 0); @@ -119582,7 +119616,7 @@ index cefba7c..34d6167 100644 ret = request_irq(host->irq, bcm2835_mmc_irq, 0 /*IRQF_SHARED*/, mmc_hostname(mmc), host); #else -@@ -1374,7 +1374,7 @@ int bcm2835_mmc_add_host(struct bcm2835_host *host) +@@ -1370,7 +1370,7 @@ int bcm2835_mmc_add_host(struct bcm2835_host *host) static int bcm2835_mmc_probe(struct platform_device *pdev) { struct device *dev = &pdev->dev; @@ -119591,7 +119625,7 @@ index cefba7c..34d6167 100644 struct device_node *node = dev->of_node; struct clk *clk; #endif -@@ -1383,7 +1383,7 @@ static int bcm2835_mmc_probe(struct platform_device *pdev) +@@ -1379,7 +1379,7 @@ static int bcm2835_mmc_probe(struct platform_device *pdev) int ret; struct mmc_host *mmc; @@ -119600,7 +119634,7 @@ index cefba7c..34d6167 100644 dma_cap_mask_t mask; #endif -@@ -1408,7 +1408,7 @@ static int bcm2835_mmc_probe(struct platform_device *pdev) +@@ -1404,7 +1404,7 @@ static int bcm2835_mmc_probe(struct platform_device *pdev) host->phys_addr = iomem->start + BCM2835_VCMMU_SHIFT; @@ -119609,7 +119643,7 @@ index cefba7c..34d6167 100644 #ifndef FORCE_PIO dma_cap_zero(mask); /* we don't care about the channel, any would work */ -@@ -1458,7 +1458,7 @@ static int bcm2835_mmc_probe(struct platform_device *pdev) +@@ -1454,7 +1454,7 @@ static int bcm2835_mmc_probe(struct platform_device *pdev) } @@ -119618,24 +119652,6 @@ index cefba7c..34d6167 100644 mmc->caps |= MMC_CAP_4_BIT_DATA; #else mmc_of_parse(mmc); -diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c -index d134710..2e2b6d0 100644 ---- a/drivers/of/fdt.c -+++ b/drivers/of/fdt.c -@@ -1083,8 +1083,12 @@ static struct debugfs_blob_wrapper flat_dt_blob; - - static int __init of_flat_dt_debugfs_export_fdt(void) - { -- struct dentry *d = debugfs_create_dir("device-tree", NULL); -+ struct dentry *d; - -+ if (!initial_boot_params) -+ return -ENOENT; -+ -+ d = debugfs_create_dir("device-tree", NULL); - if (!d) - return -ENOENT; - diff --git a/sound/soc/bcm/bcm2708-i2s.c b/sound/soc/bcm/bcm2708-i2s.c index 0b5322a..a3b65dc 100644 --- a/sound/soc/bcm/bcm2708-i2s.c @@ -119690,7 +119706,7 @@ index 0b5322a..a3b65dc 100644 }; diff --git a/sound/soc/bcm/bcm2835-i2s.c b/sound/soc/bcm/bcm2835-i2s.c -index 2685fe4..e2c61d1 100644 +index 03fa1cb..c816526 100644 --- a/sound/soc/bcm/bcm2835-i2s.c +++ b/sound/soc/bcm/bcm2835-i2s.c @@ -861,6 +861,7 @@ static const struct of_device_id bcm2835_i2s_of_match[] = { @@ -119702,13 +119718,13 @@ index 2685fe4..e2c61d1 100644 static struct platform_driver bcm2835_i2s_driver = { .probe = bcm2835_i2s_probe, -From 5f17e24bea60b696815d2c6cb578e1e23f61cd57 Mon Sep 17 00:00:00 2001 +From 2da679d67d7dd011f01649577c7bae50186f0363 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 12 Nov 2014 17:07:02 +0000 -Subject: [PATCH 064/114] Adding Device Tree support for some RPi audio cards +Subject: [PATCH 065/109] Adding Device Tree support for some RPi audio cards --- - arch/arm/boot/dts/Makefile | 2 + + arch/arm/boot/dts/Makefile | 4 ++ arch/arm/boot/dts/bcm2708-rpi-b-plus.dts | 81 +++++++++++++++++++++++++ arch/arm/boot/dts/bcm2708-rpi-b.dts | 19 +++++- arch/arm/boot/dts/bcm2708.dtsi | 18 ++++-- @@ -119722,7 +119738,7 @@ Subject: [PATCH 064/114] Adding Device Tree support for some RPi audio cards sound/soc/bcm/hifiberry_digi.c | 22 +++++++ sound/soc/bcm/iqaudio-dac.c | 16 +++++ sound/soc/codecs/pcm5102a.c | 7 +++ - 14 files changed, 393 insertions(+), 6 deletions(-) + 14 files changed, 395 insertions(+), 6 deletions(-) create mode 100644 arch/arm/boot/dts/bcm2708-rpi-b-plus.dts create mode 100644 arch/arm/boot/dts/hifiberry-dac-overlay.dts create mode 100644 arch/arm/boot/dts/hifiberry-dacplus-overlay.dts @@ -119731,7 +119747,7 @@ Subject: [PATCH 064/114] Adding Device Tree support for some RPi audio cards create mode 100644 arch/arm/boot/dts/iqaudio-dacplus-overlay.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index c727f71..adaebbb 100644 +index d177201..76e5f96 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -54,6 +54,7 @@ dtb-$(CONFIG_ARCH_AT91) += at91-sama5d4ek.dtb @@ -119740,16 +119756,18 @@ index c727f71..adaebbb 100644 dtb-$(CONFIG_BCM2708_DT) += bcm2708-rpi-b.dtb +dtb-$(CONFIG_BCM2708_DT) += bcm2708-rpi-b-plus.dtb dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b.dtb - dtb-$(CONFIG_ARCH_BCM_5301X) += bcm4708-netgear-r6250.dtb - dtb-$(CONFIG_ARCH_BCM_63XX) += bcm963138dvt.dtb -@@ -520,6 +521,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt6589-aquaris5.dtb + dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b-plus.dtb + dtb-$(CONFIG_ARCH_BCM_5301X) += \ +@@ -557,6 +558,9 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt6589-aquaris5.dtb \ + mt8127-moose.dtb \ + mt8135-evbp1.dtb - targets += dtbs dtbs_install - targets += $(dtb-y) ++targets += dtbs dtbs_install ++targets += $(dtb-y) + endif - # *.dtb used to be generated in the directory above. Clean out the + always := $(dtb-y) diff --git a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts new file mode 100644 index 0000000..983c23f @@ -120330,20 +120348,20 @@ index 126f1e9..7c6598e 100644 }; -From e4b144b2bd248e6b082457ae0f950ca1b25c0e6d Mon Sep 17 00:00:00 2001 +From 5248d61fbed6a412104089d671ac2c864a76aa79 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 5 Dec 2014 17:26:26 +0000 -Subject: [PATCH 065/114] fdt: Add support for the CONFIG_CMDLINE_EXTEND option +Subject: [PATCH 066/109] fdt: Add support for the CONFIG_CMDLINE_EXTEND option --- drivers/of/fdt.c | 29 ++++++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c -index 2e2b6d0..badc6a3 100644 +index 5100742..d6d944c 100644 --- a/drivers/of/fdt.c +++ b/drivers/of/fdt.c -@@ -901,19 +901,38 @@ int __init early_init_dt_scan_chosen(unsigned long node, const char *uname, +@@ -915,19 +915,38 @@ int __init early_init_dt_scan_chosen(unsigned long node, const char *uname, /* Retrieve command line */ p = of_get_flat_dt_prop(node, "bootargs", &l); @@ -120388,17 +120406,17 @@ index 2e2b6d0..badc6a3 100644 pr_debug("Command line is: %s\n", (char*)data); -From 42fd2d3e952c0a2c1455190eb208e5544b73da67 Mon Sep 17 00:00:00 2001 +From e81caed711b76987fa7764e67896ac244c5b9974 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 25 Nov 2014 13:39:03 +0000 -Subject: [PATCH 066/114] config: Enable device tree +Subject: [PATCH 067/109] config: Enable device tree --- arch/arm/configs/bcmrpi_defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 997e1f3..2cd8227 100644 +index 8381041..c1621fa 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig @@ -39,6 +39,7 @@ CONFIG_PARTITION_ADVANCED=y @@ -120410,10 +120428,10 @@ index 997e1f3..2cd8227 100644 CONFIG_AEABI=y CONFIG_CLEANCACHE=y -From 95560180ed73193d916519d0c949cd4816138be3 Mon Sep 17 00:00:00 2001 +From 3b2f8e42a35ab1ca8c7702bc1a8c6b63aa3def82 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 16 Dec 2014 10:23:48 +0000 -Subject: [PATCH 067/114] DT: Add overrides to enable i2c0, i2c1, spi and i2s +Subject: [PATCH 068/109] DT: Add overrides to enable i2c0, i2c1, spi and i2s --- arch/arm/boot/dts/bcm2708-rpi-b-plus.dts | 10 ++++++++++ @@ -120457,10 +120475,10 @@ index d8c6d15..167b22b 100644 + }; +}; -From f3c1830096661e270f11f2a33ffb7274f50c90a6 Mon Sep 17 00:00:00 2001 +From 1e78b4625b77406af9cd50eef75ce67caf39a013 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 18 Dec 2014 16:48:32 +0000 -Subject: [PATCH 068/114] lirc-rpi: Add device tree support, and a suitable +Subject: [PATCH 069/109] lirc-rpi: Add device tree support, and a suitable overlay The overlay supports DT parameters that match the old module @@ -120754,10 +120772,10 @@ index c688364..cd66ca2 100644 if (result < 0) goto exit_rpi; -From 31b85ba13aa394c98f2d6955b55f3f9a0623c14d Mon Sep 17 00:00:00 2001 +From 31368425270f59c0cb73143bf8bbdbb4ba8f380c Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 6 Jan 2015 12:06:55 +0000 -Subject: [PATCH 069/114] Fix the activity LED in DT mode +Subject: [PATCH 070/109] Fix the activity LED in DT mode Add a "leds" node to the base DTBs, and a subnode for the activity LED. You can change the LED function like this: @@ -120889,10 +120907,10 @@ index 6b36128..1b56cb5 100644 clocks { -From 2fea9b14e39bd6c64e362ba7d170b67d09206987 Mon Sep 17 00:00:00 2001 +From 16c5ca7134e6e1fe86d9127dc4d43005ffd50b27 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 15 Jan 2015 10:39:06 +0000 -Subject: [PATCH 070/114] Adding w1-gpio device tree overlays +Subject: [PATCH 071/109] Adding w1-gpio device tree overlays N.B. Requires firmware supporting multi-target overrides @@ -121002,172 +121020,10 @@ index 0000000..b3e97c2 + }; +}; -From 960ce56201a7521051a2dbf84ab5e3acb95d5ce3 Mon Sep 17 00:00:00 2001 -From: popcornmix -Date: Wed, 21 Jan 2015 22:46:02 +0000 -Subject: [PATCH 071/114] config: Enable CONFIG_PPS - ---- - arch/arm/configs/bcmrpi_defconfig | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 2cd8227..36aca2b 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -544,6 +544,9 @@ CONFIG_I2C_BCM2708=m - CONFIG_SPI=y - CONFIG_SPI_BCM2708=m - CONFIG_SPI_SPIDEV=y -+CONFIG_PPS=m -+CONFIG_PPS_CLIENT_LDISC=m -+CONFIG_PPS_CLIENT_GPIO=m - CONFIG_GPIO_SYSFS=y - CONFIG_GPIO_ARIZONA=m - CONFIG_W1=m - -From 946fa2807124fa8ef981f4b6c47abe1d587b5cad Mon Sep 17 00:00:00 2001 -From: popcornmix -Date: Wed, 21 Jan 2015 23:47:33 +0000 -Subject: [PATCH 072/114] config: Add CONFIG_IP_NF options - ---- - arch/arm/configs/bcmrpi_defconfig | 9 +++++++-- - 1 file changed, 7 insertions(+), 2 deletions(-) - -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 36aca2b..665b01e 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -208,13 +208,16 @@ CONFIG_IP_VS_NQ=m - CONFIG_IP_VS_FTP=m - CONFIG_IP_VS_PE_SIP=m - CONFIG_NF_CONNTRACK_IPV4=m --CONFIG_NF_NAT_IPV4=m - CONFIG_IP_NF_IPTABLES=m - CONFIG_IP_NF_MATCH_AH=m - CONFIG_IP_NF_MATCH_ECN=m - CONFIG_IP_NF_MATCH_TTL=m - CONFIG_IP_NF_FILTER=m - CONFIG_IP_NF_TARGET_REJECT=m -+CONFIG_IP_NF_NAT=m -+CONFIG_IP_NF_TARGET_MASQUERADE=m -+CONFIG_IP_NF_TARGET_NETMAP=m -+CONFIG_IP_NF_TARGET_REDIRECT=m - CONFIG_IP_NF_MANGLE=m - CONFIG_IP_NF_TARGET_ECN=m - CONFIG_IP_NF_TARGET_TTL=m -@@ -223,7 +226,6 @@ CONFIG_IP_NF_ARPTABLES=m - CONFIG_IP_NF_ARPFILTER=m - CONFIG_IP_NF_ARP_MANGLE=m - CONFIG_NF_CONNTRACK_IPV6=m --CONFIG_NF_NAT_IPV6=m - CONFIG_IP6_NF_IPTABLES=m - CONFIG_IP6_NF_MATCH_AH=m - CONFIG_IP6_NF_MATCH_EUI64=m -@@ -238,6 +240,9 @@ CONFIG_IP6_NF_FILTER=m - CONFIG_IP6_NF_TARGET_REJECT=m - CONFIG_IP6_NF_MANGLE=m - CONFIG_IP6_NF_RAW=m -+CONFIG_IP6_NF_NAT=m -+CONFIG_IP6_NF_TARGET_MASQUERADE=m -+CONFIG_IP6_NF_TARGET_NPT=m - CONFIG_BRIDGE_NF_EBTABLES=m - CONFIG_BRIDGE_EBT_BROUTE=m - CONFIG_BRIDGE_EBT_T_FILTER=m - -From 6a0570d2c5ae88c6170484ec7b521994bbb450b1 Mon Sep 17 00:00:00 2001 -From: Phil Elwell -Date: Fri, 23 Jan 2015 12:04:59 +0000 -Subject: [PATCH 073/114] config: Restore some missing options - ---- - arch/arm/configs/bcmrpi_defconfig | 18 ++++++++++++++++-- - 1 file changed, 16 insertions(+), 2 deletions(-) - -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 665b01e..41b90b4 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -484,6 +484,8 @@ CONFIG_AR5523=m - CONFIG_B43=m - # CONFIG_B43_PHY_N is not set - CONFIG_B43LEGACY=m -+CONFIG_BRCMFMAC=m -+CONFIG_BRCMFMAC_USB=y - CONFIG_HOSTAP=m - CONFIG_LIBERTAS=m - CONFIG_LIBERTAS_USB=m -@@ -524,6 +526,7 @@ CONFIG_INPUT_POWERMATE=m - CONFIG_INPUT_YEALINK=m - CONFIG_INPUT_CM109=m - CONFIG_INPUT_UINPUT=m -+CONFIG_INPUT_GPIO_ROTARY_ENCODER=m - CONFIG_INPUT_ADXL34X=m - CONFIG_INPUT_CMA3000=m - CONFIG_SERIO=m -@@ -545,6 +548,7 @@ CONFIG_BCM_VC_CMA=y - CONFIG_BCM_VC_SM=y - CONFIG_I2C=y - CONFIG_I2C_CHARDEV=m -+CONFIG_I2C_MUX=m - CONFIG_I2C_BCM2708=m - CONFIG_SPI=y - CONFIG_SPI_BCM2708=m -@@ -724,6 +728,7 @@ CONFIG_RADIO_SI470X=y - CONFIG_USB_SI470X=m - CONFIG_I2C_SI470X=m - CONFIG_RADIO_SI4713=m -+CONFIG_I2C_SI4713=m - CONFIG_USB_MR800=m - CONFIG_USB_DSBR=m - CONFIG_RADIO_SHARK=m -@@ -735,6 +740,15 @@ CONFIG_RADIO_SAA7706H=m - CONFIG_RADIO_TEF6862=m - CONFIG_RADIO_WL1273=m - CONFIG_RADIO_WL128X=m -+# CONFIG_MEDIA_SUBDRV_AUTOSELECT is not set -+CONFIG_VIDEO_UDA1342=m -+CONFIG_VIDEO_SONY_BTF_MPX=m -+CONFIG_VIDEO_TVP5150=m -+CONFIG_VIDEO_TW2804=m -+CONFIG_VIDEO_TW9903=m -+CONFIG_VIDEO_TW9906=m -+CONFIG_VIDEO_OV7640=m -+CONFIG_VIDEO_MT9V011=m - CONFIG_FB=y - CONFIG_FB_BCM2708=y - # CONFIG_BACKLIGHT_GENERIC is not set -@@ -783,6 +797,7 @@ CONFIG_HID_CYPRESS=m - CONFIG_HID_DRAGONRISE=m - CONFIG_HID_EMS_FF=m - CONFIG_HID_ELECOM=m -+CONFIG_HID_ELO=m - CONFIG_HID_EZKEY=m - CONFIG_HID_HOLTEK=m - CONFIG_HID_KEYTOUCH=m -@@ -1042,6 +1057,7 @@ CONFIG_F2FS_FS=y - CONFIG_NFS_FS=y - CONFIG_NFS_V3_ACL=y - CONFIG_NFS_V4=y -+CONFIG_NFS_SWAP=y - CONFIG_ROOT_NFS=y - CONFIG_NFS_FSCACHE=y - CONFIG_NFSD=m -@@ -1116,8 +1132,6 @@ CONFIG_CRYPTO_CBC=y - CONFIG_CRYPTO_CTS=m - CONFIG_CRYPTO_XTS=m - CONFIG_CRYPTO_XCBC=m --CONFIG_CRYPTO_MD5=y --CONFIG_CRYPTO_SHA1=y - CONFIG_CRYPTO_SHA1_ARM=m - CONFIG_CRYPTO_SHA512=m - CONFIG_CRYPTO_TGR192=m - -From 2a72cdffabd2dd290d126c9a4e544bb65b537993 Mon Sep 17 00:00:00 2001 +From 62b86f21e94a0f4a01d825ec59cfab4cdb00642c Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Fri, 23 Jan 2015 16:41:17 +0100 -Subject: [PATCH 074/114] TAS5713: return error if initialisation fails +Subject: [PATCH 072/109] TAS5713: return error if initialisation fails Existing TAS5713 driver logs errors during initialisation, but does not return an error code. Therefore even if initialisation fails, the driver will still be @@ -121234,10 +121090,10 @@ index a24c1da..9b27138 100644 return 0; } -From c0b05569c40e9a8817c2d655335251e2253428cd Mon Sep 17 00:00:00 2001 +From 10df9d22f5af3349cf9cc3a7d2a793237b65d41a Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 23 Jan 2015 14:48:55 +0000 -Subject: [PATCH 075/114] scripts/dtc: Update to upstream version with overlay +Subject: [PATCH 073/109] scripts/dtc: Update to upstream version with overlay patches --- @@ -126443,24 +126299,24 @@ index 8f40b44..f800b60 100644 /* * Parse an escaped character starting at index i in string s. The resulting diff --git a/scripts/dtc/version_gen.h b/scripts/dtc/version_gen.h -index 54d4e90..d644002 100644 +index 54d4e904..d644002 100644 --- a/scripts/dtc/version_gen.h +++ b/scripts/dtc/version_gen.h @@ -1 +1 @@ -#define DTC_VERSION "DTC 1.4.0-dirty" +#define DTC_VERSION "DTC 1.4.1-g36c70742" -From 672e48427ca17fadd59d294eec56476dd6a75398 Mon Sep 17 00:00:00 2001 +From 539a294591de138f45c9c2afd2a8e4477bc26e30 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 23 Jan 2015 15:18:03 +0000 -Subject: [PATCH 076/114] BCM2708_DT: Build the overlays as well +Subject: [PATCH 074/109] BCM2708_DT: Build the overlays as well --- arch/arm/boot/dts/Makefile | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index adaebbb..3c7f539 100644 +index 76e5f96..54ee8c5 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -55,6 +55,14 @@ dtb-$(CONFIG_ARCH_ATLAS6) += atlas6-evb.dtb @@ -126476,25 +126332,22 @@ index adaebbb..3c7f539 100644 +dtb-$(CONFIG_BCM2708_DT) += w1-gpio-overlay.dtb +dtb-$(CONFIG_BCM2708_DT) += w1-gpio-pullup-overlay.dtb dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b.dtb - dtb-$(CONFIG_ARCH_BCM_5301X) += bcm4708-netgear-r6250.dtb - dtb-$(CONFIG_ARCH_BCM_63XX) += bcm963138dvt.dtb -@@ -524,6 +532,11 @@ targets += $(dtb-y) - - endif + dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b-plus.dtb + dtb-$(CONFIG_ARCH_BCM_5301X) += \ +@@ -565,3 +573,8 @@ endif + always := $(dtb-y) + clean-files := *.dtb ++ +# Enable fixups to support overlays on BCM2708 platforms +ifeq ($(CONFIG_BCM2708_DT),y) + DTC_FLAGS ?= -@ +endif -+ - # *.dtb used to be generated in the directory above. Clean out the - # old build results so people don't accidentally use them. - dtbs: $(addprefix $(obj)/, $(dtb-y)) -From 555c5c21ed88de7efa91ce45668ac11416eb29dd Mon Sep 17 00:00:00 2001 +From 4c4650200f97c0b51722931283ad0c9cb824a71f Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Sun, 25 Jan 2015 19:41:06 +0100 -Subject: [PATCH 077/114] Add device tree overlay for HiFiBerry Amp/Amp+ +Subject: [PATCH 075/109] Add device tree overlay for HiFiBerry Amp/Amp+ This patch add the missing device tree file for the HiFiBerry Amp and Amp+ boards. --- @@ -126504,7 +126357,7 @@ This patch add the missing device tree file for the HiFiBerry Amp and Amp+ board create mode 100644 arch/arm/boot/dts/hifiberry-amp-overlay.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 3c7f539..4e1ec2d 100644 +index 54ee8c5..08a89bf 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -58,6 +58,7 @@ dtb-$(CONFIG_BCM2708_DT) += bcm2708-rpi-b-plus.dtb @@ -126561,10 +126414,10 @@ index 0000000..2c81448 + }; +}; -From 4cd9d10a9cd482e993dcfe3bd1d576ad0d11c3c3 Mon Sep 17 00:00:00 2001 +From d701420a7d7e98c562cd64ad17c9721fdb42b692 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 26 Jan 2015 09:18:24 +0000 -Subject: [PATCH 078/114] Add pps-gpio DT overlay +Subject: [PATCH 076/109] Add pps-gpio DT overlay Parameters: gpiopin= // Default 18 @@ -126575,7 +126428,7 @@ Parameters: create mode 100644 arch/arm/boot/dts/pps-gpio-overlay.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 4e1ec2d..4d1224b 100644 +index 08a89bf..3ae8fe1 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -62,6 +62,7 @@ dtb-$(CONFIG_BCM2708_DT) += hifiberry-amp-overlay.dtb @@ -126627,32 +126480,10 @@ index 0000000..40bf0e1 + }; +}; -From 2661fe9121d21ae3ba756b98b545a509b63a71d7 Mon Sep 17 00:00:00 2001 -From: popcornmix -Date: Mon, 26 Jan 2015 14:32:18 +0000 -Subject: [PATCH 079/114] config: Remove STRICT_DEVMEM - ---- - arch/arm/configs/bcmrpi_defconfig | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 41b90b4..fd7c022 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -1124,7 +1124,6 @@ CONFIG_FUNCTION_PROFILER=y - CONFIG_KGDB=y - CONFIG_KGDB_KDB=y - CONFIG_KDB_KEYBOARD=y --CONFIG_STRICT_DEVMEM=y - CONFIG_CRYPTO_USER=m - CONFIG_CRYPTO_NULL=m - CONFIG_CRYPTO_CRYPTD=m - -From 6a63fb6bd7120af9a760fa0f2db9461bfcf29791 Mon Sep 17 00:00:00 2001 +From 2365c3f2d426fa6a31e77fc0d8f094118cb8094d Mon Sep 17 00:00:00 2001 From: Serge Schneider Date: Wed, 3 Sep 2014 14:44:22 +0100 -Subject: [PATCH 080/114] I2C: Only register the I2C device for the current +Subject: [PATCH 077/109] I2C: Only register the I2C device for the current board revision --- @@ -126696,10 +126527,10 @@ index 2c6a29d..b36037b 100644 +module_param(vc_i2c_override, bool, 0644); +MODULE_PARM_DESC(vc_i2c_override, "Allow the use of VC's I2C peripheral."); -From 47a2d8098a9523435aec2fff1389ae92fd8791a9 Mon Sep 17 00:00:00 2001 +From 312bed5a32e235a6ee01550424b185a7c643ed16 Mon Sep 17 00:00:00 2001 From: Timo Kokkonen Date: Wed, 29 Oct 2014 23:30:30 -0700 -Subject: [PATCH 081/114] Added support to reserve/enable a GPIO pin to be used +Subject: [PATCH 078/109] Added support to reserve/enable a GPIO pin to be used from pps-gpio module (LinuxPPS). Enable PPS modules in default config for RPi. @@ -126773,10 +126604,10 @@ index b36037b..762e17c 100644 module_param(vc_i2c_override, bool, 0644); MODULE_PARM_DESC(vc_i2c_override, "Allow the use of VC's I2C peripheral."); -From a2a3c09223aa520e08cc34c496dc286843eecf92 Mon Sep 17 00:00:00 2001 +From 4a04725639c14e9895879571be4d4b79f190e603 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 26 Jan 2015 15:26:10 +0000 -Subject: [PATCH 082/114] BCM2708_DT: Correct length of the peripheral space +Subject: [PATCH 079/109] BCM2708_DT: Correct length of the peripheral space --- arch/arm/boot/dts/bcm2708.dtsi | 2 +- @@ -126796,10 +126627,10 @@ index 1b56cb5..d879316 100644 intc: interrupt-controller { compatible = "brcm,bcm2708-armctrl-ic"; -From 82fe3c57ba4c661c119a08567b9aaa5b63de07e1 Mon Sep 17 00:00:00 2001 +From 64c6a61c55b29bc8768587849a1c9a31a90ca8c7 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 28 Jan 2015 16:22:04 +0000 -Subject: [PATCH 083/114] BCM2708_DT: Add pcf8523-rtc overlay +Subject: [PATCH 080/109] BCM2708_DT: Add pcf8523-rtc overlay --- arch/arm/boot/dts/Makefile | 1 + @@ -126808,7 +126639,7 @@ Subject: [PATCH 083/114] BCM2708_DT: Add pcf8523-rtc overlay create mode 100644 arch/arm/boot/dts/pcf8523-rtc-overlay.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 4d1224b..86c6190 100644 +index 3ae8fe1..5ecd1005 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -62,6 +62,7 @@ dtb-$(CONFIG_BCM2708_DT) += hifiberry-amp-overlay.dtb @@ -126848,10 +126679,10 @@ index 0000000..0071f62 + }; +}; -From a09a8ebce7251e2a42668bd5ae57c12ed24fdca8 Mon Sep 17 00:00:00 2001 +From 52f848ae973d5467bfc211499f12da71544f4b59 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Sat, 31 Jan 2015 16:07:56 +0100 -Subject: [PATCH 084/114] Add a parameter to turn off SPDIF output if no audio +Subject: [PATCH 081/109] Add a parameter to turn off SPDIF output if no audio is playing This patch adds the paramater auto_shutdown_output to the kernel module. @@ -126923,10 +126754,10 @@ index 76af8a6..b0e3d28 100644 static struct snd_soc_dai_link snd_rpi_hifiberry_digi_dai[] = { -From c12aab11b88318b9dde0960f5309cf4c0b2af579 Mon Sep 17 00:00:00 2001 +From be8aa60e5fc8f86ea278be93bd3b6c198940a4c3 Mon Sep 17 00:00:00 2001 From: Joerg Hohensohn Date: Sun, 1 Feb 2015 22:08:03 +0100 -Subject: [PATCH 085/114] bugfix for 32kHz sample rate, was missing +Subject: [PATCH 082/109] bugfix for 32kHz sample rate, was missing --- sound/soc/bcm/hifiberry_digi.c | 1 + @@ -126945,10 +126776,10 @@ index b0e3d28..133d51b 100644 case 48000: case 88200: -From ee23837a8a79b6ab67cab13d63804ba5a7260528 Mon Sep 17 00:00:00 2001 +From 69ba0d7bf053f31f78d26cb4ce71e0847762c35c Mon Sep 17 00:00:00 2001 From: Ryan Coe Date: Sat, 31 Jan 2015 18:25:49 -0700 -Subject: [PATCH 086/114] Update ds1307 driver for device-tree support +Subject: [PATCH 083/109] Update ds1307 driver for device-tree support Signed-off-by: Ryan Coe --- @@ -126956,10 +126787,10 @@ Signed-off-by: Ryan Coe 1 file changed, 8 insertions(+) diff --git a/drivers/rtc/rtc-ds1307.c b/drivers/rtc/rtc-ds1307.c -index bb43cf7..dadd4fb 100644 +index 4ffabb3..c6789a7 100644 --- a/drivers/rtc/rtc-ds1307.c +++ b/drivers/rtc/rtc-ds1307.c -@@ -1241,6 +1241,14 @@ static int ds1307_remove(struct i2c_client *client) +@@ -1242,6 +1242,14 @@ static int ds1307_remove(struct i2c_client *client) return 0; } @@ -126975,10 +126806,10 @@ index bb43cf7..dadd4fb 100644 .driver = { .name = "rtc-ds1307", -From fe72f81ecb7578418207444186fa035262530946 Mon Sep 17 00:00:00 2001 +From 41f71cd0934203eaa69c65afdab09c872700d76b Mon Sep 17 00:00:00 2001 From: Ryan Coe Date: Sat, 31 Jan 2015 18:26:03 -0700 -Subject: [PATCH 087/114] Add device-tree overlay for ds1307 +Subject: [PATCH 084/109] Add device-tree overlay for ds1307 Signed-off-by: Ryan Coe --- @@ -126988,7 +126819,7 @@ Signed-off-by: Ryan Coe create mode 100644 arch/arm/boot/dts/ds1307-rtc-overlay.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 86c6190..1b66478 100644 +index 5ecd1005..2685794 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -64,6 +64,7 @@ dtb-$(CONFIG_BCM2708_DT) += iqaudio-dacplus-overlay.dtb @@ -127028,40 +126859,18 @@ index 0000000..7d27044 + }; +}; -From e985ecbccdd44f3941ce7652103520d68edeeb77 Mon Sep 17 00:00:00 2001 -From: popcornmix -Date: Sun, 1 Feb 2015 12:10:25 +0000 -Subject: [PATCH 088/114] config: Add DVB_USB_DVBSKY - ---- - arch/arm/configs/bcmrpi_defconfig | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index fd7c022..0453a38 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -715,6 +715,7 @@ CONFIG_DVB_USB_GL861=m - CONFIG_DVB_USB_LME2510=m - CONFIG_DVB_USB_MXL111SF=m - CONFIG_DVB_USB_RTL28XXU=m -+CONFIG_DVB_USB_DVBSKY=m - CONFIG_SMS_USB_DRV=m - CONFIG_DVB_B2C2_FLEXCOP_USB=m - CONFIG_DVB_AS102=m - -From 08891f5b4dedf2c490371cef6af91f3b7475282d Mon Sep 17 00:00:00 2001 +From a32250b6048c747684e9b6666062070603903ce0 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 7 May 2013 14:32:27 +0100 -Subject: [PATCH 089/114] Add 2709 platform for Raspberry Pi 2 +Subject: [PATCH 085/109] Add 2709 platform for Raspberry Pi 2 --- arch/arm/Kconfig | 21 + arch/arm/Makefile | 1 + - arch/arm/boot/dts/Makefile | 11 +- + arch/arm/boot/dts/Makefile | 10 +- arch/arm/boot/dts/bcm2709-rpi-2-b.dts | 101 ++ - arch/arm/boot/dts/bcm2709.dtsi | 159 +++ - arch/arm/configs/bcm2709_defconfig | 1149 ++++++++++++++++++++ + arch/arm/boot/dts/bcm2709.dtsi | 160 +++ + arch/arm/configs/bcm2709_defconfig | 1156 ++++++++++++++++++++ arch/arm/configs/bcm2709_sdcard_defconfig | 129 +++ arch/arm/configs/bcm2709_small_defconfig | 61 ++ arch/arm/configs/bcm2835_sdcard_defconfig | 176 +++ @@ -127121,7 +126930,7 @@ Subject: [PATCH 089/114] Add 2709 platform for Raspberry Pi 2 drivers/watchdog/Kconfig | 2 +- sound/arm/Kconfig | 2 +- sound/soc/bcm/Kconfig | 2 +- - 65 files changed, 8999 insertions(+), 16 deletions(-) + 65 files changed, 9006 insertions(+), 16 deletions(-) create mode 100644 arch/arm/boot/dts/bcm2709-rpi-2-b.dts create mode 100644 arch/arm/boot/dts/bcm2709.dtsi create mode 100644 arch/arm/configs/bcm2709_defconfig @@ -127171,10 +126980,10 @@ Subject: [PATCH 089/114] Add 2709 platform for Raspberry Pi 2 create mode 100644 arch/arm/mach-bcm2709/vcio.c diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 0f2287f..1faad0d 100644 +index 96f98ce..062ef6a 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -803,6 +803,26 @@ config ARCH_OMAP1 +@@ -791,6 +791,26 @@ config ARCH_OMAP1 help Support for older TI OMAP1 (omap7xx, omap15xx or omap16xx) @@ -127201,7 +127010,7 @@ index 0f2287f..1faad0d 100644 endchoice menu "Multiple platform selection" -@@ -990,6 +1010,7 @@ source "arch/arm/mach-vt8500/Kconfig" +@@ -980,6 +1000,7 @@ source "arch/arm/mach-vt8500/Kconfig" source "arch/arm/mach-w90x900/Kconfig" source "arch/arm/mach-bcm2708/Kconfig" @@ -127210,7 +127019,7 @@ index 0f2287f..1faad0d 100644 source "arch/arm/mach-zynq/Kconfig" diff --git a/arch/arm/Makefile b/arch/arm/Makefile -index fea9213..2f1376e 100644 +index ceb8a4e..2952f09 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -147,6 +147,7 @@ machine-$(CONFIG_ARCH_AT91) += at91 @@ -127222,7 +127031,7 @@ index fea9213..2f1376e 100644 machine-$(CONFIG_ARCH_CLPS711X) += clps711x machine-$(CONFIG_ARCH_CNS3XXX) += cns3xxx diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 1b66478..605ed38 100644 +index 2685794..83dceff 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -53,6 +53,14 @@ dtb-$(CONFIG_ARCH_AT91) += at91-sama5d4ek.dtb @@ -127240,23 +127049,14 @@ index 1b66478..605ed38 100644 dtb-$(CONFIG_BCM2708_DT) += bcm2708-rpi-b.dtb dtb-$(CONFIG_BCM2708_DT) += bcm2708-rpi-b-plus.dtb dtb-$(CONFIG_BCM2708_DT) += hifiberry-dac-overlay.dtb -@@ -68,6 +76,7 @@ dtb-$(CONFIG_BCM2708_DT) += ds1307-rtc-overlay.dtb - dtb-$(CONFIG_BCM2708_DT) += w1-gpio-overlay.dtb - dtb-$(CONFIG_BCM2708_DT) += w1-gpio-pullup-overlay.dtb - dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b.dtb -+ - dtb-$(CONFIG_ARCH_BCM_5301X) += bcm4708-netgear-r6250.dtb - dtb-$(CONFIG_ARCH_BCM_63XX) += bcm963138dvt.dtb - dtb-$(CONFIG_ARCH_BCM_MOBILE) += bcm28155-ap.dtb \ -@@ -537,7 +546,7 @@ targets += $(dtb-y) - endif +@@ -579,6 +587,6 @@ always := $(dtb-y) + clean-files := *.dtb # Enable fixups to support overlays on BCM2708 platforms -ifeq ($(CONFIG_BCM2708_DT),y) +ifeq ($(RPI_DT_OVERLAYS),y) DTC_FLAGS ?= -@ endif - diff --git a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts new file mode 100644 index 0000000..0cdff31 @@ -127366,10 +127166,10 @@ index 0000000..0cdff31 +}; diff --git a/arch/arm/boot/dts/bcm2709.dtsi b/arch/arm/boot/dts/bcm2709.dtsi new file mode 100644 -index 0000000..c7e975c +index 0000000..fee2053 --- /dev/null +++ b/arch/arm/boot/dts/bcm2709.dtsi -@@ -0,0 +1,159 @@ +@@ -0,0 +1,160 @@ +/include/ "skeleton.dtsi" + +/ { @@ -127453,7 +127253,7 @@ index 0000000..c7e975c + compatible = "gpio-leds"; + + act_led: act { -+ label = "ACT"; ++ label = "led0"; + linux,default-trigger = "mmc0"; + }; + }; @@ -127487,6 +127287,7 @@ index 0000000..c7e975c + <3 1>, // PHYS_NONSECURE_PPI + <3 3>, // VIRT_PPI + <3 2>; // HYP_PPI ++ always-on; + }; + + cpus: cpus { @@ -127531,10 +127332,10 @@ index 0000000..c7e975c +}; diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig new file mode 100644 -index 0000000..70b175c +index 0000000..62f33d6 --- /dev/null +++ b/arch/arm/configs/bcm2709_defconfig -@@ -0,0 +1,1149 @@ +@@ -0,0 +1,1156 @@ +# CONFIG_ARM_PATCH_PHYS_VIRT is not set +CONFIG_PHYS_OFFSET=0 +CONFIG_LOCALVERSION="-v7" @@ -127763,6 +127564,7 @@ index 0000000..70b175c +CONFIG_IP_NF_TARGET_NETMAP=m +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_MANGLE=m ++CONFIG_IP_NF_TARGET_CLUSTERIP=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_NF_RAW=m @@ -127960,6 +127762,7 @@ index 0000000..70b175c +CONFIG_NETCONSOLE=m +CONFIG_TUN=m +CONFIG_VETH=m ++CONFIG_ENC28J60=m +CONFIG_MDIO_BITBANG=m +CONFIG_PPP=m +CONFIG_PPP_BSDCOMP=m @@ -128259,10 +128062,12 @@ index 0000000..70b175c +CONFIG_DVB_USB_LME2510=m +CONFIG_DVB_USB_MXL111SF=m +CONFIG_DVB_USB_RTL28XXU=m ++CONFIG_DVB_USB_DVBSKY=m +CONFIG_SMS_USB_DRV=m +CONFIG_DVB_B2C2_FLEXCOP_USB=m +CONFIG_DVB_AS102=m +CONFIG_VIDEO_EM28XX=m ++CONFIG_VIDEO_EM28XX_V4L2=m +CONFIG_VIDEO_EM28XX_ALSA=m +CONFIG_VIDEO_EM28XX_DVB=m +CONFIG_V4L_PLATFORM_DRIVERS=y @@ -128401,6 +128206,9 @@ index 0000000..70b175c +CONFIG_USB_UAS=m +CONFIG_USB_MDC800=m +CONFIG_USB_MICROTEK=m ++CONFIG_USBIP_CORE=m ++CONFIG_USBIP_VHCI_HCD=m ++CONFIG_USBIP_HOST=m +CONFIG_USB_SERIAL=m +CONFIG_USB_SERIAL_GENERIC=y +CONFIG_USB_SERIAL_AIRCABLE=m @@ -130285,7 +130093,7 @@ index 0000000..c1e9254 +MODULE_LICENSE("GPL"); diff --git a/arch/arm/mach-bcm2709/bcm2709.c b/arch/arm/mach-bcm2709/bcm2709.c new file mode 100644 -index 0000000..a1058ad +index 0000000..abe2b19 --- /dev/null +++ b/arch/arm/mach-bcm2709/bcm2709.c @@ -0,0 +1,1237 @@ @@ -131383,7 +131191,7 @@ index 0000000..a1058ad + init_dma_coherent_pool_size(SZ_4M); + +#ifdef CONFIG_OF -+ if (of_allnodes) ++ if (of_root) + use_dt = 1; +#endif +} @@ -136468,7 +136276,7 @@ index 0000000..5e43e85 +MODULE_LICENSE("GPL"); +MODULE_ALIAS("platform:bcm-mbox"); diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S -index 22ac2a6..eec2825 100644 +index 8b4ee5e..80fa74b 100644 --- a/arch/arm/mm/proc-v7.S +++ b/arch/arm/mm/proc-v7.S @@ -441,6 +441,7 @@ __v7_setup: @@ -136492,7 +136300,7 @@ index c9ddd87..bfc397c 100644 ics_if_voip MACH_ICS_IF_VOIP ICS_IF_VOIP 3206 wlf_cragg_6410 MACH_WLF_CRAGG_6410 WLF_CRAGG_6410 3207 diff --git a/drivers/char/hw_random/Kconfig b/drivers/char/hw_random/Kconfig -index 0d2ca0d..77eb7a8 100644 +index 2a24bec..1c97093 100644 --- a/drivers/char/hw_random/Kconfig +++ b/drivers/char/hw_random/Kconfig @@ -322,7 +322,7 @@ config HW_RANDOM_TPM @@ -136505,10 +136313,10 @@ index 0d2ca0d..77eb7a8 100644 This driver provides the kernel-side support for the BCM2708 hardware. diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c -index 84b4c8b..8253434 100644 +index 095c177..47d96dd 100644 --- a/drivers/clocksource/arm_arch_timer.c +++ b/drivers/clocksource/arm_arch_timer.c -@@ -795,3 +795,39 @@ static void __init arch_timer_mem_init(struct device_node *np) +@@ -803,3 +803,39 @@ static void __init arch_timer_mem_init(struct device_node *np) } CLOCKSOURCE_OF_DECLARE(armv7_arch_timer_mem, "arm,armv7-timer-mem", arch_timer_mem_init); @@ -136549,10 +136357,10 @@ index 84b4c8b..8253434 100644 + return 0; +} diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig -index c9b8eb5..5965795 100644 +index 5b9e196..b3d8b8e 100644 --- a/drivers/dma/Kconfig +++ b/drivers/dma/Kconfig -@@ -332,7 +332,7 @@ config DMA_BCM2835 +@@ -339,7 +339,7 @@ config DMA_BCM2835 config DMA_BCM2708 tristate "BCM2708 DMA engine support" @@ -136562,10 +136370,10 @@ index c9b8eb5..5965795 100644 select DMA_VIRTUAL_CHANNELS diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig -index d30a986..d181d7f 100644 +index 7b7ba6f..a77b009 100644 --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig -@@ -361,7 +361,7 @@ config I2C_AXXIA +@@ -362,7 +362,7 @@ config I2C_AXXIA config I2C_BCM2835 tristate "Broadcom BCM2835 I2C controller" @@ -136574,7 +136382,7 @@ index d30a986..d181d7f 100644 help If you say yes to this option, support will be included for the BCM2835 I2C controller. -@@ -373,7 +373,7 @@ config I2C_BCM2835 +@@ -374,7 +374,7 @@ config I2C_BCM2835 config I2C_BCM2708 tristate "BCM2708 BSC" @@ -136624,7 +136432,7 @@ index 0c82520..8d038fe 100644 -endif diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig -index 977aeef..b049c15 100644 +index b6077b5..e2b73a4 100644 --- a/drivers/mmc/host/Kconfig +++ b/drivers/mmc/host/Kconfig @@ -304,7 +304,7 @@ config MMC_SDHCI_ST @@ -136637,7 +136445,7 @@ index 977aeef..b049c15 100644 This selects the MMC Interface on BCM2835. diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig -index a5238ab..ea70ef0 100644 +index 9f202dd..c18385c 100644 --- a/drivers/spi/Kconfig +++ b/drivers/spi/Kconfig @@ -77,7 +77,7 @@ config SPI_ATMEL @@ -136659,7 +136467,7 @@ index a5238ab..ea70ef0 100644 This selects a driver for the Broadcom BCM2708 SPI master (SPI0). This driver is not compatible with the "Universal SPI Master" or the SPI slave diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig -index ff56894..4bcc3b2 100644 +index 3bc50f2..cd504ee 100644 --- a/drivers/watchdog/Kconfig +++ b/drivers/watchdog/Kconfig @@ -454,7 +454,7 @@ config RETU_WATCHDOG @@ -136698,10 +136506,299 @@ index a562ddf..40d27c1 100644 select SND_SOC_DMAENGINE_PCM select SND_SOC_GENERIC_DMAENGINE_PCM -From 1ef33cbb3347c38f563de1c7df7d103f8b7d23ca Mon Sep 17 00:00:00 2001 +From 7aa31f395f25f5f05a01b1a89cde6b4db0d09008 Mon Sep 17 00:00:00 2001 +From: popcornmix +Date: Wed, 11 Feb 2015 21:17:28 +0000 +Subject: [PATCH 086/109] m + +--- + arch/arm/boot/dts/bcm2708.dtsi | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/arch/arm/boot/dts/bcm2708.dtsi b/arch/arm/boot/dts/bcm2708.dtsi +index d879316..af6b1d9 100644 +--- a/arch/arm/boot/dts/bcm2708.dtsi ++++ b/arch/arm/boot/dts/bcm2708.dtsi +@@ -81,7 +81,7 @@ + compatible = "gpio-leds"; + + act_led: act { +- label = "ACT"; ++ label = "led0"; + linux,default-trigger = "mmc0"; + }; + }; + +From 1ea263df8ad7e1f95b90c743928f4f16c4adad25 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Fri, 6 Feb 2015 13:50:57 +0000 +Subject: [PATCH 087/109] BCM270x_DT: Add pwr_led, and the required "input" + trigger + +The "input" trigger makes the associated GPIO an input. This is to support +the Raspberry Pi PWR LED, which is driven by external hardware in normal use. + +N.B. pwr_led is not available on Model A or B boards. +--- + arch/arm/boot/dts/bcm2708-rpi-b-plus.dts | 18 ++++++++- + arch/arm/boot/dts/bcm2708-rpi-b.dts | 8 +++- + arch/arm/boot/dts/bcm2708.dtsi | 5 --- + arch/arm/boot/dts/bcm2709-rpi-2-b.dts | 18 ++++++++- + arch/arm/boot/dts/bcm2709.dtsi | 5 --- + arch/arm/configs/bcm2709_defconfig | 1 + + arch/arm/configs/bcmrpi_defconfig | 1 + + drivers/leds/trigger/Kconfig | 7 ++++ + drivers/leds/trigger/Makefile | 1 + + drivers/leds/trigger/ledtrig-input.c | 65 ++++++++++++++++++++++++++++++++ + 10 files changed, 113 insertions(+), 16 deletions(-) + create mode 100644 drivers/leds/trigger/ledtrig-input.c + +diff --git a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts +index 95f03ba..b409c2c 100644 +--- a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts ++++ b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts +@@ -83,8 +83,18 @@ + pinctrl-0 = <&i2s_pins>; + }; + +-&act_led { +- gpios = <&gpio 47 0>; ++&leds { ++ act_led: act { ++ label = "led0"; ++ linux,default-trigger = "mmc0"; ++ gpios = <&gpio 47 0>; ++ }; ++ ++ pwr_led: pwr { ++ label = "led1"; ++ linux,default-trigger = "input"; ++ gpios = <&gpio 35 0>; ++ }; + }; + + / { +@@ -97,5 +107,9 @@ + act_led_gpio = <&act_led>,"gpios:4"; + act_led_activelow = <&act_led>,"gpios:8"; + act_led_trigger = <&act_led>,"linux,default-trigger"; ++ ++ pwr_led_gpio = <&pwr_led>,"gpios:4"; ++ pwr_led_activelow = <&pwr_led>,"gpios:8"; ++ pwr_led_trigger = <&pwr_led>,"linux,default-trigger"; + }; + }; +diff --git a/arch/arm/boot/dts/bcm2708-rpi-b.dts b/arch/arm/boot/dts/bcm2708-rpi-b.dts +index 0631f45..1ecd1a1 100644 +--- a/arch/arm/boot/dts/bcm2708-rpi-b.dts ++++ b/arch/arm/boot/dts/bcm2708-rpi-b.dts +@@ -83,8 +83,12 @@ + pinctrl-0 = <&i2s_pins>; + }; + +-&act_led { +- gpios = <&gpio 16 1>; ++&leds { ++ act_led: act { ++ label = "led0"; ++ linux,default-trigger = "mmc0"; ++ gpios = <&gpio 16 1>; ++ }; + }; + + / { +diff --git a/arch/arm/boot/dts/bcm2708.dtsi b/arch/arm/boot/dts/bcm2708.dtsi +index af6b1d9..aeeabae 100644 +--- a/arch/arm/boot/dts/bcm2708.dtsi ++++ b/arch/arm/boot/dts/bcm2708.dtsi +@@ -79,11 +79,6 @@ + + leds: leds { + compatible = "gpio-leds"; +- +- act_led: act { +- label = "led0"; +- linux,default-trigger = "mmc0"; +- }; + }; + }; + +diff --git a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts +index 0cdff31..46f4908 100644 +--- a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts ++++ b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts +@@ -83,8 +83,18 @@ + pinctrl-0 = <&i2s_pins>; + }; + +-&act_led { +- gpios = <&gpio 47 0>; ++&leds { ++ act_led: act { ++ label = "led0"; ++ linux,default-trigger = "mmc0"; ++ gpios = <&gpio 47 0>; ++ }; ++ ++ pwr_led: pwr { ++ label = "led1"; ++ linux,default-trigger = "input"; ++ gpios = <&gpio 35 0>; ++ }; + }; + + / { +@@ -97,5 +107,9 @@ + act_led_gpio = <&act_led>,"gpios:4"; + act_led_activelow = <&act_led>,"gpios:8"; + act_led_trigger = <&act_led>,"linux,default-trigger"; ++ ++ pwr_led_gpio = <&pwr_led>,"gpios:4"; ++ pwr_led_activelow = <&pwr_led>,"gpios:8"; ++ pwr_led_trigger = <&pwr_led>,"linux,default-trigger"; + }; + }; +diff --git a/arch/arm/boot/dts/bcm2709.dtsi b/arch/arm/boot/dts/bcm2709.dtsi +index fee2053..6986455 100644 +--- a/arch/arm/boot/dts/bcm2709.dtsi ++++ b/arch/arm/boot/dts/bcm2709.dtsi +@@ -79,11 +79,6 @@ + + leds: leds { + compatible = "gpio-leds"; +- +- act_led: act { +- label = "led0"; +- linux,default-trigger = "mmc0"; +- }; + }; + }; + +diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig +index 62f33d6..d4c18fa 100644 +--- a/arch/arm/configs/bcm2709_defconfig ++++ b/arch/arm/configs/bcm2709_defconfig +@@ -962,6 +962,7 @@ CONFIG_LEDS_TRIGGER_GPIO=y + CONFIG_LEDS_TRIGGER_DEFAULT_ON=y + CONFIG_LEDS_TRIGGER_TRANSIENT=m + CONFIG_LEDS_TRIGGER_CAMERA=m ++CONFIG_LEDS_TRIGGER_INPUT=y + CONFIG_RTC_CLASS=y + # CONFIG_RTC_HCTOSYS is not set + CONFIG_RTC_DRV_DS1307=m +diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig +index c1621fa..898ebd2 100644 +--- a/arch/arm/configs/bcmrpi_defconfig ++++ b/arch/arm/configs/bcmrpi_defconfig +@@ -955,6 +955,7 @@ CONFIG_LEDS_TRIGGER_GPIO=y + CONFIG_LEDS_TRIGGER_DEFAULT_ON=y + CONFIG_LEDS_TRIGGER_TRANSIENT=m + CONFIG_LEDS_TRIGGER_CAMERA=m ++CONFIG_LEDS_TRIGGER_INPUT=y + CONFIG_RTC_CLASS=y + # CONFIG_RTC_HCTOSYS is not set + CONFIG_RTC_DRV_DS1307=m +diff --git a/drivers/leds/trigger/Kconfig b/drivers/leds/trigger/Kconfig +index 49794b4..640756b 100644 +--- a/drivers/leds/trigger/Kconfig ++++ b/drivers/leds/trigger/Kconfig +@@ -108,4 +108,11 @@ config LEDS_TRIGGER_CAMERA + This enables direct flash/torch on/off by the driver, kernel space. + If unsure, say Y. + ++config LEDS_TRIGGER_INPUT ++ tristate "LED Input Trigger" ++ depends on LEDS_TRIGGERS ++ help ++ This allows the GPIOs assigned to be LEDs to be initialised to inputs. ++ If unsure, say Y. ++ + endif # LEDS_TRIGGERS +diff --git a/drivers/leds/trigger/Makefile b/drivers/leds/trigger/Makefile +index 1abf48d..c03afdc 100644 +--- a/drivers/leds/trigger/Makefile ++++ b/drivers/leds/trigger/Makefile +@@ -8,3 +8,4 @@ obj-$(CONFIG_LEDS_TRIGGER_CPU) += ledtrig-cpu.o + obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON) += ledtrig-default-on.o + obj-$(CONFIG_LEDS_TRIGGER_TRANSIENT) += ledtrig-transient.o + obj-$(CONFIG_LEDS_TRIGGER_CAMERA) += ledtrig-camera.o ++obj-$(CONFIG_LEDS_TRIGGER_INPUT) += ledtrig-input.o +diff --git a/drivers/leds/trigger/ledtrig-input.c b/drivers/leds/trigger/ledtrig-input.c +new file mode 100644 +index 0000000..2ca2b98 +--- /dev/null ++++ b/drivers/leds/trigger/ledtrig-input.c +@@ -0,0 +1,65 @@ ++/* ++ * Set LED GPIO to Input "Trigger" ++ * ++ * Copyright 2015 Phil Elwell ++ * ++ * Based on Nick Forbes's ledtrig-default-on.c. ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License version 2 as ++ * published by the Free Software Foundation. ++ * ++ */ ++ ++#include ++#include ++#include ++#include ++#include ++#include "../leds.h" ++ ++/* This is a hack to get at the private 'gpio' member */ ++ ++struct gpio_led_data { ++ struct led_classdev cdev; ++ unsigned gpio; ++}; ++ ++static void input_trig_activate(struct led_classdev *led_cdev) ++{ ++ struct gpio_led_data *led_dat = ++ container_of(led_cdev, struct gpio_led_data, cdev); ++ if (gpio_is_valid(led_dat->gpio)) ++ gpio_direction_input(led_dat->gpio); ++} ++ ++static void input_trig_deactivate(struct led_classdev *led_cdev) ++{ ++ struct gpio_led_data *led_dat = ++ container_of(led_cdev, struct gpio_led_data, cdev); ++ if (gpio_is_valid(led_dat->gpio)) ++ gpio_direction_output(led_dat->gpio, 0); ++} ++ ++static struct led_trigger input_led_trigger = { ++ .name = "input", ++ .activate = input_trig_activate, ++ .deactivate = input_trig_deactivate, ++}; ++ ++static int __init input_trig_init(void) ++{ ++ return led_trigger_register(&input_led_trigger); ++} ++ ++static void __exit input_trig_exit(void) ++{ ++ led_trigger_unregister(&input_led_trigger); ++} ++ ++module_init(input_trig_init); ++module_exit(input_trig_exit); ++ ++MODULE_AUTHOR("Phil Elwell "); ++MODULE_DESCRIPTION("Set LED GPIO to Input \"trigger\""); ++MODULE_LICENSE("GPL"); + +From 6c049544cfa8435965027d48d006cbddb8ae9f9d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 20 Jun 2014 17:19:27 +0100 -Subject: [PATCH 090/114] bcm2709: Simplify and strip down IRQ handler +Subject: [PATCH 088/109] bcm2709: Simplify and strip down IRQ handler --- arch/arm/include/asm/entry-macro-multi.S | 2 + @@ -136918,10 +137015,10 @@ index d08591b..101d9f1 100644 +1: get_irqnr_and_base r0, r2, r6, lr + .endm -From e9898a39fce7db84ae56329d4f90da92af3bd584 Mon Sep 17 00:00:00 2001 +From 47f63d0ccfea3b7db13b87e2ccbebe33b7ddcf75 Mon Sep 17 00:00:00 2001 From: P33M Date: Wed, 24 Sep 2014 11:57:51 +0100 -Subject: [PATCH 091/114] dwc_otg: FIQ support on SMP. Set up FIQ stack and +Subject: [PATCH 089/109] dwc_otg: FIQ support on SMP. Set up FIQ stack and handler on Core 0 only. --- @@ -137051,10 +137148,10 @@ index 98e1dc5..4d8dd95 100644 otg_dev->hcd->otg_dev = otg_dev; -From 424f79f35a94611f73182f19a7711174b756b052 Mon Sep 17 00:00:00 2001 +From 12805880485af569b79de901a9c3554ed921ee77 Mon Sep 17 00:00:00 2001 From: P33M Date: Fri, 26 Sep 2014 11:32:09 +0100 -Subject: [PATCH 092/114] dwc_otg: introduce fiq_fsm_spin(un|)lock() +Subject: [PATCH 090/109] dwc_otg: introduce fiq_fsm_spin(un|)lock() SMP safety for the FIQ relies on register read-modify write cycles being completed in the correct order. Several places in the DWC code modify @@ -137371,10 +137468,10 @@ index a5566bc..ee35196 100644 } -From e424348e42e85fa0224819055668845710c54887 Mon Sep 17 00:00:00 2001 +From f98835f1f026ab44f70fc03b301ab1c2e6e695e0 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 22 Jan 2015 11:59:41 +0000 -Subject: [PATCH 093/114] fiq_fsm: fix build on bcm2708 and bcm2709 platforms +Subject: [PATCH 091/109] fiq_fsm: fix build on bcm2708 and bcm2709 platforms --- drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c | 8 ++++++++ @@ -137417,10 +137514,10 @@ index 84618a5..0d2b04e 100644 /** * fiq_fsm_restart_channel() - Poke channel enable bit for a split transaction -From 1e6d3936f120fd4420662850da0c89eb5c3d9f03 Mon Sep 17 00:00:00 2001 +From 51c50dde85c608d033d80e415fc43a90301745f9 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 22 Jan 2015 17:49:23 +0000 -Subject: [PATCH 094/114] dwc_otg: put some barriers back where they should be +Subject: [PATCH 092/109] dwc_otg: put some barriers back where they should be for UP --- @@ -137460,17 +137557,17 @@ index 124ac16..ac70f1d 100644 local_fiq_enable(); return 0; -From 4d5ab4e9eb0ae339e8ae87edb0556435cb0bf4b0 Mon Sep 17 00:00:00 2001 +From 7ee3bc393f55effdcf46eeca95f4e03552d68ea6 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 22 Jan 2015 18:02:44 +0000 -Subject: [PATCH 095/114] mach_bcm2709: Add Mailbox resources to USB driver +Subject: [PATCH 093/109] mach_bcm2709: Add Mailbox resources to USB driver --- arch/arm/mach-bcm2709/bcm2709.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/arch/arm/mach-bcm2709/bcm2709.c b/arch/arm/mach-bcm2709/bcm2709.c -index a1058ad..5d73b73 100644 +index abe2b19..945bb94 100644 --- a/arch/arm/mach-bcm2709/bcm2709.c +++ b/arch/arm/mach-bcm2709/bcm2709.c @@ -338,6 +338,16 @@ static struct resource bcm2708_usb_resources[] = { @@ -137491,10 +137588,10 @@ index a1058ad..5d73b73 100644 -From a31e1ba443ff061c4bf4abbac46ca8e197da3f0c Mon Sep 17 00:00:00 2001 +From 20c510ab62a8926d6737f7f8e2473abb9f0f8fe3 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 22 Jan 2015 18:45:23 +0000 -Subject: [PATCH 096/114] bcm2709/dwc_otg: Setup FIQ on core 1 if >1 core +Subject: [PATCH 094/109] bcm2709/dwc_otg: Setup FIQ on core 1 if >1 core active --- @@ -137503,7 +137600,7 @@ Subject: [PATCH 096/114] bcm2709/dwc_otg: Setup FIQ on core 1 if >1 core 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/arch/arm/mach-bcm2709/armctrl.c b/arch/arm/mach-bcm2709/armctrl.c -index 8e69a813..6e3f0f2 100644 +index 8e69a813..6e3f0f2ff 100644 --- a/arch/arm/mach-bcm2709/armctrl.c +++ b/arch/arm/mach-bcm2709/armctrl.c @@ -89,7 +89,15 @@ static void armctrl_unmask_irq(struct irq_data *d) @@ -137557,17 +137654,17 @@ index 4d8dd95..1d28459 100644 otg_dev->hcd->otg_dev = otg_dev; hcd->self.otg_port = dwc_otg_hcd_otg_port(dwc_otg_hcd); -From aca6741a1d26736f6000d18b3c60a18a313be6ea Mon Sep 17 00:00:00 2001 +From b67ceafbe780931f9c14a2aac406b9a7b8089add Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 26 Jan 2015 17:40:22 +0000 -Subject: [PATCH 097/114] bcm2709: Port pps-gpio and i2c patches +Subject: [PATCH 095/109] bcm2709: Port pps-gpio and i2c patches --- arch/arm/mach-bcm2709/bcm2709.c | 41 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 39 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-bcm2709/bcm2709.c b/arch/arm/mach-bcm2709/bcm2709.c -index 5d73b73..f009aeb 100644 +index 945bb94..c4a37e8 100644 --- a/arch/arm/mach-bcm2709/bcm2709.c +++ b/arch/arm/mach-bcm2709/bcm2709.c @@ -37,6 +37,7 @@ @@ -137651,17 +137748,17 @@ index 5d73b73..f009aeb 100644 +module_param(vc_i2c_override, bool, 0644); +MODULE_PARM_DESC(vc_i2c_override, "Allow the use of VC's I2C peripheral."); -From 3a930cc266561ce539f40d0e4b8e1752442481b4 Mon Sep 17 00:00:00 2001 +From 69f6f452dba6d3cf1f3b34d1a51b514585f14ddc Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 28 Jan 2015 17:57:23 +0000 -Subject: [PATCH 098/114] bcm2709: Also accept the 2708 machine ID +Subject: [PATCH 096/109] bcm2709: Also accept the 2708 machine ID --- arch/arm/mach-bcm2709/bcm2709.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/arch/arm/mach-bcm2709/bcm2709.c b/arch/arm/mach-bcm2709/bcm2709.c -index f009aeb..7e3affd 100644 +index c4a37e8..8af141c 100644 --- a/arch/arm/mach-bcm2709/bcm2709.c +++ b/arch/arm/mach-bcm2709/bcm2709.c @@ -1270,6 +1270,19 @@ MACHINE_START(BCM2709, "BCM2709") @@ -137685,17 +137782,17 @@ index f009aeb..7e3affd 100644 module_param(serial, uint, 0644); module_param(uart_clock, uint, 0644); -From d274e98de547d48ddaaa0593217a156602b7367f Mon Sep 17 00:00:00 2001 +From 05a197df4f859169c86c2a72f6ae05d4c22adcb9 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 2 Feb 2015 12:45:07 +0000 -Subject: [PATCH 099/114] BCM2709_DT: Fix bad merge +Subject: [PATCH 097/109] BCM2709_DT: Fix bad merge --- arch/arm/boot/dts/Makefile | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 605ed38..8f76444 100644 +index 83dceff..f3b6364 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -63,18 +63,19 @@ ifeq ($(CONFIG_BCM2709_DT),y) @@ -137728,13 +137825,13 @@ index 605ed38..8f76444 100644 +dtb-$(RPI_DT_OVERLAYS) += w1-gpio-overlay.dtb +dtb-$(RPI_DT_OVERLAYS) += w1-gpio-pullup-overlay.dtb dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b.dtb - - dtb-$(CONFIG_ARCH_BCM_5301X) += bcm4708-netgear-r6250.dtb + dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b-plus.dtb + dtb-$(CONFIG_ARCH_BCM_5301X) += \ -From 115f744544291c3529868e72f101df652b156e56 Mon Sep 17 00:00:00 2001 +From 8e225da0cd3ec867d130c64274e1c721ca03a0b2 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Tue, 3 Feb 2015 07:15:19 +0100 -Subject: [PATCH 100/114] HiFiBerry Amp: fix device-tree problems +Subject: [PATCH 098/109] HiFiBerry Amp: fix device-tree problems Some code to load the driver based on device-tree-overlays was missing. This is added by this patch. --- @@ -137788,10 +137885,10 @@ index 1e87ee0..5903915 100644 .probe = snd_rpi_hifiberry_amp_probe, .remove = snd_rpi_hifiberry_amp_remove, -From 2a725b6c8a9f4454363a73acb34c6cfff9390911 Mon Sep 17 00:00:00 2001 +From 3e5856f6269407f9671fdb7b4ad2571ad6491864 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 3 Feb 2015 11:41:38 +0000 -Subject: [PATCH 101/114] BCM270x_DT: Add i2c0_baudrate and i2c1_baudrate +Subject: [PATCH 099/109] BCM270x_DT: Add i2c0_baudrate and i2c1_baudrate parameters --- @@ -137801,10 +137898,10 @@ Subject: [PATCH 101/114] BCM270x_DT: Add i2c0_baudrate and i2c1_baudrate 3 files changed, 6 insertions(+) diff --git a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts -index 95f03ba..6b9512b 100644 +index b409c2c..7f84473 100644 --- a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts +++ b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts -@@ -93,6 +93,8 @@ +@@ -103,6 +103,8 @@ spi = <&spi0>,"status"; i2c0 = <&i2c0>,"status"; i2c1 = <&i2c1>,"status"; @@ -137814,10 +137911,10 @@ index 95f03ba..6b9512b 100644 act_led_gpio = <&act_led>,"gpios:4"; act_led_activelow = <&act_led>,"gpios:8"; diff --git a/arch/arm/boot/dts/bcm2708-rpi-b.dts b/arch/arm/boot/dts/bcm2708-rpi-b.dts -index 0631f45..b8520b55 100644 +index 1ecd1a1..a39562f 100644 --- a/arch/arm/boot/dts/bcm2708-rpi-b.dts +++ b/arch/arm/boot/dts/bcm2708-rpi-b.dts -@@ -93,6 +93,8 @@ +@@ -97,6 +97,8 @@ spi = <&spi0>,"status"; i2c0 = <&i2c0>,"status"; i2c1 = <&i2c1>,"status"; @@ -137827,10 +137924,10 @@ index 0631f45..b8520b55 100644 act_led_gpio = <&act_led>,"gpios:4"; act_led_activelow = <&act_led>,"gpios:8"; diff --git a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts -index 0cdff31..63d3da4 100644 +index 46f4908..75c222f 100644 --- a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts +++ b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts -@@ -93,6 +93,8 @@ +@@ -103,6 +103,8 @@ spi = <&spi0>,"status"; i2c0 = <&i2c0>,"status"; i2c1 = <&i2c1>,"status"; @@ -137840,10 +137937,10 @@ index 0cdff31..63d3da4 100644 act_led_gpio = <&act_led>,"gpios:4"; act_led_activelow = <&act_led>,"gpios:8"; -From ce24753015125e11d87764dca9740fde33ccd455 Mon Sep 17 00:00:00 2001 +From 9931580d09fb02180ad2b9951173adf4b616758b Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 4 Feb 2015 10:02:24 +0000 -Subject: [PATCH 102/114] pinctrl-bcm2835: bcm2835_gpio_direction_output must +Subject: [PATCH 100/109] pinctrl-bcm2835: bcm2835_gpio_direction_output must set the value --- @@ -137851,7 +137948,7 @@ Subject: [PATCH 102/114] pinctrl-bcm2835: bcm2835_gpio_direction_output must 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/pinctrl/pinctrl-bcm2835.c b/drivers/pinctrl/pinctrl-bcm2835.c -index 962e180..42a4fd5 100644 +index 9d1149e..d9c727b 100644 --- a/drivers/pinctrl/pinctrl-bcm2835.c +++ b/drivers/pinctrl/pinctrl-bcm2835.c @@ -355,7 +355,14 @@ static int bcm2835_gpio_get(struct gpio_chip *chip, unsigned offset) @@ -137871,10 +137968,10 @@ index 962e180..42a4fd5 100644 static void bcm2835_gpio_set(struct gpio_chip *chip, unsigned offset, int value) -From 8ceb69e8548f27305e37866ec3b81a79e1402b1a Mon Sep 17 00:00:00 2001 +From 8473beee2daf191fed1f7f552a166300170afc8f Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 4 Feb 2015 12:59:36 +0000 -Subject: [PATCH 103/114] w1-gpio: Sort out the pullup/parasitic power tangle +Subject: [PATCH 101/109] w1-gpio: Sort out the pullup/parasitic power tangle --- arch/arm/boot/dts/w1-gpio-overlay.dts | 4 +++- @@ -137937,7 +138034,7 @@ index b3e97c2..66a98f6 100644 }; }; diff --git a/drivers/w1/masters/w1-gpio.c b/drivers/w1/masters/w1-gpio.c -index 61be2cd..54c0313 100644 +index 3ad15cc..e34d418 100644 --- a/drivers/w1/masters/w1-gpio.c +++ b/drivers/w1/masters/w1-gpio.c @@ -23,10 +23,14 @@ @@ -138047,57 +138144,10 @@ index d58594a..feae942 100644 unsigned int ext_pullup_enable_pin; unsigned int pullup_duration; -From eb986e6a0aab1b478eedd7be36e58ab85e476558 Mon Sep 17 00:00:00 2001 -From: popcornmix -Date: Wed, 4 Feb 2015 20:35:02 +0000 -Subject: [PATCH 104/114] config: Add USBIP - ---- - arch/arm/configs/bcm2709_defconfig | 4 ++++ - arch/arm/configs/bcmrpi_defconfig | 3 +++ - 2 files changed, 7 insertions(+) - -diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig -index 70b175c..b5bf4cb 100644 ---- a/arch/arm/configs/bcm2709_defconfig -+++ b/arch/arm/configs/bcm2709_defconfig -@@ -722,6 +722,7 @@ CONFIG_DVB_USB_GL861=m - CONFIG_DVB_USB_LME2510=m - CONFIG_DVB_USB_MXL111SF=m - CONFIG_DVB_USB_RTL28XXU=m -+CONFIG_DVB_USB_DVBSKY=m - CONFIG_SMS_USB_DRV=m - CONFIG_DVB_B2C2_FLEXCOP_USB=m - CONFIG_DVB_AS102=m -@@ -864,6 +865,9 @@ CONFIG_USB_STORAGE_ENE_UB6250=m - CONFIG_USB_UAS=m - CONFIG_USB_MDC800=m - CONFIG_USB_MICROTEK=m -+CONFIG_USBIP_CORE=m -+CONFIG_USBIP_VHCI_HCD=m -+CONFIG_USBIP_HOST=m - CONFIG_USB_SERIAL=m - CONFIG_USB_SERIAL_GENERIC=y - CONFIG_USB_SERIAL_AIRCABLE=m -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 0453a38..81c4387 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -858,6 +858,9 @@ CONFIG_USB_STORAGE_ENE_UB6250=m - CONFIG_USB_UAS=m - CONFIG_USB_MDC800=m - CONFIG_USB_MICROTEK=m -+CONFIG_USBIP_CORE=m -+CONFIG_USBIP_VHCI_HCD=m -+CONFIG_USBIP_HOST=m - CONFIG_USB_SERIAL=m - CONFIG_USB_SERIAL_GENERIC=y - CONFIG_USB_SERIAL_AIRCABLE=m - -From a05cd269cbf2623efe2499459efdd123ee04ab81 Mon Sep 17 00:00:00 2001 +From ecd1431f8ccf075d1a0b8126f964c5b060fe6728 Mon Sep 17 00:00:00 2001 From: P33M Date: Wed, 4 Feb 2015 12:16:50 +0000 -Subject: [PATCH 105/114] dwc_otg: fixup read-modify-write in critical paths +Subject: [PATCH 102/109] dwc_otg: fixup read-modify-write in critical paths Be more careful about read-modify-write on registers that the FIQ also touches. @@ -138227,33 +138277,10 @@ index 17d3030..acd0dd7 100644 } } -From b3c15a1f4217b0a6de8d7e8a0b11f530b40f01e5 Mon Sep 17 00:00:00 2001 -From: Phil Elwell -Date: Thu, 5 Feb 2015 14:05:35 +0000 -Subject: [PATCH 106/114] BCM2709_DT: Set the "always-on" flag for the timer to - enable high res mode - ---- - arch/arm/boot/dts/bcm2709.dtsi | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/arch/arm/boot/dts/bcm2709.dtsi b/arch/arm/boot/dts/bcm2709.dtsi -index c7e975c..220866e 100644 ---- a/arch/arm/boot/dts/bcm2709.dtsi -+++ b/arch/arm/boot/dts/bcm2709.dtsi -@@ -115,6 +115,7 @@ - <3 1>, // PHYS_NONSECURE_PPI - <3 3>, // VIRT_PPI - <3 2>; // HYP_PPI -+ always-on; - }; - - cpus: cpus { - -From cf1b789e1a6873d9680156fac9f675a0f1cdd17b Mon Sep 17 00:00:00 2001 +From 49079860970f0a0435515c9a5fb2a91f08fe799d Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 5 Feb 2015 16:01:44 +0000 -Subject: [PATCH 107/114] i2c_bcm2708: Fix clock reference counting +Subject: [PATCH 103/109] i2c_bcm2708: Fix clock reference counting --- drivers/i2c/busses/i2c-bcm2708.c | 12 ++++++++++-- @@ -138301,48 +138328,10 @@ index 526129b..fda59ba 100644 kfree(bi); -From f387fb99b8478a4b50ce140dda3f1f64425c02f6 Mon Sep 17 00:00:00 2001 -From: Phil Elwell -Date: Fri, 6 Feb 2015 09:06:55 +0000 -Subject: [PATCH 108/114] BCM270x_DT: Rename the activity LED back to the - prosaic "led0" - ---- - arch/arm/boot/dts/bcm2708.dtsi | 2 +- - arch/arm/boot/dts/bcm2709.dtsi | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/arch/arm/boot/dts/bcm2708.dtsi b/arch/arm/boot/dts/bcm2708.dtsi -index d879316..af6b1d9 100644 ---- a/arch/arm/boot/dts/bcm2708.dtsi -+++ b/arch/arm/boot/dts/bcm2708.dtsi -@@ -81,7 +81,7 @@ - compatible = "gpio-leds"; - - act_led: act { -- label = "ACT"; -+ label = "led0"; - linux,default-trigger = "mmc0"; - }; - }; -diff --git a/arch/arm/boot/dts/bcm2709.dtsi b/arch/arm/boot/dts/bcm2709.dtsi -index 220866e..fee2053 100644 ---- a/arch/arm/boot/dts/bcm2709.dtsi -+++ b/arch/arm/boot/dts/bcm2709.dtsi -@@ -81,7 +81,7 @@ - compatible = "gpio-leds"; - - act_led: act { -- label = "ACT"; -+ label = "led0"; - linux,default-trigger = "mmc0"; - }; - }; - -From 37973590d43217e3f7c4d905578b1b3324ea45c4 Mon Sep 17 00:00:00 2001 +From 8bc381a8da1b10744c1783455495416f977f3e7c Mon Sep 17 00:00:00 2001 From: Byron Bradley Date: Fri, 6 Feb 2015 14:19:41 +0000 -Subject: [PATCH 109/114] Add device-tree overlay for pcf2127 +Subject: [PATCH 104/109] Add device-tree overlay for pcf2127 Signed-off-by: Byron Bradley --- @@ -138352,7 +138341,7 @@ Signed-off-by: Byron Bradley create mode 100644 arch/arm/boot/dts/pcf2127-rtc-overlay.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 8f76444..56830ef 100644 +index f3b6364..2031ffe 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -72,6 +72,7 @@ dtb-$(RPI_DT_OVERLAYS) += hifiberry-amp-overlay.dtb @@ -138392,276 +138381,10 @@ index 0000000..01fc81d + }; +}; -From 5f1c4a04606c2fb2d0203bdbe364a6054b3bb0b7 Mon Sep 17 00:00:00 2001 -From: Phil Elwell -Date: Fri, 6 Feb 2015 13:50:57 +0000 -Subject: [PATCH 110/114] BCM270x_DT: Add pwr_led, and the required "input" - trigger - -The "input" trigger makes the associated GPIO an input. This is to support -the Raspberry Pi PWR LED, which is driven by external hardware in normal use. - -N.B. pwr_led is not available on Model A or B boards. ---- - arch/arm/boot/dts/bcm2708-rpi-b-plus.dts | 18 ++++++++- - arch/arm/boot/dts/bcm2708-rpi-b.dts | 8 +++- - arch/arm/boot/dts/bcm2708.dtsi | 5 --- - arch/arm/boot/dts/bcm2709-rpi-2-b.dts | 18 ++++++++- - arch/arm/boot/dts/bcm2709.dtsi | 5 --- - arch/arm/configs/bcm2709_defconfig | 1 + - arch/arm/configs/bcmrpi_defconfig | 1 + - drivers/leds/trigger/Kconfig | 7 ++++ - drivers/leds/trigger/Makefile | 1 + - drivers/leds/trigger/ledtrig-input.c | 65 ++++++++++++++++++++++++++++++++ - 10 files changed, 113 insertions(+), 16 deletions(-) - create mode 100644 drivers/leds/trigger/ledtrig-input.c - -diff --git a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts -index 6b9512b..7f84473 100644 ---- a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts -+++ b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts -@@ -83,8 +83,18 @@ - pinctrl-0 = <&i2s_pins>; - }; - --&act_led { -- gpios = <&gpio 47 0>; -+&leds { -+ act_led: act { -+ label = "led0"; -+ linux,default-trigger = "mmc0"; -+ gpios = <&gpio 47 0>; -+ }; -+ -+ pwr_led: pwr { -+ label = "led1"; -+ linux,default-trigger = "input"; -+ gpios = <&gpio 35 0>; -+ }; - }; - - / { -@@ -99,5 +109,9 @@ - act_led_gpio = <&act_led>,"gpios:4"; - act_led_activelow = <&act_led>,"gpios:8"; - act_led_trigger = <&act_led>,"linux,default-trigger"; -+ -+ pwr_led_gpio = <&pwr_led>,"gpios:4"; -+ pwr_led_activelow = <&pwr_led>,"gpios:8"; -+ pwr_led_trigger = <&pwr_led>,"linux,default-trigger"; - }; - }; -diff --git a/arch/arm/boot/dts/bcm2708-rpi-b.dts b/arch/arm/boot/dts/bcm2708-rpi-b.dts -index b8520b55..a39562f 100644 ---- a/arch/arm/boot/dts/bcm2708-rpi-b.dts -+++ b/arch/arm/boot/dts/bcm2708-rpi-b.dts -@@ -83,8 +83,12 @@ - pinctrl-0 = <&i2s_pins>; - }; - --&act_led { -- gpios = <&gpio 16 1>; -+&leds { -+ act_led: act { -+ label = "led0"; -+ linux,default-trigger = "mmc0"; -+ gpios = <&gpio 16 1>; -+ }; - }; - - / { -diff --git a/arch/arm/boot/dts/bcm2708.dtsi b/arch/arm/boot/dts/bcm2708.dtsi -index af6b1d9..aeeabae 100644 ---- a/arch/arm/boot/dts/bcm2708.dtsi -+++ b/arch/arm/boot/dts/bcm2708.dtsi -@@ -79,11 +79,6 @@ - - leds: leds { - compatible = "gpio-leds"; -- -- act_led: act { -- label = "led0"; -- linux,default-trigger = "mmc0"; -- }; - }; - }; - -diff --git a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts -index 63d3da4..75c222f 100644 ---- a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts -+++ b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts -@@ -83,8 +83,18 @@ - pinctrl-0 = <&i2s_pins>; - }; - --&act_led { -- gpios = <&gpio 47 0>; -+&leds { -+ act_led: act { -+ label = "led0"; -+ linux,default-trigger = "mmc0"; -+ gpios = <&gpio 47 0>; -+ }; -+ -+ pwr_led: pwr { -+ label = "led1"; -+ linux,default-trigger = "input"; -+ gpios = <&gpio 35 0>; -+ }; - }; - - / { -@@ -99,5 +109,9 @@ - act_led_gpio = <&act_led>,"gpios:4"; - act_led_activelow = <&act_led>,"gpios:8"; - act_led_trigger = <&act_led>,"linux,default-trigger"; -+ -+ pwr_led_gpio = <&pwr_led>,"gpios:4"; -+ pwr_led_activelow = <&pwr_led>,"gpios:8"; -+ pwr_led_trigger = <&pwr_led>,"linux,default-trigger"; - }; - }; -diff --git a/arch/arm/boot/dts/bcm2709.dtsi b/arch/arm/boot/dts/bcm2709.dtsi -index fee2053..6986455 100644 ---- a/arch/arm/boot/dts/bcm2709.dtsi -+++ b/arch/arm/boot/dts/bcm2709.dtsi -@@ -79,11 +79,6 @@ - - leds: leds { - compatible = "gpio-leds"; -- -- act_led: act { -- label = "led0"; -- linux,default-trigger = "mmc0"; -- }; - }; - }; - -diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig -index b5bf4cb..7bb9de6 100644 ---- a/arch/arm/configs/bcm2709_defconfig -+++ b/arch/arm/configs/bcm2709_defconfig -@@ -959,6 +959,7 @@ CONFIG_LEDS_TRIGGER_GPIO=y - CONFIG_LEDS_TRIGGER_DEFAULT_ON=y - CONFIG_LEDS_TRIGGER_TRANSIENT=m - CONFIG_LEDS_TRIGGER_CAMERA=m -+CONFIG_LEDS_TRIGGER_INPUT=y - CONFIG_RTC_CLASS=y - # CONFIG_RTC_HCTOSYS is not set - CONFIG_RTC_DRV_DS1307=m -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 81c4387..3b09de9 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -952,6 +952,7 @@ CONFIG_LEDS_TRIGGER_GPIO=y - CONFIG_LEDS_TRIGGER_DEFAULT_ON=y - CONFIG_LEDS_TRIGGER_TRANSIENT=m - CONFIG_LEDS_TRIGGER_CAMERA=m -+CONFIG_LEDS_TRIGGER_INPUT=y - CONFIG_RTC_CLASS=y - # CONFIG_RTC_HCTOSYS is not set - CONFIG_RTC_DRV_DS1307=m -diff --git a/drivers/leds/trigger/Kconfig b/drivers/leds/trigger/Kconfig -index 49794b4..640756b 100644 ---- a/drivers/leds/trigger/Kconfig -+++ b/drivers/leds/trigger/Kconfig -@@ -108,4 +108,11 @@ config LEDS_TRIGGER_CAMERA - This enables direct flash/torch on/off by the driver, kernel space. - If unsure, say Y. - -+config LEDS_TRIGGER_INPUT -+ tristate "LED Input Trigger" -+ depends on LEDS_TRIGGERS -+ help -+ This allows the GPIOs assigned to be LEDs to be initialised to inputs. -+ If unsure, say Y. -+ - endif # LEDS_TRIGGERS -diff --git a/drivers/leds/trigger/Makefile b/drivers/leds/trigger/Makefile -index 1abf48d..c03afdc 100644 ---- a/drivers/leds/trigger/Makefile -+++ b/drivers/leds/trigger/Makefile -@@ -8,3 +8,4 @@ obj-$(CONFIG_LEDS_TRIGGER_CPU) += ledtrig-cpu.o - obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON) += ledtrig-default-on.o - obj-$(CONFIG_LEDS_TRIGGER_TRANSIENT) += ledtrig-transient.o - obj-$(CONFIG_LEDS_TRIGGER_CAMERA) += ledtrig-camera.o -+obj-$(CONFIG_LEDS_TRIGGER_INPUT) += ledtrig-input.o -diff --git a/drivers/leds/trigger/ledtrig-input.c b/drivers/leds/trigger/ledtrig-input.c -new file mode 100644 -index 0000000..2ca2b98 ---- /dev/null -+++ b/drivers/leds/trigger/ledtrig-input.c -@@ -0,0 +1,65 @@ -+/* -+ * Set LED GPIO to Input "Trigger" -+ * -+ * Copyright 2015 Phil Elwell -+ * -+ * Based on Nick Forbes's ledtrig-default-on.c. -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License version 2 as -+ * published by the Free Software Foundation. -+ * -+ */ -+ -+#include -+#include -+#include -+#include -+#include -+#include "../leds.h" -+ -+/* This is a hack to get at the private 'gpio' member */ -+ -+struct gpio_led_data { -+ struct led_classdev cdev; -+ unsigned gpio; -+}; -+ -+static void input_trig_activate(struct led_classdev *led_cdev) -+{ -+ struct gpio_led_data *led_dat = -+ container_of(led_cdev, struct gpio_led_data, cdev); -+ if (gpio_is_valid(led_dat->gpio)) -+ gpio_direction_input(led_dat->gpio); -+} -+ -+static void input_trig_deactivate(struct led_classdev *led_cdev) -+{ -+ struct gpio_led_data *led_dat = -+ container_of(led_cdev, struct gpio_led_data, cdev); -+ if (gpio_is_valid(led_dat->gpio)) -+ gpio_direction_output(led_dat->gpio, 0); -+} -+ -+static struct led_trigger input_led_trigger = { -+ .name = "input", -+ .activate = input_trig_activate, -+ .deactivate = input_trig_deactivate, -+}; -+ -+static int __init input_trig_init(void) -+{ -+ return led_trigger_register(&input_led_trigger); -+} -+ -+static void __exit input_trig_exit(void) -+{ -+ led_trigger_unregister(&input_led_trigger); -+} -+ -+module_init(input_trig_init); -+module_exit(input_trig_exit); -+ -+MODULE_AUTHOR("Phil Elwell "); -+MODULE_DESCRIPTION("Set LED GPIO to Input \"trigger\""); -+MODULE_LICENSE("GPL"); - -From 7fa07e9f8c88a5a628b9ca8a843d3490a59fb9cb Mon Sep 17 00:00:00 2001 +From ee1f9890529733d06b8cc1d142b16b416ada70de Mon Sep 17 00:00:00 2001 From: android Date: Mon, 25 Aug 2014 13:18:21 +0100 -Subject: [PATCH 111/114] BCM2708_VCIO : Add automatic creation of device node +Subject: [PATCH 105/109] BCM2708_VCIO : Add automatic creation of device node --- arch/arm/mach-bcm2708/vcio.c | 12 +++++++++++- @@ -138743,10 +138466,10 @@ index 5e43e85..700bff4 100644 } -From 58ee33ad32d4a00735252718f8bac3f7592af6e7 Mon Sep 17 00:00:00 2001 +From 0ca4c1f57c84bb114641176d63d16ce345f5a95d Mon Sep 17 00:00:00 2001 From: jeanleflambeur Date: Sun, 1 Feb 2015 12:35:38 +0100 -Subject: [PATCH 112/114] Fix grabbing lock from atomic context in i2c driver +Subject: [PATCH 106/109] Fix grabbing lock from atomic context in i2c driver 2 main changes: - check for timeouts in the bcm2708_bsc_setup function as indicated by this comment: @@ -138965,45 +138688,10 @@ index fda59ba..81e9374 100644 dev_info(&pdev->dev, "BSC%d Controller at 0x%08lx (irq %d) (baudrate %d)\n", pdev->id, (unsigned long)regs->start, irq, baudrate); -From 72df98feb0561f3b249c853f7722d2939df1dfa1 Mon Sep 17 00:00:00 2001 -From: popcornmix -Date: Sun, 8 Feb 2015 11:30:07 +0000 -Subject: [PATCH 113/114] config: Add ENC28J60 SPI ethernet module - ---- - arch/arm/configs/bcm2709_defconfig | 1 + - arch/arm/configs/bcmrpi_defconfig | 1 + - 2 files changed, 2 insertions(+) - -diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig -index 7bb9de6..c8577f6 100644 ---- a/arch/arm/configs/bcm2709_defconfig -+++ b/arch/arm/configs/bcm2709_defconfig -@@ -423,6 +423,7 @@ CONFIG_MACVLAN=m - CONFIG_NETCONSOLE=m - CONFIG_TUN=m - CONFIG_VETH=m -+CONFIG_ENC28J60=m - CONFIG_MDIO_BITBANG=m - CONFIG_PPP=m - CONFIG_PPP_BSDCOMP=m -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 3b09de9..9303cfb 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -416,6 +416,7 @@ CONFIG_MACVLAN=m - CONFIG_NETCONSOLE=m - CONFIG_TUN=m - CONFIG_VETH=m -+CONFIG_ENC28J60=m - CONFIG_MDIO_BITBANG=m - CONFIG_PPP=m - CONFIG_PPP_BSDCOMP=m - -From 89d56313537f161a0d9b3888c0f39770cbb994a7 Mon Sep 17 00:00:00 2001 +From d3d9b024cf0bb6acdf4b79066e782fe9dab7bedd Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 8 Feb 2015 13:17:00 +0000 -Subject: [PATCH 114/114] ntp: Patch to fix false positives on 32bit systems +Subject: [PATCH 107/109] ntp: Patch to fix false positives on 32bit systems See: https://bugzilla.kernel.org/show_bug.cgi?id=92481 --- @@ -139026,3 +138714,166 @@ index 28bf91c..242774d 100644 return -EINVAL; } + +From f58911890f7c4585275f9cc2b7f31b27dc8d9393 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Thu, 12 Feb 2015 11:17:53 +0000 +Subject: [PATCH 108/109] Fix LED "input" trigger implementation for 3.19 + +--- + drivers/leds/leds-gpio.c | 10 +++++++++- + drivers/leds/trigger/ledtrig-input.c | 19 ++++--------------- + include/linux/leds.h | 3 +++ + 3 files changed, 16 insertions(+), 16 deletions(-) + +diff --git a/drivers/leds/leds-gpio.c b/drivers/leds/leds-gpio.c +index 7ea1ea42..cf70ea1 100644 +--- a/drivers/leds/leds-gpio.c ++++ b/drivers/leds/leds-gpio.c +@@ -41,6 +41,13 @@ static void gpio_led_work(struct work_struct *work) + led_dat->platform_gpio_blink_set(led_dat->gpiod, + led_dat->new_level, NULL, NULL); + led_dat->blinking = 0; ++ } else if (led_dat->cdev.flags & SET_GPIO_INPUT) { ++ gpiod_direction_input(led_dat->gpiod); ++ led_dat->cdev.flags &= ~SET_GPIO_INPUT; ++ } ++ else if (led_dat->cdev.flags & SET_GPIO_OUTPUT) { ++ gpiod_direction_output(led_dat->gpiod, led_dat->new_level); ++ led_dat->cdev.flags &= ~SET_GPIO_OUTPUT; + } else + gpiod_set_value_cansleep(led_dat->gpiod, led_dat->new_level); + } +@@ -61,7 +68,8 @@ static void gpio_led_set(struct led_classdev *led_cdev, + * seem to have a reliable way to know if we're already in one; so + * let's just assume the worst. + */ +- if (led_dat->can_sleep) { ++ if (led_dat->can_sleep || ++ (led_dat->cdev.flags & (SET_GPIO_INPUT | SET_GPIO_OUTPUT) )) { + led_dat->new_level = level; + schedule_work(&led_dat->work); + } else { +diff --git a/drivers/leds/trigger/ledtrig-input.c b/drivers/leds/trigger/ledtrig-input.c +index 2ca2b98..07d1219 100644 +--- a/drivers/leds/trigger/ledtrig-input.c ++++ b/drivers/leds/trigger/ledtrig-input.c +@@ -18,27 +18,16 @@ + #include + #include "../leds.h" + +-/* This is a hack to get at the private 'gpio' member */ +- +-struct gpio_led_data { +- struct led_classdev cdev; +- unsigned gpio; +-}; +- + static void input_trig_activate(struct led_classdev *led_cdev) + { +- struct gpio_led_data *led_dat = +- container_of(led_cdev, struct gpio_led_data, cdev); +- if (gpio_is_valid(led_dat->gpio)) +- gpio_direction_input(led_dat->gpio); ++ led_cdev->flags |= SET_GPIO_INPUT; ++ led_set_brightness_async(led_cdev, 0); + } + + static void input_trig_deactivate(struct led_classdev *led_cdev) + { +- struct gpio_led_data *led_dat = +- container_of(led_cdev, struct gpio_led_data, cdev); +- if (gpio_is_valid(led_dat->gpio)) +- gpio_direction_output(led_dat->gpio, 0); ++ led_cdev->flags |= SET_GPIO_OUTPUT; ++ led_set_brightness_async(led_cdev, 0); + } + + static struct led_trigger input_led_trigger = { +diff --git a/include/linux/leds.h b/include/linux/leds.h +index cfceef3..4c8dc19 100644 +--- a/include/linux/leds.h ++++ b/include/linux/leds.h +@@ -46,6 +46,9 @@ struct led_classdev { + #define LED_SYSFS_DISABLE (1 << 20) + #define SET_BRIGHTNESS_ASYNC (1 << 21) + #define SET_BRIGHTNESS_SYNC (1 << 22) ++ /* Additions for Raspberry Pi PWR LED */ ++#define SET_GPIO_INPUT (1 << 23) ++#define SET_GPIO_OUTPUT (1 << 24) + + /* Set LED brightness level */ + /* Must not sleep, use a workqueue if needed */ + +From 087966e5e3bafdeb9f9ac7578f4995c7cc7ecf1d Mon Sep 17 00:00:00 2001 +From: P33M +Date: Thu, 12 Feb 2015 11:20:00 +0000 +Subject: [PATCH 109/109] fiq_fsm: Falling out of the state machine isn't fatal + +This edge case can be hit if the port is disabled while the FIQ is +in the middle of a transaction. Make the effects less severe. + +Also get rid of the useless return value. +--- + drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c | 20 +++++++------------- + 1 file changed, 7 insertions(+), 13 deletions(-) + +diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c +index 6266661..8a31562 100644 +--- a/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c ++++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c +@@ -2357,7 +2357,7 @@ int dwc_otg_fiq_unsetup_per_dma(dwc_otg_hcd_t *hcd, dwc_otg_qh_t *qh, dwc_otg_qt + * different from the normal (messy) path. This function and its friends handles + * channel cleanup and transaction completion from a FIQ transaction. + */ +-int32_t dwc_otg_hcd_handle_hc_fsm(dwc_otg_hcd_t *hcd, uint32_t num) ++void dwc_otg_hcd_handle_hc_fsm(dwc_otg_hcd_t *hcd, uint32_t num) + { + struct fiq_channel_state *st = &hcd->fiq_state->channel[num]; + dwc_hc_t *hc = hcd->hc_ptr_array[num]; +@@ -2366,7 +2366,6 @@ int32_t dwc_otg_hcd_handle_hc_fsm(dwc_otg_hcd_t *hcd, uint32_t num) + dwc_otg_hc_regs_t *hc_regs = hcd->core_if->host_if->hc_regs[num]; + hcint_data_t hcint = hcd->fiq_state->channel[num].hcint_copy; + int hostchannels = 0; +- int ret = 0; + fiq_print(FIQDBG_INT, hcd->fiq_state, "OUT %01d %01d ", num , st->fsm); + + hostchannels = hcd->available_host_channels; +@@ -2380,7 +2379,6 @@ int32_t dwc_otg_hcd_handle_hc_fsm(dwc_otg_hcd_t *hcd, uint32_t num) + * CLEAR_TT_BUFFER hub command if we were in the start-split phase. + */ + release_channel(hcd, hc, NULL, hc->halt_status); +- ret = 1; + break; + + case FIQ_NP_SPLIT_DONE: +@@ -2393,7 +2391,6 @@ int32_t dwc_otg_hcd_handle_hc_fsm(dwc_otg_hcd_t *hcd, uint32_t num) + } else if (hcint.b.nak) { + handle_hc_nak_intr(hcd, hc, hc_regs, qtd); + } +- ret = 1; + break; + + case FIQ_NP_SPLIT_HS_ABORTED: +@@ -2604,15 +2601,12 @@ int32_t dwc_otg_hcd_handle_hc_fsm(dwc_otg_hcd_t *hcd, uint32_t num) + break; + + default: +- local_fiq_disable(); +- DWC_WARN("unexpected state received on hc=%d fsm=%d", hc->hc_num, st->fsm); +- BUG(); +- } +- //if (hostchannels != hcd->available_host_channels) { +- /* should have incremented by now! */ +- // BUG(); +-// } +- return ret; ++ DWC_WARN("Unexpected state received on hc=%d fsm=%d on transfer to device %d ep 0x%x", ++ hc->hc_num, st->fsm, hc->dev_addr, hc->ep_num); ++ qtd->error_count++; ++ release_channel(hcd, hc, qtd, DWC_OTG_HC_XFER_NO_HALT_STATUS); ++ } ++ return; + } + + /** Handles interrupt for a specific Host Channel */ diff --git a/projects/RPi2/linux/linux.arm.conf b/projects/RPi2/linux/linux.arm.conf index 48b967cbaa..5fbc4348a4 100644 --- a/projects/RPi2/linux/linux.arm.conf +++ b/projects/RPi2/linux/linux.arm.conf @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 3.18.6 Kernel Configuration +# Linux/arm 3.19.0 Kernel Configuration # CONFIG_ARM=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y @@ -91,7 +91,6 @@ CONFIG_TICK_CPU_ACCOUNTING=y # # RCU Subsystem # -CONFIG_TREE_PREEMPT_RCU=y CONFIG_PREEMPT_RCU=y # CONFIG_TASKS_RCU is not set CONFIG_RCU_STALL_COMMON=y @@ -102,7 +101,7 @@ CONFIG_RCU_FANOUT_LEAF=16 # CONFIG_RCU_FAST_NO_HZ is not set # CONFIG_TREE_RCU_TRACE is not set CONFIG_RCU_BOOST=y -CONFIG_RCU_BOOST_PRIO=1 +CONFIG_RCU_KTHREAD_PRIO=1 CONFIG_RCU_BOOST_DELAY=500 CONFIG_RCU_NOCB_CPU=y # CONFIG_RCU_NOCB_CPU_NONE is not set @@ -120,14 +119,14 @@ CONFIG_CGROUPS=y # CONFIG_CGROUP_DEVICE is not set # CONFIG_CPUSETS is not set # CONFIG_CGROUP_CPUACCT is not set -# CONFIG_RESOURCE_COUNTERS is not set +# CONFIG_MEMCG is not set # CONFIG_CGROUP_SCHED is not set # CONFIG_BLK_CGROUP is not set # CONFIG_CHECKPOINT_RESTORE is not set # CONFIG_NAMESPACES is not set # CONFIG_SCHED_AUTOGROUP is not set # CONFIG_SYSFS_DEPRECATED is not set -# CONFIG_RELAY is not set +CONFIG_RELAY=y CONFIG_BLK_DEV_INITRD=y CONFIG_INITRAMFS_SOURCE=" " CONFIG_INITRAMFS_ROOT_UID=0 @@ -138,6 +137,7 @@ CONFIG_RD_GZIP=y # CONFIG_RD_XZ is not set # CONFIG_RD_LZO is not set # CONFIG_RD_LZ4 is not set +# CONFIG_INIT_FALLBACK is not set # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set CONFIG_SYSCTL=y CONFIG_ANON_INODES=y @@ -219,6 +219,7 @@ CONFIG_OLD_SIGACTION=y # GCOV-based kernel profiling # # CONFIG_GCOV_KERNEL is not set +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y CONFIG_HAVE_GENERIC_DMA_COHERENT=y CONFIG_SLABINFO=y CONFIG_RT_MUTEXES=y @@ -285,7 +286,6 @@ CONFIG_RWSEM_SPIN_ON_OWNER=y # CONFIG_MMU=y # CONFIG_ARCH_MULTIPLATFORM is not set -# CONFIG_ARCH_INTEGRATOR is not set # CONFIG_ARCH_REALVIEW is not set # CONFIG_ARCH_VERSATILE is not set # CONFIG_ARCH_AT91 is not set @@ -363,6 +363,7 @@ CONFIG_ARM_L1_CACHE_SHIFT_6=y CONFIG_ARM_L1_CACHE_SHIFT=6 CONFIG_ARM_DMA_MEM_BUFFERABLE=y CONFIG_ARCH_HAS_BARRIERS=y +# CONFIG_ARM_KERNMEM_PERMS is not set # CONFIG_ARM_ERRATA_430973 is not set # CONFIG_ARM_ERRATA_458693 is not set # CONFIG_ARM_ERRATA_460075 is not set @@ -382,7 +383,6 @@ CONFIG_ARCH_HAS_BARRIERS=y # # Bus support # -CONFIG_ARM_AMBA=y # CONFIG_PCI_SYSCALL is not set # CONFIG_PCCARD is not set @@ -495,11 +495,11 @@ CONFIG_CPU_FREQ_GOV_POWERSAVE=y # CONFIG_CPU_FREQ_GOV_USERSPACE is not set CONFIG_CPU_FREQ_GOV_ONDEMAND=y # CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set -# CONFIG_CPUFREQ_DT is not set # -# ARM CPU frequency scaling drivers +# CPU frequency scaling drivers # +# CONFIG_CPUFREQ_DT is not set # CONFIG_ARM_KIRKWOOD_CPUFREQ is not set CONFIG_ARM_BCM2835_CPUFREQ=y @@ -543,7 +543,7 @@ CONFIG_COREDUMP=y # # CONFIG_SUSPEND is not set # CONFIG_HIBERNATION is not set -# CONFIG_PM_RUNTIME is not set +# CONFIG_PM is not set CONFIG_CPU_PM=y CONFIG_ARCH_SUSPEND_POSSIBLE=y # CONFIG_ARM_CPU_SUSPEND is not set @@ -575,6 +575,7 @@ CONFIG_IP_MROUTE=y # CONFIG_SYN_COOKIES is not set # CONFIG_NET_UDP_TUNNEL is not set # CONFIG_NET_FOU is not set +# CONFIG_NET_FOU_IP_TUNNELS is not set # CONFIG_GENEVE is not set # CONFIG_INET_AH is not set # CONFIG_INET_ESP is not set @@ -654,6 +655,7 @@ CONFIG_NF_NAT_FTP=m CONFIG_NF_NAT_IRC=m CONFIG_NF_NAT_SIP=m # CONFIG_NF_NAT_TFTP is not set +# CONFIG_NF_NAT_REDIRECT is not set # CONFIG_NF_TABLES is not set CONFIG_NETFILTER_XTABLES=m @@ -819,6 +821,7 @@ CONFIG_DNS_RESOLVER=y # CONFIG_NETLINK_DIAG is not set # CONFIG_NET_MPLS_GSO is not set # CONFIG_HSR is not set +# CONFIG_NET_SWITCHDEV is not set CONFIG_RPS=y CONFIG_RFS_ACCEL=y CONFIG_XPS=y @@ -837,10 +840,12 @@ CONFIG_NET_FLOW_LIMIT=y # CONFIG_CAN is not set # CONFIG_IRDA is not set CONFIG_BT=m +CONFIG_BT_BREDR=y CONFIG_BT_RFCOMM=m CONFIG_BT_RFCOMM_TTY=y # CONFIG_BT_BNEP is not set CONFIG_BT_HIDP=m +CONFIG_BT_LE=y # # Bluetooth device drivers @@ -874,6 +879,7 @@ CONFIG_MAC80211=m CONFIG_MAC80211_HAS_RC=y CONFIG_MAC80211_RC_MINSTREL=y CONFIG_MAC80211_RC_MINSTREL_HT=y +CONFIG_MAC80211_RC_MINSTREL_VHT=y CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" # CONFIG_MAC80211_MESH is not set @@ -892,6 +898,8 @@ CONFIG_HAVE_BPF_JIT=y # # Device Drivers # +CONFIG_ARM_AMBA=y +# CONFIG_TEGRA_AHB is not set # # Generic Driver Options @@ -943,7 +951,7 @@ CONFIG_OF=y # # Device Tree and Open Firmware support # -# CONFIG_OF_SELFTEST is not set +# CONFIG_OF_UNITTEST is not set CONFIG_OF_FLATTREE=y CONFIG_OF_EARLY_FLATTREE=y CONFIG_OF_ADDRESS=y @@ -1084,6 +1092,7 @@ CONFIG_NET_CORE=y # CONFIG_EQUALIZER is not set # CONFIG_NET_TEAM is not set # CONFIG_MACVLAN is not set +# CONFIG_IPVLAN is not set # CONFIG_VXLAN is not set CONFIG_NETCONSOLE=y CONFIG_NETPOLL=y @@ -1105,6 +1114,7 @@ CONFIG_TUN=y # CONFIG_NET_DSA_MV88E6131 is not set # CONFIG_NET_DSA_MV88E6123_61_65 is not set # CONFIG_NET_DSA_MV88E6171 is not set +# CONFIG_NET_DSA_MV88E6352 is not set # CONFIG_NET_DSA_BCM_SF2 is not set # CONFIG_ETHERNET is not set CONFIG_PHYLIB=y @@ -1200,6 +1210,7 @@ CONFIG_ATH9K_AHB=y # CONFIG_ATH9K_DEBUGFS is not set # CONFIG_ATH9K_DYNACK is not set # CONFIG_ATH9K_CHANNEL_CONTEXT is not set +CONFIG_ATH9K_PCOEM=y CONFIG_ATH9K_HTC=m # CONFIG_ATH9K_HTC_DEBUGFS is not set CONFIG_CARL9170=m @@ -1395,6 +1406,7 @@ CONFIG_SERIAL_CORE=y CONFIG_SERIAL_CORE_CONSOLE=y # CONFIG_SERIAL_SCCNXP is not set # CONFIG_SERIAL_SC16IS7XX is not set +# CONFIG_SERIAL_BCM63XX is not set # CONFIG_SERIAL_ALTERA_JTAGUART is not set # CONFIG_SERIAL_ALTERA_UART is not set # CONFIG_SERIAL_IFX6X60 is not set @@ -1470,6 +1482,7 @@ CONFIG_I2C_GPIO=y # Other I2C/SMBus bus drivers # # CONFIG_I2C_STUB is not set +# CONFIG_I2C_SLAVE is not set # CONFIG_I2C_DEBUG_CORE is not set # CONFIG_I2C_DEBUG_ALGO is not set # CONFIG_I2C_DEBUG_BUS is not set @@ -1542,6 +1555,7 @@ CONFIG_GPIO_SYSFS=y # # Memory mapped GPIO drivers: # +# CONFIG_GPIO_74XX_MMIO is not set # CONFIG_GPIO_GENERIC_PLATFORM is not set # CONFIG_GPIO_DWAPB is not set # CONFIG_GPIO_EM is not set @@ -1689,6 +1703,7 @@ CONFIG_HWMON=y # CONFIG_SENSORS_NTC_THERMISTOR is not set # CONFIG_SENSORS_NCT6683 is not set # CONFIG_SENSORS_NCT6775 is not set +# CONFIG_SENSORS_NCT7802 is not set # CONFIG_SENSORS_PCF8591 is not set # CONFIG_PMBUS is not set # CONFIG_SENSORS_SHT15 is not set @@ -1797,6 +1812,7 @@ CONFIG_MFD_CORE=y # CONFIG_MFD_AS3722 is not set # CONFIG_PMIC_ADP5520 is not set # CONFIG_MFD_AAT2870_CORE is not set +# CONFIG_MFD_ATMEL_HLCDC is not set # CONFIG_MFD_BCM590XX is not set # CONFIG_MFD_AXP20X is not set # CONFIG_MFD_CROS_EC is not set @@ -1806,6 +1822,7 @@ CONFIG_MFD_CORE=y # CONFIG_MFD_DA9052_I2C is not set # CONFIG_MFD_DA9055 is not set # CONFIG_MFD_DA9063 is not set +# CONFIG_MFD_DLN2 is not set # CONFIG_MFD_MC13XXX_SPI is not set # CONFIG_MFD_MC13XXX_I2C is not set # CONFIG_MFD_HI6421_PMIC is not set @@ -1932,9 +1949,9 @@ CONFIG_IR_IMON=m CONFIG_IR_MCEUSB=m CONFIG_IR_REDRAT3=m CONFIG_IR_STREAMZAP=m +CONFIG_IR_IGORPLUGUSB=m CONFIG_IR_IGUANA=m CONFIG_IR_TTUSBIR=m -# CONFIG_IR_IMG is not set # CONFIG_RC_LOOPBACK is not set CONFIG_IR_GPIO_CIR=m CONFIG_MEDIA_USB_SUPPORT=y @@ -1959,7 +1976,6 @@ CONFIG_VIDEO_PVRUSB2_SYSFS=y CONFIG_VIDEO_PVRUSB2_DVB=y # CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set # CONFIG_VIDEO_HDPVR is not set -# CONFIG_VIDEO_TLG2300 is not set # CONFIG_VIDEO_USBVISION is not set CONFIG_VIDEO_STK1160_COMMON=m # CONFIG_VIDEO_STK1160_AC97 is not set @@ -2231,6 +2247,10 @@ CONFIG_DVB_S921=m CONFIG_DVB_DIB8000=m CONFIG_DVB_MB86A20S=m +# +# ISDB-S (satellite) & ISDB-T (terrestrial) frontends +# + # # Digital terrestrial only tuners/PLL # @@ -2247,6 +2267,7 @@ CONFIG_DVB_LNBP22=m CONFIG_DVB_ISL6421=m CONFIG_DVB_ISL6423=m CONFIG_DVB_A8293=m +CONFIG_DVB_SP2=m CONFIG_DVB_LGS8GXX=m CONFIG_DVB_ATBM8830=m CONFIG_DVB_IX2505V=m @@ -2397,12 +2418,14 @@ CONFIG_SND_SOC_I2C_AND_SPI=m # CONFIG_SND_SOC_AK5386 is not set # CONFIG_SND_SOC_ALC5623 is not set # CONFIG_SND_SOC_CS35L32 is not set +# CONFIG_SND_SOC_CS42L51_I2C is not set # CONFIG_SND_SOC_CS42L52 is not set # CONFIG_SND_SOC_CS42L56 is not set # CONFIG_SND_SOC_CS42L73 is not set # CONFIG_SND_SOC_CS4265 is not set # CONFIG_SND_SOC_CS4270 is not set -# CONFIG_SND_SOC_CS4271 is not set +# CONFIG_SND_SOC_CS4271_I2C is not set +# CONFIG_SND_SOC_CS4271_SPI is not set # CONFIG_SND_SOC_CS42XX8_I2C is not set # CONFIG_SND_SOC_HDMI_CODEC is not set # CONFIG_SND_SOC_ES8328 is not set @@ -2413,6 +2436,8 @@ CONFIG_SND_SOC_PCM512x_I2C=m # CONFIG_SND_SOC_PCM512x_SPI is not set CONFIG_SND_SOC_PCM1794A=m CONFIG_SND_SOC_PCM5102A=m +# CONFIG_SND_SOC_RT5631 is not set +# CONFIG_SND_SOC_RT5677_SPI is not set # CONFIG_SND_SOC_SGTL5000 is not set # CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set # CONFIG_SND_SOC_SPDIF is not set @@ -2422,9 +2447,13 @@ CONFIG_SND_SOC_PCM5102A=m # CONFIG_SND_SOC_STA350 is not set # CONFIG_SND_SOC_TAS2552 is not set # CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TFA9879 is not set CONFIG_SND_SOC_TAS5713=m +# CONFIG_SND_SOC_TLV320AIC23_I2C is not set +# CONFIG_SND_SOC_TLV320AIC23_SPI is not set # CONFIG_SND_SOC_TLV320AIC31XX is not set # CONFIG_SND_SOC_TLV320AIC3X is not set +# CONFIG_SND_SOC_TS3A227E is not set # CONFIG_SND_SOC_WM8510 is not set # CONFIG_SND_SOC_WM8523 is not set # CONFIG_SND_SOC_WM8580 is not set @@ -2490,6 +2519,7 @@ CONFIG_HID_LCPOWER=y CONFIG_HID_LENOVO=y CONFIG_HID_LOGITECH=y CONFIG_HID_LOGITECH_DJ=y +CONFIG_HID_LOGITECH_HIDPP=y CONFIG_LOGITECH_FF=y CONFIG_LOGIRUMBLEPAD2_FF=y CONFIG_LOGIG940_FF=y @@ -2505,6 +2535,7 @@ CONFIG_PANTHERLORD_FF=y CONFIG_HID_PENMOUNT=y CONFIG_HID_PETALYNX=y # CONFIG_HID_PICOLCD is not set +# CONFIG_HID_PLANTRONICS is not set # CONFIG_HID_PRIMAX is not set # CONFIG_HID_ROCCAT is not set # CONFIG_HID_SAITEK is not set @@ -2762,6 +2793,7 @@ CONFIG_LEDS_GPIO=y # CONFIG_LEDS_LP5523 is not set # CONFIG_LEDS_LP5562 is not set # CONFIG_LEDS_LP8501 is not set +# CONFIG_LEDS_LP8860 is not set # CONFIG_LEDS_PCA955X is not set # CONFIG_LEDS_PCA963X is not set # CONFIG_LEDS_DAC124S085 is not set @@ -2928,7 +2960,6 @@ CONFIG_R8712U=m # CONFIG_R8188EU is not set # CONFIG_LINE6_USB is not set CONFIG_VT6656=m -# CONFIG_BCM_WIMAX is not set # CONFIG_FT1000 is not set # @@ -2938,9 +2969,11 @@ CONFIG_VT6656=m # CONFIG_TOUCHSCREEN_CLEARPAD_TM1217 is not set # CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4 is not set CONFIG_STAGING_MEDIA=y -# CONFIG_VIDEO_TCM825X is not set +# CONFIG_VIDEO_TLG2300 is not set +CONFIG_DVB_MN88472=m +CONFIG_DVB_MN88473=m +# CONFIG_VIDEO_SAA7191 is not set CONFIG_LIRC_STAGING=y -CONFIG_LIRC_IGORPLUGUSB=m # CONFIG_LIRC_IMON is not set CONFIG_LIRC_RPI=m # CONFIG_LIRC_SASEM is not set @@ -2952,18 +2985,13 @@ CONFIG_LIRC_XBOX=m # # Android # -# CONFIG_ANDROID is not set # CONFIG_USB_WPAN_HCD is not set # CONFIG_WIMAX_GDM72XX is not set # CONFIG_LTE_GDM724X is not set # CONFIG_LUSTRE_FS is not set # CONFIG_DGAP is not set # CONFIG_GS_FPGABOOT is not set - -# -# SOC (System On Chip) specific Drivers -# -# CONFIG_SOC_TI is not set +# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set CONFIG_CLKDEV_LOOKUP=y CONFIG_HAVE_CLK_PREPARE=y CONFIG_COMMON_CLK=y @@ -3007,6 +3035,7 @@ CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y # # SOC (System On Chip) specific Drivers # +# CONFIG_SOC_TI is not set # CONFIG_PM_DEVFREQ is not set CONFIG_EXTCON=m @@ -3033,6 +3062,11 @@ CONFIG_IRQCHIP=y # CONFIG_POWERCAP is not set # CONFIG_MCB is not set +# +# Android +# +# CONFIG_ANDROID is not set + # # File systems # @@ -3141,6 +3175,7 @@ CONFIG_SQUASHFS_FILE_DIRECT=y CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y # CONFIG_SQUASHFS_XATTR is not set CONFIG_SQUASHFS_ZLIB=y +CONFIG_SQUASHFS_LZ4=y CONFIG_SQUASHFS_LZO=y CONFIG_SQUASHFS_XZ=y # CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set @@ -3273,6 +3308,7 @@ CONFIG_FRAME_WARN=1024 CONFIG_STRIP_ASM_SYMS=y # CONFIG_READABLE_ASM is not set # CONFIG_UNUSED_SYMBOLS is not set +# CONFIG_PAGE_OWNER is not set CONFIG_DEBUG_FS=y # CONFIG_HEADERS_CHECK is not set # CONFIG_DEBUG_SECTION_MISMATCH is not set @@ -3285,6 +3321,7 @@ CONFIG_DEBUG_KERNEL=y # # Memory Debugging # +# CONFIG_PAGE_EXTENSION is not set # CONFIG_DEBUG_PAGEALLOC is not set # CONFIG_DEBUG_OBJECTS is not set # CONFIG_SLUB_DEBUG_ON is not set @@ -3342,7 +3379,6 @@ CONFIG_PANIC_TIMEOUT=0 # CONFIG_TORTURE_TEST is not set # CONFIG_RCU_TORTURE_TEST is not set CONFIG_RCU_CPU_STALL_TIMEOUT=21 -CONFIG_RCU_CPU_STALL_VERBOSE=y # CONFIG_RCU_CPU_STALL_INFO is not set # CONFIG_RCU_TRACE is not set # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set @@ -3389,9 +3425,9 @@ CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" # CONFIG_DEBUG_UART_8250 is not set # CONFIG_DEBUG_UART_BCM63XX is not set CONFIG_UNCOMPRESS_INCLUDE="mach/uncompress.h" -# CONFIG_OC_ETM is not set # CONFIG_PID_IN_CONTEXTIDR is not set # CONFIG_DEBUG_SET_MODULE_RONX is not set +# CONFIG_CORESIGHT is not set # # Security options @@ -3553,6 +3589,7 @@ CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=m CONFIG_LZO_COMPRESS=y CONFIG_LZO_DECOMPRESS=y +CONFIG_LZ4_DECOMPRESS=y CONFIG_XZ_DEC=y # CONFIG_XZ_DEC_X86 is not set # CONFIG_XZ_DEC_POWERPC is not set diff --git a/projects/RPi2/options b/projects/RPi2/options index 6e3d0d87ae..3f9a9c3921 100644 --- a/projects/RPi2/options +++ b/projects/RPi2/options @@ -57,7 +57,7 @@ # Kernel to use. values can be: # default: default mainline kernel - LINUX="3.18" + LINUX="default" # NOOBS supported hex versions NOOBS_HEX="1040,1041" diff --git a/projects/RPi2/patches/linux/linux-01-RPi_support.patch b/projects/RPi2/patches/linux/linux-01-RPi_support.patch index 1e48129f00..9b2c9d9f73 100644 --- a/projects/RPi2/patches/linux/linux-01-RPi_support.patch +++ b/projects/RPi2/patches/linux/linux-01-RPi_support.patch @@ -1,7 +1,7 @@ -From 95293790045ab4ae5c357460372dd1b57fc74f29 Mon Sep 17 00:00:00 2001 +From 0222939a3735e3ad819ce793bbcaa3f4759d6543 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 12 May 2013 12:24:19 +0100 -Subject: [PATCH 001/114] Main bcm2708 linux port +Subject: [PATCH 001/109] Main bcm2708 linux port Signed-off-by: popcornmix --- @@ -47,8 +47,7 @@ Signed-off-by: popcornmix arch/arm/tools/mach-types | 1 + drivers/tty/serial/amba-pl011.c | 2 +- include/linux/mmc/host.h | 1 + - include/linux/mmc/sdhci.h | 1 + - 43 files changed, 4716 insertions(+), 5 deletions(-) + 42 files changed, 4715 insertions(+), 5 deletions(-) create mode 100644 arch/arm/configs/bcmrpi_defconfig create mode 100644 arch/arm/mach-bcm2708/Kconfig create mode 100644 arch/arm/mach-bcm2708/Makefile @@ -84,12 +83,12 @@ Signed-off-by: popcornmix create mode 100644 arch/arm/mach-bcm2708/vcio.c diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 89c4b5c..4cedaf2 100644 +index 97d07ed..1dc698c 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -381,6 +381,22 @@ config ARCH_AT91 +@@ -367,6 +367,22 @@ config ARCH_AT91 This enables support for systems based on Atmel - AT91RM9200 and AT91SAM9* processors. + AT91RM9200, AT91SAM9 and SAMA5 processors. +config ARCH_BCM2708 + bool "Broadcom BCM2708 family" @@ -110,7 +109,7 @@ index 89c4b5c..4cedaf2 100644 config ARCH_CLPS711X bool "Cirrus Logic CLPS711x/EP721x/EP731x-based" select ARCH_REQUIRE_GPIOLIB -@@ -972,6 +988,7 @@ source "arch/arm/plat-versatile/Kconfig" +@@ -962,6 +978,7 @@ source "arch/arm/plat-versatile/Kconfig" source "arch/arm/mach-vt8500/Kconfig" source "arch/arm/mach-w90x900/Kconfig" @@ -119,10 +118,10 @@ index 89c4b5c..4cedaf2 100644 source "arch/arm/mach-zynq/Kconfig" diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug -index d8f6a2e..526e50d 100644 +index 5ddd490..e5b2370 100644 --- a/arch/arm/Kconfig.debug +++ b/arch/arm/Kconfig.debug -@@ -985,6 +985,14 @@ choice +@@ -1107,6 +1107,14 @@ choice options; the platform specific options are deprecated and will be soon removed. @@ -138,7 +137,7 @@ index d8f6a2e..526e50d 100644 config DEBUG_EXYNOS_UART diff --git a/arch/arm/Makefile b/arch/arm/Makefile -index 034a949..fea9213 100644 +index c1785ee..ceb8a4e 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -146,6 +146,7 @@ textofs-$(CONFIG_ARCH_AXXIA) := 0x00308000 @@ -620,7 +619,7 @@ index 0000000..8950e53 +CONFIG_CRC_ITU_T=y +CONFIG_LIBCRC32C=y diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c -index fe972a2..f4f3bfd 100644 +index fdfa3a7..f5ffaacb 100644 --- a/arch/arm/kernel/process.c +++ b/arch/arm/kernel/process.c @@ -166,6 +166,16 @@ void arch_cpu_idle_dead(void) @@ -5032,15 +5031,15 @@ index 0000000..5e43e85 +MODULE_LICENSE("GPL"); +MODULE_ALIAS("platform:bcm-mbox"); diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig -index 7eb94e6..7b58dae 100644 +index c43c714..9bedaea 100644 --- a/arch/arm/mm/Kconfig +++ b/arch/arm/mm/Kconfig @@ -358,7 +358,7 @@ config CPU_PJ4B # ARMv6 config CPU_V6 -- bool "Support ARM V6 processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX -+ bool "Support ARM V6 processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX || MACH_BCM2708 +- bool "Support ARM V6 processor" if (!ARCH_MULTIPLATFORM || ARCH_MULTI_V6) && (ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX) ++ bool "Support ARM V6 processor" if (!ARCH_MULTIPLATFORM || ARCH_MULTI_V6) && (ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX || MACH_BCM2708) select CPU_32v6 select CPU_ABRT_EV6 select CPU_CACHE_V6 @@ -5084,7 +5083,7 @@ index a10297d..c9ddd87 100644 ics_if_voip MACH_ICS_IF_VOIP ICS_IF_VOIP 3206 wlf_cragg_6410 MACH_WLF_CRAGG_6410 WLF_CRAGG_6410 3207 diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c -index 02016fc..fed2b92 100644 +index 8d94c19..16ca535 100644 --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c @@ -84,7 +84,7 @@ struct vendor_data { @@ -5097,34 +5096,22 @@ index 02016fc..fed2b92 100644 static struct vendor_data vendor_arm = { diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h -index df0c153..c226105 100644 +index 9f32270..17ee61b 100644 --- a/include/linux/mmc/host.h +++ b/include/linux/mmc/host.h -@@ -290,6 +290,7 @@ struct mmc_host { - #define MMC_CAP2_HS400 (MMC_CAP2_HS400_1_8V | \ +@@ -291,6 +291,7 @@ struct mmc_host { MMC_CAP2_HS400_1_2V) + #define MMC_CAP2_HSX00_1_2V (MMC_CAP2_HS200_1_2V_SDR | MMC_CAP2_HS400_1_2V) #define MMC_CAP2_SDIO_IRQ_NOTHREAD (1 << 17) +#define MMC_CAP2_FORCE_MULTIBLOCK (1 << 31) /* Always use multiblock transfers */ mmc_pm_flag_t pm_caps; /* supported pm features */ -diff --git a/include/linux/mmc/sdhci.h b/include/linux/mmc/sdhci.h -index dba793e..9300f87 100644 ---- a/include/linux/mmc/sdhci.h -+++ b/include/linux/mmc/sdhci.h -@@ -130,6 +130,7 @@ struct sdhci_host { - #define SDHCI_SDIO_IRQ_ENABLED (1<<9) /* SDIO irq enabled */ - #define SDHCI_SDR104_NEEDS_TUNING (1<<10) /* SDR104/HS200 needs tuning */ - #define SDHCI_USING_RETUNING_TIMER (1<<11) /* Host is using a retuning timer for the card */ -+#define SDHCI_USE_PLATDMA (1<<12) /* Host uses 3rd party DMA */ - - unsigned int version; /* SDHCI spec. version */ - -From 4f339b429583965a8eb7c23474414d0730db1215 Mon Sep 17 00:00:00 2001 +From db89dca23e5f1de2895f0f07d4fd14c00ab72e6e Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 8 Oct 2014 18:50:05 +0100 -Subject: [PATCH 002/114] Add bcm2708_gpio driver +Subject: [PATCH 002/109] Add bcm2708_gpio driver Signed-off-by: popcornmix @@ -5728,10 +5715,10 @@ index 0000000..fb69624 + +#endif -From cb3aee0334aa33348f1064301a6dff55cc31c84f Mon Sep 17 00:00:00 2001 +From 138919e0b3e213effd883f4a80dd8b2cc4f55f4a Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 7 May 2013 22:20:24 +0100 -Subject: [PATCH 003/114] Add quick config. +Subject: [PATCH 003/109] Add quick config. This is designed for quick compiling when developing. No modules are needed and it includes all Pi specific drivers @@ -5944,10 +5931,10 @@ index 0000000..e5efe75 +CONFIG_CRC_ITU_T=y +CONFIG_LIBCRC32C=y -From 9964a43723df02a84b7f132695193cd452d45b58 Mon Sep 17 00:00:00 2001 +From a2dc1f5efb2a618b0970218f3e96039776f3eaaf Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 1 May 2013 19:46:17 +0100 -Subject: [PATCH 004/114] Add dwc_otg driver +Subject: [PATCH 004/109] Add dwc_otg driver Signed-off-by: popcornmix @@ -10037,10 +10024,10 @@ index 0000000..a896d73 +} +module_exit(fsg_cleanup); diff --git a/drivers/usb/host/Kconfig b/drivers/usb/host/Kconfig -index a3ca137..4937c9c 100644 +index fafc628..83c34af 100644 --- a/drivers/usb/host/Kconfig +++ b/drivers/usb/host/Kconfig -@@ -744,6 +744,19 @@ config USB_HWA_HCD +@@ -752,6 +752,19 @@ config USB_HWA_HCD To compile this driver a module, choose M here: the module will be called "hwa-hc". @@ -10061,7 +10048,7 @@ index a3ca137..4937c9c 100644 tristate "i.MX21 HCD support" depends on ARM && ARCH_MXC diff --git a/drivers/usb/host/Makefile b/drivers/usb/host/Makefile -index 348c243..7ca1836 100644 +index d6216a4..c6dfede 100644 --- a/drivers/usb/host/Makefile +++ b/drivers/usb/host/Makefile @@ -71,6 +71,8 @@ obj-$(CONFIG_USB_U132_HCD) += u132-hcd.o @@ -10072,7 +10059,7 @@ index 348c243..7ca1836 100644 +obj-$(CONFIG_USB_DWCOTG) += dwc_otg/ dwc_common_port/ obj-$(CONFIG_USB_IMX21_HCD) += imx21-hcd.o obj-$(CONFIG_USB_FSL_MPH_DR_OF) += fsl-mph-dr-of.o - obj-$(CONFIG_USB_OCTEON2_COMMON) += octeon2-common.o + obj-$(CONFIG_USB_HCD_BCMA) += bcma-hcd.o diff --git a/drivers/usb/host/dwc_common_port/Makefile b/drivers/usb/host/dwc_common_port/Makefile new file mode 100644 index 0000000..f10d466 @@ -63000,10 +62987,10 @@ index 0000000..cdc9963 +test_main(); +0; -From 633194396e40f919974dd8b81e97ddfea463b733 Mon Sep 17 00:00:00 2001 +From 426f9dbea63f0d6a35e05e80fd188b89dca321cd Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 1 May 2013 19:54:32 +0100 -Subject: [PATCH 005/114] bcm2708 watchdog driver +Subject: [PATCH 005/109] bcm2708 watchdog driver Signed-off-by: popcornmix --- @@ -63014,7 +63001,7 @@ Signed-off-by: popcornmix create mode 100644 drivers/watchdog/bcm2708_wdog.c diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig -index d0107d4..ff56894 100644 +index 08f41ad..3bc50f2 100644 --- a/drivers/watchdog/Kconfig +++ b/drivers/watchdog/Kconfig @@ -452,6 +452,12 @@ config RETU_WATCHDOG @@ -63431,11 +63418,10 @@ index 0000000..8a27d68 +MODULE_ALIAS_MISCDEV(TEMP_MINOR); +MODULE_LICENSE("GPL"); - -From 91fca9dd33742a38061dc9e949e4e88b9d5f645b Mon Sep 17 00:00:00 2001 +From 541af491f8c24af061d3e62fdc7da4fad34e5003 Mon Sep 17 00:00:00 2001 From: Harm Hanemaaijer Date: Thu, 20 Jun 2013 20:21:39 +0200 -Subject: [PATCH 007/114] Speed up console framebuffer imageblit function +Subject: [PATCH 008/109] Speed up console framebuffer imageblit function Especially on platforms with a slower CPU but a relatively high framebuffer fill bandwidth, like current ARM devices, the existing @@ -63644,10 +63630,10 @@ index a2bb276..436494f 100644 start_index, pitch_index); } else -From f67ad61f5999035fad1610d00a966989f34e3ce5 Mon Sep 17 00:00:00 2001 +From 21cf00e8ae1b424b05c9e218f28c509f296ac949 Mon Sep 17 00:00:00 2001 From: Siarhei Siamashka Date: Mon, 17 Jun 2013 13:32:11 +0300 -Subject: [PATCH 008/114] fbdev: add FBIOCOPYAREA ioctl +Subject: [PATCH 009/109] fbdev: add FBIOCOPYAREA ioctl Based on the patch authored by Ali Gholami Rudi at https://lkml.org/lkml/2009/7/13/153 @@ -63740,10 +63726,10 @@ index fb795c3..fa72af0 100644 #define FB_TYPE_PACKED_PIXELS 0 /* Packed Pixels */ #define FB_TYPE_PLANES 1 /* Non interleaved planes */ -From 49250f2d77bd76d753488caf226970c085eb112d Mon Sep 17 00:00:00 2001 +From 57a4b2b0d8e5849d4b4cff404ac6a90bcdab0f37 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 1 May 2013 19:55:09 +0100 -Subject: [PATCH 009/114] bcm2708 framebuffer driver +Subject: [PATCH 010/109] bcm2708 framebuffer driver Signed-off-by: popcornmix @@ -63835,7 +63821,7 @@ index f2568d4..a4aac4c 100644 /* When listing features we can ask for when allocating DMA channels give diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig -index c7bf606..0349473 100644 +index 4916c97..95fcb7f 100644 --- a/drivers/video/fbdev/Kconfig +++ b/drivers/video/fbdev/Kconfig @@ -224,6 +224,20 @@ config FB_TILEBLITTING @@ -64696,7 +64682,7 @@ index 0000000..dcc4de2 +MODULE_PARM_DESC(fbdepth, "Bit depth of ARM Framebuffer"); +MODULE_PARM_DESC(fbswap, "Swap order of red and blue in 24 and 32 bit modes"); diff --git a/drivers/video/logo/logo_linux_clut224.ppm b/drivers/video/logo/logo_linux_clut224.ppm -index 3c14e43..7626beb 100644 +index 3c14e43..7626beb6a 100644 --- a/drivers/video/logo/logo_linux_clut224.ppm +++ b/drivers/video/logo/logo_linux_clut224.ppm @@ -1,1604 +1,883 @@ @@ -67186,10 +67172,10 @@ index 3c14e43..7626beb 100644 +0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 -From adee2a81f0be488e079498ac457bf01c954a029e Mon Sep 17 00:00:00 2001 +From 8178b4e7f56a040774a673f21b6d860a83d86d1d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 2 Jul 2013 23:42:01 +0100 -Subject: [PATCH 010/114] bcm2708 vchiq driver +Subject: [PATCH 011/109] bcm2708 vchiq driver Signed-off-by: popcornmix @@ -67311,7 +67297,7 @@ described above. create mode 100644 drivers/misc/vc04_services/interface/vchiq_arm/vchiq_version.c diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig -index bbeb451..b6109a2 100644 +index 006242c..4e6f46c 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig @@ -524,6 +524,7 @@ source "drivers/misc/carma/Kconfig" @@ -80138,10 +80124,10 @@ index 0000000..b6bfa21 + return vchiq_build_time; +} -From e0412853d9f9e12fc7d8a3125cc3b4a62d19007d Mon Sep 17 00:00:00 2001 +From 48c4a760bace73c6c2e10ace250faf0b1c2cf603 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 12 May 2014 15:12:02 +0100 -Subject: [PATCH 011/114] vchiq: Avoid high load when blocked and unkillable +Subject: [PATCH 012/109] vchiq: Avoid high load when blocked and unkillable vchiq: Include SIGSTOP and SIGCONT in list of signals not-masked by vchiq to allow gdb to work --- @@ -80303,10 +80289,10 @@ index c2eefef..05e7979 100644 static inline int is_pow2(int i) { -From 725e07b7b70c601ebbe15436736addc01953dfe7 Mon Sep 17 00:00:00 2001 +From d36beb1f111d0621d672edfc864c2ac018a05053 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:31:47 +0100 -Subject: [PATCH 012/114] cma: Add vc_cma driver to enable use of CMA +Subject: [PATCH 013/109] cma: Add vc_cma driver to enable use of CMA Signed-off-by: popcornmix --- @@ -81593,10 +81579,10 @@ index 0000000..5325832 + +#endif /* VC_CMA_H */ -From 40fe0b17b886f30b316614830eedf0cfc755bbbd Mon Sep 17 00:00:00 2001 +From 9a5da41b08c71c403f7a50e3f1790bc7ce061c5d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 26 Mar 2012 22:15:50 +0100 -Subject: [PATCH 013/114] bcm2708: alsa sound driver +Subject: [PATCH 014/109] bcm2708: alsa sound driver Signed-off-by: popcornmix @@ -84359,10 +84345,10 @@ index 0000000..af3e6eb + +#endif // _VC_AUDIO_DEFS_H_ -From 225e1250dfcec7b09493b6a86bdeaab9f2669221 Mon Sep 17 00:00:00 2001 +From e191bd0eb4395d58ca38628cac3a9832ac2a6644 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:51:55 +0100 -Subject: [PATCH 014/114] Add hwrng (hardware random number generator) driver +Subject: [PATCH 015/109] Add hwrng (hardware random number generator) driver --- drivers/char/hw_random/Kconfig | 11 ++++ @@ -84372,7 +84358,7 @@ Subject: [PATCH 014/114] Add hwrng (hardware random number generator) driver create mode 100755 drivers/char/hw_random/bcm2708-rng.c diff --git a/drivers/char/hw_random/Kconfig b/drivers/char/hw_random/Kconfig -index 91a04ae..0d2ca0d 100644 +index de57b38..2a24bec 100644 --- a/drivers/char/hw_random/Kconfig +++ b/drivers/char/hw_random/Kconfig @@ -320,6 +320,17 @@ config HW_RANDOM_TPM @@ -84529,10 +84515,10 @@ index 0000000..340f004 +MODULE_DESCRIPTION("BCM2708 H/W Random Number Generator (RNG) driver"); +MODULE_LICENSE("GPL and additional rights"); -From 96fbef3b8f8ab61f7f32d52b54d7993117a5fdbc Mon Sep 17 00:00:00 2001 +From c8dfc6610d8ec3c1b55b9988aa93749420ef5ae5 Mon Sep 17 00:00:00 2001 From: Aron Szabo Date: Sat, 16 Jun 2012 12:15:55 +0200 -Subject: [PATCH 015/114] lirc: added support for RaspberryPi GPIO +Subject: [PATCH 016/109] lirc: added support for RaspberryPi GPIO lirc_rpi: Use read_current_timer to determine transmitter delay. Thanks to jjmz and others See: https://github.com/raspberrypi/linux/issues/525 @@ -84570,10 +84556,10 @@ lirc-rpi: Correct the interrupt usage create mode 100644 drivers/staging/media/lirc/lirc_rpi.c diff --git a/drivers/staging/media/lirc/Kconfig b/drivers/staging/media/lirc/Kconfig -index e60a59f..6b7ff70 100644 +index 6879c46..77c69f2 100644 --- a/drivers/staging/media/lirc/Kconfig +++ b/drivers/staging/media/lirc/Kconfig -@@ -38,6 +38,12 @@ config LIRC_PARALLEL +@@ -32,6 +32,12 @@ config LIRC_PARALLEL help Driver for Homebrew Parallel Port Receivers @@ -84587,11 +84573,11 @@ index e60a59f..6b7ff70 100644 tristate "Sasem USB IR Remote" depends on LIRC && USB diff --git a/drivers/staging/media/lirc/Makefile b/drivers/staging/media/lirc/Makefile -index b90fcab..2b227fd 100644 +index 5430adf..9e53cd0 100644 --- a/drivers/staging/media/lirc/Makefile +++ b/drivers/staging/media/lirc/Makefile -@@ -7,6 +7,7 @@ obj-$(CONFIG_LIRC_BT829) += lirc_bt829.o - obj-$(CONFIG_LIRC_IGORPLUGUSB) += lirc_igorplugusb.o +@@ -6,6 +6,7 @@ + obj-$(CONFIG_LIRC_BT829) += lirc_bt829.o obj-$(CONFIG_LIRC_IMON) += lirc_imon.o obj-$(CONFIG_LIRC_PARALLEL) += lirc_parallel.o +obj-$(CONFIG_LIRC_RPI) += lirc_rpi.o @@ -85264,10 +85250,10 @@ index 0000000..c688364 +module_param(debug, bool, S_IRUGO | S_IWUSR); +MODULE_PARM_DESC(debug, "Enable debugging messages"); -From f8628f418651bcb52604f943c00c45d932ff3572 Mon Sep 17 00:00:00 2001 +From 95d8a71baa57259706f2211e2831910c5e8732df Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:49:20 +0100 -Subject: [PATCH 016/114] Add cpufreq driver +Subject: [PATCH 017/109] Add cpufreq driver --- arch/arm/Kconfig | 1 + @@ -85278,10 +85264,10 @@ Subject: [PATCH 016/114] Add cpufreq driver create mode 100755 drivers/cpufreq/bcm2835-cpufreq.c diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 4cedaf2..6283d7d 100644 +index 1dc698c..fdfb230 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -390,6 +390,7 @@ config ARCH_BCM2708 +@@ -376,6 +376,7 @@ config ARCH_BCM2708 select NEED_MACH_GPIO_H select NEED_MACH_MEMORY_H select CLKDEV_LOOKUP @@ -85290,7 +85276,7 @@ index 4cedaf2..6283d7d 100644 select ARM_ERRATA_411920 select MACH_BCM2708 diff --git a/drivers/cpufreq/Kconfig.arm b/drivers/cpufreq/Kconfig.arm -index 83a75dc..210394f 100644 +index 0f9a2c3..c71b6e1 100644 --- a/drivers/cpufreq/Kconfig.arm +++ b/drivers/cpufreq/Kconfig.arm @@ -241,6 +241,14 @@ config ARM_SPEAR_CPUFREQ @@ -85309,10 +85295,10 @@ index 83a75dc..210394f 100644 bool "TEGRA CPUFreq support" depends on ARCH_TEGRA diff --git a/drivers/cpufreq/Makefile b/drivers/cpufreq/Makefile -index 40c53dc..47d2922 100644 +index b3ca7b0..2824b68 100644 --- a/drivers/cpufreq/Makefile +++ b/drivers/cpufreq/Makefile -@@ -75,6 +75,7 @@ obj-$(CONFIG_ARM_S5PV210_CPUFREQ) += s5pv210-cpufreq.o +@@ -74,6 +74,7 @@ obj-$(CONFIG_ARM_S5PV210_CPUFREQ) += s5pv210-cpufreq.o obj-$(CONFIG_ARM_SA1100_CPUFREQ) += sa1100-cpufreq.o obj-$(CONFIG_ARM_SA1110_CPUFREQ) += sa1110-cpufreq.o obj-$(CONFIG_ARM_SPEAR_CPUFREQ) += spear-cpufreq.o @@ -85551,10 +85537,10 @@ index 0000000..447ca09 +module_init(bcm2835_cpufreq_module_init); +module_exit(bcm2835_cpufreq_module_exit); -From de9bdcff7ec73589cb314a1569ce5aba5fe09146 Mon Sep 17 00:00:00 2001 +From 59ae3e5f2544dacbdea86d9f005fe7f5598cdd30 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 26 Mar 2013 19:24:24 +0000 -Subject: [PATCH 017/114] Added hwmon/thermal driver for reporting core +Subject: [PATCH 018/109] Added hwmon/thermal driver for reporting core temperature. Thanks Dorian --- @@ -85599,10 +85585,10 @@ index f3dccae..af57d11 100644 struct amba_device *d = amba_devs[i]; amba_device_register(d, &iomem_resource); diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig -index 5286d7c..d52e192 100644 +index a7de26d..42c82b4 100644 --- a/drivers/hwmon/Kconfig +++ b/drivers/hwmon/Kconfig -@@ -1680,6 +1680,16 @@ config SENSORS_ULTRA45 +@@ -1702,6 +1702,16 @@ config SENSORS_ULTRA45 This driver provides support for the Ultra45 workstation environmental sensors. @@ -85620,10 +85606,10 @@ index 5286d7c..d52e192 100644 comment "ACPI drivers" diff --git a/drivers/hwmon/Makefile b/drivers/hwmon/Makefile -index c90a761..15aaecf 100644 +index 6c94147..e7c60cb 100644 --- a/drivers/hwmon/Makefile +++ b/drivers/hwmon/Makefile -@@ -153,6 +153,7 @@ obj-$(CONFIG_SENSORS_W83L785TS) += w83l785ts.o +@@ -155,6 +155,7 @@ obj-$(CONFIG_SENSORS_W83L785TS) += w83l785ts.o obj-$(CONFIG_SENSORS_W83L786NG) += w83l786ng.o obj-$(CONFIG_SENSORS_WM831X) += wm831x-hwmon.o obj-$(CONFIG_SENSORS_WM8350) += wm8350-hwmon.o @@ -85857,10 +85843,10 @@ index 0000000..5bbed45 + +module_platform_driver(bcm2835_hwmon_driver); diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig -index f554d25..fecc621 100644 +index af40db0..4584b1e 100644 --- a/drivers/thermal/Kconfig +++ b/drivers/thermal/Kconfig -@@ -206,6 +206,12 @@ config INTEL_POWERCLAMP +@@ -238,6 +238,12 @@ config INTEL_POWERCLAMP enforce idle time which results in more package C-state residency. The user interface is exposed via generic thermal framework. @@ -85874,10 +85860,10 @@ index f554d25..fecc621 100644 tristate "X86 package temperature thermal driver" depends on X86_THERMAL_VECTOR diff --git a/drivers/thermal/Makefile b/drivers/thermal/Makefile -index 39c4fe8..30a4741 100644 +index fa0dc48..453d4d9 100644 --- a/drivers/thermal/Makefile +++ b/drivers/thermal/Makefile -@@ -29,6 +29,7 @@ obj-$(CONFIG_ARMADA_THERMAL) += armada_thermal.o +@@ -33,6 +33,7 @@ obj-$(CONFIG_ARMADA_THERMAL) += armada_thermal.o obj-$(CONFIG_IMX_THERMAL) += imx_thermal.o obj-$(CONFIG_DB8500_CPUFREQ_COOLING) += db8500_cpufreq_cooling.o obj-$(CONFIG_INTEL_POWERCLAMP) += intel_powerclamp.o @@ -86076,10 +86062,10 @@ index 0000000..85fceb5 + +module_platform_driver(bcm2835_thermal_driver); -From c732e3a3218671786b589835260995bc24715248 Mon Sep 17 00:00:00 2001 +From 5a2d7d0a26de7791c61462bd36cb190c8ac0857d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 26 Mar 2013 17:26:38 +0000 -Subject: [PATCH 018/114] Allow mac address to be set in smsc95xx +Subject: [PATCH 019/109] Allow mac address to be set in smsc95xx Signed-off-by: popcornmix --- @@ -86087,7 +86073,7 @@ Signed-off-by: popcornmix 1 file changed, 56 insertions(+) diff --git a/drivers/net/usb/smsc95xx.c b/drivers/net/usb/smsc95xx.c -index d07bf4c..5ae60ab 100644 +index 26423ad..e29a323 100644 --- a/drivers/net/usb/smsc95xx.c +++ b/drivers/net/usb/smsc95xx.c @@ -59,6 +59,7 @@ @@ -86170,10 +86156,10 @@ index d07bf4c..5ae60ab 100644 if (smsc95xx_read_eeprom(dev, EEPROM_MAC_OFFSET, ETH_ALEN, dev->net->dev_addr) == 0) { -From 66ea263246ca6dd9f63dce8fb22157fa83693300 Mon Sep 17 00:00:00 2001 +From 196215044abd081236a1acbecc02f007cb62b99c Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 4 Nov 2013 18:56:10 +0000 -Subject: [PATCH 019/114] Add Chris Boot's i2c and spi drivers. +Subject: [PATCH 020/109] Add Chris Boot's i2c and spi drivers. i2c-bcm2708: fixed baudrate @@ -86389,10 +86375,10 @@ index af57d11..82f56fb 100644 static void timer_set_mode(enum clock_event_mode mode, diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig -index 917c358..3d3db41 100644 +index ab838d9..68362ab 100644 --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig -@@ -371,6 +371,25 @@ config I2C_BCM2835 +@@ -372,6 +372,25 @@ config I2C_BCM2835 This support is also available as a module. If so, the module will be called i2c-bcm2835. @@ -86419,7 +86405,7 @@ index 917c358..3d3db41 100644 tristate "BCM Kona I2C adapter" depends on ARCH_BCM_MOBILE diff --git a/drivers/i2c/busses/Makefile b/drivers/i2c/busses/Makefile -index 78d56c5..abe642f 100644 +index 56388f6..5403a9b 100644 --- a/drivers/i2c/busses/Makefile +++ b/drivers/i2c/busses/Makefile @@ -33,6 +33,7 @@ obj-$(CONFIG_I2C_AT91) += i2c-at91.o @@ -86857,7 +86843,7 @@ index 0000000..09203c0 +MODULE_LICENSE("GPL v2"); +MODULE_ALIAS("platform:" DRV_NAME); diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig -index 84e7c9e..71b4741 100644 +index 9982998..ae4ea48 100644 --- a/drivers/spi/Kconfig +++ b/drivers/spi/Kconfig @@ -86,6 +86,14 @@ config SPI_BCM2835 @@ -86876,7 +86862,7 @@ index 84e7c9e..71b4741 100644 tristate "SPI controller driver for ADI Blackfin5xx" depends on BLACKFIN && !BF60x diff --git a/drivers/spi/Makefile b/drivers/spi/Makefile -index 78f24ca..fdd29d3 100644 +index 6b9d2ac..b322f27 100644 --- a/drivers/spi/Makefile +++ b/drivers/spi/Makefile @@ -20,6 +20,7 @@ obj-$(CONFIG_SPI_BCM63XX) += spi-bcm63xx.o @@ -87520,10 +87506,10 @@ index 0000000..b04a57d +MODULE_LICENSE("GPL v2"); +MODULE_ALIAS("platform:" DRV_NAME); -From 0262abfaac71799e3688285f1f30bead42b8ff7e Mon Sep 17 00:00:00 2001 +From e9ce3b546b6fd5fb38952ba1437d479c6847ef5f Mon Sep 17 00:00:00 2001 From: cbeytas Date: Mon, 24 Jun 2013 00:05:40 -0400 -Subject: [PATCH 020/114] Perform I2C combined transactions when possible +Subject: [PATCH 021/109] Perform I2C combined transactions when possible Perform I2C combined transactions whenever possible, within the restrictions of the Broadcomm Serial Controller. @@ -87595,10 +87581,10 @@ index 09203c0..7d385a3 100644 } -From bd7d1508a83c544f2d52f668ebabe55c2ea207c5 Mon Sep 17 00:00:00 2001 +From 3eeb43c7ff0ec0308e78481ef4c9612ee90c2e77 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 8 May 2013 11:46:50 +0100 -Subject: [PATCH 021/114] enabling the realtime clock 1-wire chip DS1307 and +Subject: [PATCH 022/109] enabling the realtime clock 1-wire chip DS1307 and 1-wire on GPIO4 (as a module) 1-wire: Add support for configuring pin for w1-gpio kernel module @@ -87695,7 +87681,7 @@ index 82f56fb..7dd89a7f 100644 +module_param(w1_gpio_pin, uint, 0644); +module_param(w1_gpio_pullup, uint, 0644); diff --git a/drivers/w1/masters/w1-gpio.c b/drivers/w1/masters/w1-gpio.c -index 1d111e5..61be2cd 100644 +index b99a932..3ad15cc 100644 --- a/drivers/w1/masters/w1-gpio.c +++ b/drivers/w1/masters/w1-gpio.c @@ -23,6 +23,15 @@ @@ -87870,17 +87856,17 @@ index 2820924..fd0550f 100644 } } -From 13c96adb3a82e72a05a12ba833743b49d2e00ed9 Mon Sep 17 00:00:00 2001 +From b356d2a5324517f468c05664c36ae2d3ad51814e Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 12 Apr 2013 23:58:47 +0100 -Subject: [PATCH 023/114] config: add missing options from 3.6.y kernel +Subject: [PATCH 024/109] config: add missing options from 3.6.y kernel --- - arch/arm/configs/bcmrpi_defconfig | 658 ++++++++++++++++++++++++++++++++++++-- - 1 file changed, 636 insertions(+), 22 deletions(-) + arch/arm/configs/bcmrpi_defconfig | 692 ++++++++++++++++++++++++++++++++++++-- + 1 file changed, 667 insertions(+), 25 deletions(-) diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 6d2eae1..e2da9da 100644 +index 6d2eae1..6b39872 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig @@ -1,3 +1,5 @@ @@ -87945,7 +87931,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_CPU_IDLE=y CONFIG_VFP=y CONFIG_BINFMT_MISC=m -@@ -48,19 +67,272 @@ CONFIG_XFRM_USER=y +@@ -48,19 +67,278 @@ CONFIG_XFRM_USER=y CONFIG_NET_KEY=m CONFIG_INET=y CONFIG_IP_MULTICAST=y @@ -88094,14 +88080,18 @@ index 6d2eae1..e2da9da 100644 +CONFIG_IP_VS_FTP=m +CONFIG_IP_VS_PE_SIP=m +CONFIG_NF_CONNTRACK_IPV4=m -+CONFIG_NF_NAT_IPV4=m +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_MATCH_AH=m +CONFIG_IP_NF_MATCH_ECN=m +CONFIG_IP_NF_MATCH_TTL=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_TARGET_REJECT=m ++CONFIG_IP_NF_NAT=m ++CONFIG_IP_NF_TARGET_MASQUERADE=m ++CONFIG_IP_NF_TARGET_NETMAP=m ++CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_MANGLE=m ++CONFIG_IP_NF_TARGET_CLUSTERIP=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_NF_RAW=m @@ -88109,7 +88099,6 @@ index 6d2eae1..e2da9da 100644 +CONFIG_IP_NF_ARPFILTER=m +CONFIG_IP_NF_ARP_MANGLE=m +CONFIG_NF_CONNTRACK_IPV6=m -+CONFIG_NF_NAT_IPV6=m +CONFIG_IP6_NF_IPTABLES=m +CONFIG_IP6_NF_MATCH_AH=m +CONFIG_IP6_NF_MATCH_EUI64=m @@ -88124,6 +88113,9 @@ index 6d2eae1..e2da9da 100644 +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_RAW=m ++CONFIG_IP6_NF_NAT=m ++CONFIG_IP6_NF_TARGET_MASQUERADE=m ++CONFIG_IP6_NF_TARGET_NPT=m +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_T_FILTER=m @@ -88224,7 +88216,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_IRCOMM=m CONFIG_IRDA_ULTRA=y CONFIG_IRDA_CACHE_LAST_LSAP=y -@@ -87,45 +359,87 @@ CONFIG_BT_HCIVHCI=m +@@ -87,45 +365,88 @@ CONFIG_BT_HCIVHCI=m CONFIG_BT_MRVL=m CONFIG_BT_MRVL_SDIO=m CONFIG_BT_ATH3K=m @@ -88282,6 +88274,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_NETCONSOLE=m CONFIG_TUN=m +CONFIG_VETH=m ++CONFIG_ENC28J60=m CONFIG_MDIO_BITBANG=m CONFIG_PPP=m CONFIG_PPP_BSDCOMP=m @@ -88316,7 +88309,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_USB_NET_SMSC75XX=m CONFIG_USB_NET_SMSC95XX=y CONFIG_USB_NET_GL620A=m -@@ -135,10 +449,13 @@ CONFIG_USB_NET_MCS7830=m +@@ -135,10 +456,13 @@ CONFIG_USB_NET_MCS7830=m CONFIG_USB_NET_CDC_SUBSET=m CONFIG_USB_ALI_M5632=y CONFIG_USB_AN2720=y @@ -88331,7 +88324,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_USB_NET_INT51X1=m CONFIG_USB_IPHETH=m CONFIG_USB_SIERRA_NET=m -@@ -150,7 +467,15 @@ CONFIG_USB_ZD1201=m +@@ -150,8 +474,18 @@ CONFIG_USB_ZD1201=m CONFIG_USB_NET_RNDIS_WLAN=m CONFIG_RTL8187=m CONFIG_MAC80211_HWSIM=m @@ -88345,9 +88338,12 @@ index 6d2eae1..e2da9da 100644 CONFIG_B43=m +# CONFIG_B43_PHY_N is not set CONFIG_B43LEGACY=m ++CONFIG_BRCMFMAC=m ++CONFIG_BRCMFMAC_USB=y CONFIG_HOSTAP=m CONFIG_LIBERTAS=m -@@ -162,7 +487,10 @@ CONFIG_RT2X00=m + CONFIG_LIBERTAS_USB=m +@@ -162,7 +496,10 @@ CONFIG_RT2X00=m CONFIG_RT2500USB=m CONFIG_RT73USB=m CONFIG_RT2800USB=m @@ -88358,7 +88354,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_RTL8192CU=m CONFIG_ZD1211RW=m CONFIG_MWIFIEX=m -@@ -174,6 +502,13 @@ CONFIG_INPUT_JOYDEV=m +@@ -174,6 +511,13 @@ CONFIG_INPUT_JOYDEV=m CONFIG_INPUT_EVDEV=m # CONFIG_INPUT_KEYBOARD is not set # CONFIG_INPUT_MOUSE is not set @@ -88372,7 +88368,15 @@ index 6d2eae1..e2da9da 100644 CONFIG_INPUT_MISC=y CONFIG_INPUT_AD714X=m CONFIG_INPUT_ATI_REMOTE2=m -@@ -189,22 +524,207 @@ CONFIG_SERIO_RAW=m +@@ -182,6 +526,7 @@ CONFIG_INPUT_POWERMATE=m + CONFIG_INPUT_YEALINK=m + CONFIG_INPUT_CM109=m + CONFIG_INPUT_UINPUT=m ++CONFIG_INPUT_GPIO_ROTARY_ENCODER=m + CONFIG_INPUT_ADXL34X=m + CONFIG_INPUT_CMA3000=m + CONFIG_SERIO=m +@@ -189,22 +534,223 @@ CONFIG_SERIO_RAW=m CONFIG_GAMEPORT=m CONFIG_GAMEPORT_NS558=m CONFIG_GAMEPORT_L4=m @@ -88391,11 +88395,15 @@ index 6d2eae1..e2da9da 100644 +CONFIG_BCM_VC_SM=y CONFIG_I2C=y CONFIG_I2C_CHARDEV=m ++CONFIG_I2C_MUX=m CONFIG_I2C_BCM2708=m CONFIG_SPI=y CONFIG_SPI_BCM2708=m -CONFIG_SPI_SPIDEV=m +CONFIG_SPI_SPIDEV=y ++CONFIG_PPS=m ++CONFIG_PPS_CLIENT_LDISC=m ++CONFIG_PPS_CLIENT_GPIO=m CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_ARIZONA=m +CONFIG_W1=m @@ -88555,16 +88563,19 @@ index 6d2eae1..e2da9da 100644 +CONFIG_DVB_USB_LME2510=m +CONFIG_DVB_USB_MXL111SF=m +CONFIG_DVB_USB_RTL28XXU=m ++CONFIG_DVB_USB_DVBSKY=m +CONFIG_SMS_USB_DRV=m +CONFIG_DVB_B2C2_FLEXCOP_USB=m +CONFIG_DVB_AS102=m +CONFIG_VIDEO_EM28XX=m ++CONFIG_VIDEO_EM28XX_V4L2=m +CONFIG_VIDEO_EM28XX_ALSA=m +CONFIG_VIDEO_EM28XX_DVB=m +CONFIG_RADIO_SI470X=y +CONFIG_USB_SI470X=m +CONFIG_I2C_SI470X=m +CONFIG_RADIO_SI4713=m ++CONFIG_I2C_SI4713=m +CONFIG_USB_MR800=m +CONFIG_USB_DSBR=m +CONFIG_RADIO_SHARK=m @@ -88576,13 +88587,22 @@ index 6d2eae1..e2da9da 100644 +CONFIG_RADIO_TEF6862=m +CONFIG_RADIO_WL1273=m +CONFIG_RADIO_WL128X=m ++# CONFIG_MEDIA_SUBDRV_AUTOSELECT is not set ++CONFIG_VIDEO_UDA1342=m ++CONFIG_VIDEO_SONY_BTF_MPX=m ++CONFIG_VIDEO_TVP5150=m ++CONFIG_VIDEO_TW2804=m ++CONFIG_VIDEO_TW9903=m ++CONFIG_VIDEO_TW9906=m ++CONFIG_VIDEO_OV7640=m ++CONFIG_VIDEO_MT9V011=m CONFIG_FB=y +CONFIG_FB_BCM2708=y +# CONFIG_BACKLIGHT_GENERIC is not set CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_LOGO=y # CONFIG_LOGO_LINUX_MONO is not set -@@ -227,8 +747,10 @@ CONFIG_SND_BCM2835=m +@@ -227,8 +773,10 @@ CONFIG_SND_BCM2835=m CONFIG_SND_USB_AUDIO=m CONFIG_SND_USB_UA101=m CONFIG_SND_USB_CAIAQ=m @@ -88593,7 +88613,15 @@ index 6d2eae1..e2da9da 100644 CONFIG_HID_A4TECH=m CONFIG_HID_ACRUX=m CONFIG_HID_APPLE=m -@@ -267,9 +789,11 @@ CONFIG_HID_SUNPLUS=m +@@ -239,6 +787,7 @@ CONFIG_HID_CYPRESS=m + CONFIG_HID_DRAGONRISE=m + CONFIG_HID_EMS_FF=m + CONFIG_HID_ELECOM=m ++CONFIG_HID_ELO=m + CONFIG_HID_EZKEY=m + CONFIG_HID_HOLTEK=m + CONFIG_HID_KEYTOUCH=m +@@ -267,9 +816,11 @@ CONFIG_HID_SUNPLUS=m CONFIG_HID_GREENASIA=m CONFIG_HID_SMARTJOYPLUS=m CONFIG_HID_TOPSEED=m @@ -88605,7 +88633,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_HID_ZEROPLUS=m CONFIG_HID_ZYDACRON=m CONFIG_HID_PID=y -@@ -277,6 +801,8 @@ CONFIG_USB_HIDDEV=y +@@ -277,6 +828,8 @@ CONFIG_USB_HIDDEV=y CONFIG_USB=y CONFIG_USB_ANNOUNCE_NEW_DEVICES=y CONFIG_USB_MON=m @@ -88614,7 +88642,17 @@ index 6d2eae1..e2da9da 100644 CONFIG_USB_STORAGE=y CONFIG_USB_STORAGE_REALTEK=m CONFIG_USB_STORAGE_DATAFAB=m -@@ -311,6 +837,7 @@ CONFIG_USB_SERIAL_IPAQ=m +@@ -294,6 +847,9 @@ CONFIG_USB_STORAGE_ENE_UB6250=m + CONFIG_USB_UAS=m + CONFIG_USB_MDC800=m + CONFIG_USB_MICROTEK=m ++CONFIG_USBIP_CORE=m ++CONFIG_USBIP_VHCI_HCD=m ++CONFIG_USBIP_HOST=m + CONFIG_USB_SERIAL=m + CONFIG_USB_SERIAL_GENERIC=y + CONFIG_USB_SERIAL_AIRCABLE=m +@@ -311,6 +867,7 @@ CONFIG_USB_SERIAL_IPAQ=m CONFIG_USB_SERIAL_IR=m CONFIG_USB_SERIAL_EDGEPORT=m CONFIG_USB_SERIAL_EDGEPORT_TI=m @@ -88622,7 +88660,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_USB_SERIAL_GARMIN=m CONFIG_USB_SERIAL_IPW=m CONFIG_USB_SERIAL_IUU=m -@@ -319,6 +846,7 @@ CONFIG_USB_SERIAL_KEYSPAN=m +@@ -319,6 +876,7 @@ CONFIG_USB_SERIAL_KEYSPAN=m CONFIG_USB_SERIAL_KLSI=m CONFIG_USB_SERIAL_KOBIL_SCT=m CONFIG_USB_SERIAL_MCT_U232=m @@ -88630,7 +88668,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_USB_SERIAL_MOS7720=m CONFIG_USB_SERIAL_MOS7840=m CONFIG_USB_SERIAL_NAVMAN=m -@@ -336,7 +864,10 @@ CONFIG_USB_SERIAL_XIRCOM=m +@@ -336,7 +894,10 @@ CONFIG_USB_SERIAL_XIRCOM=m CONFIG_USB_SERIAL_OPTION=m CONFIG_USB_SERIAL_OMNINET=m CONFIG_USB_SERIAL_OPTICON=m @@ -88641,7 +88679,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_USB_SERIAL_DEBUG=m CONFIG_USB_EMI62=m CONFIG_USB_EMI26=m -@@ -357,12 +888,81 @@ CONFIG_USB_IOWARRIOR=m +@@ -357,12 +918,81 @@ CONFIG_USB_IOWARRIOR=m CONFIG_USB_TEST=m CONFIG_USB_ISIGHTFW=m CONFIG_USB_YUREX=m @@ -88723,7 +88761,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_EXT4_FS=y CONFIG_EXT4_FS_POSIX_ACL=y CONFIG_EXT4_FS_SECURITY=y -@@ -384,6 +984,8 @@ CONFIG_BTRFS_FS=m +@@ -384,6 +1014,8 @@ CONFIG_BTRFS_FS=m CONFIG_BTRFS_FS_POSIX_ACL=y CONFIG_NILFS2_FS=m CONFIG_FANOTIFY=y @@ -88732,7 +88770,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_AUTOFS4_FS=y CONFIG_FUSE_FS=m CONFIG_CUSE=m -@@ -399,18 +1001,26 @@ CONFIG_MSDOS_FS=y +@@ -399,18 +1031,27 @@ CONFIG_MSDOS_FS=y CONFIG_VFAT_FS=y CONFIG_FAT_DEFAULT_IOCHARSET="ascii" CONFIG_NTFS_FS=m @@ -88751,6 +88789,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_NFS_FS=y CONFIG_NFS_V3_ACL=y CONFIG_NFS_V4=y ++CONFIG_NFS_SWAP=y CONFIG_ROOT_NFS=y CONFIG_NFS_FSCACHE=y +CONFIG_NFSD=m @@ -88759,7 +88798,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_CIFS=m CONFIG_CIFS_WEAK_PW_HASH=y CONFIG_CIFS_XATTR=y -@@ -455,36 +1065,40 @@ CONFIG_NLS_ISO8859_14=m +@@ -455,36 +1096,37 @@ CONFIG_NLS_ISO8859_14=m CONFIG_NLS_ISO8859_15=m CONFIG_NLS_KOI8_R=m CONFIG_NLS_KOI8_U=m @@ -88783,7 +88822,7 @@ index 6d2eae1..e2da9da 100644 CONFIG_KGDB=y CONFIG_KGDB_KDB=y CONFIG_KDB_KEYBOARD=y - CONFIG_STRICT_DEVMEM=y +-CONFIG_STRICT_DEVMEM=y -CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_USER=m +CONFIG_CRYPTO_NULL=m @@ -88793,8 +88832,8 @@ index 6d2eae1..e2da9da 100644 +CONFIG_CRYPTO_CTS=m +CONFIG_CRYPTO_XTS=m CONFIG_CRYPTO_XCBC=m - CONFIG_CRYPTO_MD5=y - CONFIG_CRYPTO_SHA1=y +-CONFIG_CRYPTO_MD5=y +-CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA1_ARM=m CONFIG_CRYPTO_SHA512=m CONFIG_CRYPTO_TGR192=m @@ -88807,10 +88846,10 @@ index 6d2eae1..e2da9da 100644 # CONFIG_CRYPTO_HW is not set CONFIG_CRC_ITU_T=y -From 32839a570568823b3a1128bb1ae6c5fe3e9870af Mon Sep 17 00:00:00 2001 +From 3c7bee5134f4d492af3b6ba74ac91a76241979cf Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 18 Dec 2013 22:16:19 +0000 -Subject: [PATCH 024/114] config: Enable CONFIG_MEMCG, but leave it disabled +Subject: [PATCH 025/109] config: Enable CONFIG_MEMCG, but leave it disabled (due to memory cost). Enable with cgroup_enable=memory. --- @@ -88820,7 +88859,7 @@ Subject: [PATCH 024/114] config: Enable CONFIG_MEMCG, but leave it disabled 3 files changed, 25 insertions(+) diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index e2da9da..897616c 100644 +index 6b39872..ef20985 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig @@ -19,6 +19,7 @@ CONFIG_CGROUP_FREEZER=y @@ -88832,10 +88871,10 @@ index e2da9da..897616c 100644 CONFIG_NAMESPACES=y CONFIG_SCHED_AUTOGROUP=y diff --git a/kernel/cgroup.c b/kernel/cgroup.c -index 136ecea..c909506 100644 +index 04cfe8a..399cea3 100644 --- a/kernel/cgroup.c +++ b/kernel/cgroup.c -@@ -5322,6 +5322,29 @@ static int __init cgroup_disable(char *str) +@@ -5389,6 +5389,29 @@ static int __init cgroup_disable(char *str) } __setup("cgroup_disable=", cgroup_disable); @@ -88866,10 +88905,10 @@ index 136ecea..c909506 100644 { printk("cgroup: using legacy files on the default hierarchy\n"); diff --git a/mm/memcontrol.c b/mm/memcontrol.c -index 4918b6e..168498c 100644 +index 2f6893c..8778eba 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c -@@ -6207,6 +6207,7 @@ struct cgroup_subsys memory_cgrp_subsys = { +@@ -5398,6 +5398,7 @@ struct cgroup_subsys memory_cgrp_subsys = { .bind = mem_cgroup_bind, .legacy_cftypes = mem_cgroup_files, .early_init = 0, @@ -88878,10 +88917,10 @@ index 4918b6e..168498c 100644 #ifdef CONFIG_MEMCG_SWAP -From a29a51d9320d44124fe13457c45663d3051a9452 Mon Sep 17 00:00:00 2001 +From 675b0e93160dcb81e3d36ea3548c6d9f289928c9 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 3 Jul 2013 00:46:42 +0100 -Subject: [PATCH 025/114] Add FIQ patch to dwc_otg driver. Enable with +Subject: [PATCH 026/109] Add FIQ patch to dwc_otg driver. Enable with dwc_otg.fiq_fix_enable=1. Should give about 10% more ARM performance. Thanks to Gordon and Costas @@ -89163,10 +89202,10 @@ incarnations. create mode 100755 drivers/usb/host/dwc_otg/dwc_otg_mphi_fix.h diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 6283d7d..ba9c18e 100644 +index fdfb230..f607868 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -395,6 +395,7 @@ config ARCH_BCM2708 +@@ -381,6 +381,7 @@ config ARCH_BCM2708 select ARM_ERRATA_411920 select MACH_BCM2708 select VC4 @@ -92174,10 +92213,10 @@ index 1b1f83c..c8590b5 100644 if (status.b.sr) { -From d434f75bc6411d2964fce7fee50fe0ce49dd02eb Mon Sep 17 00:00:00 2001 +From 8c9d2b02c39e52c89c27d306fa1a2781fd48b014 Mon Sep 17 00:00:00 2001 From: P33M Date: Wed, 19 Mar 2014 12:58:23 +0000 -Subject: [PATCH 026/114] dwc_otg: fiq_fsm: Base commit for driver rewrite +Subject: [PATCH 027/109] dwc_otg: fiq_fsm: Base commit for driver rewrite This commit removes the previous FIQ fixes entirely and adds fiq_fsm. @@ -97072,10 +97111,10 @@ index 5d310df..4b32941 100644 return -EBUSY; } -From 19c1ada1c282d61163b6a24a6ee53517caec094c Mon Sep 17 00:00:00 2001 +From c6121acf96ef39f9c95b15760846f58b45027ee9 Mon Sep 17 00:00:00 2001 From: Vincent Sanders Date: Wed, 30 Jan 2013 12:45:18 +0000 -Subject: [PATCH 027/114] bcm2835: add v4l2 camera device +Subject: [PATCH 028/109] bcm2835: add v4l2 camera device - Supports raw YUV capture, preview, JPEG and H264. - Uses videobuf2 for data transfer, using dma_buf. @@ -97187,10 +97226,10 @@ index 0000000..c585a8f + +$ v4l2-ctl --list-formats diff --git a/drivers/media/platform/Kconfig b/drivers/media/platform/Kconfig -index 3aac88f..9bc18aa 100644 +index 765bffb..286b7ad 100644 --- a/drivers/media/platform/Kconfig +++ b/drivers/media/platform/Kconfig -@@ -126,6 +126,7 @@ config VIDEO_S3C_CAMIF +@@ -118,6 +118,7 @@ config VIDEO_S3C_CAMIF source "drivers/media/platform/soc_camera/Kconfig" source "drivers/media/platform/exynos4-is/Kconfig" source "drivers/media/platform/s5p-tv/Kconfig" @@ -97199,10 +97238,10 @@ index 3aac88f..9bc18aa 100644 endif # V4L_PLATFORM_DRIVERS diff --git a/drivers/media/platform/Makefile b/drivers/media/platform/Makefile -index 579046b..9c9cb34 100644 +index a49936b..414b28c 100644 --- a/drivers/media/platform/Makefile +++ b/drivers/media/platform/Makefile -@@ -49,4 +49,6 @@ obj-$(CONFIG_VIDEO_RENESAS_VSP1) += vsp1/ +@@ -46,4 +46,6 @@ obj-$(CONFIG_VIDEO_RENESAS_VSP1) += vsp1/ obj-y += omap/ @@ -103057,10 +103096,10 @@ index 0000000..9d1d11e + +#endif /* MMAL_VCHIQ_H */ -From c8fb291144efa1ab7f0628119894a1e72f08bce4 Mon Sep 17 00:00:00 2001 +From 876eadd8476087d347e6114781d2897bb8a63ee9 Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Mon, 9 Dec 2013 10:58:01 +0000 -Subject: [PATCH 028/114] V4L2: Fixes from 6by9 +Subject: [PATCH 029/109] V4L2: Fixes from 6by9 V4L2: Fix EV values. Add manual shutter speed control @@ -103292,11 +103331,11 @@ bcm2835-camera: stop_streaming now has a void return 8 files changed, 1300 insertions(+), 187 deletions(-) diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 897616c..3f99687 100644 +index ef20985..63a6546 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -708,6 +708,9 @@ CONFIG_DVB_AS102=m - CONFIG_VIDEO_EM28XX=m +@@ -724,6 +724,9 @@ CONFIG_VIDEO_EM28XX=m + CONFIG_VIDEO_EM28XX_V4L2=m CONFIG_VIDEO_EM28XX_ALSA=m CONFIG_VIDEO_EM28XX_DVB=m +CONFIG_V4L_PLATFORM_DRIVERS=y @@ -105472,10 +105511,10 @@ index a06fb44..76f249e 100644 release_msg: -From ce3d899b0ed284a6e901fb6f4a459fdcf003cadb Mon Sep 17 00:00:00 2001 +From 1216981dc3569162148f1564fc923ee684e38f0a Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 14:22:53 +0100 -Subject: [PATCH 029/114] dmaengine: Add support for BCM2708 +Subject: [PATCH 030/109] dmaengine: Add support for BCM2708 Add support for DMA controller of BCM2708 as used in the Raspberry Pi. Currently it only supports cyclic DMA. @@ -105527,10 +105566,10 @@ index a4aac4c..d03e7b5 100644 /* return channel no or -ve error */ extern int bcm_dma_chan_alloc(unsigned preferred_feature_set, diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig -index de46982..c9b8eb5 100644 +index f2b2c4e..5b9e196 100644 --- a/drivers/dma/Kconfig +++ b/drivers/dma/Kconfig -@@ -330,6 +330,12 @@ config DMA_BCM2835 +@@ -337,6 +337,12 @@ config DMA_BCM2835 select DMA_ENGINE select DMA_VIRTUAL_CHANNELS @@ -105544,10 +105583,10 @@ index de46982..c9b8eb5 100644 tristate "AM33xx CPPI41 DMA support" depends on ARCH_OMAP diff --git a/drivers/dma/Makefile b/drivers/dma/Makefile -index cb626c1..d3c4a82 100644 +index 2022b54..e50c8b8 100644 --- a/drivers/dma/Makefile +++ b/drivers/dma/Makefile -@@ -38,6 +38,7 @@ obj-$(CONFIG_DMA_SA11X0) += sa11x0-dma.o +@@ -39,6 +39,7 @@ obj-$(CONFIG_DMA_SA11X0) += sa11x0-dma.o obj-$(CONFIG_MMP_TDMA) += mmp_tdma.o obj-$(CONFIG_DMA_OMAP) += omap-dma.o obj-$(CONFIG_DMA_BCM2835) += bcm2835-dma.o @@ -106614,10 +106653,10 @@ index 0000000..10463db +MODULE_AUTHOR("Gellert Weisz "); +MODULE_LICENSE("GPL v2"); -From ec589c88e88452a80a20ad4ebc90e8fe5d80e7cd Mon Sep 17 00:00:00 2001 +From 9958213bdc57c1c3fd8b22995b1f7a2395ba2583 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 14:33:38 +0100 -Subject: [PATCH 030/114] ASoC: Add support for BCM2708 +Subject: [PATCH 031/109] ASoC: Add support for BCM2708 This driver adds support for digital audio (I2S) for the BCM2708 SoC that is used by the @@ -107749,10 +107788,10 @@ index 0000000..6fdcbc1 + +#endif -From c3294683a11a781ec75c31d0717bee4f6438c6e6 Mon Sep 17 00:00:00 2001 +From fb6b211a34ec8a53dc8802462e801cdb431fc083 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 14:59:51 +0100 -Subject: [PATCH 031/114] ASoC: Add support for PCM5102A codec +Subject: [PATCH 032/109] ASoC: Add support for PCM5102A codec Some definitions to support the PCM5102A codec by Texas Instruments. @@ -107766,10 +107805,10 @@ Signed-off-by: Florian Meier create mode 100644 sound/soc/codecs/pcm5102a.c diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig -index a68d173..0ef8bb7 100644 +index 8349f98..b289dd2 100644 --- a/sound/soc/codecs/Kconfig +++ b/sound/soc/codecs/Kconfig -@@ -80,6 +80,7 @@ config SND_SOC_ALL_CODECS +@@ -81,6 +81,7 @@ config SND_SOC_ALL_CODECS select SND_SOC_PCM512x_I2C if I2C select SND_SOC_PCM512x_SPI if SPI_MASTER select SND_SOC_RT286 if I2C @@ -107777,7 +107816,7 @@ index a68d173..0ef8bb7 100644 select SND_SOC_RT5631 if I2C select SND_SOC_RT5640 if I2C select SND_SOC_RT5645 if I2C -@@ -486,6 +487,9 @@ config SND_SOC_RT286 +@@ -502,6 +503,9 @@ config SND_SOC_RT286 tristate depends on I2C @@ -107785,13 +107824,13 @@ index a68d173..0ef8bb7 100644 + tristate + config SND_SOC_RT5631 - tristate - + tristate "Realtek ALC5631/RT5631 CODEC" + depends on I2C diff --git a/sound/soc/codecs/Makefile b/sound/soc/codecs/Makefile -index 5dce451..7b606e6 100644 +index bbdfd1e..3dd07b1 100644 --- a/sound/soc/codecs/Makefile +++ b/sound/soc/codecs/Makefile -@@ -74,6 +74,7 @@ snd-soc-pcm512x-i2c-objs := pcm512x-i2c.o +@@ -76,6 +76,7 @@ snd-soc-pcm512x-i2c-objs := pcm512x-i2c.o snd-soc-pcm512x-spi-objs := pcm512x-spi.o snd-soc-rl6231-objs := rl6231.o snd-soc-rt286-objs := rt286.o @@ -107799,7 +107838,7 @@ index 5dce451..7b606e6 100644 snd-soc-rt5631-objs := rt5631.o snd-soc-rt5640-objs := rt5640.o snd-soc-rt5645-objs := rt5645.o -@@ -250,6 +251,7 @@ obj-$(CONFIG_SND_SOC_PCM512x_I2C) += snd-soc-pcm512x-i2c.o +@@ -257,6 +258,7 @@ obj-$(CONFIG_SND_SOC_PCM512x_I2C) += snd-soc-pcm512x-i2c.o obj-$(CONFIG_SND_SOC_PCM512x_SPI) += snd-soc-pcm512x-spi.o obj-$(CONFIG_SND_SOC_RL6231) += snd-soc-rl6231.o obj-$(CONFIG_SND_SOC_RT286) += snd-soc-rt286.o @@ -107877,10 +107916,10 @@ index 0000000..126f1e9 +MODULE_AUTHOR("Florian Meier "); +MODULE_LICENSE("GPL v2"); -From 92f48ad219db73d6fb34f909965622ca4067da4f Mon Sep 17 00:00:00 2001 +From 9f755aa80ac220c641d5ed21166467ddd7dfac64 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 19:04:54 +0100 -Subject: [PATCH 032/114] BCM2708: Add I2S support to board file +Subject: [PATCH 033/109] BCM2708: Add I2S support to board file Adds the required initializations for I2S to the board file of mach-bcm2708. @@ -107935,10 +107974,10 @@ index a740344..dca28ad 100644 struct amba_device *d = amba_devs[i]; amba_device_register(d, &iomem_resource); -From 77afe84c37210adb241e9b48f1a415f49f183a68 Mon Sep 17 00:00:00 2001 +From f20bd5bbe4efd70685acd16e51bd4fd414f374fa Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 19:19:08 +0100 -Subject: [PATCH 033/114] ASoC: Add support for HifiBerry DAC +Subject: [PATCH 034/109] ASoC: Add support for HifiBerry DAC This adds a machine driver for the HifiBerry DAC. It is a sound card that can @@ -108087,10 +108126,10 @@ index 0000000..4b70b45 +MODULE_DESCRIPTION("ASoC Driver for HifiBerry DAC"); +MODULE_LICENSE("GPL v2"); -From 75d90451c5929bc54e169ac92fc3faf234f28543 Mon Sep 17 00:00:00 2001 +From 29f894439b2d2fb15351dfa6486c7d8cba374af3 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 22 Nov 2013 19:21:34 +0100 -Subject: [PATCH 034/114] BCM2708: Add HifiBerry DAC to board file +Subject: [PATCH 035/109] BCM2708: Add HifiBerry DAC to board file This adds the initalization of the HifiBerry DAC to the mach-bcm2708 board file. @@ -108138,10 +108177,10 @@ index dca28ad..50d4991 100644 struct amba_device *d = amba_devs[i]; amba_device_register(d, &iomem_resource); -From dc87b04d76f021cc710a986285bee4ca722b55fd Mon Sep 17 00:00:00 2001 +From ca637d75dfa6916b8c5d2d1dbd4114bfeacc086a Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Mon, 2 Dec 2013 20:28:22 +0100 -Subject: [PATCH 035/114] BCM2708: Add I2S and DMA support to default config +Subject: [PATCH 036/109] BCM2708: Add I2S and DMA support to default config This commit adds several modules that are needed for I2S support for the Raspberry Pi to the defconfig. @@ -108152,10 +108191,10 @@ Signed-off-by: Florian Meier 1 file changed, 6 insertions(+) diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 3f99687..dfd98df 100644 +index 63a6546..9a0e922 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -753,6 +753,10 @@ CONFIG_SND_USB_UA101=m +@@ -779,6 +779,10 @@ CONFIG_SND_USB_UA101=m CONFIG_SND_USB_CAIAQ=m CONFIG_SND_USB_CAIAQ_INPUT=y CONFIG_SND_USB_6FIRE=m @@ -108166,7 +108205,7 @@ index 3f99687..dfd98df 100644 CONFIG_SOUND_PRIME=m CONFIG_HIDRAW=y CONFIG_HID_A4TECH=m -@@ -947,6 +951,8 @@ CONFIG_RTC_DRV_RS5C348=m +@@ -977,6 +981,8 @@ CONFIG_RTC_DRV_RS5C348=m CONFIG_RTC_DRV_DS3234=m CONFIG_RTC_DRV_PCF2123=m CONFIG_RTC_DRV_RX4581=m @@ -108176,10 +108215,10 @@ index 3f99687..dfd98df 100644 CONFIG_UIO_PDRV_GENIRQ=m CONFIG_STAGING=y -From 52fceff596533a847231d1f9b8ea13d4e6ee829b Mon Sep 17 00:00:00 2001 +From d4cda2a2b50cc69386e6f2292fc042baec93c418 Mon Sep 17 00:00:00 2001 From: Florian Meier Date: Fri, 6 Dec 2013 20:50:28 +0100 -Subject: [PATCH 036/114] ASoC: BCM2708: Add support for RPi-DAC +Subject: [PATCH 037/109] ASoC: BCM2708: Add support for RPi-DAC This adds a machine driver for the RPi-DAC. @@ -108198,10 +108237,10 @@ Signed-off-by: Florian Meier create mode 100644 sound/soc/codecs/pcm1794a.c diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index dfd98df..f688da5 100644 +index 9a0e922..3f7a237 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -756,6 +756,7 @@ CONFIG_SND_USB_6FIRE=m +@@ -782,6 +782,7 @@ CONFIG_SND_USB_6FIRE=m CONFIG_SND_SOC=m CONFIG_SND_BCM2708_SOC_I2S=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC=m @@ -108377,10 +108416,10 @@ index 0000000..6d6e0ba +MODULE_DESCRIPTION("ASoC Driver for RPi-DAC"); +MODULE_LICENSE("GPL v2"); diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig -index 0ef8bb7..3c236a6 100644 +index b289dd2..c32ecbe 100644 --- a/sound/soc/codecs/Kconfig +++ b/sound/soc/codecs/Kconfig -@@ -81,6 +81,7 @@ config SND_SOC_ALL_CODECS +@@ -82,6 +82,7 @@ config SND_SOC_ALL_CODECS select SND_SOC_PCM512x_SPI if SPI_MASTER select SND_SOC_RT286 if I2C select SND_SOC_PCM5102A if I2C @@ -108388,7 +108427,7 @@ index 0ef8bb7..3c236a6 100644 select SND_SOC_RT5631 if I2C select SND_SOC_RT5640 if I2C select SND_SOC_RT5645 if I2C -@@ -487,6 +488,9 @@ config SND_SOC_RT286 +@@ -503,6 +504,9 @@ config SND_SOC_RT286 tristate depends on I2C @@ -108399,10 +108438,10 @@ index 0ef8bb7..3c236a6 100644 tristate diff --git a/sound/soc/codecs/Makefile b/sound/soc/codecs/Makefile -index 7b606e6..2a7f823 100644 +index 3dd07b1..1548bf33 100644 --- a/sound/soc/codecs/Makefile +++ b/sound/soc/codecs/Makefile -@@ -74,6 +74,7 @@ snd-soc-pcm512x-i2c-objs := pcm512x-i2c.o +@@ -76,6 +76,7 @@ snd-soc-pcm512x-i2c-objs := pcm512x-i2c.o snd-soc-pcm512x-spi-objs := pcm512x-spi.o snd-soc-rl6231-objs := rl6231.o snd-soc-rt286-objs := rt286.o @@ -108410,7 +108449,7 @@ index 7b606e6..2a7f823 100644 snd-soc-pcm5102a-objs := pcm5102a.o snd-soc-rt5631-objs := rt5631.o snd-soc-rt5640-objs := rt5640.o -@@ -251,6 +252,7 @@ obj-$(CONFIG_SND_SOC_PCM512x_I2C) += snd-soc-pcm512x-i2c.o +@@ -258,6 +259,7 @@ obj-$(CONFIG_SND_SOC_PCM512x_I2C) += snd-soc-pcm512x-i2c.o obj-$(CONFIG_SND_SOC_PCM512x_SPI) += snd-soc-pcm512x-spi.o obj-$(CONFIG_SND_SOC_RL6231) += snd-soc-rl6231.o obj-$(CONFIG_SND_SOC_RT286) += snd-soc-rt286.o @@ -108487,10 +108526,10 @@ index 0000000..b4eaa44 +MODULE_AUTHOR("Florian Meier "); +MODULE_LICENSE("GPL v2"); -From f33231bfe57c745235a346d5529a4bac717d925e Mon Sep 17 00:00:00 2001 +From 72230403d9af4ca82a9075a9d9641a6fbad5ae8a Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Wed, 15 Jan 2014 21:41:23 +0100 -Subject: [PATCH 037/114] ASoC: wm8804: Implement MCLK configuration options, +Subject: [PATCH 038/109] ASoC: wm8804: Implement MCLK configuration options, add 32bit support WM8804 can run with PLL frequencies of 256xfs and 128xfs for most sample rates. At 192kHz only 128xfs is supported. The existing driver selects 128xfs automatically for some lower samples rates. By using an @@ -108509,7 +108548,7 @@ Signed-off-by: Daniel Matuschek 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sound/soc/codecs/wm8804.c b/sound/soc/codecs/wm8804.c -index 3addc5f..d060b23 100644 +index 1315f76..3d86ba8 100644 --- a/sound/soc/codecs/wm8804.c +++ b/sound/soc/codecs/wm8804.c @@ -278,6 +278,7 @@ static int wm8804_hw_params(struct snd_pcm_substream *substream, @@ -108520,7 +108559,7 @@ index 3addc5f..d060b23 100644 blen = 0x2; break; default: -@@ -624,7 +625,7 @@ static const struct snd_soc_dai_ops wm8804_dai_ops = { +@@ -621,7 +622,7 @@ static const struct snd_soc_dai_ops wm8804_dai_ops = { }; #define WM8804_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3LE | \ @@ -108530,10 +108569,10 @@ index 3addc5f..d060b23 100644 #define WM8804_RATES (SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 | \ SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_64000 | \ -From bccfebf3bc4457faddaa65e3492ec9f07cb5750b Mon Sep 17 00:00:00 2001 +From 0bb2e4cadda70cee999665f14243faaf2c19150a Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Wed, 15 Jan 2014 21:42:08 +0100 -Subject: [PATCH 038/114] ASoC: BCM:Add support for HiFiBerry Digi. Driver is +Subject: [PATCH 039/109] ASoC: BCM:Add support for HiFiBerry Digi. Driver is based on the patched WM8804 driver. Signed-off-by: Daniel Matuschek @@ -108736,10 +108775,10 @@ index 0000000..e4f769d +MODULE_DESCRIPTION("ASoC Driver for HifiBerry Digi"); +MODULE_LICENSE("GPL v2"); -From 2a04dad39006e26f9ee4c56e78255d5e4dc20075 Mon Sep 17 00:00:00 2001 +From 2d6d6cd0ba7c029da824b0ca5c17eb17edad10ce Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Thu, 16 Jan 2014 07:26:08 +0100 -Subject: [PATCH 039/114] BCM2708: Added support for HiFiBerry Digi board Board +Subject: [PATCH 040/109] BCM2708: Added support for HiFiBerry Digi board Board initalization by I2C Signed-off-by: Daniel Matuschek @@ -108786,10 +108825,10 @@ index 100c223..a57cb85 100644 bcm_register_device(&snd_rpi_dac_device); bcm_register_device(&snd_pcm1794a_codec_device); -From 7ea75f6521191c234c02d6849388bb3ad5071754 Mon Sep 17 00:00:00 2001 +From 501ead58b3fb28519674af7f7ca770f40fbdea49 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Thu, 16 Jan 2014 07:27:28 +0100 -Subject: [PATCH 040/114] BCM2708: Added HiFiBerry Digi configuration option It +Subject: [PATCH 041/109] BCM2708: Added HiFiBerry Digi configuration option It will be compiled as a module by default. This also includes the WM8804 driver. @@ -108799,10 +108838,10 @@ Signed-off-by: Daniel Matuschek 1 file changed, 1 insertion(+) diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index f688da5..c9d3fac 100644 +index 3f7a237..cbd53b1 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -756,6 +756,7 @@ CONFIG_SND_USB_6FIRE=m +@@ -782,6 +782,7 @@ CONFIG_SND_USB_6FIRE=m CONFIG_SND_SOC=m CONFIG_SND_BCM2708_SOC_I2S=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC=m @@ -108811,10 +108850,10 @@ index f688da5..c9d3fac 100644 CONFIG_SND_SIMPLE_CARD=m CONFIG_SOUND_PRIME=m -From 999241ea1ab8a7b1526f41c100cd636ab3511fe9 Mon Sep 17 00:00:00 2001 +From 819ab2ffbc41d5d4c6cc27ee6bb334fb7dd777ae Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Thu, 16 Jan 2014 07:36:35 +0100 -Subject: [PATCH 041/114] ASoC: wm8804: Set idle_bias_off to false Idle bias +Subject: [PATCH 042/109] ASoC: wm8804: Set idle_bias_off to false Idle bias has been change to remove warning on driver startup Signed-off-by: Daniel Matuschek @@ -108823,10 +108862,10 @@ Signed-off-by: Daniel Matuschek 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sound/soc/codecs/wm8804.c b/sound/soc/codecs/wm8804.c -index d060b23..d486a9d 100644 +index 3d86ba8..34f7f76 100644 --- a/sound/soc/codecs/wm8804.c +++ b/sound/soc/codecs/wm8804.c -@@ -656,7 +656,7 @@ static struct snd_soc_codec_driver soc_codec_dev_wm8804 = { +@@ -653,7 +653,7 @@ static struct snd_soc_codec_driver soc_codec_dev_wm8804 = { .probe = wm8804_probe, .remove = wm8804_remove, .set_bias_level = wm8804_set_bias_level, @@ -108836,10 +108875,10 @@ index d060b23..d486a9d 100644 .controls = wm8804_snd_controls, .num_controls = ARRAY_SIZE(wm8804_snd_controls), -From 19b5aa63015268ce3c736b720e1e7f8211f7cf98 Mon Sep 17 00:00:00 2001 +From c79ade9511f2b90a0cf84d152b7ea8e2afd6293e Mon Sep 17 00:00:00 2001 From: Gordon Garrity Date: Sat, 8 Mar 2014 16:56:57 +0000 -Subject: [PATCH 042/114] Add IQaudIO Sound Card support for Raspberry Pi +Subject: [PATCH 043/109] Add IQaudIO Sound Card support for Raspberry Pi --- arch/arm/configs/bcmrpi_defconfig | 1 + @@ -108851,10 +108890,10 @@ Subject: [PATCH 042/114] Add IQaudIO Sound Card support for Raspberry Pi create mode 100644 sound/soc/bcm/iqaudio-dac.c diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index c9d3fac..f15a4b9 100644 +index cbd53b1..7ba662a 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -758,6 +758,7 @@ CONFIG_SND_BCM2708_SOC_I2S=m +@@ -784,6 +784,7 @@ CONFIG_SND_BCM2708_SOC_I2S=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI=m CONFIG_SND_BCM2708_SOC_RPI_DAC=m @@ -109049,10 +109088,10 @@ index 0000000..8d0e2ae +MODULE_DESCRIPTION("ASoC Driver for IQAudio DAC"); +MODULE_LICENSE("GPL v2"); -From 197803c176d753bc23fdf705306596cbd1e8b658 Mon Sep 17 00:00:00 2001 +From c359a5ee3bd738961427186256be97188a87bfef Mon Sep 17 00:00:00 2001 From: Howard Mitchell Date: Fri, 28 Mar 2014 16:40:31 +0000 -Subject: [PATCH 043/114] pcm512x: Use a range macro for Volume and rename to +Subject: [PATCH 044/109] pcm512x: Use a range macro for Volume and rename to PCM. This allows limiting the output gain to avoid clipping in the @@ -109062,7 +109101,7 @@ DAC ouput stages. 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sound/soc/codecs/pcm512x.c b/sound/soc/codecs/pcm512x.c -index 640c991..b405719 100644 +index 30c673c..2054a69 100644 --- a/sound/soc/codecs/pcm512x.c +++ b/sound/soc/codecs/pcm512x.c @@ -259,8 +259,8 @@ static const struct soc_enum pcm512x_veds = @@ -109077,10 +109116,10 @@ index 640c991..b405719 100644 PCM512x_LAGN_SHIFT, PCM512x_RAGN_SHIFT, 1, 1, analog_tlv), SOC_DOUBLE_TLV("Playback Boost Volume", PCM512x_ANALOG_GAIN_BOOST, -From de30840b98e508ea9d650570686e35b1a64c900c Mon Sep 17 00:00:00 2001 +From d985ba5c1251ebf4e0d53e9e49808e56f0cc8742 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 18 Jun 2014 13:42:01 +0100 -Subject: [PATCH 044/114] vmstat: Workaround for issue where dirty page count +Subject: [PATCH 045/109] vmstat: Workaround for issue where dirty page count goes negative See: @@ -109107,10 +109146,10 @@ index 82e7db7..f87d16d 100644 static inline void __inc_zone_page_state(struct page *page, -From 8eb79690a70cce34e9a1c35cf165716f78301d2e Mon Sep 17 00:00:00 2001 +From 562475ed074e8496d440350422bf2537820e4b2e Mon Sep 17 00:00:00 2001 From: P33M Date: Fri, 20 Jun 2014 16:03:12 +0100 -Subject: [PATCH 045/114] dwc_otg: Fix various issues with root port and +Subject: [PATCH 046/109] dwc_otg: Fix various issues with root port and transaction errors Process the host port interrupts correctly (and don't trample them). @@ -109180,10 +109219,10 @@ index 4195ff2..a5566bc 100644 fiq_print(FIQDBG_ERR, dwc_otg_hcd->fiq_state, "RESET "); } -From 099581aeb11b7eafbca02c9e69f6e6c8de0c57ec Mon Sep 17 00:00:00 2001 +From e4364915e5e486400186b16743f27e8e683bb122 Mon Sep 17 00:00:00 2001 From: P33M Date: Fri, 20 Jun 2014 17:23:20 +0100 -Subject: [PATCH 046/114] fiq_fsm: Implement hack for Split Interrupt +Subject: [PATCH 047/109] fiq_fsm: Implement hack for Split Interrupt transactions Hubs aren't too picky about which endpoint we send Control type split @@ -109269,10 +109308,10 @@ index 130096b..68d4f3b 100644 break; } -From d828fe6d765939e457e87d7f348adfe69cfd4175 Mon Sep 17 00:00:00 2001 +From c879a654179c1997fb31343ffe193cba4ce8445e Mon Sep 17 00:00:00 2001 From: notro Date: Sun, 6 Jul 2014 12:07:25 +0200 -Subject: [PATCH 047/114] spi-bcm2708: Prepare for Common Clock Framework +Subject: [PATCH 048/109] spi-bcm2708: Prepare for Common Clock Framework migration As part of migrating to use the Common Clock Framework, replace clk_enable() @@ -109317,10 +109356,10 @@ index b04a57d..349d21f 100644 free_irq(bs->irq, master); iounmap(bs->base); -From 466743ec93a99240c1a5a04d65f490fd8370fbc3 Mon Sep 17 00:00:00 2001 +From 7a09a3dce774a0a5be04e106d6cab4c45a4b8225 Mon Sep 17 00:00:00 2001 From: notro Date: Sun, 6 Jul 2014 12:09:30 +0200 -Subject: [PATCH 048/114] BCM2708: Migrate to the Common Clock Framework +Subject: [PATCH 049/109] BCM2708: Migrate to the Common Clock Framework As part of moving towards using Device Tree, the Common Clock Framework has to be used instead of the BCM2708 clock implementation. @@ -109341,10 +109380,10 @@ Signed-off-by: Noralf Tronnes delete mode 100644 arch/arm/mach-bcm2708/clock.h diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index ba9c18e..0f2287f 100644 +index f607868..96f98ce 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -385,11 +385,10 @@ config ARCH_BCM2708 +@@ -371,11 +371,10 @@ config ARCH_BCM2708 bool "Broadcom BCM2708 family" select CPU_V6 select ARM_AMBA @@ -109590,10 +109629,10 @@ index 5f9d725..0000000 - unsigned long rate; -}; -From f6459ef9602c16b02516be4848a77d30ce75d168 Mon Sep 17 00:00:00 2001 +From c2eb05044f3740a2183b5b39203e970e760a07c6 Mon Sep 17 00:00:00 2001 From: notro Date: Wed, 9 Jul 2014 14:46:08 +0200 -Subject: [PATCH 049/114] BCM2708: Add core Device Tree support +Subject: [PATCH 050/109] BCM2708: Add core Device Tree support Add the bare minimum needed to boot BCM2708 from a Device Tree. @@ -109617,7 +109656,7 @@ Signed-off-by: Noralf Tronnes notro@tronnes.org create mode 100644 arch/arm/boot/dts/bcm2708.dtsi diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 38c89ca..c727f71 100644 +index 91bd5bd..d177201 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -53,6 +53,7 @@ dtb-$(CONFIG_ARCH_AT91) += at91-sama5d4ek.dtb @@ -109626,8 +109665,8 @@ index 38c89ca..c727f71 100644 dtb-$(CONFIG_ARCH_AXXIA) += axm5516-amarillo.dtb +dtb-$(CONFIG_BCM2708_DT) += bcm2708-rpi-b.dtb dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b.dtb - dtb-$(CONFIG_ARCH_BCM_5301X) += bcm4708-netgear-r6250.dtb - dtb-$(CONFIG_ARCH_BCM_63XX) += bcm963138dvt.dtb + dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b-plus.dtb + dtb-$(CONFIG_ARCH_BCM_5301X) += \ diff --git a/arch/arm/boot/dts/bcm2708-rpi-b.dts b/arch/arm/boot/dts/bcm2708-rpi-b.dts new file mode 100644 index 0000000..e319c8e @@ -109758,10 +109797,10 @@ index ef12cb8..747e27a 100644 module_param(boardrev, uint, 0644); -From 6be3809614db2d52724eb4b5193c27d2466142be Mon Sep 17 00:00:00 2001 +From fa27429ce9578e756197cf04b9835603f57dfb8f Mon Sep 17 00:00:00 2001 From: notro Date: Wed, 9 Jul 2014 14:47:48 +0200 -Subject: [PATCH 050/114] BCM2708: armctrl: Add IRQ Device Tree support +Subject: [PATCH 051/109] BCM2708: armctrl: Add IRQ Device Tree support Add Device Tree IRQ support for BCM2708. Usage is the same as for irq-bcm2835. @@ -109931,10 +109970,10 @@ index 96fa9b9..74bacb3 100644 return 0; } -From fff70fcc73e09e86d46f87dd44459870f15423b2 Mon Sep 17 00:00:00 2001 +From 276be851fc57b1badfef77e9bd067fd51875e462 Mon Sep 17 00:00:00 2001 From: notro Date: Thu, 10 Jul 2014 13:59:47 +0200 -Subject: [PATCH 051/114] BCM2708: use pinctrl-bcm2835 +Subject: [PATCH 052/109] BCM2708: use pinctrl-bcm2835 Use pinctrl-bcm2835 instead of the pinctrl-bcm2708 and bcm2708_gpio combination. @@ -109998,7 +110037,7 @@ index 747e27a..0e5bd43 100644 #if defined(CONFIG_W1_MASTER_GPIO) || defined(CONFIG_W1_MASTER_GPIO_MODULE) w1_gpio_pdata.pin = w1_gpio_pin; diff --git a/drivers/pinctrl/pinctrl-bcm2835.c b/drivers/pinctrl/pinctrl-bcm2835.c -index eabba02..962e180 100644 +index 9aa8a3f..9d1149e 100644 --- a/drivers/pinctrl/pinctrl-bcm2835.c +++ b/drivers/pinctrl/pinctrl-bcm2835.c @@ -382,7 +382,7 @@ static struct gpio_chip bcm2835_gpio_chip = { @@ -110011,10 +110050,10 @@ index eabba02..962e180 100644 .can_sleep = false, }; -From 5de6baef9b5d9e3a84e0c3752cfb7eaef2eb1a0f Mon Sep 17 00:00:00 2001 +From 921c71ddf380c8fc028d90b8807ef4ace70086e6 Mon Sep 17 00:00:00 2001 From: notro Date: Sun, 27 Jul 2014 20:12:58 +0200 -Subject: [PATCH 052/114] spi: bcm2708: add device tree support +Subject: [PATCH 053/109] spi: bcm2708: add device tree support Add DT support to driver and add to .dtsi file. Setup pins and spidev in .dts file. @@ -110178,7 +110217,7 @@ index 0e5bd43..a2069f8 100644 } diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig -index 71b4741..a5238ab 100644 +index ae4ea48..9f202dd 100644 --- a/drivers/spi/Kconfig +++ b/drivers/spi/Kconfig @@ -77,7 +77,7 @@ config SPI_ATMEL @@ -110221,10 +110260,10 @@ index 349d21f..041b5e2 100644 .probe = bcm2708_spi_probe, .remove = bcm2708_spi_remove, -From 772f3f8c0c321b2817d35f48d553db023ead2d90 Mon Sep 17 00:00:00 2001 +From e3bc961a920dfffd560efdc592d3c3a28b92630d Mon Sep 17 00:00:00 2001 From: notro Date: Tue, 29 Jul 2014 11:04:49 +0200 -Subject: [PATCH 053/114] i2c: bcm2708: add device tree support +Subject: [PATCH 054/109] i2c: bcm2708: add device tree support Add DT support to driver and add to .dtsi file. Setup pins in .dts file. @@ -110375,10 +110414,10 @@ index a2069f8..b45f327 100644 bcm_register_device(&bcm2835_hwmon_device); bcm_register_device(&bcm2835_thermal_device); diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig -index 3d3db41..d30a986 100644 +index 68362ab..7b7ba6f 100644 --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig -@@ -361,7 +361,7 @@ config I2C_AXXIA +@@ -362,7 +362,7 @@ config I2C_AXXIA config I2C_BCM2835 tristate "Broadcom BCM2835 I2C controller" @@ -110448,10 +110487,10 @@ index 7d385a3..526129b 100644 .probe = bcm2708_i2c_probe, .remove = bcm2708_i2c_remove, -From 4c2238bfb5f0345f889d2f22d52601eb76f62eaf Mon Sep 17 00:00:00 2001 +From dd70f130500963aafafcee3d5dc1564c51363674 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Mon, 14 Jul 2014 22:02:09 +0100 -Subject: [PATCH 054/114] hid: Reduce default mouse polling interval to 60Hz +Subject: [PATCH 055/109] hid: Reduce default mouse polling interval to 60Hz Reduces overhead when using X --- @@ -110459,7 +110498,7 @@ Reduces overhead when using X 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/drivers/hid/usbhid/hid-core.c b/drivers/hid/usbhid/hid-core.c -index ca6849a..4671921 100644 +index bfbe1be..a738b25 100644 --- a/drivers/hid/usbhid/hid-core.c +++ b/drivers/hid/usbhid/hid-core.c @@ -49,7 +49,7 @@ @@ -110471,7 +110510,7 @@ index ca6849a..4671921 100644 module_param_named(mousepoll, hid_mousepoll_interval, uint, 0644); MODULE_PARM_DESC(mousepoll, "Polling interval of mice"); -@@ -1079,8 +1079,12 @@ static int usbhid_start(struct hid_device *hid) +@@ -1090,8 +1090,12 @@ static int usbhid_start(struct hid_device *hid) } /* Change the polling interval of mice. */ @@ -110487,10 +110526,10 @@ index ca6849a..4671921 100644 ret = -ENOMEM; if (usb_endpoint_dir_in(endpoint)) { -From 19e17e411eb8eb971ee963f083ec8446dcd0538e Mon Sep 17 00:00:00 2001 +From a87afb0647b5f16ab95189f1048c3e9098c59d04 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 24 Jul 2014 21:24:03 +0100 -Subject: [PATCH 055/114] usb: core: make overcurrent messages more prominent +Subject: [PATCH 056/109] usb: core: make overcurrent messages more prominent Hub overcurrent messages are more serious than "debug". Increase loglevel. --- @@ -110498,10 +110537,10 @@ Hub overcurrent messages are more serious than "debug". Increase loglevel. 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c -index b649fef..5f8d914 100644 +index aeb50bb..21844a7 100644 --- a/drivers/usb/core/hub.c +++ b/drivers/usb/core/hub.c -@@ -4923,7 +4923,7 @@ static void port_event(struct usb_hub *hub, int port1) +@@ -4921,7 +4921,7 @@ static void port_event(struct usb_hub *hub, int port1) if (portchange & USB_PORT_STAT_C_OVERCURRENT) { u16 status = 0, unused; @@ -110511,10 +110550,10 @@ index b649fef..5f8d914 100644 USB_PORT_FEAT_C_OVER_CURRENT); msleep(100); /* Cool down */ -From 2b68b9460155e22c8ddcdc10a485640b9b32301b Mon Sep 17 00:00:00 2001 +From b3c65bc61773703cd8993ffb457f23a85c7487d0 Mon Sep 17 00:00:00 2001 From: Tim Gover Date: Tue, 22 Jul 2014 15:41:04 +0100 -Subject: [PATCH 056/114] vcsm: VideoCore shared memory service for BCM2835 +Subject: [PATCH 057/109] vcsm: VideoCore shared memory service for BCM2835 Add experimental support for the VideoCore shared memory service. This allows user processes to allocate memory from VideoCore's @@ -114848,10 +114887,10 @@ index 0000000..da1c523 +MODULE_DESCRIPTION("VideoCore SharedMemory Driver"); +MODULE_LICENSE("GPL v2"); -From 48c48c4437603bad79eb848ac03b21a86cc3bb90 Mon Sep 17 00:00:00 2001 +From 8d8dc6295c000c8c7b0e56cbb74b48eb4649ee3d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Thu, 7 Aug 2014 02:03:50 +0100 -Subject: [PATCH 057/114] Revert "ARM: dma: Use dma_pfn_offset for dma address +Subject: [PATCH 058/109] Revert "ARM: dma: Use dma_pfn_offset for dma address translation" This reverts commit 6ce0d20016925d031f1e24d64302e4c976d7cec6. @@ -114860,7 +114899,7 @@ This reverts commit 6ce0d20016925d031f1e24d64302e4c976d7cec6. 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/arch/arm/include/asm/dma-mapping.h b/arch/arm/include/asm/dma-mapping.h -index 85738b2..9477f09 100644 +index b52101d..f5572d9 100644 --- a/arch/arm/include/asm/dma-mapping.h +++ b/arch/arm/include/asm/dma-mapping.h @@ -58,37 +58,21 @@ static inline int dma_set_mask(struct device *dev, u64 mask) @@ -114903,25 +114942,25 @@ index 85738b2..9477f09 100644 } -From 7da0618348811dbb38825457f63e12d3b8ba943f Mon Sep 17 00:00:00 2001 +From 4c9c17fcc1f351cc06268e4902d0dee92fe1a68a Mon Sep 17 00:00:00 2001 From: gellert Date: Fri, 15 Aug 2014 16:35:06 +0100 -Subject: [PATCH 058/114] MMC: added alternative MMC driver +Subject: [PATCH 059/109] MMC: added alternative MMC driver --- arch/arm/configs/bcmrpi_defconfig | 2 + arch/arm/mach-bcm2708/bcm2708.c | 31 + drivers/mmc/host/Kconfig | 40 +- drivers/mmc/host/Makefile | 1 + - drivers/mmc/host/bcm2835-mmc.c | 1557 +++++++++++++++++++++++++++++++++++++ - 5 files changed, 1620 insertions(+), 11 deletions(-) + drivers/mmc/host/bcm2835-mmc.c | 1553 +++++++++++++++++++++++++++++++++++++ + 5 files changed, 1616 insertions(+), 11 deletions(-) create mode 100644 drivers/mmc/host/bcm2835-mmc.c diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index f15a4b9..c363a10 100644 +index 7ba662a..0db8119 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -908,6 +908,8 @@ CONFIG_MMC=y +@@ -938,6 +938,8 @@ CONFIG_MMC=y CONFIG_MMC_BLOCK_MINORS=32 CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_PLTFM=y @@ -114980,7 +115019,7 @@ index b45f327..5ff1299 100644 for (i = 0; i < ARRAY_SIZE(bcm2708_alsa_devices); i++) bcm_register_device(&bcm2708_alsa_devices[i]); diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig -index 1386065..977aeef 100644 +index 2d6fbdd..b6077b5 100644 --- a/drivers/mmc/host/Kconfig +++ b/drivers/mmc/host/Kconfig @@ -281,17 +281,6 @@ config MMC_SDHCI_BCM_KONA @@ -115038,7 +115077,7 @@ index 1386065..977aeef 100644 tristate "TI OMAP Multimedia Card Interface support" depends on ARCH_OMAP diff --git a/drivers/mmc/host/Makefile b/drivers/mmc/host/Makefile -index b09ecfb..7b17387 100644 +index f7b0a77..378aed9 100644 --- a/drivers/mmc/host/Makefile +++ b/drivers/mmc/host/Makefile @@ -17,6 +17,7 @@ obj-$(CONFIG_MMC_SDHCI_PXAV2) += sdhci-pxav2.o @@ -115051,10 +115090,10 @@ index b09ecfb..7b17387 100644 obj-$(CONFIG_MMC_OMAP) += omap.o diff --git a/drivers/mmc/host/bcm2835-mmc.c b/drivers/mmc/host/bcm2835-mmc.c new file mode 100644 -index 0000000..cefba7c +index 0000000..92febc3 --- /dev/null +++ b/drivers/mmc/host/bcm2835-mmc.c -@@ -0,0 +1,1557 @@ +@@ -0,0 +1,1553 @@ +/* + * BCM2835 MMC host driver. + * @@ -115184,15 +115223,11 @@ index 0000000..cefba7c + int max_delay; /* maximum length of time spent waiting */ + + int flags; /* Host attributes */ -+#define SDHCI_USE_SDMA (1<<0) /* Host is SDMA capable */ -+#define SDHCI_USE_ADMA (1<<1) /* Host is ADMA capable */ +#define SDHCI_REQ_USE_DMA (1<<2) /* Use DMA for this req. */ +#define SDHCI_DEVICE_DEAD (1<<3) /* Device unresponsive */ +#define SDHCI_AUTO_CMD12 (1<<6) /* Auto CMD12 support */ +#define SDHCI_AUTO_CMD23 (1<<7) /* Auto CMD23 support */ -+#define SDHCI_PV_ENABLED (1<<8) /* Preset value enabled */ +#define SDHCI_SDIO_IRQ_ENABLED (1<<9) /* SDIO irq enabled */ -+#define SDHCI_USE_PLATDMA (1<<12) /* Host uses 3rd party DMA */ +}; + + @@ -116613,10 +116648,10 @@ index 0000000..cefba7c +MODULE_LICENSE("GPL v2"); +MODULE_AUTHOR("Gellert Weisz"); -From 06c752756a452a0c59447836edce57ef7393be5c Mon Sep 17 00:00:00 2001 +From 8e777a27499279a8351836a80d4df838264dc0e3 Mon Sep 17 00:00:00 2001 From: P33M Date: Tue, 13 Jan 2015 17:12:18 +0000 -Subject: [PATCH 059/114] mmc: Disable CMD23 transfers on all cards +Subject: [PATCH 060/109] mmc: Disable CMD23 transfers on all cards Pending wire-level investigation of these types of transfers and associated errors on bcm2835-mmc, disable for now. Fallback of @@ -116642,10 +116677,10 @@ index dd1d1e0..f472082 100644 } EXPORT_SYMBOL(mmc_fixup_device); -From fb7a1cc51aee2d66232d3a170e1343dfbb7b3485 Mon Sep 17 00:00:00 2001 +From a869a7389e5a734bbbc42c70c3950b2f49cc3591 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Mon, 4 Aug 2014 10:06:56 +0200 -Subject: [PATCH 060/114] Added support for HiFiBerry DAC+ +Subject: [PATCH 061/109] Added support for HiFiBerry DAC+ The driver is based on the HiFiBerry DAC driver. However HiFiBerry DAC+ uses a different codec chip (PCM5122), therefore a new driver is necessary. @@ -116659,10 +116694,10 @@ a different codec chip (PCM5122), therefore a new driver is necessary. create mode 100644 sound/soc/bcm/hifiberry_dacplus.c diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index c363a10..28547eb 100644 +index 0db8119..a8c60cf 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -756,6 +756,7 @@ CONFIG_SND_USB_6FIRE=m +@@ -782,6 +782,7 @@ CONFIG_SND_USB_6FIRE=m CONFIG_SND_SOC=m CONFIG_SND_BCM2708_SOC_I2S=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC=m @@ -116869,10 +116904,10 @@ index 0000000..c63387b +MODULE_DESCRIPTION("ASoC Driver for HiFiBerry DAC+"); +MODULE_LICENSE("GPL v2"); -From 709288ac793d8a070f33c36e76ca03281fa6b417 Mon Sep 17 00:00:00 2001 +From 45fa955cf4e5d54a01c807c1a18cb0828bd45b9a Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Mon, 4 Aug 2014 11:09:58 +0200 -Subject: [PATCH 061/114] Added driver for HiFiBerry Amp amplifier add-on board +Subject: [PATCH 062/109] Added driver for HiFiBerry Amp amplifier add-on board The driver contains a low-level hardware driver for the TAS5713 and the drivers for the Raspberry Pi I2S subsystem. @@ -116892,10 +116927,10 @@ drivers for the Raspberry Pi I2S subsystem. create mode 100644 sound/soc/codecs/tas5713.h diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 28547eb..997e1f3 100644 +index a8c60cf..8381041 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig -@@ -758,6 +758,7 @@ CONFIG_SND_BCM2708_SOC_I2S=m +@@ -784,6 +784,7 @@ CONFIG_SND_BCM2708_SOC_I2S=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DAC=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DACPLUS=m CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI=m @@ -117090,19 +117125,19 @@ index 0000000..1e87ee0 +MODULE_DESCRIPTION("ASoC driver for HiFiBerry-AMP"); +MODULE_LICENSE("GPL v2"); diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig -index 3c236a6..83c55f8 100644 +index c32ecbe..664dc4d 100644 --- a/sound/soc/codecs/Kconfig +++ b/sound/soc/codecs/Kconfig -@@ -105,6 +105,7 @@ config SND_SOC_ALL_CODECS - select SND_SOC_TAS5086 if I2C +@@ -107,6 +107,7 @@ config SND_SOC_ALL_CODECS + select SND_SOC_TFA9879 if I2C select SND_SOC_TLV320AIC23_I2C if I2C select SND_SOC_TLV320AIC23_SPI if SPI_MASTER + select SND_SOC_TAS5713 if I2C select SND_SOC_TLV320AIC26 if SPI_MASTER select SND_SOC_TLV320AIC31XX if I2C select SND_SOC_TLV320AIC32X4 if I2C -@@ -585,6 +586,9 @@ config SND_SOC_TAS5086 - tristate "Texas Instruments TAS5086 speaker amplifier" +@@ -612,6 +613,9 @@ config SND_SOC_TFA9879 + tristate "NXP Semiconductors TFA9879 amplifier" depends on I2C +config SND_SOC_TAS5713 @@ -117112,21 +117147,21 @@ index 3c236a6..83c55f8 100644 tristate diff --git a/sound/soc/codecs/Makefile b/sound/soc/codecs/Makefile -index 2a7f823..ca76a2b 100644 +index 1548bf33..756f628 100644 --- a/sound/soc/codecs/Makefile +++ b/sound/soc/codecs/Makefile -@@ -103,6 +103,7 @@ snd-soc-sta350-objs := sta350.o - snd-soc-sta529-objs := sta529.o +@@ -107,6 +107,7 @@ snd-soc-sta529-objs := sta529.o snd-soc-stac9766-objs := stac9766.o snd-soc-tas5086-objs := tas5086.o + snd-soc-tfa9879-objs := tfa9879.o +snd-soc-tas5713-objs := tas5713.o snd-soc-tlv320aic23-objs := tlv320aic23.o snd-soc-tlv320aic23-i2c-objs := tlv320aic23-i2c.o snd-soc-tlv320aic23-spi-objs := tlv320aic23-spi.o -@@ -278,6 +279,7 @@ obj-$(CONFIG_SND_SOC_STA529) += snd-soc-sta529.o - obj-$(CONFIG_SND_SOC_STAC9766) += snd-soc-stac9766.o +@@ -287,6 +288,7 @@ obj-$(CONFIG_SND_SOC_STAC9766) += snd-soc-stac9766.o obj-$(CONFIG_SND_SOC_TAS2552) += snd-soc-tas2552.o obj-$(CONFIG_SND_SOC_TAS5086) += snd-soc-tas5086.o + obj-$(CONFIG_SND_SOC_TFA9879) += snd-soc-tfa9879.o +obj-$(CONFIG_SND_SOC_TAS5713) += snd-soc-tas5713.o obj-$(CONFIG_SND_SOC_TLV320AIC23) += snd-soc-tlv320aic23.o obj-$(CONFIG_SND_SOC_TLV320AIC23_I2C) += snd-soc-tlv320aic23-i2c.o @@ -117716,10 +117751,10 @@ index 0000000..8f019e0 + +#endif /* _TAS5713_H */ -From 49e011c979aee23801198617a0052b0b087583a6 Mon Sep 17 00:00:00 2001 +From 861c08aec9f2f1c1a22b3d7d8ae19fec798f7832 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 13 Oct 2014 11:47:53 +0100 -Subject: [PATCH 062/114] Improve __copy_to_user and __copy_from_user +Subject: [PATCH 063/109] Improve __copy_to_user and __copy_from_user performance Provide a __copy_from_user that uses memcpy. On BCM2708, use @@ -117972,10 +118007,10 @@ index 0000000..5d4bda1 +92: +.endm diff --git a/arch/arm/lib/copy_from_user.S b/arch/arm/lib/copy_from_user.S -index 66a477a..3faddf7 100644 +index 7a235b9..8aff879 100644 --- a/arch/arm/lib/copy_from_user.S +++ b/arch/arm/lib/copy_from_user.S -@@ -84,11 +84,13 @@ +@@ -89,11 +89,13 @@ .text @@ -119243,10 +119278,10 @@ index 3e58d71..0622891 100644 static unsigned long noinline __clear_user_memset(void __user *addr, unsigned long n) -From 37fd085e3449fabd2d976d671ebf2a6c631c9afd Mon Sep 17 00:00:00 2001 +From 118e894115980f246a4e092d51c15fa8fa17b242 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 1 Sep 2014 16:35:56 +0100 -Subject: [PATCH 063/114] bcm2708: Allow option card devices to be configured +Subject: [PATCH 064/109] bcm2708: Allow option card devices to be configured via DT If the kernel is built with Device Tree support, and if a DT blob @@ -119258,10 +119293,9 @@ support code with each new device. arch/arm/mach-bcm2708/bcm2708.c | 70 ++++++++++++++++++++--------------------- drivers/dma/bcm2708-dmaengine.c | 14 ++++----- drivers/mmc/host/bcm2835-mmc.c | 24 +++++++------- - drivers/of/fdt.c | 6 +++- sound/soc/bcm/bcm2708-i2s.c | 29 +++++++++++------ sound/soc/bcm/bcm2835-i2s.c | 1 + - 6 files changed, 80 insertions(+), 64 deletions(-) + 5 files changed, 75 insertions(+), 63 deletions(-) diff --git a/arch/arm/mach-bcm2708/bcm2708.c b/arch/arm/mach-bcm2708/bcm2708.c index 5f6a1fa..2c6a29d 100644 @@ -119507,7 +119541,7 @@ index 10463db..3f9be02 100644 static struct platform_driver bcm2835_dma_driver = { diff --git a/drivers/mmc/host/bcm2835-mmc.c b/drivers/mmc/host/bcm2835-mmc.c -index cefba7c..34d6167 100644 +index 92febc3..79808cb 100644 --- a/drivers/mmc/host/bcm2835-mmc.c +++ b/drivers/mmc/host/bcm2835-mmc.c @@ -42,7 +42,7 @@ @@ -119519,7 +119553,7 @@ index cefba7c..34d6167 100644 #define BCM2835_CLOCK_FREQ 250000000 #endif -@@ -662,7 +662,7 @@ void bcm2835_mmc_send_command(struct bcm2835_host *host, struct mmc_command *cmd +@@ -658,7 +658,7 @@ void bcm2835_mmc_send_command(struct bcm2835_host *host, struct mmc_command *cmd } timeout = jiffies; @@ -119528,7 +119562,7 @@ index cefba7c..34d6167 100644 if (!cmd->data && cmd->busy_timeout > 9000) timeout += DIV_ROUND_UP(cmd->busy_timeout, 1000) * HZ + HZ; else -@@ -962,7 +962,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) +@@ -958,7 +958,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) struct bcm2835_host *host = dev_id; u32 intmask, mask, unexpected = 0; int max_loops = 16; @@ -119537,7 +119571,7 @@ index cefba7c..34d6167 100644 int cardint = 0; #endif -@@ -993,7 +993,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) +@@ -989,7 +989,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) mmc_hostname(host->mmc)); if (intmask & SDHCI_INT_CARD_INT) { @@ -119546,7 +119580,7 @@ index cefba7c..34d6167 100644 cardint = 1; #else bcm2835_mmc_enable_sdio_irq_nolock(host, false); -@@ -1026,7 +1026,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) +@@ -1022,7 +1022,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) bcm2835_mmc_dumpregs(host); } @@ -119555,7 +119589,7 @@ index cefba7c..34d6167 100644 if (cardint) mmc_signal_sdio_irq(host->mmc); #endif -@@ -1034,7 +1034,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) +@@ -1030,7 +1030,7 @@ static irqreturn_t bcm2835_mmc_irq(int irq, void *dev_id) return result; } @@ -119564,7 +119598,7 @@ index cefba7c..34d6167 100644 static irqreturn_t bcm2835_mmc_thread_irq(int irq, void *dev_id) { struct bcm2835_host *host = dev_id; -@@ -1288,7 +1288,7 @@ int bcm2835_mmc_add_host(struct bcm2835_host *host) +@@ -1284,7 +1284,7 @@ int bcm2835_mmc_add_host(struct bcm2835_host *host) /* SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK */ host->timeout_clk = mmc->f_max / 1000; @@ -119573,7 +119607,7 @@ index cefba7c..34d6167 100644 mmc->max_busy_timeout = (1 << 27) / host->timeout_clk; #endif /* host controller capabilities */ -@@ -1345,7 +1345,7 @@ int bcm2835_mmc_add_host(struct bcm2835_host *host) +@@ -1341,7 +1341,7 @@ int bcm2835_mmc_add_host(struct bcm2835_host *host) init_waitqueue_head(&host->buf_ready_int); bcm2835_mmc_init(host, 0); @@ -119582,7 +119616,7 @@ index cefba7c..34d6167 100644 ret = request_irq(host->irq, bcm2835_mmc_irq, 0 /*IRQF_SHARED*/, mmc_hostname(mmc), host); #else -@@ -1374,7 +1374,7 @@ int bcm2835_mmc_add_host(struct bcm2835_host *host) +@@ -1370,7 +1370,7 @@ int bcm2835_mmc_add_host(struct bcm2835_host *host) static int bcm2835_mmc_probe(struct platform_device *pdev) { struct device *dev = &pdev->dev; @@ -119591,7 +119625,7 @@ index cefba7c..34d6167 100644 struct device_node *node = dev->of_node; struct clk *clk; #endif -@@ -1383,7 +1383,7 @@ static int bcm2835_mmc_probe(struct platform_device *pdev) +@@ -1379,7 +1379,7 @@ static int bcm2835_mmc_probe(struct platform_device *pdev) int ret; struct mmc_host *mmc; @@ -119600,7 +119634,7 @@ index cefba7c..34d6167 100644 dma_cap_mask_t mask; #endif -@@ -1408,7 +1408,7 @@ static int bcm2835_mmc_probe(struct platform_device *pdev) +@@ -1404,7 +1404,7 @@ static int bcm2835_mmc_probe(struct platform_device *pdev) host->phys_addr = iomem->start + BCM2835_VCMMU_SHIFT; @@ -119609,7 +119643,7 @@ index cefba7c..34d6167 100644 #ifndef FORCE_PIO dma_cap_zero(mask); /* we don't care about the channel, any would work */ -@@ -1458,7 +1458,7 @@ static int bcm2835_mmc_probe(struct platform_device *pdev) +@@ -1454,7 +1454,7 @@ static int bcm2835_mmc_probe(struct platform_device *pdev) } @@ -119618,24 +119652,6 @@ index cefba7c..34d6167 100644 mmc->caps |= MMC_CAP_4_BIT_DATA; #else mmc_of_parse(mmc); -diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c -index d134710..2e2b6d0 100644 ---- a/drivers/of/fdt.c -+++ b/drivers/of/fdt.c -@@ -1083,8 +1083,12 @@ static struct debugfs_blob_wrapper flat_dt_blob; - - static int __init of_flat_dt_debugfs_export_fdt(void) - { -- struct dentry *d = debugfs_create_dir("device-tree", NULL); -+ struct dentry *d; - -+ if (!initial_boot_params) -+ return -ENOENT; -+ -+ d = debugfs_create_dir("device-tree", NULL); - if (!d) - return -ENOENT; - diff --git a/sound/soc/bcm/bcm2708-i2s.c b/sound/soc/bcm/bcm2708-i2s.c index 0b5322a..a3b65dc 100644 --- a/sound/soc/bcm/bcm2708-i2s.c @@ -119690,7 +119706,7 @@ index 0b5322a..a3b65dc 100644 }; diff --git a/sound/soc/bcm/bcm2835-i2s.c b/sound/soc/bcm/bcm2835-i2s.c -index 2685fe4..e2c61d1 100644 +index 03fa1cb..c816526 100644 --- a/sound/soc/bcm/bcm2835-i2s.c +++ b/sound/soc/bcm/bcm2835-i2s.c @@ -861,6 +861,7 @@ static const struct of_device_id bcm2835_i2s_of_match[] = { @@ -119702,13 +119718,13 @@ index 2685fe4..e2c61d1 100644 static struct platform_driver bcm2835_i2s_driver = { .probe = bcm2835_i2s_probe, -From 5f17e24bea60b696815d2c6cb578e1e23f61cd57 Mon Sep 17 00:00:00 2001 +From 2da679d67d7dd011f01649577c7bae50186f0363 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 12 Nov 2014 17:07:02 +0000 -Subject: [PATCH 064/114] Adding Device Tree support for some RPi audio cards +Subject: [PATCH 065/109] Adding Device Tree support for some RPi audio cards --- - arch/arm/boot/dts/Makefile | 2 + + arch/arm/boot/dts/Makefile | 4 ++ arch/arm/boot/dts/bcm2708-rpi-b-plus.dts | 81 +++++++++++++++++++++++++ arch/arm/boot/dts/bcm2708-rpi-b.dts | 19 +++++- arch/arm/boot/dts/bcm2708.dtsi | 18 ++++-- @@ -119722,7 +119738,7 @@ Subject: [PATCH 064/114] Adding Device Tree support for some RPi audio cards sound/soc/bcm/hifiberry_digi.c | 22 +++++++ sound/soc/bcm/iqaudio-dac.c | 16 +++++ sound/soc/codecs/pcm5102a.c | 7 +++ - 14 files changed, 393 insertions(+), 6 deletions(-) + 14 files changed, 395 insertions(+), 6 deletions(-) create mode 100644 arch/arm/boot/dts/bcm2708-rpi-b-plus.dts create mode 100644 arch/arm/boot/dts/hifiberry-dac-overlay.dts create mode 100644 arch/arm/boot/dts/hifiberry-dacplus-overlay.dts @@ -119731,7 +119747,7 @@ Subject: [PATCH 064/114] Adding Device Tree support for some RPi audio cards create mode 100644 arch/arm/boot/dts/iqaudio-dacplus-overlay.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index c727f71..adaebbb 100644 +index d177201..76e5f96 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -54,6 +54,7 @@ dtb-$(CONFIG_ARCH_AT91) += at91-sama5d4ek.dtb @@ -119740,16 +119756,18 @@ index c727f71..adaebbb 100644 dtb-$(CONFIG_BCM2708_DT) += bcm2708-rpi-b.dtb +dtb-$(CONFIG_BCM2708_DT) += bcm2708-rpi-b-plus.dtb dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b.dtb - dtb-$(CONFIG_ARCH_BCM_5301X) += bcm4708-netgear-r6250.dtb - dtb-$(CONFIG_ARCH_BCM_63XX) += bcm963138dvt.dtb -@@ -520,6 +521,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt6589-aquaris5.dtb + dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b-plus.dtb + dtb-$(CONFIG_ARCH_BCM_5301X) += \ +@@ -557,6 +558,9 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt6589-aquaris5.dtb \ + mt8127-moose.dtb \ + mt8135-evbp1.dtb - targets += dtbs dtbs_install - targets += $(dtb-y) ++targets += dtbs dtbs_install ++targets += $(dtb-y) + endif - # *.dtb used to be generated in the directory above. Clean out the + always := $(dtb-y) diff --git a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts new file mode 100644 index 0000000..983c23f @@ -120330,20 +120348,20 @@ index 126f1e9..7c6598e 100644 }; -From e4b144b2bd248e6b082457ae0f950ca1b25c0e6d Mon Sep 17 00:00:00 2001 +From 5248d61fbed6a412104089d671ac2c864a76aa79 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 5 Dec 2014 17:26:26 +0000 -Subject: [PATCH 065/114] fdt: Add support for the CONFIG_CMDLINE_EXTEND option +Subject: [PATCH 066/109] fdt: Add support for the CONFIG_CMDLINE_EXTEND option --- drivers/of/fdt.c | 29 ++++++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c -index 2e2b6d0..badc6a3 100644 +index 5100742..d6d944c 100644 --- a/drivers/of/fdt.c +++ b/drivers/of/fdt.c -@@ -901,19 +901,38 @@ int __init early_init_dt_scan_chosen(unsigned long node, const char *uname, +@@ -915,19 +915,38 @@ int __init early_init_dt_scan_chosen(unsigned long node, const char *uname, /* Retrieve command line */ p = of_get_flat_dt_prop(node, "bootargs", &l); @@ -120388,17 +120406,17 @@ index 2e2b6d0..badc6a3 100644 pr_debug("Command line is: %s\n", (char*)data); -From 42fd2d3e952c0a2c1455190eb208e5544b73da67 Mon Sep 17 00:00:00 2001 +From e81caed711b76987fa7764e67896ac244c5b9974 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 25 Nov 2014 13:39:03 +0000 -Subject: [PATCH 066/114] config: Enable device tree +Subject: [PATCH 067/109] config: Enable device tree --- arch/arm/configs/bcmrpi_defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 997e1f3..2cd8227 100644 +index 8381041..c1621fa 100644 --- a/arch/arm/configs/bcmrpi_defconfig +++ b/arch/arm/configs/bcmrpi_defconfig @@ -39,6 +39,7 @@ CONFIG_PARTITION_ADVANCED=y @@ -120410,10 +120428,10 @@ index 997e1f3..2cd8227 100644 CONFIG_AEABI=y CONFIG_CLEANCACHE=y -From 95560180ed73193d916519d0c949cd4816138be3 Mon Sep 17 00:00:00 2001 +From 3b2f8e42a35ab1ca8c7702bc1a8c6b63aa3def82 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 16 Dec 2014 10:23:48 +0000 -Subject: [PATCH 067/114] DT: Add overrides to enable i2c0, i2c1, spi and i2s +Subject: [PATCH 068/109] DT: Add overrides to enable i2c0, i2c1, spi and i2s --- arch/arm/boot/dts/bcm2708-rpi-b-plus.dts | 10 ++++++++++ @@ -120457,10 +120475,10 @@ index d8c6d15..167b22b 100644 + }; +}; -From f3c1830096661e270f11f2a33ffb7274f50c90a6 Mon Sep 17 00:00:00 2001 +From 1e78b4625b77406af9cd50eef75ce67caf39a013 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 18 Dec 2014 16:48:32 +0000 -Subject: [PATCH 068/114] lirc-rpi: Add device tree support, and a suitable +Subject: [PATCH 069/109] lirc-rpi: Add device tree support, and a suitable overlay The overlay supports DT parameters that match the old module @@ -120754,10 +120772,10 @@ index c688364..cd66ca2 100644 if (result < 0) goto exit_rpi; -From 31b85ba13aa394c98f2d6955b55f3f9a0623c14d Mon Sep 17 00:00:00 2001 +From 31368425270f59c0cb73143bf8bbdbb4ba8f380c Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 6 Jan 2015 12:06:55 +0000 -Subject: [PATCH 069/114] Fix the activity LED in DT mode +Subject: [PATCH 070/109] Fix the activity LED in DT mode Add a "leds" node to the base DTBs, and a subnode for the activity LED. You can change the LED function like this: @@ -120889,10 +120907,10 @@ index 6b36128..1b56cb5 100644 clocks { -From 2fea9b14e39bd6c64e362ba7d170b67d09206987 Mon Sep 17 00:00:00 2001 +From 16c5ca7134e6e1fe86d9127dc4d43005ffd50b27 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 15 Jan 2015 10:39:06 +0000 -Subject: [PATCH 070/114] Adding w1-gpio device tree overlays +Subject: [PATCH 071/109] Adding w1-gpio device tree overlays N.B. Requires firmware supporting multi-target overrides @@ -121002,172 +121020,10 @@ index 0000000..b3e97c2 + }; +}; -From 960ce56201a7521051a2dbf84ab5e3acb95d5ce3 Mon Sep 17 00:00:00 2001 -From: popcornmix -Date: Wed, 21 Jan 2015 22:46:02 +0000 -Subject: [PATCH 071/114] config: Enable CONFIG_PPS - ---- - arch/arm/configs/bcmrpi_defconfig | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 2cd8227..36aca2b 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -544,6 +544,9 @@ CONFIG_I2C_BCM2708=m - CONFIG_SPI=y - CONFIG_SPI_BCM2708=m - CONFIG_SPI_SPIDEV=y -+CONFIG_PPS=m -+CONFIG_PPS_CLIENT_LDISC=m -+CONFIG_PPS_CLIENT_GPIO=m - CONFIG_GPIO_SYSFS=y - CONFIG_GPIO_ARIZONA=m - CONFIG_W1=m - -From 946fa2807124fa8ef981f4b6c47abe1d587b5cad Mon Sep 17 00:00:00 2001 -From: popcornmix -Date: Wed, 21 Jan 2015 23:47:33 +0000 -Subject: [PATCH 072/114] config: Add CONFIG_IP_NF options - ---- - arch/arm/configs/bcmrpi_defconfig | 9 +++++++-- - 1 file changed, 7 insertions(+), 2 deletions(-) - -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 36aca2b..665b01e 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -208,13 +208,16 @@ CONFIG_IP_VS_NQ=m - CONFIG_IP_VS_FTP=m - CONFIG_IP_VS_PE_SIP=m - CONFIG_NF_CONNTRACK_IPV4=m --CONFIG_NF_NAT_IPV4=m - CONFIG_IP_NF_IPTABLES=m - CONFIG_IP_NF_MATCH_AH=m - CONFIG_IP_NF_MATCH_ECN=m - CONFIG_IP_NF_MATCH_TTL=m - CONFIG_IP_NF_FILTER=m - CONFIG_IP_NF_TARGET_REJECT=m -+CONFIG_IP_NF_NAT=m -+CONFIG_IP_NF_TARGET_MASQUERADE=m -+CONFIG_IP_NF_TARGET_NETMAP=m -+CONFIG_IP_NF_TARGET_REDIRECT=m - CONFIG_IP_NF_MANGLE=m - CONFIG_IP_NF_TARGET_ECN=m - CONFIG_IP_NF_TARGET_TTL=m -@@ -223,7 +226,6 @@ CONFIG_IP_NF_ARPTABLES=m - CONFIG_IP_NF_ARPFILTER=m - CONFIG_IP_NF_ARP_MANGLE=m - CONFIG_NF_CONNTRACK_IPV6=m --CONFIG_NF_NAT_IPV6=m - CONFIG_IP6_NF_IPTABLES=m - CONFIG_IP6_NF_MATCH_AH=m - CONFIG_IP6_NF_MATCH_EUI64=m -@@ -238,6 +240,9 @@ CONFIG_IP6_NF_FILTER=m - CONFIG_IP6_NF_TARGET_REJECT=m - CONFIG_IP6_NF_MANGLE=m - CONFIG_IP6_NF_RAW=m -+CONFIG_IP6_NF_NAT=m -+CONFIG_IP6_NF_TARGET_MASQUERADE=m -+CONFIG_IP6_NF_TARGET_NPT=m - CONFIG_BRIDGE_NF_EBTABLES=m - CONFIG_BRIDGE_EBT_BROUTE=m - CONFIG_BRIDGE_EBT_T_FILTER=m - -From 6a0570d2c5ae88c6170484ec7b521994bbb450b1 Mon Sep 17 00:00:00 2001 -From: Phil Elwell -Date: Fri, 23 Jan 2015 12:04:59 +0000 -Subject: [PATCH 073/114] config: Restore some missing options - ---- - arch/arm/configs/bcmrpi_defconfig | 18 ++++++++++++++++-- - 1 file changed, 16 insertions(+), 2 deletions(-) - -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 665b01e..41b90b4 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -484,6 +484,8 @@ CONFIG_AR5523=m - CONFIG_B43=m - # CONFIG_B43_PHY_N is not set - CONFIG_B43LEGACY=m -+CONFIG_BRCMFMAC=m -+CONFIG_BRCMFMAC_USB=y - CONFIG_HOSTAP=m - CONFIG_LIBERTAS=m - CONFIG_LIBERTAS_USB=m -@@ -524,6 +526,7 @@ CONFIG_INPUT_POWERMATE=m - CONFIG_INPUT_YEALINK=m - CONFIG_INPUT_CM109=m - CONFIG_INPUT_UINPUT=m -+CONFIG_INPUT_GPIO_ROTARY_ENCODER=m - CONFIG_INPUT_ADXL34X=m - CONFIG_INPUT_CMA3000=m - CONFIG_SERIO=m -@@ -545,6 +548,7 @@ CONFIG_BCM_VC_CMA=y - CONFIG_BCM_VC_SM=y - CONFIG_I2C=y - CONFIG_I2C_CHARDEV=m -+CONFIG_I2C_MUX=m - CONFIG_I2C_BCM2708=m - CONFIG_SPI=y - CONFIG_SPI_BCM2708=m -@@ -724,6 +728,7 @@ CONFIG_RADIO_SI470X=y - CONFIG_USB_SI470X=m - CONFIG_I2C_SI470X=m - CONFIG_RADIO_SI4713=m -+CONFIG_I2C_SI4713=m - CONFIG_USB_MR800=m - CONFIG_USB_DSBR=m - CONFIG_RADIO_SHARK=m -@@ -735,6 +740,15 @@ CONFIG_RADIO_SAA7706H=m - CONFIG_RADIO_TEF6862=m - CONFIG_RADIO_WL1273=m - CONFIG_RADIO_WL128X=m -+# CONFIG_MEDIA_SUBDRV_AUTOSELECT is not set -+CONFIG_VIDEO_UDA1342=m -+CONFIG_VIDEO_SONY_BTF_MPX=m -+CONFIG_VIDEO_TVP5150=m -+CONFIG_VIDEO_TW2804=m -+CONFIG_VIDEO_TW9903=m -+CONFIG_VIDEO_TW9906=m -+CONFIG_VIDEO_OV7640=m -+CONFIG_VIDEO_MT9V011=m - CONFIG_FB=y - CONFIG_FB_BCM2708=y - # CONFIG_BACKLIGHT_GENERIC is not set -@@ -783,6 +797,7 @@ CONFIG_HID_CYPRESS=m - CONFIG_HID_DRAGONRISE=m - CONFIG_HID_EMS_FF=m - CONFIG_HID_ELECOM=m -+CONFIG_HID_ELO=m - CONFIG_HID_EZKEY=m - CONFIG_HID_HOLTEK=m - CONFIG_HID_KEYTOUCH=m -@@ -1042,6 +1057,7 @@ CONFIG_F2FS_FS=y - CONFIG_NFS_FS=y - CONFIG_NFS_V3_ACL=y - CONFIG_NFS_V4=y -+CONFIG_NFS_SWAP=y - CONFIG_ROOT_NFS=y - CONFIG_NFS_FSCACHE=y - CONFIG_NFSD=m -@@ -1116,8 +1132,6 @@ CONFIG_CRYPTO_CBC=y - CONFIG_CRYPTO_CTS=m - CONFIG_CRYPTO_XTS=m - CONFIG_CRYPTO_XCBC=m --CONFIG_CRYPTO_MD5=y --CONFIG_CRYPTO_SHA1=y - CONFIG_CRYPTO_SHA1_ARM=m - CONFIG_CRYPTO_SHA512=m - CONFIG_CRYPTO_TGR192=m - -From 2a72cdffabd2dd290d126c9a4e544bb65b537993 Mon Sep 17 00:00:00 2001 +From 62b86f21e94a0f4a01d825ec59cfab4cdb00642c Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Fri, 23 Jan 2015 16:41:17 +0100 -Subject: [PATCH 074/114] TAS5713: return error if initialisation fails +Subject: [PATCH 072/109] TAS5713: return error if initialisation fails Existing TAS5713 driver logs errors during initialisation, but does not return an error code. Therefore even if initialisation fails, the driver will still be @@ -121234,10 +121090,10 @@ index a24c1da..9b27138 100644 return 0; } -From c0b05569c40e9a8817c2d655335251e2253428cd Mon Sep 17 00:00:00 2001 +From 10df9d22f5af3349cf9cc3a7d2a793237b65d41a Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 23 Jan 2015 14:48:55 +0000 -Subject: [PATCH 075/114] scripts/dtc: Update to upstream version with overlay +Subject: [PATCH 073/109] scripts/dtc: Update to upstream version with overlay patches --- @@ -126443,24 +126299,24 @@ index 8f40b44..f800b60 100644 /* * Parse an escaped character starting at index i in string s. The resulting diff --git a/scripts/dtc/version_gen.h b/scripts/dtc/version_gen.h -index 54d4e90..d644002 100644 +index 54d4e904..d644002 100644 --- a/scripts/dtc/version_gen.h +++ b/scripts/dtc/version_gen.h @@ -1 +1 @@ -#define DTC_VERSION "DTC 1.4.0-dirty" +#define DTC_VERSION "DTC 1.4.1-g36c70742" -From 672e48427ca17fadd59d294eec56476dd6a75398 Mon Sep 17 00:00:00 2001 +From 539a294591de138f45c9c2afd2a8e4477bc26e30 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Fri, 23 Jan 2015 15:18:03 +0000 -Subject: [PATCH 076/114] BCM2708_DT: Build the overlays as well +Subject: [PATCH 074/109] BCM2708_DT: Build the overlays as well --- arch/arm/boot/dts/Makefile | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index adaebbb..3c7f539 100644 +index 76e5f96..54ee8c5 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -55,6 +55,14 @@ dtb-$(CONFIG_ARCH_ATLAS6) += atlas6-evb.dtb @@ -126476,25 +126332,22 @@ index adaebbb..3c7f539 100644 +dtb-$(CONFIG_BCM2708_DT) += w1-gpio-overlay.dtb +dtb-$(CONFIG_BCM2708_DT) += w1-gpio-pullup-overlay.dtb dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b.dtb - dtb-$(CONFIG_ARCH_BCM_5301X) += bcm4708-netgear-r6250.dtb - dtb-$(CONFIG_ARCH_BCM_63XX) += bcm963138dvt.dtb -@@ -524,6 +532,11 @@ targets += $(dtb-y) - - endif + dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b-plus.dtb + dtb-$(CONFIG_ARCH_BCM_5301X) += \ +@@ -565,3 +573,8 @@ endif + always := $(dtb-y) + clean-files := *.dtb ++ +# Enable fixups to support overlays on BCM2708 platforms +ifeq ($(CONFIG_BCM2708_DT),y) + DTC_FLAGS ?= -@ +endif -+ - # *.dtb used to be generated in the directory above. Clean out the - # old build results so people don't accidentally use them. - dtbs: $(addprefix $(obj)/, $(dtb-y)) -From 555c5c21ed88de7efa91ce45668ac11416eb29dd Mon Sep 17 00:00:00 2001 +From 4c4650200f97c0b51722931283ad0c9cb824a71f Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Sun, 25 Jan 2015 19:41:06 +0100 -Subject: [PATCH 077/114] Add device tree overlay for HiFiBerry Amp/Amp+ +Subject: [PATCH 075/109] Add device tree overlay for HiFiBerry Amp/Amp+ This patch add the missing device tree file for the HiFiBerry Amp and Amp+ boards. --- @@ -126504,7 +126357,7 @@ This patch add the missing device tree file for the HiFiBerry Amp and Amp+ board create mode 100644 arch/arm/boot/dts/hifiberry-amp-overlay.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 3c7f539..4e1ec2d 100644 +index 54ee8c5..08a89bf 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -58,6 +58,7 @@ dtb-$(CONFIG_BCM2708_DT) += bcm2708-rpi-b-plus.dtb @@ -126561,10 +126414,10 @@ index 0000000..2c81448 + }; +}; -From 4cd9d10a9cd482e993dcfe3bd1d576ad0d11c3c3 Mon Sep 17 00:00:00 2001 +From d701420a7d7e98c562cd64ad17c9721fdb42b692 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 26 Jan 2015 09:18:24 +0000 -Subject: [PATCH 078/114] Add pps-gpio DT overlay +Subject: [PATCH 076/109] Add pps-gpio DT overlay Parameters: gpiopin= // Default 18 @@ -126575,7 +126428,7 @@ Parameters: create mode 100644 arch/arm/boot/dts/pps-gpio-overlay.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 4e1ec2d..4d1224b 100644 +index 08a89bf..3ae8fe1 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -62,6 +62,7 @@ dtb-$(CONFIG_BCM2708_DT) += hifiberry-amp-overlay.dtb @@ -126627,32 +126480,10 @@ index 0000000..40bf0e1 + }; +}; -From 2661fe9121d21ae3ba756b98b545a509b63a71d7 Mon Sep 17 00:00:00 2001 -From: popcornmix -Date: Mon, 26 Jan 2015 14:32:18 +0000 -Subject: [PATCH 079/114] config: Remove STRICT_DEVMEM - ---- - arch/arm/configs/bcmrpi_defconfig | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 41b90b4..fd7c022 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -1124,7 +1124,6 @@ CONFIG_FUNCTION_PROFILER=y - CONFIG_KGDB=y - CONFIG_KGDB_KDB=y - CONFIG_KDB_KEYBOARD=y --CONFIG_STRICT_DEVMEM=y - CONFIG_CRYPTO_USER=m - CONFIG_CRYPTO_NULL=m - CONFIG_CRYPTO_CRYPTD=m - -From 6a63fb6bd7120af9a760fa0f2db9461bfcf29791 Mon Sep 17 00:00:00 2001 +From 2365c3f2d426fa6a31e77fc0d8f094118cb8094d Mon Sep 17 00:00:00 2001 From: Serge Schneider Date: Wed, 3 Sep 2014 14:44:22 +0100 -Subject: [PATCH 080/114] I2C: Only register the I2C device for the current +Subject: [PATCH 077/109] I2C: Only register the I2C device for the current board revision --- @@ -126696,10 +126527,10 @@ index 2c6a29d..b36037b 100644 +module_param(vc_i2c_override, bool, 0644); +MODULE_PARM_DESC(vc_i2c_override, "Allow the use of VC's I2C peripheral."); -From 47a2d8098a9523435aec2fff1389ae92fd8791a9 Mon Sep 17 00:00:00 2001 +From 312bed5a32e235a6ee01550424b185a7c643ed16 Mon Sep 17 00:00:00 2001 From: Timo Kokkonen Date: Wed, 29 Oct 2014 23:30:30 -0700 -Subject: [PATCH 081/114] Added support to reserve/enable a GPIO pin to be used +Subject: [PATCH 078/109] Added support to reserve/enable a GPIO pin to be used from pps-gpio module (LinuxPPS). Enable PPS modules in default config for RPi. @@ -126773,10 +126604,10 @@ index b36037b..762e17c 100644 module_param(vc_i2c_override, bool, 0644); MODULE_PARM_DESC(vc_i2c_override, "Allow the use of VC's I2C peripheral."); -From a2a3c09223aa520e08cc34c496dc286843eecf92 Mon Sep 17 00:00:00 2001 +From 4a04725639c14e9895879571be4d4b79f190e603 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 26 Jan 2015 15:26:10 +0000 -Subject: [PATCH 082/114] BCM2708_DT: Correct length of the peripheral space +Subject: [PATCH 079/109] BCM2708_DT: Correct length of the peripheral space --- arch/arm/boot/dts/bcm2708.dtsi | 2 +- @@ -126796,10 +126627,10 @@ index 1b56cb5..d879316 100644 intc: interrupt-controller { compatible = "brcm,bcm2708-armctrl-ic"; -From 82fe3c57ba4c661c119a08567b9aaa5b63de07e1 Mon Sep 17 00:00:00 2001 +From 64c6a61c55b29bc8768587849a1c9a31a90ca8c7 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 28 Jan 2015 16:22:04 +0000 -Subject: [PATCH 083/114] BCM2708_DT: Add pcf8523-rtc overlay +Subject: [PATCH 080/109] BCM2708_DT: Add pcf8523-rtc overlay --- arch/arm/boot/dts/Makefile | 1 + @@ -126808,7 +126639,7 @@ Subject: [PATCH 083/114] BCM2708_DT: Add pcf8523-rtc overlay create mode 100644 arch/arm/boot/dts/pcf8523-rtc-overlay.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 4d1224b..86c6190 100644 +index 3ae8fe1..5ecd1005 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -62,6 +62,7 @@ dtb-$(CONFIG_BCM2708_DT) += hifiberry-amp-overlay.dtb @@ -126848,10 +126679,10 @@ index 0000000..0071f62 + }; +}; -From a09a8ebce7251e2a42668bd5ae57c12ed24fdca8 Mon Sep 17 00:00:00 2001 +From 52f848ae973d5467bfc211499f12da71544f4b59 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Sat, 31 Jan 2015 16:07:56 +0100 -Subject: [PATCH 084/114] Add a parameter to turn off SPDIF output if no audio +Subject: [PATCH 081/109] Add a parameter to turn off SPDIF output if no audio is playing This patch adds the paramater auto_shutdown_output to the kernel module. @@ -126923,10 +126754,10 @@ index 76af8a6..b0e3d28 100644 static struct snd_soc_dai_link snd_rpi_hifiberry_digi_dai[] = { -From c12aab11b88318b9dde0960f5309cf4c0b2af579 Mon Sep 17 00:00:00 2001 +From be8aa60e5fc8f86ea278be93bd3b6c198940a4c3 Mon Sep 17 00:00:00 2001 From: Joerg Hohensohn Date: Sun, 1 Feb 2015 22:08:03 +0100 -Subject: [PATCH 085/114] bugfix for 32kHz sample rate, was missing +Subject: [PATCH 082/109] bugfix for 32kHz sample rate, was missing --- sound/soc/bcm/hifiberry_digi.c | 1 + @@ -126945,10 +126776,10 @@ index b0e3d28..133d51b 100644 case 48000: case 88200: -From ee23837a8a79b6ab67cab13d63804ba5a7260528 Mon Sep 17 00:00:00 2001 +From 69ba0d7bf053f31f78d26cb4ce71e0847762c35c Mon Sep 17 00:00:00 2001 From: Ryan Coe Date: Sat, 31 Jan 2015 18:25:49 -0700 -Subject: [PATCH 086/114] Update ds1307 driver for device-tree support +Subject: [PATCH 083/109] Update ds1307 driver for device-tree support Signed-off-by: Ryan Coe --- @@ -126956,10 +126787,10 @@ Signed-off-by: Ryan Coe 1 file changed, 8 insertions(+) diff --git a/drivers/rtc/rtc-ds1307.c b/drivers/rtc/rtc-ds1307.c -index bb43cf7..dadd4fb 100644 +index 4ffabb3..c6789a7 100644 --- a/drivers/rtc/rtc-ds1307.c +++ b/drivers/rtc/rtc-ds1307.c -@@ -1241,6 +1241,14 @@ static int ds1307_remove(struct i2c_client *client) +@@ -1242,6 +1242,14 @@ static int ds1307_remove(struct i2c_client *client) return 0; } @@ -126975,10 +126806,10 @@ index bb43cf7..dadd4fb 100644 .driver = { .name = "rtc-ds1307", -From fe72f81ecb7578418207444186fa035262530946 Mon Sep 17 00:00:00 2001 +From 41f71cd0934203eaa69c65afdab09c872700d76b Mon Sep 17 00:00:00 2001 From: Ryan Coe Date: Sat, 31 Jan 2015 18:26:03 -0700 -Subject: [PATCH 087/114] Add device-tree overlay for ds1307 +Subject: [PATCH 084/109] Add device-tree overlay for ds1307 Signed-off-by: Ryan Coe --- @@ -126988,7 +126819,7 @@ Signed-off-by: Ryan Coe create mode 100644 arch/arm/boot/dts/ds1307-rtc-overlay.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 86c6190..1b66478 100644 +index 5ecd1005..2685794 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -64,6 +64,7 @@ dtb-$(CONFIG_BCM2708_DT) += iqaudio-dacplus-overlay.dtb @@ -127028,40 +126859,18 @@ index 0000000..7d27044 + }; +}; -From e985ecbccdd44f3941ce7652103520d68edeeb77 Mon Sep 17 00:00:00 2001 -From: popcornmix -Date: Sun, 1 Feb 2015 12:10:25 +0000 -Subject: [PATCH 088/114] config: Add DVB_USB_DVBSKY - ---- - arch/arm/configs/bcmrpi_defconfig | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index fd7c022..0453a38 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -715,6 +715,7 @@ CONFIG_DVB_USB_GL861=m - CONFIG_DVB_USB_LME2510=m - CONFIG_DVB_USB_MXL111SF=m - CONFIG_DVB_USB_RTL28XXU=m -+CONFIG_DVB_USB_DVBSKY=m - CONFIG_SMS_USB_DRV=m - CONFIG_DVB_B2C2_FLEXCOP_USB=m - CONFIG_DVB_AS102=m - -From 08891f5b4dedf2c490371cef6af91f3b7475282d Mon Sep 17 00:00:00 2001 +From a32250b6048c747684e9b6666062070603903ce0 Mon Sep 17 00:00:00 2001 From: popcornmix Date: Tue, 7 May 2013 14:32:27 +0100 -Subject: [PATCH 089/114] Add 2709 platform for Raspberry Pi 2 +Subject: [PATCH 085/109] Add 2709 platform for Raspberry Pi 2 --- arch/arm/Kconfig | 21 + arch/arm/Makefile | 1 + - arch/arm/boot/dts/Makefile | 11 +- + arch/arm/boot/dts/Makefile | 10 +- arch/arm/boot/dts/bcm2709-rpi-2-b.dts | 101 ++ - arch/arm/boot/dts/bcm2709.dtsi | 159 +++ - arch/arm/configs/bcm2709_defconfig | 1149 ++++++++++++++++++++ + arch/arm/boot/dts/bcm2709.dtsi | 160 +++ + arch/arm/configs/bcm2709_defconfig | 1156 ++++++++++++++++++++ arch/arm/configs/bcm2709_sdcard_defconfig | 129 +++ arch/arm/configs/bcm2709_small_defconfig | 61 ++ arch/arm/configs/bcm2835_sdcard_defconfig | 176 +++ @@ -127121,7 +126930,7 @@ Subject: [PATCH 089/114] Add 2709 platform for Raspberry Pi 2 drivers/watchdog/Kconfig | 2 +- sound/arm/Kconfig | 2 +- sound/soc/bcm/Kconfig | 2 +- - 65 files changed, 8999 insertions(+), 16 deletions(-) + 65 files changed, 9006 insertions(+), 16 deletions(-) create mode 100644 arch/arm/boot/dts/bcm2709-rpi-2-b.dts create mode 100644 arch/arm/boot/dts/bcm2709.dtsi create mode 100644 arch/arm/configs/bcm2709_defconfig @@ -127171,10 +126980,10 @@ Subject: [PATCH 089/114] Add 2709 platform for Raspberry Pi 2 create mode 100644 arch/arm/mach-bcm2709/vcio.c diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 0f2287f..1faad0d 100644 +index 96f98ce..062ef6a 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -803,6 +803,26 @@ config ARCH_OMAP1 +@@ -791,6 +791,26 @@ config ARCH_OMAP1 help Support for older TI OMAP1 (omap7xx, omap15xx or omap16xx) @@ -127201,7 +127010,7 @@ index 0f2287f..1faad0d 100644 endchoice menu "Multiple platform selection" -@@ -990,6 +1010,7 @@ source "arch/arm/mach-vt8500/Kconfig" +@@ -980,6 +1000,7 @@ source "arch/arm/mach-vt8500/Kconfig" source "arch/arm/mach-w90x900/Kconfig" source "arch/arm/mach-bcm2708/Kconfig" @@ -127210,7 +127019,7 @@ index 0f2287f..1faad0d 100644 source "arch/arm/mach-zynq/Kconfig" diff --git a/arch/arm/Makefile b/arch/arm/Makefile -index fea9213..2f1376e 100644 +index ceb8a4e..2952f09 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -147,6 +147,7 @@ machine-$(CONFIG_ARCH_AT91) += at91 @@ -127222,7 +127031,7 @@ index fea9213..2f1376e 100644 machine-$(CONFIG_ARCH_CLPS711X) += clps711x machine-$(CONFIG_ARCH_CNS3XXX) += cns3xxx diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 1b66478..605ed38 100644 +index 2685794..83dceff 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -53,6 +53,14 @@ dtb-$(CONFIG_ARCH_AT91) += at91-sama5d4ek.dtb @@ -127240,23 +127049,14 @@ index 1b66478..605ed38 100644 dtb-$(CONFIG_BCM2708_DT) += bcm2708-rpi-b.dtb dtb-$(CONFIG_BCM2708_DT) += bcm2708-rpi-b-plus.dtb dtb-$(CONFIG_BCM2708_DT) += hifiberry-dac-overlay.dtb -@@ -68,6 +76,7 @@ dtb-$(CONFIG_BCM2708_DT) += ds1307-rtc-overlay.dtb - dtb-$(CONFIG_BCM2708_DT) += w1-gpio-overlay.dtb - dtb-$(CONFIG_BCM2708_DT) += w1-gpio-pullup-overlay.dtb - dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b.dtb -+ - dtb-$(CONFIG_ARCH_BCM_5301X) += bcm4708-netgear-r6250.dtb - dtb-$(CONFIG_ARCH_BCM_63XX) += bcm963138dvt.dtb - dtb-$(CONFIG_ARCH_BCM_MOBILE) += bcm28155-ap.dtb \ -@@ -537,7 +546,7 @@ targets += $(dtb-y) - endif +@@ -579,6 +587,6 @@ always := $(dtb-y) + clean-files := *.dtb # Enable fixups to support overlays on BCM2708 platforms -ifeq ($(CONFIG_BCM2708_DT),y) +ifeq ($(RPI_DT_OVERLAYS),y) DTC_FLAGS ?= -@ endif - diff --git a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts new file mode 100644 index 0000000..0cdff31 @@ -127366,10 +127166,10 @@ index 0000000..0cdff31 +}; diff --git a/arch/arm/boot/dts/bcm2709.dtsi b/arch/arm/boot/dts/bcm2709.dtsi new file mode 100644 -index 0000000..c7e975c +index 0000000..fee2053 --- /dev/null +++ b/arch/arm/boot/dts/bcm2709.dtsi -@@ -0,0 +1,159 @@ +@@ -0,0 +1,160 @@ +/include/ "skeleton.dtsi" + +/ { @@ -127453,7 +127253,7 @@ index 0000000..c7e975c + compatible = "gpio-leds"; + + act_led: act { -+ label = "ACT"; ++ label = "led0"; + linux,default-trigger = "mmc0"; + }; + }; @@ -127487,6 +127287,7 @@ index 0000000..c7e975c + <3 1>, // PHYS_NONSECURE_PPI + <3 3>, // VIRT_PPI + <3 2>; // HYP_PPI ++ always-on; + }; + + cpus: cpus { @@ -127531,10 +127332,10 @@ index 0000000..c7e975c +}; diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig new file mode 100644 -index 0000000..70b175c +index 0000000..62f33d6 --- /dev/null +++ b/arch/arm/configs/bcm2709_defconfig -@@ -0,0 +1,1149 @@ +@@ -0,0 +1,1156 @@ +# CONFIG_ARM_PATCH_PHYS_VIRT is not set +CONFIG_PHYS_OFFSET=0 +CONFIG_LOCALVERSION="-v7" @@ -127763,6 +127564,7 @@ index 0000000..70b175c +CONFIG_IP_NF_TARGET_NETMAP=m +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_MANGLE=m ++CONFIG_IP_NF_TARGET_CLUSTERIP=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_NF_RAW=m @@ -127960,6 +127762,7 @@ index 0000000..70b175c +CONFIG_NETCONSOLE=m +CONFIG_TUN=m +CONFIG_VETH=m ++CONFIG_ENC28J60=m +CONFIG_MDIO_BITBANG=m +CONFIG_PPP=m +CONFIG_PPP_BSDCOMP=m @@ -128259,10 +128062,12 @@ index 0000000..70b175c +CONFIG_DVB_USB_LME2510=m +CONFIG_DVB_USB_MXL111SF=m +CONFIG_DVB_USB_RTL28XXU=m ++CONFIG_DVB_USB_DVBSKY=m +CONFIG_SMS_USB_DRV=m +CONFIG_DVB_B2C2_FLEXCOP_USB=m +CONFIG_DVB_AS102=m +CONFIG_VIDEO_EM28XX=m ++CONFIG_VIDEO_EM28XX_V4L2=m +CONFIG_VIDEO_EM28XX_ALSA=m +CONFIG_VIDEO_EM28XX_DVB=m +CONFIG_V4L_PLATFORM_DRIVERS=y @@ -128401,6 +128206,9 @@ index 0000000..70b175c +CONFIG_USB_UAS=m +CONFIG_USB_MDC800=m +CONFIG_USB_MICROTEK=m ++CONFIG_USBIP_CORE=m ++CONFIG_USBIP_VHCI_HCD=m ++CONFIG_USBIP_HOST=m +CONFIG_USB_SERIAL=m +CONFIG_USB_SERIAL_GENERIC=y +CONFIG_USB_SERIAL_AIRCABLE=m @@ -130285,7 +130093,7 @@ index 0000000..c1e9254 +MODULE_LICENSE("GPL"); diff --git a/arch/arm/mach-bcm2709/bcm2709.c b/arch/arm/mach-bcm2709/bcm2709.c new file mode 100644 -index 0000000..a1058ad +index 0000000..abe2b19 --- /dev/null +++ b/arch/arm/mach-bcm2709/bcm2709.c @@ -0,0 +1,1237 @@ @@ -131383,7 +131191,7 @@ index 0000000..a1058ad + init_dma_coherent_pool_size(SZ_4M); + +#ifdef CONFIG_OF -+ if (of_allnodes) ++ if (of_root) + use_dt = 1; +#endif +} @@ -136468,7 +136276,7 @@ index 0000000..5e43e85 +MODULE_LICENSE("GPL"); +MODULE_ALIAS("platform:bcm-mbox"); diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S -index 22ac2a6..eec2825 100644 +index 8b4ee5e..80fa74b 100644 --- a/arch/arm/mm/proc-v7.S +++ b/arch/arm/mm/proc-v7.S @@ -441,6 +441,7 @@ __v7_setup: @@ -136492,7 +136300,7 @@ index c9ddd87..bfc397c 100644 ics_if_voip MACH_ICS_IF_VOIP ICS_IF_VOIP 3206 wlf_cragg_6410 MACH_WLF_CRAGG_6410 WLF_CRAGG_6410 3207 diff --git a/drivers/char/hw_random/Kconfig b/drivers/char/hw_random/Kconfig -index 0d2ca0d..77eb7a8 100644 +index 2a24bec..1c97093 100644 --- a/drivers/char/hw_random/Kconfig +++ b/drivers/char/hw_random/Kconfig @@ -322,7 +322,7 @@ config HW_RANDOM_TPM @@ -136505,10 +136313,10 @@ index 0d2ca0d..77eb7a8 100644 This driver provides the kernel-side support for the BCM2708 hardware. diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c -index 84b4c8b..8253434 100644 +index 095c177..47d96dd 100644 --- a/drivers/clocksource/arm_arch_timer.c +++ b/drivers/clocksource/arm_arch_timer.c -@@ -795,3 +795,39 @@ static void __init arch_timer_mem_init(struct device_node *np) +@@ -803,3 +803,39 @@ static void __init arch_timer_mem_init(struct device_node *np) } CLOCKSOURCE_OF_DECLARE(armv7_arch_timer_mem, "arm,armv7-timer-mem", arch_timer_mem_init); @@ -136549,10 +136357,10 @@ index 84b4c8b..8253434 100644 + return 0; +} diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig -index c9b8eb5..5965795 100644 +index 5b9e196..b3d8b8e 100644 --- a/drivers/dma/Kconfig +++ b/drivers/dma/Kconfig -@@ -332,7 +332,7 @@ config DMA_BCM2835 +@@ -339,7 +339,7 @@ config DMA_BCM2835 config DMA_BCM2708 tristate "BCM2708 DMA engine support" @@ -136562,10 +136370,10 @@ index c9b8eb5..5965795 100644 select DMA_VIRTUAL_CHANNELS diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig -index d30a986..d181d7f 100644 +index 7b7ba6f..a77b009 100644 --- a/drivers/i2c/busses/Kconfig +++ b/drivers/i2c/busses/Kconfig -@@ -361,7 +361,7 @@ config I2C_AXXIA +@@ -362,7 +362,7 @@ config I2C_AXXIA config I2C_BCM2835 tristate "Broadcom BCM2835 I2C controller" @@ -136574,7 +136382,7 @@ index d30a986..d181d7f 100644 help If you say yes to this option, support will be included for the BCM2835 I2C controller. -@@ -373,7 +373,7 @@ config I2C_BCM2835 +@@ -374,7 +374,7 @@ config I2C_BCM2835 config I2C_BCM2708 tristate "BCM2708 BSC" @@ -136624,7 +136432,7 @@ index 0c82520..8d038fe 100644 -endif diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig -index 977aeef..b049c15 100644 +index b6077b5..e2b73a4 100644 --- a/drivers/mmc/host/Kconfig +++ b/drivers/mmc/host/Kconfig @@ -304,7 +304,7 @@ config MMC_SDHCI_ST @@ -136637,7 +136445,7 @@ index 977aeef..b049c15 100644 This selects the MMC Interface on BCM2835. diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig -index a5238ab..ea70ef0 100644 +index 9f202dd..c18385c 100644 --- a/drivers/spi/Kconfig +++ b/drivers/spi/Kconfig @@ -77,7 +77,7 @@ config SPI_ATMEL @@ -136659,7 +136467,7 @@ index a5238ab..ea70ef0 100644 This selects a driver for the Broadcom BCM2708 SPI master (SPI0). This driver is not compatible with the "Universal SPI Master" or the SPI slave diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig -index ff56894..4bcc3b2 100644 +index 3bc50f2..cd504ee 100644 --- a/drivers/watchdog/Kconfig +++ b/drivers/watchdog/Kconfig @@ -454,7 +454,7 @@ config RETU_WATCHDOG @@ -136698,10 +136506,299 @@ index a562ddf..40d27c1 100644 select SND_SOC_DMAENGINE_PCM select SND_SOC_GENERIC_DMAENGINE_PCM -From 1ef33cbb3347c38f563de1c7df7d103f8b7d23ca Mon Sep 17 00:00:00 2001 +From 7aa31f395f25f5f05a01b1a89cde6b4db0d09008 Mon Sep 17 00:00:00 2001 +From: popcornmix +Date: Wed, 11 Feb 2015 21:17:28 +0000 +Subject: [PATCH 086/109] m + +--- + arch/arm/boot/dts/bcm2708.dtsi | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/arch/arm/boot/dts/bcm2708.dtsi b/arch/arm/boot/dts/bcm2708.dtsi +index d879316..af6b1d9 100644 +--- a/arch/arm/boot/dts/bcm2708.dtsi ++++ b/arch/arm/boot/dts/bcm2708.dtsi +@@ -81,7 +81,7 @@ + compatible = "gpio-leds"; + + act_led: act { +- label = "ACT"; ++ label = "led0"; + linux,default-trigger = "mmc0"; + }; + }; + +From 1ea263df8ad7e1f95b90c743928f4f16c4adad25 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Fri, 6 Feb 2015 13:50:57 +0000 +Subject: [PATCH 087/109] BCM270x_DT: Add pwr_led, and the required "input" + trigger + +The "input" trigger makes the associated GPIO an input. This is to support +the Raspberry Pi PWR LED, which is driven by external hardware in normal use. + +N.B. pwr_led is not available on Model A or B boards. +--- + arch/arm/boot/dts/bcm2708-rpi-b-plus.dts | 18 ++++++++- + arch/arm/boot/dts/bcm2708-rpi-b.dts | 8 +++- + arch/arm/boot/dts/bcm2708.dtsi | 5 --- + arch/arm/boot/dts/bcm2709-rpi-2-b.dts | 18 ++++++++- + arch/arm/boot/dts/bcm2709.dtsi | 5 --- + arch/arm/configs/bcm2709_defconfig | 1 + + arch/arm/configs/bcmrpi_defconfig | 1 + + drivers/leds/trigger/Kconfig | 7 ++++ + drivers/leds/trigger/Makefile | 1 + + drivers/leds/trigger/ledtrig-input.c | 65 ++++++++++++++++++++++++++++++++ + 10 files changed, 113 insertions(+), 16 deletions(-) + create mode 100644 drivers/leds/trigger/ledtrig-input.c + +diff --git a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts +index 95f03ba..b409c2c 100644 +--- a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts ++++ b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts +@@ -83,8 +83,18 @@ + pinctrl-0 = <&i2s_pins>; + }; + +-&act_led { +- gpios = <&gpio 47 0>; ++&leds { ++ act_led: act { ++ label = "led0"; ++ linux,default-trigger = "mmc0"; ++ gpios = <&gpio 47 0>; ++ }; ++ ++ pwr_led: pwr { ++ label = "led1"; ++ linux,default-trigger = "input"; ++ gpios = <&gpio 35 0>; ++ }; + }; + + / { +@@ -97,5 +107,9 @@ + act_led_gpio = <&act_led>,"gpios:4"; + act_led_activelow = <&act_led>,"gpios:8"; + act_led_trigger = <&act_led>,"linux,default-trigger"; ++ ++ pwr_led_gpio = <&pwr_led>,"gpios:4"; ++ pwr_led_activelow = <&pwr_led>,"gpios:8"; ++ pwr_led_trigger = <&pwr_led>,"linux,default-trigger"; + }; + }; +diff --git a/arch/arm/boot/dts/bcm2708-rpi-b.dts b/arch/arm/boot/dts/bcm2708-rpi-b.dts +index 0631f45..1ecd1a1 100644 +--- a/arch/arm/boot/dts/bcm2708-rpi-b.dts ++++ b/arch/arm/boot/dts/bcm2708-rpi-b.dts +@@ -83,8 +83,12 @@ + pinctrl-0 = <&i2s_pins>; + }; + +-&act_led { +- gpios = <&gpio 16 1>; ++&leds { ++ act_led: act { ++ label = "led0"; ++ linux,default-trigger = "mmc0"; ++ gpios = <&gpio 16 1>; ++ }; + }; + + / { +diff --git a/arch/arm/boot/dts/bcm2708.dtsi b/arch/arm/boot/dts/bcm2708.dtsi +index af6b1d9..aeeabae 100644 +--- a/arch/arm/boot/dts/bcm2708.dtsi ++++ b/arch/arm/boot/dts/bcm2708.dtsi +@@ -79,11 +79,6 @@ + + leds: leds { + compatible = "gpio-leds"; +- +- act_led: act { +- label = "led0"; +- linux,default-trigger = "mmc0"; +- }; + }; + }; + +diff --git a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts +index 0cdff31..46f4908 100644 +--- a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts ++++ b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts +@@ -83,8 +83,18 @@ + pinctrl-0 = <&i2s_pins>; + }; + +-&act_led { +- gpios = <&gpio 47 0>; ++&leds { ++ act_led: act { ++ label = "led0"; ++ linux,default-trigger = "mmc0"; ++ gpios = <&gpio 47 0>; ++ }; ++ ++ pwr_led: pwr { ++ label = "led1"; ++ linux,default-trigger = "input"; ++ gpios = <&gpio 35 0>; ++ }; + }; + + / { +@@ -97,5 +107,9 @@ + act_led_gpio = <&act_led>,"gpios:4"; + act_led_activelow = <&act_led>,"gpios:8"; + act_led_trigger = <&act_led>,"linux,default-trigger"; ++ ++ pwr_led_gpio = <&pwr_led>,"gpios:4"; ++ pwr_led_activelow = <&pwr_led>,"gpios:8"; ++ pwr_led_trigger = <&pwr_led>,"linux,default-trigger"; + }; + }; +diff --git a/arch/arm/boot/dts/bcm2709.dtsi b/arch/arm/boot/dts/bcm2709.dtsi +index fee2053..6986455 100644 +--- a/arch/arm/boot/dts/bcm2709.dtsi ++++ b/arch/arm/boot/dts/bcm2709.dtsi +@@ -79,11 +79,6 @@ + + leds: leds { + compatible = "gpio-leds"; +- +- act_led: act { +- label = "led0"; +- linux,default-trigger = "mmc0"; +- }; + }; + }; + +diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig +index 62f33d6..d4c18fa 100644 +--- a/arch/arm/configs/bcm2709_defconfig ++++ b/arch/arm/configs/bcm2709_defconfig +@@ -962,6 +962,7 @@ CONFIG_LEDS_TRIGGER_GPIO=y + CONFIG_LEDS_TRIGGER_DEFAULT_ON=y + CONFIG_LEDS_TRIGGER_TRANSIENT=m + CONFIG_LEDS_TRIGGER_CAMERA=m ++CONFIG_LEDS_TRIGGER_INPUT=y + CONFIG_RTC_CLASS=y + # CONFIG_RTC_HCTOSYS is not set + CONFIG_RTC_DRV_DS1307=m +diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig +index c1621fa..898ebd2 100644 +--- a/arch/arm/configs/bcmrpi_defconfig ++++ b/arch/arm/configs/bcmrpi_defconfig +@@ -955,6 +955,7 @@ CONFIG_LEDS_TRIGGER_GPIO=y + CONFIG_LEDS_TRIGGER_DEFAULT_ON=y + CONFIG_LEDS_TRIGGER_TRANSIENT=m + CONFIG_LEDS_TRIGGER_CAMERA=m ++CONFIG_LEDS_TRIGGER_INPUT=y + CONFIG_RTC_CLASS=y + # CONFIG_RTC_HCTOSYS is not set + CONFIG_RTC_DRV_DS1307=m +diff --git a/drivers/leds/trigger/Kconfig b/drivers/leds/trigger/Kconfig +index 49794b4..640756b 100644 +--- a/drivers/leds/trigger/Kconfig ++++ b/drivers/leds/trigger/Kconfig +@@ -108,4 +108,11 @@ config LEDS_TRIGGER_CAMERA + This enables direct flash/torch on/off by the driver, kernel space. + If unsure, say Y. + ++config LEDS_TRIGGER_INPUT ++ tristate "LED Input Trigger" ++ depends on LEDS_TRIGGERS ++ help ++ This allows the GPIOs assigned to be LEDs to be initialised to inputs. ++ If unsure, say Y. ++ + endif # LEDS_TRIGGERS +diff --git a/drivers/leds/trigger/Makefile b/drivers/leds/trigger/Makefile +index 1abf48d..c03afdc 100644 +--- a/drivers/leds/trigger/Makefile ++++ b/drivers/leds/trigger/Makefile +@@ -8,3 +8,4 @@ obj-$(CONFIG_LEDS_TRIGGER_CPU) += ledtrig-cpu.o + obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON) += ledtrig-default-on.o + obj-$(CONFIG_LEDS_TRIGGER_TRANSIENT) += ledtrig-transient.o + obj-$(CONFIG_LEDS_TRIGGER_CAMERA) += ledtrig-camera.o ++obj-$(CONFIG_LEDS_TRIGGER_INPUT) += ledtrig-input.o +diff --git a/drivers/leds/trigger/ledtrig-input.c b/drivers/leds/trigger/ledtrig-input.c +new file mode 100644 +index 0000000..2ca2b98 +--- /dev/null ++++ b/drivers/leds/trigger/ledtrig-input.c +@@ -0,0 +1,65 @@ ++/* ++ * Set LED GPIO to Input "Trigger" ++ * ++ * Copyright 2015 Phil Elwell ++ * ++ * Based on Nick Forbes's ledtrig-default-on.c. ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License version 2 as ++ * published by the Free Software Foundation. ++ * ++ */ ++ ++#include ++#include ++#include ++#include ++#include ++#include "../leds.h" ++ ++/* This is a hack to get at the private 'gpio' member */ ++ ++struct gpio_led_data { ++ struct led_classdev cdev; ++ unsigned gpio; ++}; ++ ++static void input_trig_activate(struct led_classdev *led_cdev) ++{ ++ struct gpio_led_data *led_dat = ++ container_of(led_cdev, struct gpio_led_data, cdev); ++ if (gpio_is_valid(led_dat->gpio)) ++ gpio_direction_input(led_dat->gpio); ++} ++ ++static void input_trig_deactivate(struct led_classdev *led_cdev) ++{ ++ struct gpio_led_data *led_dat = ++ container_of(led_cdev, struct gpio_led_data, cdev); ++ if (gpio_is_valid(led_dat->gpio)) ++ gpio_direction_output(led_dat->gpio, 0); ++} ++ ++static struct led_trigger input_led_trigger = { ++ .name = "input", ++ .activate = input_trig_activate, ++ .deactivate = input_trig_deactivate, ++}; ++ ++static int __init input_trig_init(void) ++{ ++ return led_trigger_register(&input_led_trigger); ++} ++ ++static void __exit input_trig_exit(void) ++{ ++ led_trigger_unregister(&input_led_trigger); ++} ++ ++module_init(input_trig_init); ++module_exit(input_trig_exit); ++ ++MODULE_AUTHOR("Phil Elwell "); ++MODULE_DESCRIPTION("Set LED GPIO to Input \"trigger\""); ++MODULE_LICENSE("GPL"); + +From 6c049544cfa8435965027d48d006cbddb8ae9f9d Mon Sep 17 00:00:00 2001 From: popcornmix Date: Fri, 20 Jun 2014 17:19:27 +0100 -Subject: [PATCH 090/114] bcm2709: Simplify and strip down IRQ handler +Subject: [PATCH 088/109] bcm2709: Simplify and strip down IRQ handler --- arch/arm/include/asm/entry-macro-multi.S | 2 + @@ -136918,10 +137015,10 @@ index d08591b..101d9f1 100644 +1: get_irqnr_and_base r0, r2, r6, lr + .endm -From e9898a39fce7db84ae56329d4f90da92af3bd584 Mon Sep 17 00:00:00 2001 +From 47f63d0ccfea3b7db13b87e2ccbebe33b7ddcf75 Mon Sep 17 00:00:00 2001 From: P33M Date: Wed, 24 Sep 2014 11:57:51 +0100 -Subject: [PATCH 091/114] dwc_otg: FIQ support on SMP. Set up FIQ stack and +Subject: [PATCH 089/109] dwc_otg: FIQ support on SMP. Set up FIQ stack and handler on Core 0 only. --- @@ -137051,10 +137148,10 @@ index 98e1dc5..4d8dd95 100644 otg_dev->hcd->otg_dev = otg_dev; -From 424f79f35a94611f73182f19a7711174b756b052 Mon Sep 17 00:00:00 2001 +From 12805880485af569b79de901a9c3554ed921ee77 Mon Sep 17 00:00:00 2001 From: P33M Date: Fri, 26 Sep 2014 11:32:09 +0100 -Subject: [PATCH 092/114] dwc_otg: introduce fiq_fsm_spin(un|)lock() +Subject: [PATCH 090/109] dwc_otg: introduce fiq_fsm_spin(un|)lock() SMP safety for the FIQ relies on register read-modify write cycles being completed in the correct order. Several places in the DWC code modify @@ -137371,10 +137468,10 @@ index a5566bc..ee35196 100644 } -From e424348e42e85fa0224819055668845710c54887 Mon Sep 17 00:00:00 2001 +From f98835f1f026ab44f70fc03b301ab1c2e6e695e0 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 22 Jan 2015 11:59:41 +0000 -Subject: [PATCH 093/114] fiq_fsm: fix build on bcm2708 and bcm2709 platforms +Subject: [PATCH 091/109] fiq_fsm: fix build on bcm2708 and bcm2709 platforms --- drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c | 8 ++++++++ @@ -137417,10 +137514,10 @@ index 84618a5..0d2b04e 100644 /** * fiq_fsm_restart_channel() - Poke channel enable bit for a split transaction -From 1e6d3936f120fd4420662850da0c89eb5c3d9f03 Mon Sep 17 00:00:00 2001 +From 51c50dde85c608d033d80e415fc43a90301745f9 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 22 Jan 2015 17:49:23 +0000 -Subject: [PATCH 094/114] dwc_otg: put some barriers back where they should be +Subject: [PATCH 092/109] dwc_otg: put some barriers back where they should be for UP --- @@ -137460,17 +137557,17 @@ index 124ac16..ac70f1d 100644 local_fiq_enable(); return 0; -From 4d5ab4e9eb0ae339e8ae87edb0556435cb0bf4b0 Mon Sep 17 00:00:00 2001 +From 7ee3bc393f55effdcf46eeca95f4e03552d68ea6 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 22 Jan 2015 18:02:44 +0000 -Subject: [PATCH 095/114] mach_bcm2709: Add Mailbox resources to USB driver +Subject: [PATCH 093/109] mach_bcm2709: Add Mailbox resources to USB driver --- arch/arm/mach-bcm2709/bcm2709.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/arch/arm/mach-bcm2709/bcm2709.c b/arch/arm/mach-bcm2709/bcm2709.c -index a1058ad..5d73b73 100644 +index abe2b19..945bb94 100644 --- a/arch/arm/mach-bcm2709/bcm2709.c +++ b/arch/arm/mach-bcm2709/bcm2709.c @@ -338,6 +338,16 @@ static struct resource bcm2708_usb_resources[] = { @@ -137491,10 +137588,10 @@ index a1058ad..5d73b73 100644 -From a31e1ba443ff061c4bf4abbac46ca8e197da3f0c Mon Sep 17 00:00:00 2001 +From 20c510ab62a8926d6737f7f8e2473abb9f0f8fe3 Mon Sep 17 00:00:00 2001 From: P33M Date: Thu, 22 Jan 2015 18:45:23 +0000 -Subject: [PATCH 096/114] bcm2709/dwc_otg: Setup FIQ on core 1 if >1 core +Subject: [PATCH 094/109] bcm2709/dwc_otg: Setup FIQ on core 1 if >1 core active --- @@ -137503,7 +137600,7 @@ Subject: [PATCH 096/114] bcm2709/dwc_otg: Setup FIQ on core 1 if >1 core 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/arch/arm/mach-bcm2709/armctrl.c b/arch/arm/mach-bcm2709/armctrl.c -index 8e69a813..6e3f0f2 100644 +index 8e69a813..6e3f0f2ff 100644 --- a/arch/arm/mach-bcm2709/armctrl.c +++ b/arch/arm/mach-bcm2709/armctrl.c @@ -89,7 +89,15 @@ static void armctrl_unmask_irq(struct irq_data *d) @@ -137557,17 +137654,17 @@ index 4d8dd95..1d28459 100644 otg_dev->hcd->otg_dev = otg_dev; hcd->self.otg_port = dwc_otg_hcd_otg_port(dwc_otg_hcd); -From aca6741a1d26736f6000d18b3c60a18a313be6ea Mon Sep 17 00:00:00 2001 +From b67ceafbe780931f9c14a2aac406b9a7b8089add Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 26 Jan 2015 17:40:22 +0000 -Subject: [PATCH 097/114] bcm2709: Port pps-gpio and i2c patches +Subject: [PATCH 095/109] bcm2709: Port pps-gpio and i2c patches --- arch/arm/mach-bcm2709/bcm2709.c | 41 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 39 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-bcm2709/bcm2709.c b/arch/arm/mach-bcm2709/bcm2709.c -index 5d73b73..f009aeb 100644 +index 945bb94..c4a37e8 100644 --- a/arch/arm/mach-bcm2709/bcm2709.c +++ b/arch/arm/mach-bcm2709/bcm2709.c @@ -37,6 +37,7 @@ @@ -137651,17 +137748,17 @@ index 5d73b73..f009aeb 100644 +module_param(vc_i2c_override, bool, 0644); +MODULE_PARM_DESC(vc_i2c_override, "Allow the use of VC's I2C peripheral."); -From 3a930cc266561ce539f40d0e4b8e1752442481b4 Mon Sep 17 00:00:00 2001 +From 69f6f452dba6d3cf1f3b34d1a51b514585f14ddc Mon Sep 17 00:00:00 2001 From: popcornmix Date: Wed, 28 Jan 2015 17:57:23 +0000 -Subject: [PATCH 098/114] bcm2709: Also accept the 2708 machine ID +Subject: [PATCH 096/109] bcm2709: Also accept the 2708 machine ID --- arch/arm/mach-bcm2709/bcm2709.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/arch/arm/mach-bcm2709/bcm2709.c b/arch/arm/mach-bcm2709/bcm2709.c -index f009aeb..7e3affd 100644 +index c4a37e8..8af141c 100644 --- a/arch/arm/mach-bcm2709/bcm2709.c +++ b/arch/arm/mach-bcm2709/bcm2709.c @@ -1270,6 +1270,19 @@ MACHINE_START(BCM2709, "BCM2709") @@ -137685,17 +137782,17 @@ index f009aeb..7e3affd 100644 module_param(serial, uint, 0644); module_param(uart_clock, uint, 0644); -From d274e98de547d48ddaaa0593217a156602b7367f Mon Sep 17 00:00:00 2001 +From 05a197df4f859169c86c2a72f6ae05d4c22adcb9 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Mon, 2 Feb 2015 12:45:07 +0000 -Subject: [PATCH 099/114] BCM2709_DT: Fix bad merge +Subject: [PATCH 097/109] BCM2709_DT: Fix bad merge --- arch/arm/boot/dts/Makefile | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 605ed38..8f76444 100644 +index 83dceff..f3b6364 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -63,18 +63,19 @@ ifeq ($(CONFIG_BCM2709_DT),y) @@ -137728,13 +137825,13 @@ index 605ed38..8f76444 100644 +dtb-$(RPI_DT_OVERLAYS) += w1-gpio-overlay.dtb +dtb-$(RPI_DT_OVERLAYS) += w1-gpio-pullup-overlay.dtb dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b.dtb - - dtb-$(CONFIG_ARCH_BCM_5301X) += bcm4708-netgear-r6250.dtb + dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b-plus.dtb + dtb-$(CONFIG_ARCH_BCM_5301X) += \ -From 115f744544291c3529868e72f101df652b156e56 Mon Sep 17 00:00:00 2001 +From 8e225da0cd3ec867d130c64274e1c721ca03a0b2 Mon Sep 17 00:00:00 2001 From: Daniel Matuschek Date: Tue, 3 Feb 2015 07:15:19 +0100 -Subject: [PATCH 100/114] HiFiBerry Amp: fix device-tree problems +Subject: [PATCH 098/109] HiFiBerry Amp: fix device-tree problems Some code to load the driver based on device-tree-overlays was missing. This is added by this patch. --- @@ -137788,10 +137885,10 @@ index 1e87ee0..5903915 100644 .probe = snd_rpi_hifiberry_amp_probe, .remove = snd_rpi_hifiberry_amp_remove, -From 2a725b6c8a9f4454363a73acb34c6cfff9390911 Mon Sep 17 00:00:00 2001 +From 3e5856f6269407f9671fdb7b4ad2571ad6491864 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Tue, 3 Feb 2015 11:41:38 +0000 -Subject: [PATCH 101/114] BCM270x_DT: Add i2c0_baudrate and i2c1_baudrate +Subject: [PATCH 099/109] BCM270x_DT: Add i2c0_baudrate and i2c1_baudrate parameters --- @@ -137801,10 +137898,10 @@ Subject: [PATCH 101/114] BCM270x_DT: Add i2c0_baudrate and i2c1_baudrate 3 files changed, 6 insertions(+) diff --git a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts -index 95f03ba..6b9512b 100644 +index b409c2c..7f84473 100644 --- a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts +++ b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts -@@ -93,6 +93,8 @@ +@@ -103,6 +103,8 @@ spi = <&spi0>,"status"; i2c0 = <&i2c0>,"status"; i2c1 = <&i2c1>,"status"; @@ -137814,10 +137911,10 @@ index 95f03ba..6b9512b 100644 act_led_gpio = <&act_led>,"gpios:4"; act_led_activelow = <&act_led>,"gpios:8"; diff --git a/arch/arm/boot/dts/bcm2708-rpi-b.dts b/arch/arm/boot/dts/bcm2708-rpi-b.dts -index 0631f45..b8520b55 100644 +index 1ecd1a1..a39562f 100644 --- a/arch/arm/boot/dts/bcm2708-rpi-b.dts +++ b/arch/arm/boot/dts/bcm2708-rpi-b.dts -@@ -93,6 +93,8 @@ +@@ -97,6 +97,8 @@ spi = <&spi0>,"status"; i2c0 = <&i2c0>,"status"; i2c1 = <&i2c1>,"status"; @@ -137827,10 +137924,10 @@ index 0631f45..b8520b55 100644 act_led_gpio = <&act_led>,"gpios:4"; act_led_activelow = <&act_led>,"gpios:8"; diff --git a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts -index 0cdff31..63d3da4 100644 +index 46f4908..75c222f 100644 --- a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts +++ b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts -@@ -93,6 +93,8 @@ +@@ -103,6 +103,8 @@ spi = <&spi0>,"status"; i2c0 = <&i2c0>,"status"; i2c1 = <&i2c1>,"status"; @@ -137840,10 +137937,10 @@ index 0cdff31..63d3da4 100644 act_led_gpio = <&act_led>,"gpios:4"; act_led_activelow = <&act_led>,"gpios:8"; -From ce24753015125e11d87764dca9740fde33ccd455 Mon Sep 17 00:00:00 2001 +From 9931580d09fb02180ad2b9951173adf4b616758b Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 4 Feb 2015 10:02:24 +0000 -Subject: [PATCH 102/114] pinctrl-bcm2835: bcm2835_gpio_direction_output must +Subject: [PATCH 100/109] pinctrl-bcm2835: bcm2835_gpio_direction_output must set the value --- @@ -137851,7 +137948,7 @@ Subject: [PATCH 102/114] pinctrl-bcm2835: bcm2835_gpio_direction_output must 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/pinctrl/pinctrl-bcm2835.c b/drivers/pinctrl/pinctrl-bcm2835.c -index 962e180..42a4fd5 100644 +index 9d1149e..d9c727b 100644 --- a/drivers/pinctrl/pinctrl-bcm2835.c +++ b/drivers/pinctrl/pinctrl-bcm2835.c @@ -355,7 +355,14 @@ static int bcm2835_gpio_get(struct gpio_chip *chip, unsigned offset) @@ -137871,10 +137968,10 @@ index 962e180..42a4fd5 100644 static void bcm2835_gpio_set(struct gpio_chip *chip, unsigned offset, int value) -From 8ceb69e8548f27305e37866ec3b81a79e1402b1a Mon Sep 17 00:00:00 2001 +From 8473beee2daf191fed1f7f552a166300170afc8f Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 4 Feb 2015 12:59:36 +0000 -Subject: [PATCH 103/114] w1-gpio: Sort out the pullup/parasitic power tangle +Subject: [PATCH 101/109] w1-gpio: Sort out the pullup/parasitic power tangle --- arch/arm/boot/dts/w1-gpio-overlay.dts | 4 +++- @@ -137937,7 +138034,7 @@ index b3e97c2..66a98f6 100644 }; }; diff --git a/drivers/w1/masters/w1-gpio.c b/drivers/w1/masters/w1-gpio.c -index 61be2cd..54c0313 100644 +index 3ad15cc..e34d418 100644 --- a/drivers/w1/masters/w1-gpio.c +++ b/drivers/w1/masters/w1-gpio.c @@ -23,10 +23,14 @@ @@ -138047,57 +138144,10 @@ index d58594a..feae942 100644 unsigned int ext_pullup_enable_pin; unsigned int pullup_duration; -From eb986e6a0aab1b478eedd7be36e58ab85e476558 Mon Sep 17 00:00:00 2001 -From: popcornmix -Date: Wed, 4 Feb 2015 20:35:02 +0000 -Subject: [PATCH 104/114] config: Add USBIP - ---- - arch/arm/configs/bcm2709_defconfig | 4 ++++ - arch/arm/configs/bcmrpi_defconfig | 3 +++ - 2 files changed, 7 insertions(+) - -diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig -index 70b175c..b5bf4cb 100644 ---- a/arch/arm/configs/bcm2709_defconfig -+++ b/arch/arm/configs/bcm2709_defconfig -@@ -722,6 +722,7 @@ CONFIG_DVB_USB_GL861=m - CONFIG_DVB_USB_LME2510=m - CONFIG_DVB_USB_MXL111SF=m - CONFIG_DVB_USB_RTL28XXU=m -+CONFIG_DVB_USB_DVBSKY=m - CONFIG_SMS_USB_DRV=m - CONFIG_DVB_B2C2_FLEXCOP_USB=m - CONFIG_DVB_AS102=m -@@ -864,6 +865,9 @@ CONFIG_USB_STORAGE_ENE_UB6250=m - CONFIG_USB_UAS=m - CONFIG_USB_MDC800=m - CONFIG_USB_MICROTEK=m -+CONFIG_USBIP_CORE=m -+CONFIG_USBIP_VHCI_HCD=m -+CONFIG_USBIP_HOST=m - CONFIG_USB_SERIAL=m - CONFIG_USB_SERIAL_GENERIC=y - CONFIG_USB_SERIAL_AIRCABLE=m -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 0453a38..81c4387 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -858,6 +858,9 @@ CONFIG_USB_STORAGE_ENE_UB6250=m - CONFIG_USB_UAS=m - CONFIG_USB_MDC800=m - CONFIG_USB_MICROTEK=m -+CONFIG_USBIP_CORE=m -+CONFIG_USBIP_VHCI_HCD=m -+CONFIG_USBIP_HOST=m - CONFIG_USB_SERIAL=m - CONFIG_USB_SERIAL_GENERIC=y - CONFIG_USB_SERIAL_AIRCABLE=m - -From a05cd269cbf2623efe2499459efdd123ee04ab81 Mon Sep 17 00:00:00 2001 +From ecd1431f8ccf075d1a0b8126f964c5b060fe6728 Mon Sep 17 00:00:00 2001 From: P33M Date: Wed, 4 Feb 2015 12:16:50 +0000 -Subject: [PATCH 105/114] dwc_otg: fixup read-modify-write in critical paths +Subject: [PATCH 102/109] dwc_otg: fixup read-modify-write in critical paths Be more careful about read-modify-write on registers that the FIQ also touches. @@ -138227,33 +138277,10 @@ index 17d3030..acd0dd7 100644 } } -From b3c15a1f4217b0a6de8d7e8a0b11f530b40f01e5 Mon Sep 17 00:00:00 2001 -From: Phil Elwell -Date: Thu, 5 Feb 2015 14:05:35 +0000 -Subject: [PATCH 106/114] BCM2709_DT: Set the "always-on" flag for the timer to - enable high res mode - ---- - arch/arm/boot/dts/bcm2709.dtsi | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/arch/arm/boot/dts/bcm2709.dtsi b/arch/arm/boot/dts/bcm2709.dtsi -index c7e975c..220866e 100644 ---- a/arch/arm/boot/dts/bcm2709.dtsi -+++ b/arch/arm/boot/dts/bcm2709.dtsi -@@ -115,6 +115,7 @@ - <3 1>, // PHYS_NONSECURE_PPI - <3 3>, // VIRT_PPI - <3 2>; // HYP_PPI -+ always-on; - }; - - cpus: cpus { - -From cf1b789e1a6873d9680156fac9f675a0f1cdd17b Mon Sep 17 00:00:00 2001 +From 49079860970f0a0435515c9a5fb2a91f08fe799d Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 5 Feb 2015 16:01:44 +0000 -Subject: [PATCH 107/114] i2c_bcm2708: Fix clock reference counting +Subject: [PATCH 103/109] i2c_bcm2708: Fix clock reference counting --- drivers/i2c/busses/i2c-bcm2708.c | 12 ++++++++++-- @@ -138301,48 +138328,10 @@ index 526129b..fda59ba 100644 kfree(bi); -From f387fb99b8478a4b50ce140dda3f1f64425c02f6 Mon Sep 17 00:00:00 2001 -From: Phil Elwell -Date: Fri, 6 Feb 2015 09:06:55 +0000 -Subject: [PATCH 108/114] BCM270x_DT: Rename the activity LED back to the - prosaic "led0" - ---- - arch/arm/boot/dts/bcm2708.dtsi | 2 +- - arch/arm/boot/dts/bcm2709.dtsi | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/arch/arm/boot/dts/bcm2708.dtsi b/arch/arm/boot/dts/bcm2708.dtsi -index d879316..af6b1d9 100644 ---- a/arch/arm/boot/dts/bcm2708.dtsi -+++ b/arch/arm/boot/dts/bcm2708.dtsi -@@ -81,7 +81,7 @@ - compatible = "gpio-leds"; - - act_led: act { -- label = "ACT"; -+ label = "led0"; - linux,default-trigger = "mmc0"; - }; - }; -diff --git a/arch/arm/boot/dts/bcm2709.dtsi b/arch/arm/boot/dts/bcm2709.dtsi -index 220866e..fee2053 100644 ---- a/arch/arm/boot/dts/bcm2709.dtsi -+++ b/arch/arm/boot/dts/bcm2709.dtsi -@@ -81,7 +81,7 @@ - compatible = "gpio-leds"; - - act_led: act { -- label = "ACT"; -+ label = "led0"; - linux,default-trigger = "mmc0"; - }; - }; - -From 37973590d43217e3f7c4d905578b1b3324ea45c4 Mon Sep 17 00:00:00 2001 +From 8bc381a8da1b10744c1783455495416f977f3e7c Mon Sep 17 00:00:00 2001 From: Byron Bradley Date: Fri, 6 Feb 2015 14:19:41 +0000 -Subject: [PATCH 109/114] Add device-tree overlay for pcf2127 +Subject: [PATCH 104/109] Add device-tree overlay for pcf2127 Signed-off-by: Byron Bradley --- @@ -138352,7 +138341,7 @@ Signed-off-by: Byron Bradley create mode 100644 arch/arm/boot/dts/pcf2127-rtc-overlay.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile -index 8f76444..56830ef 100644 +index f3b6364..2031ffe 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -72,6 +72,7 @@ dtb-$(RPI_DT_OVERLAYS) += hifiberry-amp-overlay.dtb @@ -138392,276 +138381,10 @@ index 0000000..01fc81d + }; +}; -From 5f1c4a04606c2fb2d0203bdbe364a6054b3bb0b7 Mon Sep 17 00:00:00 2001 -From: Phil Elwell -Date: Fri, 6 Feb 2015 13:50:57 +0000 -Subject: [PATCH 110/114] BCM270x_DT: Add pwr_led, and the required "input" - trigger - -The "input" trigger makes the associated GPIO an input. This is to support -the Raspberry Pi PWR LED, which is driven by external hardware in normal use. - -N.B. pwr_led is not available on Model A or B boards. ---- - arch/arm/boot/dts/bcm2708-rpi-b-plus.dts | 18 ++++++++- - arch/arm/boot/dts/bcm2708-rpi-b.dts | 8 +++- - arch/arm/boot/dts/bcm2708.dtsi | 5 --- - arch/arm/boot/dts/bcm2709-rpi-2-b.dts | 18 ++++++++- - arch/arm/boot/dts/bcm2709.dtsi | 5 --- - arch/arm/configs/bcm2709_defconfig | 1 + - arch/arm/configs/bcmrpi_defconfig | 1 + - drivers/leds/trigger/Kconfig | 7 ++++ - drivers/leds/trigger/Makefile | 1 + - drivers/leds/trigger/ledtrig-input.c | 65 ++++++++++++++++++++++++++++++++ - 10 files changed, 113 insertions(+), 16 deletions(-) - create mode 100644 drivers/leds/trigger/ledtrig-input.c - -diff --git a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts -index 6b9512b..7f84473 100644 ---- a/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts -+++ b/arch/arm/boot/dts/bcm2708-rpi-b-plus.dts -@@ -83,8 +83,18 @@ - pinctrl-0 = <&i2s_pins>; - }; - --&act_led { -- gpios = <&gpio 47 0>; -+&leds { -+ act_led: act { -+ label = "led0"; -+ linux,default-trigger = "mmc0"; -+ gpios = <&gpio 47 0>; -+ }; -+ -+ pwr_led: pwr { -+ label = "led1"; -+ linux,default-trigger = "input"; -+ gpios = <&gpio 35 0>; -+ }; - }; - - / { -@@ -99,5 +109,9 @@ - act_led_gpio = <&act_led>,"gpios:4"; - act_led_activelow = <&act_led>,"gpios:8"; - act_led_trigger = <&act_led>,"linux,default-trigger"; -+ -+ pwr_led_gpio = <&pwr_led>,"gpios:4"; -+ pwr_led_activelow = <&pwr_led>,"gpios:8"; -+ pwr_led_trigger = <&pwr_led>,"linux,default-trigger"; - }; - }; -diff --git a/arch/arm/boot/dts/bcm2708-rpi-b.dts b/arch/arm/boot/dts/bcm2708-rpi-b.dts -index b8520b55..a39562f 100644 ---- a/arch/arm/boot/dts/bcm2708-rpi-b.dts -+++ b/arch/arm/boot/dts/bcm2708-rpi-b.dts -@@ -83,8 +83,12 @@ - pinctrl-0 = <&i2s_pins>; - }; - --&act_led { -- gpios = <&gpio 16 1>; -+&leds { -+ act_led: act { -+ label = "led0"; -+ linux,default-trigger = "mmc0"; -+ gpios = <&gpio 16 1>; -+ }; - }; - - / { -diff --git a/arch/arm/boot/dts/bcm2708.dtsi b/arch/arm/boot/dts/bcm2708.dtsi -index af6b1d9..aeeabae 100644 ---- a/arch/arm/boot/dts/bcm2708.dtsi -+++ b/arch/arm/boot/dts/bcm2708.dtsi -@@ -79,11 +79,6 @@ - - leds: leds { - compatible = "gpio-leds"; -- -- act_led: act { -- label = "led0"; -- linux,default-trigger = "mmc0"; -- }; - }; - }; - -diff --git a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts -index 63d3da4..75c222f 100644 ---- a/arch/arm/boot/dts/bcm2709-rpi-2-b.dts -+++ b/arch/arm/boot/dts/bcm2709-rpi-2-b.dts -@@ -83,8 +83,18 @@ - pinctrl-0 = <&i2s_pins>; - }; - --&act_led { -- gpios = <&gpio 47 0>; -+&leds { -+ act_led: act { -+ label = "led0"; -+ linux,default-trigger = "mmc0"; -+ gpios = <&gpio 47 0>; -+ }; -+ -+ pwr_led: pwr { -+ label = "led1"; -+ linux,default-trigger = "input"; -+ gpios = <&gpio 35 0>; -+ }; - }; - - / { -@@ -99,5 +109,9 @@ - act_led_gpio = <&act_led>,"gpios:4"; - act_led_activelow = <&act_led>,"gpios:8"; - act_led_trigger = <&act_led>,"linux,default-trigger"; -+ -+ pwr_led_gpio = <&pwr_led>,"gpios:4"; -+ pwr_led_activelow = <&pwr_led>,"gpios:8"; -+ pwr_led_trigger = <&pwr_led>,"linux,default-trigger"; - }; - }; -diff --git a/arch/arm/boot/dts/bcm2709.dtsi b/arch/arm/boot/dts/bcm2709.dtsi -index fee2053..6986455 100644 ---- a/arch/arm/boot/dts/bcm2709.dtsi -+++ b/arch/arm/boot/dts/bcm2709.dtsi -@@ -79,11 +79,6 @@ - - leds: leds { - compatible = "gpio-leds"; -- -- act_led: act { -- label = "led0"; -- linux,default-trigger = "mmc0"; -- }; - }; - }; - -diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig -index b5bf4cb..7bb9de6 100644 ---- a/arch/arm/configs/bcm2709_defconfig -+++ b/arch/arm/configs/bcm2709_defconfig -@@ -959,6 +959,7 @@ CONFIG_LEDS_TRIGGER_GPIO=y - CONFIG_LEDS_TRIGGER_DEFAULT_ON=y - CONFIG_LEDS_TRIGGER_TRANSIENT=m - CONFIG_LEDS_TRIGGER_CAMERA=m -+CONFIG_LEDS_TRIGGER_INPUT=y - CONFIG_RTC_CLASS=y - # CONFIG_RTC_HCTOSYS is not set - CONFIG_RTC_DRV_DS1307=m -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 81c4387..3b09de9 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -952,6 +952,7 @@ CONFIG_LEDS_TRIGGER_GPIO=y - CONFIG_LEDS_TRIGGER_DEFAULT_ON=y - CONFIG_LEDS_TRIGGER_TRANSIENT=m - CONFIG_LEDS_TRIGGER_CAMERA=m -+CONFIG_LEDS_TRIGGER_INPUT=y - CONFIG_RTC_CLASS=y - # CONFIG_RTC_HCTOSYS is not set - CONFIG_RTC_DRV_DS1307=m -diff --git a/drivers/leds/trigger/Kconfig b/drivers/leds/trigger/Kconfig -index 49794b4..640756b 100644 ---- a/drivers/leds/trigger/Kconfig -+++ b/drivers/leds/trigger/Kconfig -@@ -108,4 +108,11 @@ config LEDS_TRIGGER_CAMERA - This enables direct flash/torch on/off by the driver, kernel space. - If unsure, say Y. - -+config LEDS_TRIGGER_INPUT -+ tristate "LED Input Trigger" -+ depends on LEDS_TRIGGERS -+ help -+ This allows the GPIOs assigned to be LEDs to be initialised to inputs. -+ If unsure, say Y. -+ - endif # LEDS_TRIGGERS -diff --git a/drivers/leds/trigger/Makefile b/drivers/leds/trigger/Makefile -index 1abf48d..c03afdc 100644 ---- a/drivers/leds/trigger/Makefile -+++ b/drivers/leds/trigger/Makefile -@@ -8,3 +8,4 @@ obj-$(CONFIG_LEDS_TRIGGER_CPU) += ledtrig-cpu.o - obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON) += ledtrig-default-on.o - obj-$(CONFIG_LEDS_TRIGGER_TRANSIENT) += ledtrig-transient.o - obj-$(CONFIG_LEDS_TRIGGER_CAMERA) += ledtrig-camera.o -+obj-$(CONFIG_LEDS_TRIGGER_INPUT) += ledtrig-input.o -diff --git a/drivers/leds/trigger/ledtrig-input.c b/drivers/leds/trigger/ledtrig-input.c -new file mode 100644 -index 0000000..2ca2b98 ---- /dev/null -+++ b/drivers/leds/trigger/ledtrig-input.c -@@ -0,0 +1,65 @@ -+/* -+ * Set LED GPIO to Input "Trigger" -+ * -+ * Copyright 2015 Phil Elwell -+ * -+ * Based on Nick Forbes's ledtrig-default-on.c. -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License version 2 as -+ * published by the Free Software Foundation. -+ * -+ */ -+ -+#include -+#include -+#include -+#include -+#include -+#include "../leds.h" -+ -+/* This is a hack to get at the private 'gpio' member */ -+ -+struct gpio_led_data { -+ struct led_classdev cdev; -+ unsigned gpio; -+}; -+ -+static void input_trig_activate(struct led_classdev *led_cdev) -+{ -+ struct gpio_led_data *led_dat = -+ container_of(led_cdev, struct gpio_led_data, cdev); -+ if (gpio_is_valid(led_dat->gpio)) -+ gpio_direction_input(led_dat->gpio); -+} -+ -+static void input_trig_deactivate(struct led_classdev *led_cdev) -+{ -+ struct gpio_led_data *led_dat = -+ container_of(led_cdev, struct gpio_led_data, cdev); -+ if (gpio_is_valid(led_dat->gpio)) -+ gpio_direction_output(led_dat->gpio, 0); -+} -+ -+static struct led_trigger input_led_trigger = { -+ .name = "input", -+ .activate = input_trig_activate, -+ .deactivate = input_trig_deactivate, -+}; -+ -+static int __init input_trig_init(void) -+{ -+ return led_trigger_register(&input_led_trigger); -+} -+ -+static void __exit input_trig_exit(void) -+{ -+ led_trigger_unregister(&input_led_trigger); -+} -+ -+module_init(input_trig_init); -+module_exit(input_trig_exit); -+ -+MODULE_AUTHOR("Phil Elwell "); -+MODULE_DESCRIPTION("Set LED GPIO to Input \"trigger\""); -+MODULE_LICENSE("GPL"); - -From 7fa07e9f8c88a5a628b9ca8a843d3490a59fb9cb Mon Sep 17 00:00:00 2001 +From ee1f9890529733d06b8cc1d142b16b416ada70de Mon Sep 17 00:00:00 2001 From: android Date: Mon, 25 Aug 2014 13:18:21 +0100 -Subject: [PATCH 111/114] BCM2708_VCIO : Add automatic creation of device node +Subject: [PATCH 105/109] BCM2708_VCIO : Add automatic creation of device node --- arch/arm/mach-bcm2708/vcio.c | 12 +++++++++++- @@ -138743,10 +138466,10 @@ index 5e43e85..700bff4 100644 } -From 58ee33ad32d4a00735252718f8bac3f7592af6e7 Mon Sep 17 00:00:00 2001 +From 0ca4c1f57c84bb114641176d63d16ce345f5a95d Mon Sep 17 00:00:00 2001 From: jeanleflambeur Date: Sun, 1 Feb 2015 12:35:38 +0100 -Subject: [PATCH 112/114] Fix grabbing lock from atomic context in i2c driver +Subject: [PATCH 106/109] Fix grabbing lock from atomic context in i2c driver 2 main changes: - check for timeouts in the bcm2708_bsc_setup function as indicated by this comment: @@ -138965,45 +138688,10 @@ index fda59ba..81e9374 100644 dev_info(&pdev->dev, "BSC%d Controller at 0x%08lx (irq %d) (baudrate %d)\n", pdev->id, (unsigned long)regs->start, irq, baudrate); -From 72df98feb0561f3b249c853f7722d2939df1dfa1 Mon Sep 17 00:00:00 2001 -From: popcornmix -Date: Sun, 8 Feb 2015 11:30:07 +0000 -Subject: [PATCH 113/114] config: Add ENC28J60 SPI ethernet module - ---- - arch/arm/configs/bcm2709_defconfig | 1 + - arch/arm/configs/bcmrpi_defconfig | 1 + - 2 files changed, 2 insertions(+) - -diff --git a/arch/arm/configs/bcm2709_defconfig b/arch/arm/configs/bcm2709_defconfig -index 7bb9de6..c8577f6 100644 ---- a/arch/arm/configs/bcm2709_defconfig -+++ b/arch/arm/configs/bcm2709_defconfig -@@ -423,6 +423,7 @@ CONFIG_MACVLAN=m - CONFIG_NETCONSOLE=m - CONFIG_TUN=m - CONFIG_VETH=m -+CONFIG_ENC28J60=m - CONFIG_MDIO_BITBANG=m - CONFIG_PPP=m - CONFIG_PPP_BSDCOMP=m -diff --git a/arch/arm/configs/bcmrpi_defconfig b/arch/arm/configs/bcmrpi_defconfig -index 3b09de9..9303cfb 100644 ---- a/arch/arm/configs/bcmrpi_defconfig -+++ b/arch/arm/configs/bcmrpi_defconfig -@@ -416,6 +416,7 @@ CONFIG_MACVLAN=m - CONFIG_NETCONSOLE=m - CONFIG_TUN=m - CONFIG_VETH=m -+CONFIG_ENC28J60=m - CONFIG_MDIO_BITBANG=m - CONFIG_PPP=m - CONFIG_PPP_BSDCOMP=m - -From 89d56313537f161a0d9b3888c0f39770cbb994a7 Mon Sep 17 00:00:00 2001 +From d3d9b024cf0bb6acdf4b79066e782fe9dab7bedd Mon Sep 17 00:00:00 2001 From: popcornmix Date: Sun, 8 Feb 2015 13:17:00 +0000 -Subject: [PATCH 114/114] ntp: Patch to fix false positives on 32bit systems +Subject: [PATCH 107/109] ntp: Patch to fix false positives on 32bit systems See: https://bugzilla.kernel.org/show_bug.cgi?id=92481 --- @@ -139026,3 +138714,166 @@ index 28bf91c..242774d 100644 return -EINVAL; } + +From f58911890f7c4585275f9cc2b7f31b27dc8d9393 Mon Sep 17 00:00:00 2001 +From: Phil Elwell +Date: Thu, 12 Feb 2015 11:17:53 +0000 +Subject: [PATCH 108/109] Fix LED "input" trigger implementation for 3.19 + +--- + drivers/leds/leds-gpio.c | 10 +++++++++- + drivers/leds/trigger/ledtrig-input.c | 19 ++++--------------- + include/linux/leds.h | 3 +++ + 3 files changed, 16 insertions(+), 16 deletions(-) + +diff --git a/drivers/leds/leds-gpio.c b/drivers/leds/leds-gpio.c +index 7ea1ea42..cf70ea1 100644 +--- a/drivers/leds/leds-gpio.c ++++ b/drivers/leds/leds-gpio.c +@@ -41,6 +41,13 @@ static void gpio_led_work(struct work_struct *work) + led_dat->platform_gpio_blink_set(led_dat->gpiod, + led_dat->new_level, NULL, NULL); + led_dat->blinking = 0; ++ } else if (led_dat->cdev.flags & SET_GPIO_INPUT) { ++ gpiod_direction_input(led_dat->gpiod); ++ led_dat->cdev.flags &= ~SET_GPIO_INPUT; ++ } ++ else if (led_dat->cdev.flags & SET_GPIO_OUTPUT) { ++ gpiod_direction_output(led_dat->gpiod, led_dat->new_level); ++ led_dat->cdev.flags &= ~SET_GPIO_OUTPUT; + } else + gpiod_set_value_cansleep(led_dat->gpiod, led_dat->new_level); + } +@@ -61,7 +68,8 @@ static void gpio_led_set(struct led_classdev *led_cdev, + * seem to have a reliable way to know if we're already in one; so + * let's just assume the worst. + */ +- if (led_dat->can_sleep) { ++ if (led_dat->can_sleep || ++ (led_dat->cdev.flags & (SET_GPIO_INPUT | SET_GPIO_OUTPUT) )) { + led_dat->new_level = level; + schedule_work(&led_dat->work); + } else { +diff --git a/drivers/leds/trigger/ledtrig-input.c b/drivers/leds/trigger/ledtrig-input.c +index 2ca2b98..07d1219 100644 +--- a/drivers/leds/trigger/ledtrig-input.c ++++ b/drivers/leds/trigger/ledtrig-input.c +@@ -18,27 +18,16 @@ + #include + #include "../leds.h" + +-/* This is a hack to get at the private 'gpio' member */ +- +-struct gpio_led_data { +- struct led_classdev cdev; +- unsigned gpio; +-}; +- + static void input_trig_activate(struct led_classdev *led_cdev) + { +- struct gpio_led_data *led_dat = +- container_of(led_cdev, struct gpio_led_data, cdev); +- if (gpio_is_valid(led_dat->gpio)) +- gpio_direction_input(led_dat->gpio); ++ led_cdev->flags |= SET_GPIO_INPUT; ++ led_set_brightness_async(led_cdev, 0); + } + + static void input_trig_deactivate(struct led_classdev *led_cdev) + { +- struct gpio_led_data *led_dat = +- container_of(led_cdev, struct gpio_led_data, cdev); +- if (gpio_is_valid(led_dat->gpio)) +- gpio_direction_output(led_dat->gpio, 0); ++ led_cdev->flags |= SET_GPIO_OUTPUT; ++ led_set_brightness_async(led_cdev, 0); + } + + static struct led_trigger input_led_trigger = { +diff --git a/include/linux/leds.h b/include/linux/leds.h +index cfceef3..4c8dc19 100644 +--- a/include/linux/leds.h ++++ b/include/linux/leds.h +@@ -46,6 +46,9 @@ struct led_classdev { + #define LED_SYSFS_DISABLE (1 << 20) + #define SET_BRIGHTNESS_ASYNC (1 << 21) + #define SET_BRIGHTNESS_SYNC (1 << 22) ++ /* Additions for Raspberry Pi PWR LED */ ++#define SET_GPIO_INPUT (1 << 23) ++#define SET_GPIO_OUTPUT (1 << 24) + + /* Set LED brightness level */ + /* Must not sleep, use a workqueue if needed */ + +From 087966e5e3bafdeb9f9ac7578f4995c7cc7ecf1d Mon Sep 17 00:00:00 2001 +From: P33M +Date: Thu, 12 Feb 2015 11:20:00 +0000 +Subject: [PATCH 109/109] fiq_fsm: Falling out of the state machine isn't fatal + +This edge case can be hit if the port is disabled while the FIQ is +in the middle of a transaction. Make the effects less severe. + +Also get rid of the useless return value. +--- + drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c | 20 +++++++------------- + 1 file changed, 7 insertions(+), 13 deletions(-) + +diff --git a/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c b/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c +index 6266661..8a31562 100644 +--- a/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c ++++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c +@@ -2357,7 +2357,7 @@ int dwc_otg_fiq_unsetup_per_dma(dwc_otg_hcd_t *hcd, dwc_otg_qh_t *qh, dwc_otg_qt + * different from the normal (messy) path. This function and its friends handles + * channel cleanup and transaction completion from a FIQ transaction. + */ +-int32_t dwc_otg_hcd_handle_hc_fsm(dwc_otg_hcd_t *hcd, uint32_t num) ++void dwc_otg_hcd_handle_hc_fsm(dwc_otg_hcd_t *hcd, uint32_t num) + { + struct fiq_channel_state *st = &hcd->fiq_state->channel[num]; + dwc_hc_t *hc = hcd->hc_ptr_array[num]; +@@ -2366,7 +2366,6 @@ int32_t dwc_otg_hcd_handle_hc_fsm(dwc_otg_hcd_t *hcd, uint32_t num) + dwc_otg_hc_regs_t *hc_regs = hcd->core_if->host_if->hc_regs[num]; + hcint_data_t hcint = hcd->fiq_state->channel[num].hcint_copy; + int hostchannels = 0; +- int ret = 0; + fiq_print(FIQDBG_INT, hcd->fiq_state, "OUT %01d %01d ", num , st->fsm); + + hostchannels = hcd->available_host_channels; +@@ -2380,7 +2379,6 @@ int32_t dwc_otg_hcd_handle_hc_fsm(dwc_otg_hcd_t *hcd, uint32_t num) + * CLEAR_TT_BUFFER hub command if we were in the start-split phase. + */ + release_channel(hcd, hc, NULL, hc->halt_status); +- ret = 1; + break; + + case FIQ_NP_SPLIT_DONE: +@@ -2393,7 +2391,6 @@ int32_t dwc_otg_hcd_handle_hc_fsm(dwc_otg_hcd_t *hcd, uint32_t num) + } else if (hcint.b.nak) { + handle_hc_nak_intr(hcd, hc, hc_regs, qtd); + } +- ret = 1; + break; + + case FIQ_NP_SPLIT_HS_ABORTED: +@@ -2604,15 +2601,12 @@ int32_t dwc_otg_hcd_handle_hc_fsm(dwc_otg_hcd_t *hcd, uint32_t num) + break; + + default: +- local_fiq_disable(); +- DWC_WARN("unexpected state received on hc=%d fsm=%d", hc->hc_num, st->fsm); +- BUG(); +- } +- //if (hostchannels != hcd->available_host_channels) { +- /* should have incremented by now! */ +- // BUG(); +-// } +- return ret; ++ DWC_WARN("Unexpected state received on hc=%d fsm=%d on transfer to device %d ep 0x%x", ++ hc->hc_num, st->fsm, hc->dev_addr, hc->ep_num); ++ qtd->error_count++; ++ release_channel(hcd, hc, qtd, DWC_OTG_HC_XFER_NO_HALT_STATUS); ++ } ++ return; + } + + /** Handles interrupt for a specific Host Channel */