diff --git a/openpower/configs/barreleye_defconfig b/openpower/configs/barreleye_defconfig
index 761884c..510fea4 100644
--- a/openpower/configs/barreleye_defconfig
+++ b/openpower/configs/barreleye_defconfig
@@ -42,7 +42,7 @@
 BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.70"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.77"
 BR2_KERNEL_HEADERS_4_4=y
 BR2_BINUTILS_VERSION_2_26_X=y
 BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL)/linux"
diff --git a/openpower/configs/firenze_defconfig b/openpower/configs/firenze_defconfig
index eae62da..7c268ab 100644
--- a/openpower/configs/firenze_defconfig
+++ b/openpower/configs/firenze_defconfig
@@ -39,7 +39,7 @@
 BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firenze-firmware-whitelist"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.70"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.77"
 BR2_KERNEL_HEADERS_4_4=y
 BR2_BINUTILS_VERSION_2_26_X=y
 BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL)/linux"
diff --git a/openpower/configs/firestone_defconfig b/openpower/configs/firestone_defconfig
index 97728f6..8fc3f30 100644
--- a/openpower/configs/firestone_defconfig
+++ b/openpower/configs/firestone_defconfig
@@ -42,7 +42,7 @@
 BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.70"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.77"
 BR2_KERNEL_HEADERS_4_4=y
 BR2_BINUTILS_VERSION_2_26_X=y
 BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL)/linux"
diff --git a/openpower/configs/garrison_defconfig b/openpower/configs/garrison_defconfig
index d35e0f3..535f078 100644
--- a/openpower/configs/garrison_defconfig
+++ b/openpower/configs/garrison_defconfig
@@ -42,7 +42,7 @@
 BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.70"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.77"
 BR2_KERNEL_HEADERS_4_4=y
 BR2_BINUTILS_VERSION_2_26_X=y
 BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL)/linux"
diff --git a/openpower/configs/habanero_defconfig b/openpower/configs/habanero_defconfig
index c0c36c3..a5c6641 100644
--- a/openpower/configs/habanero_defconfig
+++ b/openpower/configs/habanero_defconfig
@@ -42,7 +42,7 @@
 BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.70"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.77"
 BR2_KERNEL_HEADERS_4_4=y
 BR2_BINUTILS_VERSION_2_26_X=y
 BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL)/linux"
diff --git a/openpower/configs/openpower_mambo_defconfig b/openpower/configs/openpower_mambo_defconfig
index a1d1ddc..86901c7 100644
--- a/openpower/configs/openpower_mambo_defconfig
+++ b/openpower/configs/openpower_mambo_defconfig
@@ -31,7 +31,7 @@
 BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.70"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.77"
 BR2_KERNEL_HEADERS_4_4=y
 BR2_BINUTILS_VERSION_2_26_X=y
 BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL)/linux"
diff --git a/openpower/configs/palmetto_defconfig b/openpower/configs/palmetto_defconfig
index 9d111da..3145fe1 100644
--- a/openpower/configs/palmetto_defconfig
+++ b/openpower/configs/palmetto_defconfig
@@ -40,7 +40,7 @@
 BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.70"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.77"
 BR2_KERNEL_HEADERS_4_4=y
 BR2_BINUTILS_VERSION_2_26_X=y
 BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL)/linux"
diff --git a/openpower/linux/0001-xhci-Use-xhci_pci_remove-for-xhci-device-shutdown.patch b/openpower/linux/0001-xhci-Use-xhci_pci_remove-for-xhci-device-shutdown.patch
index cb9abdf..f85bf43 100644
--- a/openpower/linux/0001-xhci-Use-xhci_pci_remove-for-xhci-device-shutdown.patch
+++ b/openpower/linux/0001-xhci-Use-xhci_pci_remove-for-xhci-device-shutdown.patch
@@ -10,10 +10,10 @@
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
-index 30c4ae80c8f9..3c7c6f08637d 100644
+index e8f990642281..398a6a590fc6 100644
 --- a/drivers/usb/host/xhci-pci.c
 +++ b/drivers/usb/host/xhci-pci.c
-@@ -459,7 +459,7 @@ static struct pci_driver xhci_pci_driver = {
+@@ -462,7 +462,7 @@ static struct pci_driver xhci_pci_driver = {
  	.remove =	xhci_pci_remove,
  	/* suspend and resume implemented later */
  
@@ -22,6 +22,3 @@
  #ifdef CONFIG_PM
  	.driver = {
  		.pm = &usb_hcd_pci_pm_ops
--- 
-2.11.0
-
diff --git a/openpower/linux/0002-drivers-drm-ast-Switch-SCU-to-VGA-output-on-POST.patch b/openpower/linux/0002-drivers-drm-ast-Switch-SCU-to-VGA-output-on-POST.patch
index 17feba3..b8bcb5e 100644
--- a/openpower/linux/0002-drivers-drm-ast-Switch-SCU-to-VGA-output-on-POST.patch
+++ b/openpower/linux/0002-drivers-drm-ast-Switch-SCU-to-VGA-output-on-POST.patch
@@ -10,11 +10,11 @@
 Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
 Signed-off-by: Joel Stanley <joel@jms.id.au>
 ---
- drivers/gpu/drm/ast/ast_post.c | 32 ++++++++++++++++++++++++++++++++
- 1 file changed, 32 insertions(+)
+ drivers/gpu/drm/ast/ast_post.c | 33 +++++++++++++++++++++++++++++++++
+ 1 file changed, 33 insertions(+)
 
 diff --git a/drivers/gpu/drm/ast/ast_post.c b/drivers/gpu/drm/ast/ast_post.c
-index 30672a3df8a9..bf6c4bfff2dc 100644
+index c7c58becb25d..a31158ed5928 100644
 --- a/drivers/gpu/drm/ast/ast_post.c
 +++ b/drivers/gpu/drm/ast/ast_post.c
 @@ -32,6 +32,7 @@
@@ -25,17 +25,18 @@
  
  void ast_enable_vga(struct drm_device *dev)
  {
-@@ -380,6 +381,9 @@ void ast_post_gpu(struct drm_device *dev)
- 	else
- 		ast_init_dram_reg(dev);
+@@ -381,6 +382,10 @@ void ast_post_gpu(struct drm_device *dev)
+ 		else
+ 			ast_init_dram_reg(dev);
  
-+	if (ast->chip == AST2400)
-+		ast_init_output_control(dev);
++		/* HACK: this is to support AMI P8 VGA support */
++		if (ast->chip == AST2400)
++			ast_init_output_control(dev);
 +
- 	ast_init_3rdtx(dev);
- }
- 
-@@ -1683,3 +1687,31 @@ static void ast_init_dram_2300(struct drm_device *dev)
+ 		ast_init_3rdtx(dev);
+ 	} else {
+ 		if (ast->tx_chip_type != AST_TX_NONE)
+@@ -1688,3 +1693,31 @@ static void ast_init_dram_2300(struct drm_device *dev)
  	} while ((reg & 0x40) == 0);
  }
  
@@ -67,6 +68,3 @@
 +
 +	ast_moutdwm(ast, scu_addr | 0x2c, val);
 +}
--- 
-2.11.0
-
diff --git a/openpower/linux/0003-net-mlx4_core-Set-UAR-page-size-to-4KB-regardless-of.patch b/openpower/linux/0003-net-mlx4_core-Set-UAR-page-size-to-4KB-regardless-of.patch
index 1061718..f91ae22 100644
--- a/openpower/linux/0003-net-mlx4_core-Set-UAR-page-size-to-4KB-regardless-of.patch
+++ b/openpower/linux/0003-net-mlx4_core-Set-UAR-page-size-to-4KB-regardless-of.patch
@@ -120,10 +120,10 @@
  	err = mlx4_qp_to_ready(mdev->dev, &ring->wqres.mtt, &ring->context,
  			       &ring->qp, &ring->qp_state);
 diff --git a/drivers/net/ethernet/mellanox/mlx4/eq.c b/drivers/net/ethernet/mellanox/mlx4/eq.c
-index 603d1c3d3b2e..ad6240e45441 100644
+index ff77b8b608bd..d527c5fa5c59 100644
 --- a/drivers/net/ethernet/mellanox/mlx4/eq.c
 +++ b/drivers/net/ethernet/mellanox/mlx4/eq.c
-@@ -924,9 +924,10 @@ static void __iomem *mlx4_get_eq_uar(struct mlx4_dev *dev, struct mlx4_eq *eq)
+@@ -929,9 +929,10 @@ static void __iomem *mlx4_get_eq_uar(struct mlx4_dev *dev, struct mlx4_eq *eq)
  
  	if (!priv->eq_table.uar_map[index]) {
  		priv->eq_table.uar_map[index] =
@@ -294,6 +294,3 @@
 +	return (128 >> (PAGE_SHIFT - dev->uar_page_shift));
 +}
  #endif /* MLX4_DEVICE_H */
--- 
-2.11.0
-
diff --git a/openpower/linux/0004-xhci-do-not-halt-the-secondary-HCD.patch b/openpower/linux/0004-xhci-do-not-halt-the-secondary-HCD.patch
index 4983dc9..b0dab4d 100644
--- a/openpower/linux/0004-xhci-do-not-halt-the-secondary-HCD.patch
+++ b/openpower/linux/0004-xhci-do-not-halt-the-secondary-HCD.patch
@@ -51,6 +51,3 @@
  	xhci_cleanup_msix(xhci);
  
  	/* Deleting Compliance Mode Recovery Timer */
--- 
-2.11.0
-
diff --git a/openpower/linux/0005-net-mlx5-Add-pci-shutdown-callback.patch b/openpower/linux/0005-net-mlx5-Add-pci-shutdown-callback.patch
index a1db560..9f676a4 100644
--- a/openpower/linux/0005-net-mlx5-Add-pci-shutdown-callback.patch
+++ b/openpower/linux/0005-net-mlx5-Add-pci-shutdown-callback.patch
@@ -63,10 +63,10 @@
  
  static void *mlx5e_get_netdev(void *vpriv)
 diff --git a/drivers/net/ethernet/mellanox/mlx5/core/main.c b/drivers/net/ethernet/mellanox/mlx5/core/main.c
-index 1e611980cf99..1351eecd6bde 100644
+index f5c1f4acc57b..aa39ff18b4f0 100644
 --- a/drivers/net/ethernet/mellanox/mlx5/core/main.c
 +++ b/drivers/net/ethernet/mellanox/mlx5/core/main.c
-@@ -920,7 +920,7 @@ static int mlx5_load_one(struct mlx5_core_dev *dev, struct mlx5_priv *priv)
+@@ -921,7 +921,7 @@ static int mlx5_load_one(struct mlx5_core_dev *dev, struct mlx5_priv *priv)
  	int err;
  
  	mutex_lock(&dev->intf_state_mutex);
@@ -75,7 +75,7 @@
  		dev_warn(&dev->pdev->dev, "%s: interface is up, NOP\n",
  			 __func__);
  		goto out;
-@@ -1069,7 +1069,8 @@ static int mlx5_load_one(struct mlx5_core_dev *dev, struct mlx5_priv *priv)
+@@ -1079,7 +1079,8 @@ static int mlx5_load_one(struct mlx5_core_dev *dev, struct mlx5_priv *priv)
  	if (err)
  		pr_info("failed request module on %s\n", MLX5_IB_MOD);
  
@@ -85,7 +85,7 @@
  out:
  	mutex_unlock(&dev->intf_state_mutex);
  
-@@ -1131,7 +1132,7 @@ static int mlx5_unload_one(struct mlx5_core_dev *dev, struct mlx5_priv *priv)
+@@ -1141,7 +1142,7 @@ static int mlx5_unload_one(struct mlx5_core_dev *dev, struct mlx5_priv *priv)
  	int err = 0;
  
  	mutex_lock(&dev->intf_state_mutex);
@@ -94,7 +94,7 @@
  		dev_warn(&dev->pdev->dev, "%s: interface is down, NOP\n",
  			 __func__);
  		goto out;
-@@ -1161,7 +1162,8 @@ static int mlx5_unload_one(struct mlx5_core_dev *dev, struct mlx5_priv *priv)
+@@ -1171,7 +1172,8 @@ static int mlx5_unload_one(struct mlx5_core_dev *dev, struct mlx5_priv *priv)
  	mlx5_cmd_cleanup(dev);
  
  out:
@@ -104,7 +104,7 @@
  	mutex_unlock(&dev->intf_state_mutex);
  	return err;
  }
-@@ -1371,6 +1373,18 @@ static const struct pci_error_handlers mlx5_err_handler = {
+@@ -1381,6 +1383,18 @@ static const struct pci_error_handlers mlx5_err_handler = {
  	.resume		= mlx5_pci_resume
  };
  
@@ -123,7 +123,7 @@
  static const struct pci_device_id mlx5_core_pci_table[] = {
  	{ PCI_VDEVICE(MELLANOX, 0x1011) }, /* Connect-IB */
  	{ PCI_VDEVICE(MELLANOX, 0x1012) }, /* Connect-IB VF */
-@@ -1388,6 +1402,7 @@ static struct pci_driver mlx5_core_driver = {
+@@ -1398,6 +1412,7 @@ static struct pci_driver mlx5_core_driver = {
  	.id_table       = mlx5_core_pci_table,
  	.probe          = init_one,
  	.remove         = remove_one,
@@ -156,6 +156,3 @@
  	void			(*event) (struct mlx5_core_dev *dev,
  					  enum mlx5_dev_event event,
  					  unsigned long param);
--- 
-2.11.0
-
diff --git a/openpower/linux/0006-powerpc-boot-Add-OPAL-console-to-epapr-wrappers.patch b/openpower/linux/0006-powerpc-boot-Add-OPAL-console-to-epapr-wrappers.patch
index 18b30d2..ea4917c 100644
--- a/openpower/linux/0006-powerpc-boot-Add-OPAL-console-to-epapr-wrappers.patch
+++ b/openpower/linux/0006-powerpc-boot-Add-OPAL-console-to-epapr-wrappers.patch
@@ -281,6 +281,3 @@
  #define min(x,y) ({ \
  	typeof(x) _x = (x);	\
  	typeof(y) _y = (y);	\
--- 
-2.11.0
-
diff --git a/openpower/linux/0007-tty-hvc-Use-opal-irqchip-interface-if-available.patch b/openpower/linux/0007-tty-hvc-Use-opal-irqchip-interface-if-available.patch
index e420ddd..e93d8f4 100644
--- a/openpower/linux/0007-tty-hvc-Use-opal-irqchip-interface-if-available.patch
+++ b/openpower/linux/0007-tty-hvc-Use-opal-irqchip-interface-if-available.patch
@@ -33,6 +33,3 @@
  	if (!irq) {
  		pr_err("hvc_opal: Unable to map interrupt for device %s\n",
  			dev->dev.of_node->full_name);
--- 
-2.11.0
-
diff --git a/openpower/linux/0008-tty-hvc-Use-IRQF_SHARED-for-OPAL-hvc-consoles.patch b/openpower/linux/0008-tty-hvc-Use-IRQF_SHARED-for-OPAL-hvc-consoles.patch
index cfbb923..3471e48 100644
--- a/openpower/linux/0008-tty-hvc-Use-IRQF_SHARED-for-OPAL-hvc-consoles.patch
+++ b/openpower/linux/0008-tty-hvc-Use-IRQF_SHARED-for-OPAL-hvc-consoles.patch
@@ -83,6 +83,3 @@
  	dev_set_drvdata(&dev->dev, hp);
  
  	return 0;
--- 
-2.11.0
-
diff --git a/openpower/linux/0009-usb-xhci-allow-xhci_check_bandwith-in-XHCI_STATE_REM.patch b/openpower/linux/0009-usb-xhci-allow-xhci_check_bandwith-in-XHCI_STATE_REM.patch
index 6fbd316..68a2e76 100644
--- a/openpower/linux/0009-usb-xhci-allow-xhci_check_bandwith-in-XHCI_STATE_REM.patch
+++ b/openpower/linux/0009-usb-xhci-allow-xhci_check_bandwith-in-XHCI_STATE_REM.patch
@@ -58,6 +58,3 @@
  		return -ENODEV;
  
  	xhci_dbg(xhci, "%s called for udev %p\n", __func__, udev);
--- 
-2.11.0
-
diff --git a/openpower/linux/0010-powerpc-boot-Request-no-dynamic-linker-for-boot-wrap.patch b/openpower/linux/0010-powerpc-boot-Request-no-dynamic-linker-for-boot-wrap.patch
index 12f5d4a..6194459 100644
--- a/openpower/linux/0010-powerpc-boot-Request-no-dynamic-linker-for-boot-wrap.patch
+++ b/openpower/linux/0010-powerpc-boot-Request-no-dynamic-linker-for-boot-wrap.patch
@@ -25,8 +25,6 @@
 Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
 (cherry picked from commit ff45000fcb56b5b0f1a14a865d3541746d838a0a)
 Signed-off-by: Joel Stanley <joel@jms.id.au>
-
-Signed-off-by: Joel Stanley <joel@jms.id.au>
 ---
  arch/powerpc/boot/wrapper | 25 ++++++++++++++++++++++++-
  1 file changed, 24 insertions(+), 1 deletion(-)
@@ -74,6 +72,3 @@
  	$platformo $tmp $object/wrapper.a
      rm $tmp
  fi
--- 
-2.11.0
-
diff --git a/openpower/linux/0011-Release-v4.4.70-openpower1.patch b/openpower/linux/0011-Release-v4.4.77-openpower1.patch
similarity index 73%
rename from openpower/linux/0011-Release-v4.4.70-openpower1.patch
rename to openpower/linux/0011-Release-v4.4.77-openpower1.patch
index ba9d207..8767207 100644
--- a/openpower/linux/0011-Release-v4.4.70-openpower1.patch
+++ b/openpower/linux/0011-Release-v4.4.77-openpower1.patch
@@ -1,9 +1,7 @@
 From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 From: Joel Stanley <joel@jms.id.au>
 Date: Wed, 7 Jun 2017 14:46:38 +0930
-Subject: [PATCH 11/11] Release v4.4.70-openpower1
-
- - Move to latest upstream stable release 4.4.70
+Subject: [PATCH 11/11] Release v4.4.77-openpower1
 
 Signed-off-by: Joel Stanley <joel@jms.id.au>
 ---
@@ -11,18 +9,15 @@
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/Makefile b/Makefile
-index a5ecb29c6ed3..376cd912aa5c 100644
+index bf49a61d02e2..0bcf47141d7c 100644
 --- a/Makefile
 +++ b/Makefile
 @@ -1,7 +1,7 @@
  VERSION = 4
  PATCHLEVEL = 4
- SUBLEVEL = 70
+ SUBLEVEL = 77
 -EXTRAVERSION =
 +EXTRAVERSION = -openpower1
  NAME = Blurry Fish Butt
  
  # *DOCUMENTATION*
--- 
-2.11.0
-
