From f93003dd8cf24bd689a7cf24407273b54b9994d4 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Tue, 23 Mar 2021 22:59:39 -0700 Subject: meta-google: gbmc-kcs-config: Add package Change-Id: I0e68a7520191554680c94d8e3b8bc98f368ac71b Signed-off-by: William A. Kennington III --- meta-google/recipes-google/kcs/gbmc-kcs-config.bb | 46 ++++++++++++++++++++++ .../images/obmc-phosphor-image.bbappend | 2 + 2 files changed, 48 insertions(+) create mode 100644 meta-google/recipes-google/kcs/gbmc-kcs-config.bb diff --git a/meta-google/recipes-google/kcs/gbmc-kcs-config.bb b/meta-google/recipes-google/kcs/gbmc-kcs-config.bb new file mode 100644 index 000000000..ca7110660 --- /dev/null +++ b/meta-google/recipes-google/kcs/gbmc-kcs-config.bb @@ -0,0 +1,46 @@ +SUMMARY = "Configures KCS for a gBMC system" +PR = "r1" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +inherit systemd + +S = "${WORKDIR}" + +PROVIDES += "virtual-obmc-host-ipmi-hw" +RPROVIDES_${PN} += "virtual-obmc-host-ipmi-hw" + +FILES_${PN} += "${systemd_system_unitdir}" +RDEPENDS_${PN} += "google-kcsbridge" + +GBMC_KCS_DEV ?= "" + +def systemd_escape_char(c): + return '\\x{:x}'.format(ord(c)) + +def systemd_escape(unit): + import string + ret = '' + if len(unit) > 0 and unit[0] == '.': + ret += systemd_escape_char(unit[0]) + unit = unit[1:] + for c in unit: + if c == '/': + ret += '-' + elif c not in {*string.ascii_letters, *string.digits, ':', '_', '.'}: + ret += systemd_escape_char(c) + else: + ret += c + return ret + +do_install_append() { + if [ -z '${GBMC_KCS_DEV}' ]; then + echo "Missing GBMC_KCS_DEV" >&2 + exit 1 + fi + + wantdir=${D}${systemd_system_unitdir}/multi-user.target.wants + install -d -m0755 $wantdir + inst="${@systemd_escape(GBMC_KCS_DEV)}" + ln -sv ../kcsbridge@.service $wantdir/kcsbridge@$inst.service +} diff --git a/meta-google/recipes-phosphor/images/obmc-phosphor-image.bbappend b/meta-google/recipes-phosphor/images/obmc-phosphor-image.bbappend index acccde532..0dc37fd4e 100644 --- a/meta-google/recipes-phosphor/images/obmc-phosphor-image.bbappend +++ b/meta-google/recipes-phosphor/images/obmc-phosphor-image.bbappend @@ -11,3 +11,5 @@ OBMC_IMAGE_EXTRA_INSTALL_append_gbmc = \ '${@"" if not d.getVar("GBMC_NCSI_IF_NAME") else " gbmc-ncsi-config"}' OBMC_IMAGE_EXTRA_INSTALL_append_gbmc = \ '${@"" if not d.getVar("GBMC_MAC_EEPROM_OF_NAME") else " gbmc-mac-config"}' +OBMC_IMAGE_EXTRA_INSTALL_append_gbmc = \ + '${@"" if not d.getVar("GBMC_KCS_DEV") else " gbmc-kcs-config"}' -- cgit v1.2.3