Skip to content

Commit 267495c

Browse files
committed
Create New Repository To Support Swift Configuration
This commit adds the basic functionality of this swift-config-wrapper repository to build an image for the Swift configuration.
1 parent 22ce37b commit 267495c

File tree

5 files changed

+203
-0
lines changed

5 files changed

+203
-0
lines changed

.gitignore

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Ignore op-build directory
2+
op-build*

README.md

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# swift-config-wrapper
2+
3+
**This repository has the latest configuration files necessary to build OpenPower code for a Swift system:**
4+
* swift_defconfig (used by 'op-build' repo)
5+
* swift.config (used by 'hostboot' repo)
6+
7+
## Building a Swift Image
8+
9+
To build an image for a Swift system:
10+
11+
```
12+
git clone --recursive https://github.com/ibm-op-release/swift-config-wrapper.git
13+
cd swift-config-wrapper
14+
./setup_swift
15+
cd op-build
16+
. op-build-env && op-build swift_defconfig && op-build
17+
```
18+
19+
20+
> See https://github.com/open-power/op-build/blob/master/README.md for more information on building an op-build repo.
21+

setup_swift

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#!/bin/bash
2+
3+
echo "Cloning open-power/op-build and setting up Swift Config Files ...";
4+
5+
6+
# Exit from the script on any fail
7+
set -e
8+
9+
# Clone open-power/op-build. Using master branch for now
10+
git clone --recursive https://github.com/open-power/op-build.git
11+
12+
# Add symbolic links inside op-build for the swift config files
13+
ln -s ../../../swift_defconfig -t op-build/openpower/configs/
14+
ln -s ../../../../swift.config -t op-build/openpower/configs/hostboot/
15+

swift.config

+94
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
## Set this to pull in Axone only code (such as P9A/EXP MSS code)
2+
set AXONE
3+
4+
#Try to keep a list of things this does
5+
## - skipping setting voltages in istep 8.12, nothing on other side of AVSbus
6+
## in simics currently.
7+
set AXONE_BRING_UP
8+
9+
# The BMC MBOX Protocol is used to access PNOR
10+
unset SFC_IS_AST2500
11+
unset SFC_IS_AST2400
12+
set PNORDD_IS_BMCMBOX
13+
unset PNORDD_IS_SFC
14+
unset BMC_DOES_SFC_INIT
15+
unset SFC_IS_IBM_DPSS
16+
set ALLOW_MICRON_PNOR
17+
set ALLOW_MACRONIX_PNOR
18+
19+
20+
# Force DJVPD read/write to use EEPROM layer instead of old-style VPD cache
21+
set DJVPD_READ_FROM_HW
22+
set DJVPD_WRITE_TO_HW
23+
unset DJVPD_READ_FROM_PNOR
24+
unset DJVPD_WRITE_TO_PNOR
25+
26+
# Force MEMVPD read/write to EEPROM layer instead of old-style VPD cache
27+
# NOTE: The above line is the ideal answer, but we need some hostboot changes
28+
# to make that work first. So reversed the settings for now.
29+
unset MEMVPD_READ_FROM_HW
30+
unset MEMVPD_WRITE_TO_HW
31+
set MEMVPD_READ_FROM_PNOR
32+
set MEMVPD_WRITE_TO_PNOR
33+
34+
# Force MVPD read/write to use EEPROM layer instead of old-style VPD cache
35+
set MVPD_READ_FROM_HW
36+
set MVPD_WRITE_TO_HW
37+
unset MVPD_READ_FROM_PNOR
38+
unset MVPD_WRITE_TO_PNOR
39+
40+
# Other VPD options.
41+
set PVPD_READ_FROM_HW
42+
set PVPD_WRITE_TO_HW
43+
unset PVPD_READ_FROM_PNOR
44+
unset PVPD_WRITE_TO_PNOR
45+
unset CDIMM_FORMAT_FOR_CVPD
46+
47+
#enable EEPROM caching
48+
set SUPPORT_EEPROM_CACHING
49+
50+
# gpio config
51+
set GPIODD
52+
unset PALMETTO_VDDR
53+
54+
# Enable Consecutive SBE Updates
55+
set SBE_UPDATE_CONSECUTIVE
56+
unset SBE_UPDATE_INDEPENDENT
57+
unset SBE_UPDATE_SEQUENTIAL
58+
unset SBE_UPDATE_SIMULTANEOUS
59+
unset NO_SBE_UPDATES
60+
61+
unset PCIE_HOTPLUG_CONTROLLER
62+
63+
# turn on console output
64+
set CONSOLE
65+
set BMC_AST2500
66+
67+
unset DISABLE_HOSTBOOT_RUNTIME
68+
69+
# Compile in hostboot runtime PRD
70+
set HBRT_PRD
71+
72+
# Compile in hb rt HTMGT : Load/Start OCC
73+
set HTMGT
74+
set START_OCC_DURING_BOOT
75+
unset CONSOLE_OUTPUT_OCC_COMM
76+
77+
#PNOR flags
78+
unset PNOR_TWO_SIDE_SUPPORT
79+
80+
set BMC_BT_LPC_IPMI
81+
82+
# Enable Checkstop Analysis for both
83+
# Runtime and IPLtime scenarios
84+
# Temporarily unset for Bringup
85+
unset ENABLE_CHECKSTOP_ANALYSIS
86+
unset IPLTIME_CHECKSTOP_ANALYSIS
87+
88+
# set for trace debug to console
89+
unset CONSOLE_OUTPUT_TRACE
90+
set CONSOLE_OUTPUT_FFDCDISPLAY
91+
92+
# Terminate Hostboot when errors occur in manufacturing mode
93+
# (relies on BMC to not trigger reboot)
94+
unset HANG_ON_MFG_SRC_TERM

swift_defconfig

+71
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
BR2_powerpc64le=y
2+
BR2_powerpc_power8=y
3+
BR2_BINUTILS_EXTRA_CONFIG_OPTIONS="--enable-targets=powerpc64-linux"
4+
BR2_GCC_VERSION_6_X=y
5+
BR2_EXTRA_GCC_CONFIG_OPTIONS="--enable-targets=powerpc64-linux --disable-libsanitizer"
6+
BR2_TOOLCHAIN_BUILDROOT_CXX=y
7+
BR2_TARGET_GENERIC_HOSTNAME="skiroot"
8+
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
9+
BR2_ROOTFS_DEVICE_TABLE="../openpower/device_table.txt"
10+
BR2_TARGET_GENERIC_GETTY_PORT="hvc0"
11+
BR2_ENABLE_LOCALE_WHITELIST="C de en es fr it ja ko pt_BR ru zh_CN zh_TW"
12+
BR2_GENERATE_LOCALE="en_US.UTF-8 de_DE.UTF-8 es_ES.UTF-8 fr_FR.UTF-8 it_IT.UTF-8 ja_JP.UTF-8 ko_KR.UTF-8 pt_BR.UTF-8 ru_RU.UTF-8 zh_CN.UTF-8 zh_TW.UTF-8"
13+
BR2_SYSTEM_ENABLE_NLS=y
14+
BR2_ROOTFS_USERS_TABLES="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/users-table"
15+
BR2_ROOTFS_OVERLAY="../openpower/overlay"
16+
BR2_ROOTFS_POST_BUILD_SCRIPT="../openpower/scripts/fixup-target-var ../openpower/scripts/firmware-whitelist"
17+
BR2_LINUX_KERNEL=y
18+
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
19+
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.0.9"
20+
BR2_LINUX_KERNEL_PATCH="$(BR2_EXTERNAL_OP_BUILD_PATH)/linux"
21+
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
22+
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/linux/skiroot_defconfig"
23+
BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y
24+
BR2_LINUX_KERNEL_XZ=y
25+
BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_OP_BUILD_PATH)/configs/busybox.fragment"
26+
BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
27+
BR2_PACKAGE_LINUX_FIRMWARE=y
28+
BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
29+
BR2_PACKAGE_LINUX_FIRMWARE_CXGB4_T4=y
30+
BR2_PACKAGE_IPMITOOL=y
31+
BR2_PACKAGE_IPMITOOL_USB=y
32+
BR2_PACKAGE_MDADM=y
33+
BR2_PACKAGE_NCURSES_WCHAR=y
34+
BR2_PACKAGE_DROPBEAR=y
35+
# BR2_PACKAGE_DROPBEAR_SERVER is not set
36+
BR2_PACKAGE_ETHTOOL=y
37+
BR2_PACKAGE_LRZSZ=y
38+
BR2_PACKAGE_NETCAT=y
39+
BR2_PACKAGE_RSYNC=y
40+
BR2_PACKAGE_SUDO=y
41+
BR2_PACKAGE_UTIL_LINUX_AGETTY=y
42+
BR2_TARGET_ROOTFS_CPIO_XZ=y
43+
BR2_TARGET_ROOTFS_INITRAMFS=y
44+
BR2_OPENPOWER_PLATFORM=y
45+
BR2_OPENPOWER_POWER9=y
46+
BR2_HOSTBOOT_CONFIG_FILE="swift.config"
47+
BR2_OPENPOWER_MACHINE_XML_GITHUB_PROJECT=n
48+
BR2_OPENPOWER_MACHINE_XML_GITHUB_PROJECT_VALUE="swift-xml"
49+
BR2_OPENPOWER_MACHINE_XML_CUSTOM_GIT=y
50+
BR2_OPENPOWER_MACHINE_XML_CUSTOM_GIT_VALUE="[email protected]:open-power/swift-xml.git"
51+
BR2_OPENPOWER_MACHINE_XML_VERSION="93f44dc5355086a0861d9cacf39ea0d1fdccbd3a"
52+
BR2_OPENPOWER_MACHINE_XML_FILENAME="swift.xml"
53+
BR2_OPENPOWER_SYSTEM_XML_FILENAME="SWIFT_hb.system.xml"
54+
BR2_OPENPOWER_MRW_XML_FILENAME="SWIFT_hb.mrw.xml"
55+
BR2_OPENPOWER_BIOS_XML_FILENAME="SWIFT_bios.xml"
56+
BR2_OPENPOWER_PNOR_XML_LAYOUT_FILENAME="axonePnorLayout_64.xml"
57+
BR2_OPENPOWER_CONFIG_NAME="swift"
58+
BR2_OPENPOWER_PNOR_FILENAME="swift.pnor"
59+
BR2_HOSTBOOT_BINARY_SBE_FILENAME="axone_sbe.img.ecc"
60+
BR2_HOSTBOOT_BINARY_SBEC_FILENAME="centaur_sbec_pad.img.ecc"
61+
#BR2_HOSTBOOT_BINARY_WINK_FILENAME="p9a.ref_image.hdr.bin.ecc"
62+
BR2_IMA_CATALOG_FILENAME="ima_catalog.bin"
63+
BR2_OPENPOWER_TARGETING_BIN_FILENAME="SWIFT_HB.targeting.bin"
64+
BR2_OPENPOWER_TARGETING_ECC_FILENAME="SWIFT_HB.targeting.bin.ecc"
65+
BR2_BUILD_PNOR_SQUASHFS=y
66+
BR2_PACKAGE_PETITBOOT=y
67+
BR2_PACKAGE_PETITBOOT_MTD=y
68+
BR2_OCC_GPU_BIN_BUILD=y
69+
BR2_CAPP_UCODE_BIN_FILENAME="cappucode.bin"
70+
BR2_PACKAGE_LOADKEYS=y
71+
BR2_IMA_CATALOG_DTS="POWER9"

0 commit comments

Comments
 (0)