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/hostlogger/phosphor-hostlogger/fb-compute-multihost/ttyS5.conf b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/fb-compute-multihost/ttyS5.conf
new file mode 100644
index 0000000..2af30d5
--- /dev/null
+++ b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/fb-compute-multihost/ttyS5.conf
@@ -0,0 +1,7 @@
+SOCKET_ID=host4
+BUF_MAXSIZE=3000
+BUF_MAXTIME=0
+FLUSH_FULL=false
+HOST_STATE=/xyz/openbmc_project/state/host5
+OUT_DIR=/var/lib/obmc/hostlogs/host5
+MAX_FILES=10
diff --git a/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/fb-compute-multihost/ttyS6.conf b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/fb-compute-multihost/ttyS6.conf
new file mode 100644
index 0000000..7b5d435
--- /dev/null
+++ b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/fb-compute-multihost/ttyS6.conf
@@ -0,0 +1,7 @@
+SOCKET_ID=host5
+BUF_MAXSIZE=3000
+BUF_MAXTIME=0
+FLUSH_FULL=false
+HOST_STATE=/xyz/openbmc_project/state/host6
+OUT_DIR=/var/lib/obmc/hostlogs/host6
+MAX_FILES=10
diff --git a/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/fb-compute-multihost/ttyS7.conf b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/fb-compute-multihost/ttyS7.conf
new file mode 100644
index 0000000..dbcdcd9
--- /dev/null
+++ b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/fb-compute-multihost/ttyS7.conf
@@ -0,0 +1,7 @@
+SOCKET_ID=host6
+BUF_MAXSIZE=3000
+BUF_MAXTIME=0
+FLUSH_FULL=false
+HOST_STATE=/xyz/openbmc_project/state/host7
+OUT_DIR=/var/lib/obmc/hostlogs/host7
+MAX_FILES=10
diff --git a/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/fb-compute-multihost/ttyS8.conf b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/fb-compute-multihost/ttyS8.conf
new file mode 100644
index 0000000..006f6be
--- /dev/null
+++ b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger/fb-compute-multihost/ttyS8.conf
@@ -0,0 +1,7 @@
+SOCKET_ID=host7
+BUF_MAXSIZE=3000
+BUF_MAXTIME=0
+FLUSH_FULL=false
+HOST_STATE=/xyz/openbmc_project/state/host8
+OUT_DIR=/var/lib/obmc/hostlogs/host8
+MAX_FILES=10
diff --git a/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger_%.bbappend b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger_%.bbappend
index 5887a3d..c38571c 100644
--- a/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger_%.bbappend
+++ b/meta-facebook/recipes-phosphor/hostlogger/phosphor-hostlogger_%.bbappend
@@ -1,12 +1,13 @@
 FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
 
 SRC_URI:append:fb-compute-singlehost = " file://ttyS2.conf"
+OBMC_BMC_TTY = "ttyS4"
 
-SRC_URI:append:fb-compute-multihost = " file://ttyS0.conf \
-                                        file://ttyS1.conf \
-                                        file://ttyS2.conf \
-                                        file://ttyS3.conf "
+HOST_LOGGER_INST = "${@d.getVar('OBMC_HOST_INSTANCES', True)}"
+HOST_LOGGER_INST_CNT = "${@sum([1 for item in d.getVar('HOST_LOGGER_INST', True).split() if item.isdigit()])}"
+HOST_LOGGER_CONFS = "${@' '.join(['file://ttyS{}.conf'.format(i) for i in range(int(d.getVar('HOST_LOGGER_INST_CNT', True)) + 1) if 'ttyS{}'.format(i) != d.getVar('OBMC_BMC_TTY', True)])}"
 
+SRC_URI:append:fb-compute-multihost = " ${HOST_LOGGER_CONFS}"
 
 do_install:append() {