obmc-console: Support 8 slots for Yosemite 4
Support ttyS5~ttyS8 if multi-host is needed.
Support server/client conf 2204~2207 for console redirection.
Support ttyS5~ttyS8 host-logger.
Tested:
- Do obmc-console to link from uart1 to uart9
- List log of lost-logger
Change-Id: I558f71992f2cdab6c2a6338f728cdf5d476bcff2
Signed-off-by: Delphine CC Chiu <Delphine_CC_Chiu@wiwynn.com>
diff --git a/meta-facebook/recipes-phosphor/console/obmc-console_%.bbappend b/meta-facebook/recipes-phosphor/console/obmc-console_%.bbappend
index 6a6a628..197eb81 100644
--- a/meta-facebook/recipes-phosphor/console/obmc-console_%.bbappend
+++ b/meta-facebook/recipes-phosphor/console/obmc-console_%.bbappend
@@ -4,31 +4,29 @@
PACKAGECONFIG:remove = "ssh"
OBMC_CONSOLE_HOST_TTY = "ttyS2"
-OBMC_CONSOLE_TTYS:fb-compute-multihost = "ttyS0 ttyS1 ttyS2 ttyS3"
+OBMC_CONSOLE_TTYS = "${@' '.join(['ttyS{}'.format(i) for i in range(int(d.getVar('OBMC_CONSOLE_INST_CNT', True)) + 1) if 'ttyS{}'.format(i) != d.getVar('OBMC_BMC_TTY', True)])}"
+OBMC_BMC_TTY = "ttyS4"
+
+OBMC_CONSOLE_INST = "${@d.getVar('OBMC_HOST_INSTANCES', True)}"
+OBMC_CONSOLE_INST_CNT = "${@sum([1 for item in d.getVar('OBMC_CONSOLE_INST', True).split() if item.isdigit()])}"
+SERVER_CONFS = "${@' '.join(['file://server.ttyS{}.conf'.format(i) for i in range(int(d.getVar('OBMC_CONSOLE_INST_CNT', True)) + 1) if 'ttyS{}'.format(i) != d.getVar('OBMC_BMC_TTY', True)])}"
SRC_URI:append:fb-compute-singlehost = " file://server.ttyS2.conf"
-SRC_URI:append:fb-compute-multihost = " file://server.ttyS0.conf \
- file://server.ttyS1.conf \
- file://server.ttyS2.conf \
- file://server.ttyS3.conf \
+SRC_URI:append:fb-compute-multihost = " ${SERVER_CONFS} \
file://client.2200.conf \
file://client.2201.conf \
file://client.2202.conf \
file://client.2203.conf"
CLIENT_SERVICE_FILES_FMT = "file://${BPN}-{0}-ssh-host@.service \
- file://${BPN}-{0}-ssh-bic@.service \
- file://${BPN}-{0}-ssh-host.socket \
- file://${BPN}-{0}-ssh-bic.socket"
+ file://${BPN}-{0}-ssh-bic@.service"
SRC_URI:append:fb-compute-multihost = " \
${@compose_list(d, 'CLIENT_SERVICE_FILES_FMT', 'OBMC_CONSOLE_TTYS')}"
CLIENT_SERVICE_FMT = "${PN}-{0}-ssh-host@.service \
- ${PN}-{0}-ssh-bic@.service \
- ${PN}-{0}-ssh-host.socket \
- ${PN}-{0}-ssh-bic.socket"
+ ${PN}-{0}-ssh-bic@.service"
SYSTEMD_SERVICE:${PN}:append:fb-compute-multihost = " \
${@compose_list(d, 'CLIENT_SERVICE_FMT', 'OBMC_CONSOLE_TTYS')} \
@@ -36,7 +34,6 @@
SRC_URI:remove = "file://${BPN}.conf"
-SYSTEMD_SERVICE:${PN}:remove:fb-compute-multihost = "obmc-console-ssh.socket"
SYSTEMD_SERVICE:${PN}:remove:fb-compute-multihost = "obmc-console-ssh@.service"
PACKAGECONFIG:append:fb-compute-multihost = " concurrent-servers"
@@ -53,11 +50,8 @@
# Implement a script called "select-uart-mux" in project layer and follow the interface below:
# Usage: select-uart-mux <slot1|slot2|slot3|slot4> <host|bic>
install -m 0644 ${WORKDIR}/${BPN}-*-ssh-bic@.service ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/${BPN}-*-ssh-bic.socket ${D}${systemd_system_unitdir}
install -m 0644 ${WORKDIR}/${BPN}-*-ssh-host@.service ${D}${systemd_system_unitdir}
- install -m 0644 ${WORKDIR}/${BPN}-*-ssh-host.socket ${D}${systemd_system_unitdir}
rm -rf ${D}${systemd_system_unitdir}/obmc-console-ssh@.service.d/
rm -f ${D}${systemd_system_unitdir}/${BPN}-ssh@.service
- rm -f ${D}${systemd_system_unitdir}/${BPN}-ssh.socket
}