diff options
author | Lancelot Kao <lancelot.kao@fii-usa.com> | 2020-09-22 22:53:57 +0300 |
---|---|---|
committer | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2021-01-30 19:01:24 +0300 |
commit | 31c4566d2fa07d0e7e1165ca0097b1d58d3e5c35 (patch) | |
tree | 323e0fc2fc8ee93fa789e6441ae3e5bff7e2c432 | |
parent | b0f233179a0ebabc0c40d4b0eaecdddf74d1a709 (diff) | |
download | openbmc-31c4566d2fa07d0e7e1165ca0097b1d58d3e5c35.tar.xz |
meta-fii/meta-kudo: Add new meta layer for Fii Kudo project
First drop for the meta-kudo layer, initial machine configuration
to supports Nuvoton npcm730 chip and the Ampere ARM system
Tested-by:
1. Load image on the Nuvoton RunBMC CRB
2. Use ipmitool to test the command under BMC console
a. ipmitool mc info
b. ipmitool sdr
c. ipmitool lan print
d. ipmitool channel info 1
e. ipmitool user list 1
f. ipmitool chassis status
g. ipmitool raw 0x06 0x01
h. ipmitool power status
Signed-off-by: Lancelot Kao <lancelot.kao@fii-usa.com>
Change-Id: Ic34b77affe0c08e84762ef795f9f06011bd269ce
17 files changed, 279 insertions, 0 deletions
diff --git a/meta-fii/README.md b/meta-fii/README.md index e0f534465..ec520aa6b 100644 --- a/meta-fii/README.md +++ b/meta-fii/README.md @@ -4,3 +4,4 @@ Repository for storing metadata for OpenBMC Fii USA crop ├── meta-fii + └── meta-kudo diff --git a/meta-fii/meta-kudo/conf/bblayers.conf.sample b/meta-fii/meta-kudo/conf/bblayers.conf.sample new file mode 100644 index 000000000..9fe42076b --- /dev/null +++ b/meta-fii/meta-kudo/conf/bblayers.conf.sample @@ -0,0 +1,27 @@ +# LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf +# changes incompatibly +LCONF_VERSION = "8" + +BBPATH = "${TOPDIR}" +BBFILES ?= "" + +BBLAYERS ?= " \ + ##OEROOT##/meta \ + ##OEROOT##/meta-openembedded/meta-oe \ + ##OEROOT##/meta-openembedded/meta-networking \ + ##OEROOT##/meta-openembedded/meta-python \ + ##OEROOT##/meta-phosphor \ + ##OEROOT##/meta-nuvoton \ + ##OEROOT##/meta-google \ + ##OEROOT##/meta-fii/meta-kudo \ + " +BBLAYERS_NON_REMOVABLE ?= " \ + ##OEROOT##/meta \ + ##OEROOT##/meta-openembedded/meta-oe \ + ##OEROOT##/meta-openembedded/meta-networking \ + ##OEROOT##/meta-openembedded/meta-python \ + ##OEROOT##/meta-phosphor \ + ##OEROOT##/meta-nuvoton \ + ##OEROOT##/meta-google \ + ##OEROOT##/meta-fii/meta-kudo \ + " diff --git a/meta-fii/meta-kudo/conf/conf-notes.txt b/meta-fii/meta-kudo/conf/conf-notes.txt new file mode 100644 index 000000000..9b3c01a55 --- /dev/null +++ b/meta-fii/meta-kudo/conf/conf-notes.txt @@ -0,0 +1,2 @@ +Common targets are: + obmc-phosphor-image diff --git a/meta-fii/meta-kudo/conf/distro/openbmc-kudo.conf b/meta-fii/meta-kudo/conf/distro/openbmc-kudo.conf new file mode 100644 index 000000000..047091353 --- /dev/null +++ b/meta-fii/meta-kudo/conf/distro/openbmc-kudo.conf @@ -0,0 +1,4 @@ +require conf/distro/openbmc-phosphor.conf + +DISTRO = "openbmc-kudo" + diff --git a/meta-fii/meta-kudo/conf/layer.conf b/meta-fii/meta-kudo/conf/layer.conf new file mode 100644 index 000000000..e5a3c34af --- /dev/null +++ b/meta-fii/meta-kudo/conf/layer.conf @@ -0,0 +1,10 @@ +# We have a conf and classes directory, add to BBPATH +BBPATH .= ":${LAYERDIR}" + +# We have recipes-* directories, add to BBFILES +BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \ + ${LAYERDIR}/recipes-*/*/*.bbappend" + +BBFILE_COLLECTIONS += "kudo-layer" +BBFILE_PATTERN_kudo-layer = "^${LAYERDIR}/" +LAYERSERIES_COMPAT_kudo-layer = "warrior zeus dunfell" diff --git a/meta-fii/meta-kudo/conf/local.conf.sample b/meta-fii/meta-kudo/conf/local.conf.sample new file mode 100644 index 000000000..8f6659537 --- /dev/null +++ b/meta-fii/meta-kudo/conf/local.conf.sample @@ -0,0 +1,18 @@ +MACHINE ??= "kudo" +DISTRO ?= "openbmc-kudo" +PACKAGE_CLASSES ?= "package_rpm" +SANITY_TESTED_DISTROS_append ?= " *" +EXTRA_IMAGE_FEATURES = "debug-tweaks" +USER_CLASSES ?= "buildstats image-mklibs image-prelink" +PATCHRESOLVE = "noop" +BB_DISKMON_DIRS = "\ + STOPTASKS,${TMPDIR},1G,100K \ + STOPTASKS,${DL_DIR},1G,100K \ + STOPTASKS,${SSTATE_DIR},1G,100K \ + STOPTASKS,/tmp,100M,100K \ + ABORT,${TMPDIR},100M,1K \ + ABORT,${DL_DIR},100M,1K \ + ABORT,${SSTATE_DIR},100M,1K \ + ABORT,/tmp,10M,1K" +CONF_VERSION = "1" + diff --git a/meta-fii/meta-kudo/conf/machine/kudo.conf b/meta-fii/meta-kudo/conf/machine/kudo.conf new file mode 100644 index 000000000..31036a4ff --- /dev/null +++ b/meta-fii/meta-kudo/conf/machine/kudo.conf @@ -0,0 +1,21 @@ +KMACHINE = "nuvoton" +KERNEL_DEVICETREE = "${KMACHINE}-npcm730-kudo.dtb" + +require conf/machine/include/npcm7xx.inc +require conf/machine/include/obmc-bsp-common.inc + +FLASH_SIZE = "65536" +FLASH_UBOOT_OFFSET = "0" +FLASH_KERNEL_OFFSET = "2048" +FLASH_ROFS_OFFSET = "8192" +FLASH_RWFS_OFFSET = "62464" + +UBOOT_MACHINE = "PolegSVB_config" +UBOOT_DEVICETREE = "nuvoton-npcm730-kudo" +IGPS_MACHINE = "EB" + +IMAGE_FSTYPES += " cpio.${INITRAMFS_CTYPE}.u-boot" + +VIRTUAL-RUNTIME_obmc-fan-control = "phosphor-pid-control" +PREFERRED_PROVIDER_virtual/obmc-fan-control = "phosphor-pid-control" +PREFERRED_PROVIDER_virtual/obmc-system-mgmt = "packagegroup-kudo-apps" diff --git a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-common-kudo.inc b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-common-kudo.inc new file mode 100644 index 000000000..9154bc131 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-common-kudo.inc @@ -0,0 +1,3 @@ +UBRANCH = "npcm7xx-v2019.01" +SRC_URI = "git://github.com/Nuvoton-Israel/u-boot.git;branch=${UBRANCH}" +SRCREV = "5caf59416ba1d6316dd78895e69789246a77e00a" diff --git a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-fw-utils-nuvoton/fw_env.config b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-fw-utils-nuvoton/fw_env.config new file mode 100644 index 000000000..0c384273f --- /dev/null +++ b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-fw-utils-nuvoton/fw_env.config @@ -0,0 +1,24 @@ +# Configuration file for fw_(printenv/setenv) utility. +# Up to two entries are valid, in this case the redundant +# environment sector is assumed present. +# Notice, that the "Number of sectors" is not required on NOR and SPI-dataflash. +# Futhermore, if the Flash sector size is ommitted, this value is assumed to +# be the same as the Environment size, which is valid for NOR and SPI-dataflash + +# NOR example +# MTD device name Device offset Env. size Flash sector size Number of sectors +/dev/mtd2 0x0000 0x40000 0x4000 + +# MTD SPI-dataflash example +# MTD device name Device offset Env. size Flash sector size Number of sectors +#/dev/mtd5 0x4200 0x4200 +#/dev/mtd6 0x4200 0x4200 + +# NAND example +#/dev/mtd0 0x4000 0x4000 0x20000 2 + +# Block device example +#/dev/mmcblk0 0xc0000 0x20000 + +# VFAT example +#/boot/uboot.env 0x0000 0x4000 diff --git a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-fw-utils-nuvoton_%.bbappend b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-fw-utils-nuvoton_%.bbappend new file mode 100644 index 000000000..5c56e17a0 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-fw-utils-nuvoton_%.bbappend @@ -0,0 +1,7 @@ +FILESEXTRAPATHS_prepend_kudo := "${THISDIR}/${PN}:" + +SRC_URI_append_kudo = " file://fw_env.config" + +do_install_append_kudo () { + install -m 644 ${WORKDIR}/fw_env.config ${D}${sysconfdir}/fw_env.config +} diff --git a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/fixed_phy.cfg b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/fixed_phy.cfg new file mode 100644 index 000000000..125522f84 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/fixed_phy.cfg @@ -0,0 +1,2 @@ +CONFIG_PHY_FIXED=y + diff --git a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/kudo.cfg b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/kudo.cfg new file mode 100644 index 000000000..417ffa98c --- /dev/null +++ b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/kudo.cfg @@ -0,0 +1,2 @@ +CONFIG_CMD_MII=y +CONFIG_NET_RANDOM_ETHADDR=y diff --git a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton_%.bbappend b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton_%.bbappend new file mode 100644 index 000000000..73ad51e15 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton_%.bbappend @@ -0,0 +1,10 @@ +FILESEXTRAPATHS_prepend_kudo := "${THISDIR}/u-boot-nuvoton:" + +require u-boot-common-kudo.inc + +UBOOT_MAKE_TARGET_append_kudo = " DEVICE_TREE=${UBOOT_DEVICETREE}" + +SRC_URI_append_kudo = " \ + file://fixed_phy.cfg \ + file://kudo.cfg \ + " diff --git a/meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton/kudo.cfg b/meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton/kudo.cfg new file mode 100644 index 000000000..0811dd9d9 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton/kudo.cfg @@ -0,0 +1,108 @@ +CONFIG_HWMON=y +CONFIG_SENSORS_TMP100=y +CONFIG_SENSORS_LM75=y +CONFIG_SENSORS_FAN=y +CONFIG_SENSORS_ADC128D818=y +CONFIG_SENSORS_ADM1275=y +CONFIG_SENSORS_TMP102=y +CONFIG_SENSORS_TMP421=y + +CONFIG_PMBUS=y +CONFIG_SENSORS_PMBUS=y +CONFIG_SENSORS_INA2XX=y + +CONFIG_IIO=y +CONFIG_IIO_MUX=y +CONFIG_NPCM_ADC=y +CONFIG_SENSORS_IIO_HWMON=y + +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=y +CONFIG_LEDS_GPIO=y +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_TIMER=y +CONFIG_LEDS_TRIGGER_HEARTBEAT=y +CONFIG_LEDS_TRIGGER_DEFAULT_ON=y + +CONFIG_OVERLAY_FS=y +CONFIG_SQUASHFS=y +CONFIG_SQUASHFS_XZ=y +CONFIG_JFFS2_FS=y +CONFIG_EXT4_FS=y + +CONFIG_SPI=y +CONFIG_SPI_NPCM_FIU=y +CONFIG_MTD_M25P80=y +CONFIG_SPI_NPCM_PSPI=y + +CONFIG_NET_NCSI=y + +CONFIG_EEPROM_AT24=y +CONFIG_I2C_MUX=y +CONFIG_I2C_MUX_PCA954x=y +CONFIG_I2C_SLAVE_EEPROM=y +CONFIG_GPIO_PCA953X=y +CONFIG_GPIO_PCA953X_IRQ=y +CONFIG_GPIO_PCF857X=y +CONFIG_MUX_MMIO=y +CONFIG_USB_U_ETHER=y +CONFIG_USB_F_ECM=y +CONFIG_USB_F_EEM=y +CONFIG_USB_F_SUBSET=y +CONFIG_USB_F_RNDIS=y +CONFIG_USB_F_MASS_STORAGE=y +CONFIG_USB_CONFIGFS=y +CONFIG_USB_CONFIGFS_ECM=y +CONFIG_USB_CONFIGFS_ECM_SUBSET=y +CONFIG_USB_CONFIGFS_RNDIS=y +CONFIG_USB_CONFIGFS_EEM=y +CONFIG_USB_CONFIGFS_MASS_STORAGE=y +CONFIG_USB_CONFIGFS_F_HID=y + +CONFIG_MEDIA_SUPPORT=y +CONFIG_VIDEO_NUVOTON=y +CONFIG_NPCM750_VCD=y +CONFIG_NPCM750_ECE=y +CONFIG_FORCE_MAX_ZONEORDER=12 + +CONFIG_USB_GADGET_NPCM_USB2=y + +CONFIG_NPCM7XX_PCI_MBOX=y + +CONFIG_RESET_NPCM=y + +CONFIG_I2C_SLAVE=y +CONFIG_I2C_SLAVE_MQUEUE=y +CONFIG_IPMB_DEVICE_INTERFACE=y +CONFIG_NUVOTON_JTAG=y +CONFIG_NPCM7XX_JTAG_MASTER=y + +# +# Core Netfilter Configuration +# +CONFIG_NET_INGRESS=y +CONFIG_NETFILTER=y +CONFIG_NETFILTER_ADVANCED=y +CONFIG_NETFILTER_INGRESS=y +CONFIG_NETFILTER_NETLINK=y +CONFIG_NF_CONNTRACK=y +CONFIG_NF_CONNTRACK_PROCFS=y +CONFIG_NF_CT_PROTO_DCCP=y +CONFIG_NF_CT_PROTO_SCTP=y +CONFIG_NF_CT_PROTO_UDPLITE=y +CONFIG_NF_CT_NETLINK=y +CONFIG_NETFILTER_XTABLES=y + +# +# IP: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV4=y +CONFIG_NF_REJECT_IPV4=y +CONFIG_IP_NF_IPTABLES=y +CONFIG_IP_NF_FILTER=y +CONFIG_IP_NF_TARGET_REJECT=y +CONFIG_NF_DEFRAG_IPV6=y + + +CONFIG_TCG_TPM=y +CONFIG_TCG_TIS_I2C_INFINEON=y diff --git a/meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton_%.bbappend b/meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton_%.bbappend new file mode 100644 index 000000000..5276bef59 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton_%.bbappend @@ -0,0 +1,3 @@ +FILESEXTRAPATHS_prepend_kudo := "${THISDIR}/linux-nuvoton:" + +SRC_URI_append_kudo = " file://kudo.cfg" diff --git a/meta-fii/meta-kudo/recipes-kudo/packagegroups/packagegroup-kudo-apps.bb b/meta-fii/meta-kudo/recipes-kudo/packagegroups/packagegroup-kudo-apps.bb new file mode 100644 index 000000000..be879455d --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/packagegroups/packagegroup-kudo-apps.bb @@ -0,0 +1,30 @@ +SUMMARY = "OpenBMC for KUDO system - Applications" +PR = "r1" + +inherit packagegroup + +PROVIDES = "${PACKAGES}" +PACKAGES = " \ + ${PN}-kudo-system \ + ${PN}-kudo-common-utils \ + " + +PROVIDES += "virtual/obmc-system-mgmt" + +RPROVIDES_${PN}-kudo-system += "virtual-obmc-system-mgmt" + +SUMMARY_${PN}-kudo-system = "KUDO System" +RDEPENDS_${PN}-kudo-system = " \ + google-ipmi-sys \ + google-ipmi-i2c \ + " + +SUMMARY_${PN}-kudo-common-utils = "KUDO common utils" +RDEPENDS_${PN}-kudo-common-utils = " \ + ipmitool \ + phosphor-webui \ + phosphor-host-postd \ + loadsvf \ + obmc-console \ + phosphor-sel-logger \ + " diff --git a/meta-fii/meta-kudo/recipes-phosphor/image/obmc-phosphor-image.bbappend b/meta-fii/meta-kudo/recipes-phosphor/image/obmc-phosphor-image.bbappend new file mode 100644 index 000000000..0efccea65 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-phosphor/image/obmc-phosphor-image.bbappend @@ -0,0 +1,7 @@ +OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " ipmitool" +OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " ethtool" +OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " google-ipmi-sys" +OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " google-ipmi-i2c" +OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " phosphor-ipmi-blobs" +OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " phosphor-ipmi-ethstats" +OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " phosphor-ipmi-flash" |