diff --git a/core/linux-armv7-rc/0001-ARM-atags-add-support-for-Marvell-s-u-boot.patch b/core/linux-armv7-rc/0001-ARM-atags-add-support-for-Marvell-s-u-boot.patch
index 6dd01e6de..7276713ab 100644
--- a/core/linux-armv7-rc/0001-ARM-atags-add-support-for-Marvell-s-u-boot.patch
+++ b/core/linux-armv7-rc/0001-ARM-atags-add-support-for-Marvell-s-u-boot.patch
@@ -1,7 +1,7 @@
 From ea11cc13a722f1fa6ec494be4de346cb15a06308 Mon Sep 17 00:00:00 2001
 From: Willy Tarreau <w@xxxxxx>
 Date: Sun, 2 Dec 2012 19:59:28 +0100
-Subject: [PATCH 1/4] ARM: atags: add support for Marvell's u-boot
+Subject: [PATCH 1/5] ARM: atags: add support for Marvell's u-boot
 
 Marvell uses a specific atag in its u-boot which includes among other
 information the MAC addresses for up to 4 network interfaces.
@@ -47,5 +47,5 @@ index 979ff40..d1d0c19 100644
  };
  
 -- 
-2.2.1
+2.2.2
 
diff --git a/core/linux-armv7-rc/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch b/core/linux-armv7-rc/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch
index c2dec1b92..3610b37c7 100644
--- a/core/linux-armv7-rc/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch
+++ b/core/linux-armv7-rc/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch
@@ -1,7 +1,7 @@
 From 1aa5fd13b027f5b97581593d1d9b1215d6b28162 Mon Sep 17 00:00:00 2001
 From: Willy Tarreau <w@xxxxxx>
 Date: Sun, 2 Dec 2012 19:56:58 +0100
-Subject: [PATCH 2/4] ARM: atags/fdt: retrieve MAC addresses from Marvell boot
+Subject: [PATCH 2/5] ARM: atags/fdt: retrieve MAC addresses from Marvell boot
  loader
 
 The atags are parsed and if a Marvell atag is found, up to 4 MAC
@@ -43,5 +43,5 @@ index 9448aa0..ac7b6ae 100644
  	}
  
 -- 
-2.2.1
+2.2.2
 
diff --git a/core/linux-armv7-rc/0003-SMILE-Plug-device-tree-file.patch b/core/linux-armv7-rc/0003-SMILE-Plug-device-tree-file.patch
index 5d2aa338f..fa462e5ba 100644
--- a/core/linux-armv7-rc/0003-SMILE-Plug-device-tree-file.patch
+++ b/core/linux-armv7-rc/0003-SMILE-Plug-device-tree-file.patch
@@ -1,7 +1,7 @@
 From 0624580ab2aba0c2a57d6c6b06ec90ec95c748f5 Mon Sep 17 00:00:00 2001
 From: Kevin Mihelich <kevin@archlinuxarm.org>
 Date: Fri, 5 Sep 2014 15:41:19 -0600
-Subject: [PATCH 3/4] SMILE Plug device tree file
+Subject: [PATCH 3/5] SMILE Plug device tree file
 
 This adds a dts file for the SMILE Plug, which only differs from the Mirabox
 dts with the LED definitions.
@@ -205,5 +205,5 @@ index 0000000..0a01264
 +	};
 +};
 -- 
-2.2.1
+2.2.2
 
diff --git a/core/linux-armv7-rc/0004-fix-mvsdio-eMMC-timing.patch b/core/linux-armv7-rc/0004-fix-mvsdio-eMMC-timing.patch
index 10f3256fc..1dceca24c 100644
--- a/core/linux-armv7-rc/0004-fix-mvsdio-eMMC-timing.patch
+++ b/core/linux-armv7-rc/0004-fix-mvsdio-eMMC-timing.patch
@@ -1,7 +1,7 @@
 From 0dfc0dfe1bf869b09d2a0bb3665bdf221e960f2d Mon Sep 17 00:00:00 2001
 From: Kevin Mihelich <kevin@archlinuxarm.org>
 Date: Fri, 5 Sep 2014 15:43:56 -0600
-Subject: [PATCH 4/4] fix mvsdio eMMC timing
+Subject: [PATCH 4/5] fix mvsdio eMMC timing
 
 These changes from Globalscale change the MMC timing to allow the eMMC versions
 of the Mirabox and SMILE Plug to work.
@@ -34,5 +34,5 @@ index 4f8618f..ab95bb7 100644
  		host->clock = ios->clock;
  		host->ns_per_clk = 1000000000 / (host->base_clock / (m+1));
 -- 
-2.2.1
+2.2.2
 
diff --git a/core/linux-armv7-rc/0005-net-smsc95xx-Allow-mac-address-to-be-set-as-a-parame.patch b/core/linux-armv7-rc/0005-net-smsc95xx-Allow-mac-address-to-be-set-as-a-parame.patch
new file mode 100644
index 000000000..76d1c1608
--- /dev/null
+++ b/core/linux-armv7-rc/0005-net-smsc95xx-Allow-mac-address-to-be-set-as-a-parame.patch
@@ -0,0 +1,95 @@
+From 5adf2285dd2774c763be4663e01238ddf4654da9 Mon Sep 17 00:00:00 2001
+From: popcornmix <popcornmix@gmail.com>
+Date: Tue, 18 Feb 2014 01:43:50 -0300
+Subject: [PATCH 5/5] net/smsc95xx: Allow mac address to be set as a parameter
+
+---
+ drivers/net/usb/smsc95xx.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 56 insertions(+)
+
+diff --git a/drivers/net/usb/smsc95xx.c b/drivers/net/usb/smsc95xx.c
+index 26423ad..e29a323 100644
+--- a/drivers/net/usb/smsc95xx.c
++++ b/drivers/net/usb/smsc95xx.c
+@@ -59,6 +59,7 @@
+ #define SUSPEND_SUSPEND3		(0x08)
+ #define SUSPEND_ALLMODES		(SUSPEND_SUSPEND0 | SUSPEND_SUSPEND1 | \
+ 					 SUSPEND_SUSPEND2 | SUSPEND_SUSPEND3)
++#define MAC_ADDR_LEN                    (6)
+ 
+ struct smsc95xx_priv {
+ 	u32 mac_cr;
+@@ -74,6 +75,10 @@ static bool turbo_mode = true;
+ module_param(turbo_mode, bool, 0644);
+ MODULE_PARM_DESC(turbo_mode, "Enable multiple frames per Rx transaction");
+ 
++static char *macaddr = ":";
++module_param(macaddr, charp, 0);
++MODULE_PARM_DESC(macaddr, "MAC address");
++
+ static int __must_check __smsc95xx_read_reg(struct usbnet *dev, u32 index,
+ 					    u32 *data, int in_pm)
+ {
+@@ -763,8 +768,59 @@ static int smsc95xx_ioctl(struct net_device *netdev, struct ifreq *rq, int cmd)
+ 	return generic_mii_ioctl(&dev->mii, if_mii(rq), cmd, NULL);
+ }
+ 
++/* Check the macaddr module parameter for a MAC address */
++static int smsc95xx_is_macaddr_param(struct usbnet *dev, u8 *dev_mac)
++{
++       int i, j, got_num, num;
++       u8 mtbl[MAC_ADDR_LEN];
++
++       if (macaddr[0] == ':')
++               return 0;
++
++       i = 0;
++       j = 0;
++       num = 0;
++       got_num = 0;
++       while (j < MAC_ADDR_LEN) {
++               if (macaddr[i] && macaddr[i] != ':') {
++                       got_num++;
++                       if ('0' <= macaddr[i] && macaddr[i] <= '9')
++                               num = num * 16 + macaddr[i] - '0';
++                       else if ('A' <= macaddr[i] && macaddr[i] <= 'F')
++                               num = num * 16 + 10 + macaddr[i] - 'A';
++                       else if ('a' <= macaddr[i] && macaddr[i] <= 'f')
++                               num = num * 16 + 10 + macaddr[i] - 'a';
++                       else
++                               break;
++                       i++;
++               } else if (got_num == 2) {
++                       mtbl[j++] = (u8) num;
++                       num = 0;
++                       got_num = 0;
++                       i++;
++               } else {
++                       break;
++               }
++       }
++
++       if (j == MAC_ADDR_LEN) {
++               netif_dbg(dev, ifup, dev->net, "Overriding MAC address with: "
++               "%02x:%02x:%02x:%02x:%02x:%02x\n", mtbl[0], mtbl[1], mtbl[2],
++                                               mtbl[3], mtbl[4], mtbl[5]);
++               for (i = 0; i < MAC_ADDR_LEN; i++)
++                       dev_mac[i] = mtbl[i];
++               return 1;
++       } else {
++               return 0;
++       }
++}
++
+ static void smsc95xx_init_mac_address(struct usbnet *dev)
+ {
++       /* Check module parameters */
++       if (smsc95xx_is_macaddr_param(dev, dev->net->dev_addr))
++               return;
++
+ 	/* try reading mac address from EEPROM */
+ 	if (smsc95xx_read_eeprom(dev, EEPROM_MAC_OFFSET, ETH_ALEN,
+ 			dev->net->dev_addr) == 0) {
+-- 
+2.2.2
+
diff --git a/core/linux-armv7-rc/PKGBUILD b/core/linux-armv7-rc/PKGBUILD
index 2e04f19d7..71fb9e988 100644
--- a/core/linux-armv7-rc/PKGBUILD
+++ b/core/linux-armv7-rc/PKGBUILD
@@ -4,7 +4,7 @@
 buildarch=4
 
 _rcver=3.19
-_rcrel=5
+_rcrel=6
 _rcnrel=armv7-x3
 
 pkgbase=linux-armv7-rc
@@ -26,16 +26,18 @@ source=("http://www.kernel.org/pub/linux/kernel/v3.x/${_srcname}.tar.xz"
         '0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch'
         '0003-SMILE-Plug-device-tree-file.patch'
         '0004-fix-mvsdio-eMMC-timing.patch'
+        '0005-net-smsc95xx-Allow-mac-address-to-be-set-as-a-parame.patch'
         'config')
 md5sums=('9e854df51ca3fef8bfe566dbd7b89241'
-         '5d644fab7b6bf09ac75d5695128fc547'
-         'a802842ba5ac95e1fd9934267f3fcb82'
+         '90beea7083f70000e32c14463e576a46'
+         '1686f0fc8c4aefed6c86941fa8b5de82'
          'SKIP'
-         '70b9ce2701ad3f43940d0172e4618549'
-         'af7f56bc5712f264a55bb6603e64df0e'
-         'a70066db5aa59f660dd7e31809b47e4c'
-         'a27e0ba6c63e0656039e20eeb957fee1'
-         '30319340a0378e6af7a75a5db3699e4d')
+         'f08e4d6f28ef4bdba33ddccecaa3d547'
+         '2e5ce0eab008104e2e72fd41207725c6'
+         '7adbffa76463850fefd5cf12f63c86e9'
+         '3e51a3538a08e8f87dcc7cea1cc25b68'
+         '52db768a824523895d8ff8b41403283a'
+         '96f18cb44dbd4c0de89fdec3539e03d9')
 
 prepare() {
   cd "${srcdir}/${_srcname}"
@@ -51,6 +53,7 @@ prepare() {
   git apply ../0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch
   git apply ../0003-SMILE-Plug-device-tree-file.patch
   git apply ../0004-fix-mvsdio-eMMC-timing.patch
+  git apply ../0005-net-smsc95xx-Allow-mac-address-to-be-set-as-a-parame.patch
 
   # AUFS patches
   #cp -ru "${srcdir}/aufs3-standalone/Documentation" .
diff --git a/core/linux-armv7-rc/config b/core/linux-armv7-rc/config
index 23c37e335..7eb529d26 100644
--- a/core/linux-armv7-rc/config
+++ b/core/linux-armv7-rc/config
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/arm 3.19.0-rc5-1 Kernel Configuration
+# Linux/arm 3.19.0-rc6-1 Kernel Configuration
 #
 CONFIG_ARM=y
 CONFIG_ARM_HAS_SG_CHAIN=y
@@ -4311,7 +4311,7 @@ CONFIG_DVB_AF9033=m
 #
 CONFIG_VGA_ARB=y
 CONFIG_VGA_ARB_MAX_GPUS=16
-CONFIG_TEGRA_HOST1X=y
+CONFIG_TEGRA_HOST1X=m
 CONFIG_TEGRA_HOST1X_FIREWALL=y
 CONFIG_IMX_IPUV3_CORE=m
 
@@ -4650,23 +4650,26 @@ CONFIG_SND_PCI=y
 CONFIG_SND_HDA=m
 # CONFIG_SND_HDA_INTEL is not set
 CONFIG_SND_HDA_TEGRA=m
+CONFIG_SND_HDA_DSP_LOADER=y
 CONFIG_SND_HDA_PREALLOC_SIZE=64
-# CONFIG_SND_HDA_HWDEP is not set
-# CONFIG_SND_HDA_RECONFIG is not set
-# CONFIG_SND_HDA_INPUT_BEEP is not set
-# CONFIG_SND_HDA_INPUT_JACK is not set
-# CONFIG_SND_HDA_PATCH_LOADER is not set
-# CONFIG_SND_HDA_CODEC_REALTEK is not set
-# CONFIG_SND_HDA_CODEC_ANALOG is not set
-# CONFIG_SND_HDA_CODEC_SIGMATEL is not set
-# CONFIG_SND_HDA_CODEC_VIA is not set
+CONFIG_SND_HDA_HWDEP=y
+CONFIG_SND_HDA_RECONFIG=y
+CONFIG_SND_HDA_INPUT_BEEP=y
+CONFIG_SND_HDA_INPUT_BEEP_MODE=1
+CONFIG_SND_HDA_INPUT_JACK=y
+CONFIG_SND_HDA_PATCH_LOADER=y
+CONFIG_SND_HDA_CODEC_REALTEK=m
+CONFIG_SND_HDA_CODEC_ANALOG=m
+CONFIG_SND_HDA_CODEC_SIGMATEL=m
+CONFIG_SND_HDA_CODEC_VIA=m
 CONFIG_SND_HDA_CODEC_HDMI=m
-# CONFIG_SND_HDA_CODEC_CIRRUS is not set
-# CONFIG_SND_HDA_CODEC_CONEXANT is not set
-# CONFIG_SND_HDA_CODEC_CA0110 is not set
-# CONFIG_SND_HDA_CODEC_CA0132 is not set
-# CONFIG_SND_HDA_CODEC_CMEDIA is not set
-# CONFIG_SND_HDA_CODEC_SI3054 is not set
+CONFIG_SND_HDA_CODEC_CIRRUS=m
+CONFIG_SND_HDA_CODEC_CONEXANT=m
+CONFIG_SND_HDA_CODEC_CA0110=m
+CONFIG_SND_HDA_CODEC_CA0132=m
+CONFIG_SND_HDA_CODEC_CA0132_DSP=y
+CONFIG_SND_HDA_CODEC_CMEDIA=m
+CONFIG_SND_HDA_CODEC_SI3054=m
 CONFIG_SND_HDA_GENERIC=m
 CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
 CONFIG_SND_ARM=y
@@ -5417,7 +5420,7 @@ CONFIG_RTC_DRV_ISL1208=m
 CONFIG_RTC_DRV_ISL12022=m
 CONFIG_RTC_DRV_ISL12057=y
 CONFIG_RTC_DRV_X1205=m
-CONFIG_RTC_DRV_PALMAS=m
+CONFIG_RTC_DRV_PALMAS=y
 CONFIG_RTC_DRV_PCF2127=m
 CONFIG_RTC_DRV_PCF8523=m
 CONFIG_RTC_DRV_PCF8563=m
@@ -6072,16 +6075,16 @@ CONFIG_TMP006=m
 CONFIG_PWM=y
 CONFIG_PWM_SYSFS=y
 # CONFIG_PWM_FSL_FTM is not set
-CONFIG_PWM_IMX=y
-CONFIG_PWM_PCA9685=y
+CONFIG_PWM_IMX=m
+CONFIG_PWM_PCA9685=m
 # CONFIG_PWM_ROCKCHIP is not set
-CONFIG_PWM_SAMSUNG=y
-CONFIG_PWM_TEGRA=y
-CONFIG_PWM_TIECAP=y
-CONFIG_PWM_TIEHRPWM=y
+CONFIG_PWM_SAMSUNG=m
+CONFIG_PWM_TEGRA=m
+CONFIG_PWM_TIECAP=m
+CONFIG_PWM_TIEHRPWM=m
 CONFIG_PWM_TIPWMSS=y
-CONFIG_PWM_TWL=y
-CONFIG_PWM_TWL_LED=y
+CONFIG_PWM_TWL=m
+CONFIG_PWM_TWL_LED=m
 CONFIG_IRQCHIP=y
 CONFIG_ARM_GIC=y
 CONFIG_GIC_NON_BANKED=y