tree 5a6167b26679b869b54cd431671d45d64cc1ecc5
parent f395a82c6e7f1c0d0310ed35df13b59d545412db
author Delphine CC Chiu <Delphine_CC_Chiu@wiwynn.com> 1671585928 +0800
committer Bonnie Lo <Bonnie_Lo@wiwynn.com> 1675308114 +0800

greatlakes: support SoL on multi-host

Description:
- Support Meta greatlakes SoL on multi-host

Design:
- We designed by 4 clients on port 2200~2203 represents Host1 ~ Host4,
and 4 clients on port 2300~2303 represents BIC1 ~ BIC4, the clients will
use socket-id to connect to corresponding server.
- For switching between Host/BIC, each client will manipulate the UART
mux by the cpld driver before connect to the server. The script for
switching the mux can be implemented in project layer.

Limitation:
- Since the CPLD device driver is not ready yet, we currently use raw
commands (i2ctransfer) to manipulate the register value, we will adapt
to the interface on CPLD device drvier when it's ready.

Issue:
- None

Test Case:
1. Check ssh -p 2200 ${ip} should successfully connect to Slot 1 Host.
- pass
2. Check ssh -p 2300 ${ip} should successfully connect to Slot 1 BIC.
- pass
3. Check ssh -p 2201 ${ip} should successfully connect to Slot 2 Host.
- pass
4. Check ssh -p 2301 ${ip} should successfully connect to Slot 2 BIC.
- pass
5. Check ssh -p 2202 ${ip} should successfully connect to Slot 3 Host.
- pass
6. Check ssh -p 2302 ${ip} should successfully connect to Slot 3 BIC.
- pass
7. Check ssh -p 2203 ${ip} should successfully connect to Slot 4 Host.
- pass
8. Check ssh -p 2303 ${ip} should successfully connect to Slot 4 BIC.
- pass

Change-Id: I3ebe12d4cabb01b401220c053cced089141e79e8
Signed-off-by: Bonnie Lo <Bonnie_Lo@wiwynn.com>
