diff options
author | Grant Williams <grant.williams@fii-na.com> | 2022-04-29 22:56:02 +0300 |
---|---|---|
committer | Vivekanand Veeracholan <vveerach@google.com> | 2022-09-21 04:17:17 +0300 |
commit | 59d2f61eb93221b8151036192dc8b65b1df79a4a (patch) | |
tree | 593e1e9b53d4b896116c8a0b6e63260c38ca76a1 /meta-fii | |
parent | bcccb4af1393a25bf02bf2753e233e7016e5138d (diff) | |
download | openbmc-59d2f61eb93221b8151036192dc8b65b1df79a4a.tar.xz |
meta-fii: meta-mori: add phosphor console package
Add phosphor console mori_uart_mux_ctrl script,obmc-console service
files, and .conf files
- Added console feature for host & mpro
- Added mori_uart_mux_ctrl.sh to set gpio S0_UART0_BMC_SEL and
S0_UART1_BMC_SEL allowing routing between host & mpro consoles
to bmc
- Added host_console_uart_configuration.service so that it runs
before obmc-console. Set it to require multi-user.target, which
is also required by obmc-console.
Signed-off-by: Grant Williams <grant.williams@fii-na.com>
Change-Id: I5d7002c20c5d1b87fa5c78e69b0885fc635c6145
Diffstat (limited to 'meta-fii')
8 files changed, 75 insertions, 6 deletions
diff --git a/meta-fii/meta-mori/recipes-mori/mori-sys-utility/mori-boot/init_once.sh b/meta-fii/meta-mori/recipes-mori/mori-sys-utility/mori-boot/init_once.sh index 1c59aa00f6..79c84d2638 100644 --- a/meta-fii/meta-mori/recipes-mori/mori-sys-utility/mori-boot/init_once.sh +++ b/meta-fii/meta-mori/recipes-mori/mori-sys-utility/mori-boot/init_once.sh @@ -12,12 +12,6 @@ function set_mux_default(){ set_gpio_ctrl CPU_EEPROM_SEL 1 # BMC_CPU_PMBUS_SEL set_gpio_ctrl CPU_VRD_SEL 1 - - # CPU Host UART Mux - set_gpio_ctrl S0_UART0_BMC_SEL 0 - # SCP Host UART Mux - set_gpio_ctrl S0_UART1_BMC_SEL 0 - # LED control # LED_BMC_LIVE set_gpio_ctrl LED_BMC_ALIVE 1 diff --git a/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/host_console_uart_config.service b/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/host_console_uart_config.service new file mode 100644 index 0000000000..8b5cbeafd4 --- /dev/null +++ b/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/host_console_uart_config.service @@ -0,0 +1,10 @@ +[Unit] +Description = UART Activation Sequence +Before=host-powerctrl.service + +[Service] +ExecStart=/usr/libexec/obmc-console/mori_uart_mux_ctrl.sh +Type=oneshot + +[Install] +RequiredBy=multi-user.target diff --git a/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/mori_uart_mux_ctrl.sh b/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/mori_uart_mux_ctrl.sh new file mode 100644 index 0000000000..e1f090ad4c --- /dev/null +++ b/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/mori_uart_mux_ctrl.sh @@ -0,0 +1,8 @@ +#!/bin/bash +# Provide source directive to shellcheck. +# shellcheck source=meta-fii/meta-mori/recipes-mori/mori-fw-utility/mori-fw/mori-lib.sh +source /usr/libexec/mori-fw/mori-lib.sh + +set_gpio_ctrl S0_UART0_BMC_SEL 1 +set_gpio_ctrl S0_UART1_BMC_SEL 1 +echo "UART initialization complete" diff --git a/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/obmc-console@.service b/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/obmc-console@.service new file mode 100644 index 0000000000..3ce7942b58 --- /dev/null +++ b/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/obmc-console@.service @@ -0,0 +1,17 @@ +[Unit] +Description=Phosphor Console Muxer listening on device /dev/%I +BindsTo=dev-%i.device +After=dev-%i.device +StartLimitBurst=3 +StartLimitIntervalSec=300 + +[Service] +ExecStart=/usr/sbin/obmc-console-server --config /etc/obmc-console/server.%i.conf %i +SyslogIdentifier=obmc-console-server +Restart=always +RestartSec=10 +TimeoutStartSec=60 +TimeoutStopSec=60 + +[Install] +WantedBy=multi-user.target diff --git a/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/server.ttyS1.conf b/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/server.ttyS1.conf new file mode 100644 index 0000000000..e93f0781d8 --- /dev/null +++ b/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/server.ttyS1.conf @@ -0,0 +1,3 @@ +baud = 115200 +logfile = /var/log/obmc-console-cpu.log +logsize = 1M diff --git a/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/server.ttyS3.conf b/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/server.ttyS3.conf new file mode 100644 index 0000000000..ae469bbb27 --- /dev/null +++ b/meta-fii/meta-mori/recipes-phosphor/console/obmc-console/server.ttyS3.conf @@ -0,0 +1,4 @@ +baud = 115200 +socket-id = ttyS3 +logfile = /var/log/obmc-console-mpro.log +logsize = 1M diff --git a/meta-fii/meta-mori/recipes-phosphor/console/obmc-console_%.bbappend b/meta-fii/meta-mori/recipes-phosphor/console/obmc-console_%.bbappend new file mode 100644 index 0000000000..90b21cd5f3 --- /dev/null +++ b/meta-fii/meta-mori/recipes-phosphor/console/obmc-console_%.bbappend @@ -0,0 +1,30 @@ +FILESEXTRAPATHS:prepend:mori := "${THISDIR}/${PN}:" +RDEPENDS:${PN}:append:mori = " bash" + +OBMC_CONSOLE_TTYS:mori = "ttyS1 ttyS3" + +SRC_URI:append:mori = " file://${BPN}@.service \ + file://host_console_uart_config.service \ + file://mori_uart_mux_ctrl.sh \ + file://server.ttyS1.conf \ + file://server.ttyS3.conf \ + " + +SYSTEMD_SERVICE:${PN}:append:mori = " \ + ${BPN}@.service \ + host_console_uart_config.service \ + " + +do_install:append:mori() { + install -d ${D}${libexecdir}/${PN} + install -m 0755 ${WORKDIR}/mori_uart_mux_ctrl.sh ${D}${libexecdir}/${PN}/mori_uart_mux_ctrl.sh + install -m 0644 ${WORKDIR}/host_console_uart_config.service ${D}${systemd_unitdir}/system + # Overwrite base package's obmc-console@.service with our own + install -m 0644 ${WORKDIR}/${BPN}@.service ${D}${systemd_unitdir}/system/${BPN}@.service +} + +pkg_postinst:${PN}:append:mori () { + systemctl --root=$D enable obmc-console@ttyS1.service + systemctl --root=$D enable obmc-console@ttyS3.service +} + diff --git a/meta-fii/meta-mori/recipes-phosphor/image/obmc-phosphor-image.bbappend b/meta-fii/meta-mori/recipes-phosphor/image/obmc-phosphor-image.bbappend index fe6678493c..7fe06dc877 100644 --- a/meta-fii/meta-mori/recipes-phosphor/image/obmc-phosphor-image.bbappend +++ b/meta-fii/meta-mori/recipes-phosphor/image/obmc-phosphor-image.bbappend @@ -25,6 +25,9 @@ OBMC_IMAGE_EXTRA_INSTALL:append:mori = " bmcweb" OBMC_IMAGE_EXTRA_INSTALL:append:mori = " phosphor-certificate-manager" OBMC_IMAGE_EXTRA_INSTALL:append:mori = " phosphor-user-manager" +# Required for the front port. Part of obmc-console +OBMC_IMAGE_EXTRA_INSTALL:append:mori = " obmc-console" + # Required from packagegroup-mori-apps OBMC_IMAGE_EXTRA_INSTALL:append:mori = " obmc-phosphor-buttons-signals" OBMC_IMAGE_EXTRA_INSTALL:append:mori = " obmc-phosphor-buttons-handler" |