Merge pull request #781 from sammj/mlx5
linux: Re-enable mlx5 driver
diff --git a/.gitmodules b/.gitmodules
index 4f0f85e..e8dfd5e 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,4 +1,4 @@
[submodule "buildroot"]
path = buildroot
- branch = 2016.08-op-build
+ branch = 2016.11-op-build
url = https://github.com/open-power/buildroot
diff --git a/buildroot b/buildroot
index 211bd05..51f1ac9 160000
--- a/buildroot
+++ b/buildroot
@@ -1 +1 @@
-Subproject commit 211bd050aa32bfda12da1e9495234e01d6862b3c
+Subproject commit 51f1ac92ec98cfcffd2cb35d5998821480a12e36
diff --git a/openpower/Config.in b/openpower/Config.in
index 19a2859..b6decad 100644
--- a/openpower/Config.in
+++ b/openpower/Config.in
@@ -1,15 +1,15 @@
menu "OpenPower"
-source "$BR2_EXTERNAL/platform/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/platform/Config.in"
menu "OpenPower Packages"
if BR2_OPENPOWER_PLATFORM
-source "$BR2_EXTERNAL/package/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/Config.in"
endif
endmenu
menu "Custom Packages"
-source "$BR2_EXTERNAL/custom/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/custom/Config.in"
endmenu
endmenu
diff --git a/openpower/configs/barreleye_defconfig b/openpower/configs/barreleye_defconfig
index 4e3a3fd..8ffb3f9 100644
--- a/openpower/configs/barreleye_defconfig
+++ b/openpower/configs/barreleye_defconfig
@@ -1,7 +1,8 @@
BR2_powerpc64le=y
BR2_powerpc_power8=y
BR2_KERNEL_HEADERS_4_4=y
-BR2_BINUTILS_VERSION_2_26_X=y
+BR2_GLIBC_VERSION_2_24=y
+BR2_BINUTILS_VERSION_2_27_X=y
BR2_BINUTILS_EXTRA_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
BR2_GCC_VERSION_6_X=y
BR2_EXTRA_GCC_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
@@ -16,11 +17,12 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.35"
-BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL)/linux"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.39"
+BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig"
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y
+BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/configs/busybox.fragment"
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
BR2_PACKAGE_LINUX_FIRMWARE=y
BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
diff --git a/openpower/configs/busybox.fragment b/openpower/configs/busybox.fragment
new file mode 100644
index 0000000..1b13459
--- /dev/null
+++ b/openpower/configs/busybox.fragment
@@ -0,0 +1 @@
+CONFIG_FEATURE_TFTP_PROGRESS_BAR=y
diff --git a/openpower/configs/firenze_defconfig b/openpower/configs/firenze_defconfig
index 47b7153..70a12f2 100644
--- a/openpower/configs/firenze_defconfig
+++ b/openpower/configs/firenze_defconfig
@@ -1,7 +1,8 @@
BR2_powerpc64le=y
BR2_powerpc_power8=y
BR2_KERNEL_HEADERS_4_4=y
-BR2_BINUTILS_VERSION_2_26_X=y
+BR2_GLIBC_VERSION_2_24=y
+BR2_BINUTILS_VERSION_2_27_X=y
BR2_BINUTILS_EXTRA_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
BR2_GCC_VERSION_6_X=y
BR2_EXTRA_GCC_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
@@ -15,11 +16,12 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.35"
-BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL)/linux"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.39"
+BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig"
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y
+BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/configs/busybox.fragment"
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
BR2_PACKAGE_LINUX_FIRMWARE=y
BR2_PACKAGE_LINUX_FIRMWARE_RADEON=y
diff --git a/openpower/configs/firestone_defconfig b/openpower/configs/firestone_defconfig
index 3daa191..6bc696e 100644
--- a/openpower/configs/firestone_defconfig
+++ b/openpower/configs/firestone_defconfig
@@ -1,7 +1,8 @@
BR2_powerpc64le=y
BR2_powerpc_power8=y
BR2_KERNEL_HEADERS_4_4=y
-BR2_BINUTILS_VERSION_2_26_X=y
+BR2_GLIBC_VERSION_2_24=y
+BR2_BINUTILS_VERSION_2_27_X=y
BR2_BINUTILS_EXTRA_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
BR2_GCC_VERSION_6_X=y
BR2_EXTRA_GCC_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
@@ -16,11 +17,12 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.35"
-BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL)/linux"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.39"
+BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig"
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y
+BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/configs/busybox.fragment"
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
BR2_PACKAGE_LINUX_FIRMWARE=y
BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
diff --git a/openpower/configs/garrison_defconfig b/openpower/configs/garrison_defconfig
index 11a1ccb..2a56eed 100644
--- a/openpower/configs/garrison_defconfig
+++ b/openpower/configs/garrison_defconfig
@@ -1,7 +1,8 @@
BR2_powerpc64le=y
BR2_powerpc_power8=y
BR2_KERNEL_HEADERS_4_4=y
-BR2_BINUTILS_VERSION_2_26_X=y
+BR2_GLIBC_VERSION_2_24=y
+BR2_BINUTILS_VERSION_2_27_X=y
BR2_BINUTILS_EXTRA_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
BR2_GCC_VERSION_6_X=y
BR2_EXTRA_GCC_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
@@ -16,11 +17,12 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.35"
-BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL)/linux"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.39"
+BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig"
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y
+BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/configs/busybox.fragment"
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
BR2_PACKAGE_LINUX_FIRMWARE=y
BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
diff --git a/openpower/configs/habanero_defconfig b/openpower/configs/habanero_defconfig
index f797daa..1019dbf 100644
--- a/openpower/configs/habanero_defconfig
+++ b/openpower/configs/habanero_defconfig
@@ -1,7 +1,8 @@
BR2_powerpc64le=y
BR2_powerpc_power8=y
BR2_KERNEL_HEADERS_4_4=y
-BR2_BINUTILS_VERSION_2_26_X=y
+BR2_GLIBC_VERSION_2_24=y
+BR2_BINUTILS_VERSION_2_27_X=y
BR2_BINUTILS_EXTRA_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
BR2_GCC_VERSION_6_X=y
BR2_EXTRA_GCC_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
@@ -16,11 +17,12 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.35"
-BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL)/linux"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.39"
+BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig"
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y
+BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/configs/busybox.fragment"
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
BR2_PACKAGE_LINUX_FIRMWARE=y
BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
diff --git a/openpower/configs/openpower_mambo_defconfig b/openpower/configs/openpower_mambo_defconfig
index a38a905..c1bc10a 100644
--- a/openpower/configs/openpower_mambo_defconfig
+++ b/openpower/configs/openpower_mambo_defconfig
@@ -1,7 +1,8 @@
BR2_powerpc64le=y
BR2_powerpc_power8=y
BR2_KERNEL_HEADERS_4_4=y
-BR2_BINUTILS_VERSION_2_26_X=y
+BR2_GLIBC_VERSION_2_24=y
+BR2_BINUTILS_VERSION_2_27_X=y
BR2_BINUTILS_EXTRA_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
BR2_GCC_VERSION_6_X=y
BR2_EXTRA_GCC_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
@@ -14,11 +15,12 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.35"
-BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL)/linux"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.39"
+BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig"
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y
+BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/configs/busybox.fragment"
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
BR2_PACKAGE_LINUX_FIRMWARE=y
BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
diff --git a/openpower/configs/openpower_p9_mambo_defconfig b/openpower/configs/openpower_p9_mambo_defconfig
index 16f31ce..f04cdad 100644
--- a/openpower/configs/openpower_p9_mambo_defconfig
+++ b/openpower/configs/openpower_p9_mambo_defconfig
@@ -1,7 +1,8 @@
BR2_powerpc64le=y
BR2_powerpc_power8=y
BR2_KERNEL_HEADERS_4_4=y
-BR2_BINUTILS_VERSION_2_26_X=y
+BR2_GLIBC_VERSION_2_24=y
+BR2_BINUTILS_VERSION_2_27_X=y
BR2_BINUTILS_EXTRA_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
BR2_GCC_VERSION_6_X=y
BR2_EXTRA_GCC_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
@@ -14,10 +15,11 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.9-rc7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.9"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig"
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y
+BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/configs/busybox.fragment"
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
BR2_PACKAGE_LINUX_FIRMWARE=y
BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
diff --git a/openpower/configs/palmetto_defconfig b/openpower/configs/palmetto_defconfig
index 6208f0c..b33b5de 100644
--- a/openpower/configs/palmetto_defconfig
+++ b/openpower/configs/palmetto_defconfig
@@ -1,7 +1,8 @@
BR2_powerpc64le=y
BR2_powerpc_power8=y
BR2_KERNEL_HEADERS_4_4=y
-BR2_BINUTILS_VERSION_2_26_X=y
+BR2_GLIBC_VERSION_2_24=y
+BR2_BINUTILS_VERSION_2_27_X=y
BR2_BINUTILS_EXTRA_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
BR2_GCC_VERSION_6_X=y
BR2_EXTRA_GCC_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
@@ -15,11 +16,12 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.35"
-BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL)/linux"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.39"
+BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig"
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y
+BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/configs/busybox.fragment"
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
BR2_PACKAGE_LINUX_FIRMWARE=y
BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
diff --git a/openpower/configs/witherspoon_defconfig b/openpower/configs/witherspoon_defconfig
index 098b377..0a6bbaa 100644
--- a/openpower/configs/witherspoon_defconfig
+++ b/openpower/configs/witherspoon_defconfig
@@ -1,8 +1,10 @@
BR2_powerpc64le=y
BR2_powerpc_power8=y
BR2_KERNEL_HEADERS_4_4=y
-BR2_BINUTILS_VERSION_2_26_X=y
+BR2_GLIBC_VERSION_2_24=y
+BR2_BINUTILS_VERSION_2_27_X=y
BR2_BINUTILS_EXTRA_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
+BR2_GCC_VERSION_4_9_X=y
BR2_EXTRA_GCC_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_TARGET_GENERIC_HOSTNAME="skiroot"
@@ -15,11 +17,12 @@
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.9-rc7"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.9"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL)/configs/linux/skiroot_defconfig"
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y
BR2_LINUX_KERNEL_XZ=y
+BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL)/configs/busybox.fragment"
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
BR2_PACKAGE_LINUX_FIRMWARE=y
BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
@@ -42,7 +45,7 @@
BR2_OPENPOWER_CONFIG_NAME="witherspoon"
BR2_OPENPOWER_XML_PACKAGE="witherspoon-xml"
BR2_OPENPOWER_PNOR_FILENAME="witherspoon.pnor"
-#BR2_OPENPOWER_PNOR_UPDATE_FILENAME="witherspoon_update.pnor"
+BR2_OPENPOWER_PNOR_UPDATE_FILENAME="witherspoon_update.pnor"
BR2_HOSTBOOT_BINARY_SBE_FILENAME="nimbus_sbe.img.ecc"
BR2_HOSTBOOT_BINARY_SBEC_FILENAME="centaur_sbec_pad.img.ecc"
BR2_HOSTBOOT_BINARY_WINK_FILENAME="p9n.ref_image.hdr.bin.ecc"
diff --git a/openpower/external.desc b/openpower/external.desc
new file mode 100644
index 0000000..2088d4b
--- /dev/null
+++ b/openpower/external.desc
@@ -0,0 +1,2 @@
+name: OP_BUILD
+desc: The OpenPower Firmware build environment
diff --git a/openpower/external.mk b/openpower/external.mk
index 8d7b578..e8f46f1 100644
--- a/openpower/external.mk
+++ b/openpower/external.mk
@@ -1,6 +1,6 @@
-include $(sort $(wildcard $(BR2_EXTERNAL)/package/*.mk))
-include $(sort $(wildcard $(BR2_EXTERNAL)/package/*/*.mk))
+include $(sort $(wildcard $(BR2_EXTERNAL_OP_BUILD_PATH)/package/*.mk))
+include $(sort $(wildcard $(BR2_EXTERNAL_OP_BUILD_PATH)/package/*/*.mk))
# Utilize user-defined custom directory.
-include $(sort $(wildcard $(BR2_EXTERNAL)/custom/*.mk))
-BR2_GLOBAL_PATCH_DIR += "$(BR2_EXTERNAL)/custom/patches"
+include $(sort $(wildcard $(BR2_EXTERNAL_OP_BUILD_PATH)/custom/*.mk))
+BR2_GLOBAL_PATCH_DIR += "$(BR2_EXTERNAL_OP_BUILD_PATH)/custom/patches"
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 234955b..3f528e9 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
@@ -1,7 +1,7 @@
-From 197ee8ecab34ec0fef76e813115ac6c904941b0b Mon Sep 17 00:00:00 2001
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Thadeu Lima De Souza Cascardo <thadeul@br.ibm.com>
Date: Tue, 25 Mar 2014 10:45:16 -0400
-Subject: [PATCH 1/9] xhci: Use xhci_pci_remove for xhci device shutdown
+Subject: [PATCH 01/13] xhci: Use xhci_pci_remove for xhci device shutdown
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Signed-off-by: Joel Stanley <joel@jms.id.au>
@@ -23,5 +23,5 @@
.driver = {
.pm = &usb_hcd_pci_pm_ops
--
-2.10.2
+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 103b110..1284572 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
@@ -1,7 +1,7 @@
-From 3b72f1493ca01fe9bad672c24c5f62a7862f5001 Mon Sep 17 00:00:00 2001
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jeremy Kerr <jk@ozlabs.org>
Date: Wed, 2 Mar 2016 11:25:47 +0800
-Subject: [PATCH 2/9] drivers/drm/ast: Switch SCU to VGA output on POST
+Subject: [PATCH 02/13] drivers/drm/ast: Switch SCU to VGA output on POST
On AST BMC platforms, the BMC may be using the VGA device for UART
mirroring. In this case, we need to switch the DAC output to
@@ -68,5 +68,5 @@
+ ast_moutdwm(ast, scu_addr | 0x2c, val);
+}
--
-2.10.2
+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 0634d0d..083bf93 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
@@ -1,7 +1,7 @@
-From 2f6a9eb658b2bda754c41e7595449ea61cc05643 Mon Sep 17 00:00:00 2001
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Huy Nguyen <huyn@mellanox.com>
Date: Wed, 17 Feb 2016 17:24:26 +0200
-Subject: [PATCH 3/9] net/mlx4_core: Set UAR page size to 4KB regardless of
+Subject: [PATCH 03/13] net/mlx4_core: Set UAR page size to 4KB regardless of
system page size
problem description:
@@ -295,5 +295,5 @@
+}
#endif /* MLX4_DEVICE_H */
--
-2.10.2
+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 93d4449..38a24b7 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
@@ -1,7 +1,7 @@
-From dc80fa5aeb79858a9ee9f1575ca7aaf085b7b3f8 Mon Sep 17 00:00:00 2001
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Joel Stanley <joel@jms.id.au>
Date: Tue, 19 Jul 2016 22:43:26 +0930
-Subject: [PATCH 4/9] xhci: do not halt the secondary HCD
+Subject: [PATCH 04/13] xhci: do not halt the secondary HCD
We can't halt the secondary HCD, because it's also the primary HCD,
which will cause problems if we have devices attached to the primary
@@ -52,5 +52,5 @@
/* Deleting Compliance Mode Recovery Timer */
--
-2.10.2
+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 59e74dd..ef75ac4 100644
--- a/openpower/linux/0005-net-mlx5-Add-pci-shutdown-callback.patch
+++ b/openpower/linux/0005-net-mlx5-Add-pci-shutdown-callback.patch
@@ -1,7 +1,7 @@
-From dbb3baa8fe3f31f24386b895b345f6a212e6240f Mon Sep 17 00:00:00 2001
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Carol L Soto <clsoto@linux.vnet.ibm.com>
Date: Tue, 12 Jul 2016 17:04:07 -0500
-Subject: [PATCH 5/9] net/mlx5: Add pci shutdown callback
+Subject: [PATCH 05/13] net/mlx5: Add pci shutdown callback
Backport of commit 5fc7197d3a256 ("net/mlx5: Add pci shutdown callback")
so we can use for the OpenPower kernel.
@@ -157,5 +157,5 @@
enum mlx5_dev_event event,
unsigned long param);
--
-2.10.2
+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 85e0c35..e1a6f5d 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
@@ -1,7 +1,7 @@
-From e114c51a2db906edeedde2439b18e86ef1401a1a Mon Sep 17 00:00:00 2001
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Oliver O'Halloran <oohall@gmail.com>
Date: Fri, 24 Jun 2016 17:28:43 +1000
-Subject: [PATCH 6/9] powerpc/boot: Add OPAL console to epapr wrappers
+Subject: [PATCH 06/13] powerpc/boot: Add OPAL console to epapr wrappers
This patch adds an OPAL console backend to the powerpc boot wrapper so
that decompression failures inside the wrapper can be reported to the
@@ -282,5 +282,5 @@
typeof(x) _x = (x); \
typeof(y) _y = (y); \
--
-2.10.2
+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 1c401a8..0ddb72f 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
@@ -1,7 +1,7 @@
-From 9dea75996f5054e9e49e99120dd0ce6082d7f6d8 Mon Sep 17 00:00:00 2001
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Samuel Mendoza-Jonas <sam@mendozajonas.com>
Date: Wed, 13 Jul 2016 11:15:42 +1000
-Subject: [PATCH 7/9] tty/hvc: Use opal irqchip interface if available
+Subject: [PATCH 07/13] tty/hvc: Use opal irqchip interface if available
Update the hvc driver to use the OPAL irqchip if made available by the
running firmware. If it is not present, the driver falls back to the
@@ -34,5 +34,5 @@
pr_err("hvc_opal: Unable to map interrupt for device %s\n",
dev->dev.of_node->full_name);
--
-2.10.2
+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 b1e2407..d84418e 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
@@ -1,7 +1,7 @@
-From fb701b4efa037e94692051ee61f5bcffc56cd33f Mon Sep 17 00:00:00 2001
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Samuel Mendoza-Jonas <sam@mendozajonas.com>
Date: Wed, 13 Jul 2016 11:15:41 +1000
-Subject: [PATCH 8/9] tty/hvc: Use IRQF_SHARED for OPAL hvc consoles
+Subject: [PATCH 08/13] tty/hvc: Use IRQF_SHARED for OPAL hvc consoles
Commit 2def86a7200c
("hvc: Convert to using interrupts instead of opal events")
@@ -84,5 +84,5 @@
return 0;
--
-2.10.2
+2.11.0
diff --git a/openpower/linux/0009-Release-4.4.35-openpower1.patch b/openpower/linux/0009-Release-4.4.35-openpower1.patch
deleted file mode 100644
index 06be11e..0000000
--- a/openpower/linux/0009-Release-4.4.35-openpower1.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 4c657a96a3904a5e9c346b6089b9802cf06bbf23 Mon Sep 17 00:00:00 2001
-From: Joel Stanley <joel@jms.id.au>
-Date: Tue, 16 Aug 2016 23:00:23 +0930
-Subject: [PATCH 9/9] Release 4.4.35-openpower1
-
-Signed-off-by: Joel Stanley <joel@jms.id.au>
----
- Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index f88830af1533..08e43a4f0f47 100644
---- a/Makefile
-+++ b/Makefile
-@@ -1,7 +1,7 @@
- VERSION = 4
- PATCHLEVEL = 4
- SUBLEVEL = 35
--EXTRAVERSION =
-+EXTRAVERSION = -openpower1
- NAME = Blurry Fish Butt
-
- # *DOCUMENTATION*
---
-2.10.2
-
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
new file mode 100644
index 0000000..e4a5ff1
--- /dev/null
+++ b/openpower/linux/0009-usb-xhci-allow-xhci_check_bandwith-in-XHCI_STATE_REM.patch
@@ -0,0 +1,63 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Jeremy Kerr <jk@ozlabs.org>
+Date: Thu, 1 Dec 2016 18:15:59 +0800
+Subject: [PATCH 09/13] usb/xhci: allow xhci_check_bandwith in
+ XHCI_STATE_REMOVING
+
+Change 98d74f9ce (and backported as 0eb1e16bf9) introduced
+XHCI_STATE_REMOVING, where PCI XHCI HCDs are flagged as removing dring
+pci->remove. This included a check in xhci_check_bandwith to supress any
+configuration changes while the hcd is in this state.
+
+However, it looks like some controllers hang during halt if we haven't
+set configration 0 (via usb_hcd_alloc_bandwidth()).
+
+This change allows the configuration 0 update while removing.
+
+[This may be specific to our XHCI hacks for kexec...]
+
+From Gabriel Krisman Bertazi <krisman@linux.vnet.ibm.com>:
+
+ > What concerned me about 0004-xhci-do-not-halt-the-secondary-HCD.patch
+ > was that I'd still see eventual halt failures , though they seemed to
+ > occur on the shutdown hook, instead of the distro probe path. But since
+ > the probe goes ok, the bind continues and the device doesn't disappear.
+ > With JK's patch applied, I ran a bind-unbind stress test and couldn't
+ > reproduce the halt failure anymore. further probe and enumeration seems
+ > to work ok.
+ >
+ > I don't understand why the change fixes the hang but as JK said, it may
+ > be a particularity of this TI device not handling halts correctly . I
+ > don't think it will be accepted upstream as is, though, so we might want
+ > to make it a hardware quirk for this specific device if we confirm the
+ > TI device requires it for proper halting.
+ >
+ > Other than that, i think it's safe to make the change, and I don't think
+ > xhci spec forbids reconfiguration prior to halt.
+ >
+ > In short, this seems to work but I don't fully understand why. It
+ > doesn't seem harmful and if it fixes the issue, we can make it a quirk.
+
+Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
+Signed-off-by: Joel Stanley <joel@jms.id.au>
+---
+ drivers/usb/host/xhci.c | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
+index ec92a843325b..db557113cf3d 100644
+--- a/drivers/usb/host/xhci.c
++++ b/drivers/usb/host/xhci.c
+@@ -2770,8 +2770,7 @@ int xhci_check_bandwidth(struct usb_hcd *hcd, struct usb_device *udev)
+ if (ret <= 0)
+ return ret;
+ xhci = hcd_to_xhci(hcd);
+- if ((xhci->xhc_state & XHCI_STATE_DYING) ||
+- (xhci->xhc_state & XHCI_STATE_REMOVING))
++ if (xhci->xhc_state & XHCI_STATE_DYING)
+ 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
new file mode 100644
index 0000000..1773d17
--- /dev/null
+++ b/openpower/linux/0010-powerpc-boot-Request-no-dynamic-linker-for-boot-wrap.patch
@@ -0,0 +1,79 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Nicholas Piggin <npiggin@gmail.com>
+Date: Mon, 28 Nov 2016 12:42:26 +1100
+Subject: [PATCH 10/13] powerpc/boot: Request no dynamic linker for boot
+ wrapper
+
+The boot wrapper performs its own relocations and does not require
+PT_INTERP segment. However currently we don't tell the linker that.
+
+Prior to binutils 2.28 that works OK. But since binutils commit
+1a9ccd70f9a7 ("Fix the linker so that it will not silently generate ELF
+binaries with invalid program headers. Fix readelf to report such
+invalid binaries.") binutils tries to create a program header segment
+due to PT_INTERP, and the link fails because there is no space for it:
+
+ ld: arch/powerpc/boot/zImage.pseries: Not enough room for program headers, try linking with -N
+ ld: final link failed: Bad value
+
+So tell the linker not to do that, by passing --no-dynamic-linker.
+
+Cc: stable@vger.kernel.org
+Reported-by: Anton Blanchard <anton@samba.org>
+Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
+[mpe: Drop dependency on ld-version.sh and massage change log]
+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(-)
+
+diff --git a/arch/powerpc/boot/wrapper b/arch/powerpc/boot/wrapper
+index ceaa75d5a684..8c8394e4e164 100755
+--- a/arch/powerpc/boot/wrapper
++++ b/arch/powerpc/boot/wrapper
+@@ -161,6 +161,28 @@ case "$elfformat" in
+ elf32-powerpc) format=elf32ppc ;;
+ esac
+
++ld_version()
++{
++ # Poached from scripts/ld-version.sh, but we don't want to call that because
++ # this script (wrapper) is distributed separately from the kernel source.
++ # Extract linker version number from stdin and turn into single number.
++ awk '{
++ gsub(".*\\)", "");
++ gsub(".*version ", "");
++ gsub("-.*", "");
++ split($1,a, ".");
++ print a[1]*100000000 + a[2]*1000000 + a[3]*10000;
++ exit
++ }'
++}
++
++# Do not include PT_INTERP segment when linking pie. Non-pie linking
++# just ignores this option.
++LD_VERSION=$(${CROSS}ld --version | ld_version)
++LD_NO_DL_MIN_VERSION=$(echo 2.26 | ld_version)
++if [ "$LD_VERSION" -ge "$LD_NO_DL_MIN_VERSION" ] ; then
++ nodl="--no-dynamic-linker"
++fi
+
+ platformo=$object/"$platform".o
+ lds=$object/zImage.lds
+@@ -412,7 +434,8 @@ if [ "$platform" != "miboot" ]; then
+ if [ -n "$link_address" ] ; then
+ text_start="-Ttext $link_address"
+ fi
+- ${CROSS}ld -m $format -T $lds $text_start $pie -o "$ofile" \
++#link everything
++ ${CROSS}ld -m $format -T $lds $text_start $pie $nodl -o "$ofile" \
+ $platformo $tmp $object/wrapper.a
+ rm $tmp
+ fi
+--
+2.11.0
+
diff --git a/openpower/linux/0011-powerpc-Convert-cmp-to-cmpd-in-idle-enter-sequence.patch b/openpower/linux/0011-powerpc-Convert-cmp-to-cmpd-in-idle-enter-sequence.patch
new file mode 100644
index 0000000..4f0edfa
--- /dev/null
+++ b/openpower/linux/0011-powerpc-Convert-cmp-to-cmpd-in-idle-enter-sequence.patch
@@ -0,0 +1,45 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Segher Boessenkool <segher@kernel.crashing.org>
+Date: Thu, 6 Oct 2016 13:42:19 +0000
+Subject: [PATCH 11/13] powerpc: Convert cmp to cmpd in idle enter sequence
+
+PowerPC's "cmp" instruction has four operands. Normally people write
+"cmpw" or "cmpd" for the second cmp operand 0 or 1. But, frequently
+people forget, and write "cmp" with just three operands.
+
+With older binutils this is silently accepted as if this was "cmpw",
+while often "cmpd" is wanted. With newer binutils GAS will complain
+about this for 64-bit code. For 32-bit code it still silently assumes
+"cmpw" is what is meant.
+
+In this instance the code comes directly from ISA v2.07, including the
+cmp, but cmpd is correct. Backport to stable so that new toolchains can
+build old kernels.
+
+Fixes: 948cf67c4726 ("powerpc: Add NAP mode support on Power7 in HV mode")
+Cc: stable@vger.kernel.org # v3.0
+Reviewed-by: Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>
+Signed-off-by: Segher Boessenkool <segher@kernel.crashing.org>
+Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
+(cherry picked from commit 80f23935cadb1c654e81951f5a8b7ceae0acc1b4)
+Signed-off-by: Joel Stanley <joel@jms.id.au>
+---
+ arch/powerpc/kernel/idle_power7.S | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/powerpc/kernel/idle_power7.S b/arch/powerpc/kernel/idle_power7.S
+index 112ccf497562..73f638789a38 100644
+--- a/arch/powerpc/kernel/idle_power7.S
++++ b/arch/powerpc/kernel/idle_power7.S
+@@ -44,7 +44,7 @@
+ std r0,0(r1); \
+ ptesync; \
+ ld r0,0(r1); \
+-1: cmp cr0,r0,r0; \
++1: cmpd cr0,r0,r0; \
+ bne 1b; \
+ IDLE_INST; \
+ b .
+--
+2.11.0
+
diff --git a/openpower/linux/0012-drivers-gpu-drm-ast-Fix-infinite-loop-if-read-fails.patch b/openpower/linux/0012-drivers-gpu-drm-ast-Fix-infinite-loop-if-read-fails.patch
new file mode 100644
index 0000000..b6011c7
--- /dev/null
+++ b/openpower/linux/0012-drivers-gpu-drm-ast-Fix-infinite-loop-if-read-fails.patch
@@ -0,0 +1,49 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Russell Currey <ruscur@russell.cc>
+Date: Thu, 15 Dec 2016 16:12:41 +1100
+Subject: [PATCH 12/13] drivers/gpu/drm/ast: Fix infinite loop if read fails
+
+ast_get_dram_info() configures a window in order to access BMC memory.
+A BMC register can be configured to disallow this, and if so, causes
+an infinite loop in the ast driver which renders the system unusable.
+
+Fix this by erroring out if an error is detected. On powerpc systems with
+EEH, this leads to the device being fenced and the system continuing to
+operate.
+
+Cc: <stable@vger.kernel.org> # 3.10+
+Signed-off-by: Russell Currey <ruscur@russell.cc>
+Reviewed-by: Joel Stanley <joel@jms.id.au>
+Signed-off-by: Joel Stanley <joel@jms.id.au>
+---
+ drivers/gpu/drm/ast/ast_main.c | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/gpu/drm/ast/ast_main.c b/drivers/gpu/drm/ast/ast_main.c
+index e0b4586a26fd..9b8f0b975ca6 100644
+--- a/drivers/gpu/drm/ast/ast_main.c
++++ b/drivers/gpu/drm/ast/ast_main.c
+@@ -223,7 +223,8 @@ static int ast_get_dram_info(struct drm_device *dev)
+ ast_write32(ast, 0x10000, 0xfc600309);
+
+ do {
+- ;
++ if (pci_channel_offline(dev->pdev))
++ return -EIO;
+ } while (ast_read32(ast, 0x10000) != 0x01);
+ data = ast_read32(ast, 0x10004);
+
+@@ -429,7 +430,9 @@ int ast_driver_load(struct drm_device *dev, unsigned long flags)
+ ast_detect_chip(dev, &need_post);
+
+ if (ast->chip != AST1180) {
+- ast_get_dram_info(dev);
++ ret = ast_get_dram_info(dev);
++ if (ret)
++ goto out_free;
+ ast->vram_size = ast_get_vram_info(dev);
+ DRM_INFO("dram %d %d %d %08x\n", ast->mclk, ast->dram_type, ast->dram_bus_width, ast->vram_size);
+ }
+--
+2.11.0
+
diff --git a/openpower/linux/0013-Release-4.4.39-openpower1.patch b/openpower/linux/0013-Release-4.4.39-openpower1.patch
new file mode 100644
index 0000000..1ae0420
--- /dev/null
+++ b/openpower/linux/0013-Release-4.4.39-openpower1.patch
@@ -0,0 +1,34 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Joel Stanley <joel@jms.id.au>
+Date: Wed, 14 Dec 2016 13:20:09 +1030
+Subject: [PATCH 13/13] Release 4.4.39-openpower1
+
+ - Add "drivers/gpu/drm/ast: Fix infinite loop if read fails" to avoid
+ hanging when probing the the Aspeed graphics device. This is queued in
+ drm-misc-fixes[1]
+
+ - Move to latest upstream stable release 4.4.39
+
+[1] https://patchwork.kernel.org/patch/9477147/
+
+Signed-off-by: Joel Stanley <joel@jms.id.au>
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 88d26a632bef..f10041067025 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,7 +1,7 @@
+ VERSION = 4
+ PATCHLEVEL = 4
+ SUBLEVEL = 39
+-EXTRAVERSION =
++EXTRAVERSION = -openpower1
+ NAME = Blurry Fish Butt
+
+ # *DOCUMENTATION*
+--
+2.11.0
+
diff --git a/openpower/package/Config.in b/openpower/package/Config.in
index cbeae17..2f91c56 100755
--- a/openpower/package/Config.in
+++ b/openpower/package/Config.in
@@ -1,21 +1,21 @@
-source "$BR2_EXTERNAL/package/openpower-ffs/Config.in"
-source "$BR2_EXTERNAL/package/hostboot/Config.in"
-source "$BR2_EXTERNAL/package/hostboot-binaries/Config.in"
-source "$BR2_EXTERNAL/package/openpower-mrw/Config.in"
-source "$BR2_EXTERNAL/package/common-p8-xml/Config.in"
-source "$BR2_EXTERNAL/package/palmetto-xml/Config.in"
-source "$BR2_EXTERNAL/package/habanero-xml/Config.in"
-source "$BR2_EXTERNAL/package/firestone-xml/Config.in"
-source "$BR2_EXTERNAL/package/garrison-xml/Config.in"
-source "$BR2_EXTERNAL/package/barreleye-xml/Config.in"
-source "$BR2_EXTERNAL/package/openpower-pnor/Config.in"
-source "$BR2_EXTERNAL/package/petitboot/Config.in"
-source "$BR2_EXTERNAL/package/p8-pore-binutils/Config.in"
-source "$BR2_EXTERNAL/package/occ/Config.in"
-source "$BR2_EXTERNAL/package/capp-ucode/Config.in"
-source "$BR2_EXTERNAL/package/skiboot/Config.in"
-source "$BR2_EXTERNAL/package/libflash/Config.in"
-source "$BR2_EXTERNAL/package/loadkeys/Config.in"
-source "$BR2_EXTERNAL/package/witherspoon-xml/Config.in"
-source "$BR2_EXTERNAL/package/ppe42-binutils/Config.in"
-source "$BR2_EXTERNAL/package/ppe42-gcc/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/openpower-ffs/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/hostboot/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/hostboot-binaries/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/openpower-mrw/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/common-p8-xml/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/palmetto-xml/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/habanero-xml/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/firestone-xml/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/garrison-xml/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/barreleye-xml/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/openpower-pnor/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/petitboot/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/p8-pore-binutils/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/occ/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/capp-ucode/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/skiboot/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/libflash/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/loadkeys/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/witherspoon-xml/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/ppe42-binutils/Config.in"
+source "$BR2_EXTERNAL_OP_BUILD_PATH/package/ppe42-gcc/Config.in"
diff --git a/openpower/package/hostboot/hostboot.mk b/openpower/package/hostboot/hostboot.mk
index 8567eec..161009a 100644
--- a/openpower/package/hostboot/hostboot.mk
+++ b/openpower/package/hostboot/hostboot.mk
@@ -4,7 +4,7 @@
#
################################################################################
HOSTBOOT_VERSION_BRANCH_MASTER_P8 ?= e28b28fa9995ab3039b44f2c200fdbbc58313677
-HOSTBOOT_VERSION_BRANCH_MASTER ?= ff34b02d569f9c45bcb5a3832fdcd7f12ef07519
+HOSTBOOT_VERSION_BRANCH_MASTER ?= abc4a878dc90b34f48ec66554776717490fd2efb
HOSTBOOT_VERSION ?= $(if $(BR2_OPENPOWER_POWER9),$(HOSTBOOT_VERSION_BRANCH_MASTER),$(HOSTBOOT_VERSION_BRANCH_MASTER_P8))
HOSTBOOT_SITE ?= $(call github,open-power,hostboot,$(HOSTBOOT_VERSION))
@@ -16,21 +16,21 @@
HOSTBOOT_INSTALL_TARGET = NO
HOSTBOOT_ENV_VARS=$(TARGET_MAKE_ENV) \
- CONFIG_FILE=$(BR2_EXTERNAL)/configs/hostboot/$(BR2_HOSTBOOT_CONFIG_FILE) \
+ CONFIG_FILE=$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/hostboot/$(BR2_HOSTBOOT_CONFIG_FILE) \
OPENPOWER_BUILD=1 CROSS_PREFIX=$(TARGET_CROSS) HOST_PREFIX="" HOST_BINUTILS_DIR=$(HOST_BINUTILS_DIR) \
HOSTBOOT_VERSION=`cat $(HOSTBOOT_VERSION_FILE)`
define HOSTBOOT_APPLY_PATCHES
if [ "$(BR2_OPENPOWER_POWER9)" == "y" ]; then \
- $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL)/package/hostboot/p9Patches \*.patch; \
- if [ -d $(BR2_EXTERNAL)/custom/patches/hostboot/p9Patches ]; then \
- $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL)/custom/patches/hostboot/p9Patches \*.patch; \
+ $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL_OP_BUILD_PATH)/package/hostboot/p9Patches \*.patch; \
+ if [ -d $(BR2_EXTERNAL_OP_BUILD_PATH)/custom/patches/hostboot/p9Patches ]; then \
+ $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL_OP_BUILD_PATH)/custom/patches/hostboot/p9Patches \*.patch; \
fi; \
fi; \
if [ "$(BR2_OPENPOWER_POWER8)" == "y" ]; then \
- $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL)/package/hostboot/p8Patches \*.patch; \
- if [ -d $(BR2_EXTERNAL)/custom/patches/hostboot/p8Patches ]; then \
- $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL)/custom/patches/hostboot/p8Patches \*.patch; \
+ $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL_OP_BUILD_PATH)/package/hostboot/p8Patches \*.patch; \
+ if [ -d $(BR2_EXTERNAL_OP_BUILD_PATH)/custom/patches/hostboot/p8Patches ]; then \
+ $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL_OP_BUILD_PATH)/custom/patches/hostboot/p8Patches \*.patch; \
fi; \
fi;
endef
diff --git a/openpower/package/hostboot/p9Patches/hostboot-0004-Include-pvpd-header-file-when-reading-from-pnor.patch b/openpower/package/hostboot/p9Patches/hostboot-0004-Include-pvpd-header-file-when-reading-from-pnor.patch
deleted file mode 100644
index 3d4ae13..0000000
--- a/openpower/package/hostboot/p9Patches/hostboot-0004-Include-pvpd-header-file-when-reading-from-pnor.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 736a9f4abae56b795754d2e41d96a20ebcade574 Mon Sep 17 00:00:00 2001
-From: Prachi Gupta <pragupta@us.ibm.com>
-Date: Thu, 17 Nov 2016 22:14:58 -0600
-Subject: [PATCH] Include pvpd header file when reading from pnor in dvpd.C
-
-Change-Id: Idfe1438c80d779cd6dbc0ac6f6bd8def8f64d7b7
----
- src/usr/vpd/dvpd.C | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/src/usr/vpd/dvpd.C b/src/usr/vpd/dvpd.C
-index 9ce0999..fdd25c4 100644
---- a/src/usr/vpd/dvpd.C
-+++ b/src/usr/vpd/dvpd.C
-@@ -44,7 +44,9 @@
- #include "cvpd.H"
- #include "vpd.H"
- #include <initservice/initserviceif.H>
--
-+#ifdef CONFIG_PVPD_READ_FROM_PNOR
-+#include "pvpd.H"
-+#endif
-
- // ----------------------------------------------
- // Trace definitions
---
-1.8.2.2
-
diff --git a/openpower/package/loadkeys/loadkeys.mk b/openpower/package/loadkeys/loadkeys.mk
index db6cbca..0a05026 100644
--- a/openpower/package/loadkeys/loadkeys.mk
+++ b/openpower/package/loadkeys/loadkeys.mk
@@ -20,9 +20,9 @@
endef
define LOADKEYS_POST_INSTALL
- $(INSTALL) -D -m 0755 $(BR2_EXTERNAL)/package/loadkeys/S16-keymap \
+ $(INSTALL) -D -m 0755 $(BR2_EXTERNAL_OP_BUILD_PATH)/package/loadkeys/S16-keymap \
$(TARGET_DIR)/etc/init.d/
- $(INSTALL) -D -m 0755 $(BR2_EXTERNAL)/package/loadkeys/backtab-keymap \
+ $(INSTALL) -D -m 0755 $(BR2_EXTERNAL_OP_BUILD_PATH)/package/loadkeys/backtab-keymap \
$(TARGET_DIR)/etc/kbd/config
endef
diff --git a/openpower/package/occ/occ.mk b/openpower/package/occ/occ.mk
index d10c0f5..da0352d 100644
--- a/openpower/package/occ/occ.mk
+++ b/openpower/package/occ/occ.mk
@@ -24,15 +24,15 @@
define OCC_APPLY_PATCHES
if [ "$(BR2_OPENPOWER_POWER9)" == "y" ]; then \
- $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL)/package/occ/p9Patches \*.patch; \
- if [ -d $(BR2_EXTERNAL)/custom/patches/occ/p9Patches ]; then \
- $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL)/custom/patches/occ/p9Patches \*.patch; \
+ $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL_OP_BUILD_PATH)/package/occ/p9Patches \*.patch; \
+ if [ -d $(BR2_EXTERNAL_OP_BUILD_PATH)/custom/patches/occ/p9Patches ]; then \
+ $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL_OP_BUILD_PATH)/custom/patches/occ/p9Patches \*.patch; \
fi; \
fi; \
if [ "$(BR2_OPENPOWER_POWER8)" == "y" ]; then \
- $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL)/package/occ/p8Patches \*.patch; \
- if [ -d $(BR2_EXTERNAL)/custom/patches/occ/p8Patches ]; then \
- $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL)/custom/patches/occ/p8Patches \*.patch; \
+ $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL_OP_BUILD_PATH)/package/occ/p8Patches \*.patch; \
+ if [ -d $(BR2_EXTERNAL_OP_BUILD_PATH)/custom/patches/occ/p8Patches ]; then \
+ $(APPLY_PATCHES) $(@D) $(BR2_EXTERNAL_OP_BUILD_PATH)/custom/patches/occ/p8Patches \*.patch; \
fi; \
fi;
endef
diff --git a/openpower/package/petitboot/petitboot.mk b/openpower/package/petitboot/petitboot.mk
index 2f13eb5..c39a7b8 100644
--- a/openpower/package/petitboot/petitboot.mk
+++ b/openpower/package/petitboot/petitboot.mk
@@ -4,7 +4,7 @@
#
################################################################################
-PETITBOOT_VERSION = v1.3.2
+PETITBOOT_VERSION = v1.4.0
PETITBOOT_SITE ?= $(call github,open-power,petitboot,$(PETITBOOT_VERSION))
PETITBOOT_DEPENDENCIES = ncurses udev host-bison host-flex lvm2
PETITBOOT_LICENSE = GPLv2
@@ -17,7 +17,7 @@
--localstatedir=/var \
HOST_PROG_KEXEC=/usr/sbin/kexec \
HOST_PROG_SHUTDOWN=/usr/libexec/petitboot/bb-kexec-reboot \
- $(if $(BR2_PACKAGE_BUSYBOX),--with-tftp=busybox)
+ $(if $(BR2_PACKAGE_BUSYBOX),--with-tftp=busybox --enable-busybox)
PETITBOOT_AUTORECONF_ENV += PETITBOOT_VERSION=`cat $(PETITBOOT_VERSION_FILE) | cut -d '-' -f 2-`
@@ -49,19 +49,19 @@
$(INSTALL) -D -m 0755 $(@D)/utils/hooks/90-sort-dtb \
$(TARGET_DIR)/etc/petitboot/boot.d/
- $(INSTALL) -D -m 0755 $(BR2_EXTERNAL)/package/petitboot/S14silence-console \
+ $(INSTALL) -D -m 0755 $(BR2_EXTERNAL_OP_BUILD_PATH)/package/petitboot/S14silence-console \
$(TARGET_DIR)/etc/init.d/
- $(INSTALL) -D -m 0755 $(BR2_EXTERNAL)/package/petitboot/S15pb-discover \
+ $(INSTALL) -D -m 0755 $(BR2_EXTERNAL_OP_BUILD_PATH)/package/petitboot/S15pb-discover \
$(TARGET_DIR)/etc/init.d/
- $(INSTALL) -D -m 0755 $(BR2_EXTERNAL)/package/petitboot/kexec-restart \
+ $(INSTALL) -D -m 0755 $(BR2_EXTERNAL_OP_BUILD_PATH)/package/petitboot/kexec-restart \
$(TARGET_DIR)/usr/sbin/
- $(INSTALL) -D -m 0755 $(BR2_EXTERNAL)/package/petitboot/petitboot-console-ui.rules \
+ $(INSTALL) -D -m 0755 $(BR2_EXTERNAL_OP_BUILD_PATH)/package/petitboot/petitboot-console-ui.rules \
$(TARGET_DIR)/etc/udev/rules.d/
- $(INSTALL) -D -m 0755 $(BR2_EXTERNAL)/package/petitboot/removable-event-poll.rules \
+ $(INSTALL) -D -m 0755 $(BR2_EXTERNAL_OP_BUILD_PATH)/package/petitboot/removable-event-poll.rules \
$(TARGET_DIR)/etc/udev/rules.d/
- $(INSTALL) -D -m 0755 $(BR2_EXTERNAL)/package/petitboot/63-md-raid-arrays.rules \
+ $(INSTALL) -D -m 0755 $(BR2_EXTERNAL_OP_BUILD_PATH)/package/petitboot/63-md-raid-arrays.rules \
$(TARGET_DIR)/etc/udev/rules.d/
- $(INSTALL) -D -m 0755 $(BR2_EXTERNAL)/package/petitboot/65-md-incremental.rules \
+ $(INSTALL) -D -m 0755 $(BR2_EXTERNAL_OP_BUILD_PATH)/package/petitboot/65-md-incremental.rules \
$(TARGET_DIR)/etc/udev/rules.d/
ln -sf /usr/sbin/pb-udhcpc \
diff --git a/openpower/package/pkg-versions.mk b/openpower/package/pkg-versions.mk
index 5ad1323..23ac15c 100644
--- a/openpower/package/pkg-versions.mk
+++ b/openpower/package/pkg-versions.mk
@@ -33,16 +33,16 @@
xargs echo >> $$(OPENPOWER_VERSION_DIR)/$(1).tmp_patch.txt; \
fi; \
else \
- if ls $$(BR2_EXTERNAL)/package/$(1)/*.patch 2>/dev/null; then sha512sum \
- $$(BR2_EXTERNAL)/package/$(1)/*.patch | sha512sum | \
+ if ls $$(BR2_EXTERNAL_OP_BUILD_PATH)/package/$(1)/*.patch 2>/dev/null; then sha512sum \
+ $$(BR2_EXTERNAL_OP_BUILD_PATH)/package/$(1)/*.patch | sha512sum | \
xargs echo >> $$(OPENPOWER_VERSION_DIR)/$(1).tmp_patch.txt; \
fi; \
fi
# If this is for linux, also check openpower/linux
if [ $(filter "LINUX", "$(2)") == "$(2)" ]; then \
- if ls $$(BR2_EXTERNAL)/$(1)/*.patch 2>/dev/null; then sha512sum \
- $$(BR2_EXTERNAL)/$(1)/*.patch | sha512sum | \
+ if ls $$(BR2_EXTERNAL_OP_BUILD_PATH)/$(1)/*.patch 2>/dev/null; then sha512sum \
+ $$(BR2_EXTERNAL_OP_BUILD_PATH)/$(1)/*.patch | sha512sum | \
xargs echo >> $$(OPENPOWER_VERSION_DIR)/$(1).tmp_patch.txt; \
fi; \
fi;
@@ -97,7 +97,7 @@
fi; \
fi; \
\
-cd "$$(BR2_EXTERNAL)"; git describe --all --dirty | \
+cd "$$(BR2_EXTERNAL_OP_BUILD_PATH)"; git describe --all --dirty | \
if grep -e "-dirty"; then \
echo -n "-opdirty" >> $$($(2)_VERSION_FILE); \
fi; \
@@ -170,13 +170,13 @@
if [ "$$(OPBUILD_VERSION)" != '' ]; then \
echo -n "$$(OPBUILD_VERSION)" >> $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
else \
-cd "$$(BR2_EXTERNAL)"; (git describe --tags || git log -n1 --pretty=format:'%h' || echo "unknown") \
+cd "$$(BR2_EXTERNAL_OP_BUILD_PATH)"; (git describe --tags || git log -n1 --pretty=format:'%h' || echo "unknown") \
| sed 's/\(.*\)-g\([0-9a-f]\{7\}\).*/\2/' | xargs echo -n \
>> $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
fi
# Check if op-build is dirty
-cd "$$(BR2_EXTERNAL)"; git describe --all --dirty | grep -e "-dirty" | sed 's/.*\(-dirty\)/\1/' | \
+cd "$$(BR2_EXTERNAL_OP_BUILD_PATH)"; git describe --all --dirty | grep -e "-dirty" | sed 's/.*\(-dirty\)/\1/' | \
xargs echo -n >> $$($$(UPPER_CASE_PKG)_VERSION_FILE);
# Add new line to $$($$(UPPER_CASE_PKG)_VERSION_FILE)
@@ -185,10 +185,10 @@
# Add a specific line for op-build if it has been overwritten
if [ "$$(OPBUILD_VENDOR)" != '' ]; then \
echo -n " op-build-" >> $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
-cd "$$(BR2_EXTERNAL)"; (git describe --tags || git log -n1 --pretty=format:'%h' || echo "unknown") \
+cd "$$(BR2_EXTERNAL_OP_BUILD_PATH)"; (git describe --tags || git log -n1 --pretty=format:'%h' || echo "unknown") \
| sed 's/\(.*\)-g\([0-9a-f]\{7\}\).*/\2/' | xargs echo -n \
>> $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
-cd "$$(BR2_EXTERNAL)"; git describe --all --dirty | grep -e "-dirty" | sed 's/.*\(-dirty\)/\1/' | \
+cd "$$(BR2_EXTERNAL_OP_BUILD_PATH)"; git describe --all --dirty | grep -e "-dirty" | sed 's/.*\(-dirty\)/\1/' | \
xargs echo >> $$($$(UPPER_CASE_PKG)_VERSION_FILE); \
fi
diff --git a/openpower/package/ppe42-gcc/ppe42-gcc.mk b/openpower/package/ppe42-gcc/ppe42-gcc.mk
index ad8a52e..2ebdf5b 100644
--- a/openpower/package/ppe42-gcc/ppe42-gcc.mk
+++ b/openpower/package/ppe42-gcc/ppe42-gcc.mk
@@ -4,7 +4,7 @@
#
################################################################################
-PPE42_GCC_VERSION ?= 72beec1539befc791ffe217f1084ee9eab7df4e5
+PPE42_GCC_VERSION ?= d8a1bac8634033a3edd4e9a22455f97318718f43
PPE42_GCC_SITE ?= $(call github,open-power,ppe42-gcc,$(PPE42_GCC_VERSION))
PPE42_GCC_LICENSE = GPLv3+
diff --git a/openpower/package/skiboot/Config.in b/openpower/package/skiboot/Config.in
index 1691c0f..9a9d60e 100644
--- a/openpower/package/skiboot/Config.in
+++ b/openpower/package/skiboot/Config.in
@@ -31,7 +31,7 @@
config BR2_SKIBOOT_VERSION
string
- default "skiboot-5.4.0" if BR2_SKIBOOT_LATEST_VERSION
+ default "skiboot-5.4.2" if BR2_SKIBOOT_LATEST_VERSION
default BR2_SKIBOOT_CUSTOM_VERSION_VALUE \
if BR2_SKIBOOT_CUSTOM_VERSION