Age | Commit message (Collapse) | Author | Files | Lines |
|
This makes it possible for us to change out build specific settings.
Change-Id: I862366d8efa97c4c3181b842662bf28dd5bec270
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
The SpeedMbds of ethernet interface is implemented in getInterfaceInfo()
from the phosphor-networkd repo. It is disabled by NIC_SUPPORTS_ETHTOOL
conditional compilation. The default compile mode is to omit the
getInterfaceInfo() which causes the SpeedMbps not set.
This commit supports enable the NIC_SUPPORTS_ETHTOOL to report correct
speed.
Tested:
1.Get SpeedMbps via rest:
$ curl -XGET --user root:0penBmc -H "Content-Type: application/json" \
-H "If-match: *" --insecure \
https://10.38.14.2/redfish/v1/Managers/bmc/EthernetInterfaces/eth1 \
grep | "SpeedMbps"
2.Get speed of eth1 interface on BMC console
$ cat /sys/class/net/eth1/speed
The value getting from openbmc#1 and openbmc#2 match together.
Signed-off-by: Hieu Huynh <hieuh@os.amperecomputing.com>
Change-Id: I57047151fc4eea08c857b95c0770d89ba95f9bc7
|
|
NCSI was enabled in Mt.Jade device tree. This makes the RGMII port is
now eth1. However, just eth0 is enabled for IPMI OOB so running IPMI
OOB command is fail with RGMII's IP address.
This commit sets eth1 as default Ethernet port for IPMI OOB command and
set eth0 as alternative IPMI OOB port.
Tested:
1. Run IPMI commands from client with RGMII's IP address
$ ipmitool -U root -P 0penBmc -C 17 -I lanplus -H 10.38.64.72 power status
Chassis Power is on
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Iba65221b8cab99486d1f35026e0cf593cce4a8c9
|
|
Change Ie1a7c389edb6b7a048836a49283ceb62de51bba5 will be transitioning
the 'Type' property in Inventory.Item.Chassis to an enumeration.
In order to avoid crashing in PIM we need these default values in the
starting YAML to be fully-qualified enumeration names that will match
the values which will start in Ie1a7c.
This code is safe to merge as is without any PDI or PIM changes. Prior
to the PDI change, we must make a change to PIM that allows conversion
automatic from string->enum, leveraging library interfaces available in
sdbusplus. These will be submitted independently.
I checked the codebase for usage of this string. It appears that the
value is currently, effectively, write-only. There is code in bmcweb
that fills in the equivalent Redfish value but currently just hard-codes
the string 'RackMount'.
Tested: Booted Witherspoon in a QEMU model with this change and proposed
changes to sdbusplus + PIM. PIM no longer coredumps with the PDI change
and yields an expected persistence file:
```
$ pwd
/var/lib/phosphor-inventory-manager/xyz/openbmc_project/inventory/system/chassis
$ cat xyz.openbmc_project.Inventory.Item.Chassis
{
"value0": {
"cereal_class_version": 2,
"Type": 3
}
}
```
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Icaf9447f31ccdd945cdf74b3e017682e4aed686f
|
|
Add total_power sensor calculated by sum of PSU0_POUTPUT and
PSU1_POUTPUT.
Tested:
1. Check if total_power is present in WebUI and Redfish and its value is
sum of PSU0_POUTPUT and PSU1_POUTPUT.
2. Check total_power from IPMI
root@mtjade:~# ipmitool sdr list | grep total_power
total_power | 648 Watts | ok
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I304e7c9328f1f91f6f358f0e8472a107bf5479a0
|
|
Add ipmi-sensor Yaml file to configure IPMI sensor report following
Mt.Jade SDR Definition document.
Tested:
1. Check sensor report using IPMI sdr and sensor commands:
$ ipmitool sdr list
$ ipmitool sensor list
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ib61d459087d3cf2711b2dd19a64c69d91e39861f
|
|
Add more PSU sensors to report in Redfish.
Tested:
1. Check all PSU sensors displayed in WebUI and Redfish
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ie4236ed8222313eaf99937487c67fc37401217ae
|
|
It is no longer to require all LC, UC, LNC and UNC threshold to make
sensor threshold applied.
This commit removes all dummy threshold added before.
Tested:
1. Enter WebUI -> Health -> Sensors and check threshold for all sensors.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ib0b5c87d21eb40ac56bffe222f997ce5605be108
|
|
It checks GPIO key for powersupply presence, and creates
the inventory object.
Tested:
1. Plug the PSU, check busctl command for Present attribute
2. Plug out the PSU, check busctl command for Present attribute
$ busctl --no-pager introspect xyz.openbmc_project.Inventory.Manager
/xyz/openbmc_project/inventory/system/chassis/motherboard/powersupply0
Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>
Change-Id: I4520d537d425249debe5c0d8c6bf8b0f6e3c5b34
|
|
When system only uses single PSU ( ex : PSU1 ) to power ON normal 12V,
HSC2 will be trigged Fault event (FET health).
At this time, plugging in PSU2 in system, the PSU2 won't deliver power to
+12V_MB because HSC2 is protected by Fault event.
Due to HSC2 protected, the PSU redundancy mechanism can't be created.
Once PSU1 is plugged out at this moment, system will crash ( reset )
because +12V_MB dropped.
Support detecting PSU plug event and reset the Hot-Swap feature by
disabling and then enabling again it through PMBUS command to clear the
event.
Tested:
1. Plug only PSU1 to power ON system (12V)
2. Wait until host is booted, check POUT:
$ ipmitool sdr | grep "POUT"
PSU1_POUT | 112 Watts | ok
PSU2_POUT | 0 Watts | ok
3. Plug in PSU2 in system, check POUT:
$ ipmitool sdr | grep "POUT"
PSU1_POUT | 64 Watts | ok
PSU2_POUT | 48 Watts | ok
4. Unplug AC power PSU1, check POUT:
$ ipmitool sdr | grep "POUT"
PSU1_POUT | 0 Watts | ok
PSU2_POUT | 128 Watts | ok
5. Plug in AC power PSU1, check POUT:
$ ipmitool sdr | grep "POUT"
PSU1_POUT | 80 Watts | ok
PSU2_POUT | 64 Watts | ok
6. Repeat 1. to 5. with PSU2.
Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>
Change-Id: Ia6e00cd7b08de48059f2450e7eaf108418d0a026
|
|
As more features added to Mt.Jade OpenBMC, 32MB is not enough anymore.
In addition, the Mt.Jade has 64MB SPI-NOR for BMC firmware.
This commit changes to use 64MB BMC layout to have more room for
incoming features.
Tested:
1. Compile the firmware, flash to Mt.Jade BMC from u-boot and check if
it can boot to Linux successfully.
2. Compile another image and check if firmware update works fine.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ifa3e91a630909ffde39da5bb0ce55d2ad123100d
|
|
This is apparently not actually working anymore and is removed in the
next poky update.
Change-Id: Ia1c6a258d124a4a30a14fc42e8e0bba95e64faeb
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
The repository supports it, so switch it over in bitbake.
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I8d96c79b395ee2614ddd869091569f245426c5c7
|
|
Since the webui-vue repo has become a web standard, enabled webui-vue
repo and removed phosphor-webui repo.
Tested: build mtjade and login to WebUI successfully
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ib4a3902ca8170275570b2f6b79b3ecebb8ffccde
|
|
Latest upstream yocto has moved on to the 3.3 hardknott release
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: Ieae36798d66d21c2c642931f06407d3bb2acf163
|
|
This layer provides libseccomp.
Signed-off-by: Anton D. Kachalov <gmouse@google.com>
Change-Id: I84513d56f2ed75fab49043196b98ef8b858e394f
|
|
Mt.Jade DVT hardware requires some GPIO setting so that the board can
work well. This commit updates platform init function in u-boot to set
required GPIO pins.
Tested:
1. Verify below GPIOs set as input in Linux:
- S0_I2C9_ALERT_L (GPIOM4)
- S1_I2C9_ALERT_L (GPIOM5)
- GPIO_BMC_VGA_FRONT_PRES_L (GPIOQ7)
- GPIO_BMC_EXT_HIGHTEMP_L
- GPIO_S0_VRHOT_L
- GPIO_S1_VRHOT_L
- GPIO_BMC_PCA9554_INT_L
2. verify below GPIOs set as output high in Linux
- GPIO_BMC_I2C6_RESET_L
- GPIO_BMC_JTAG_SRST_L
- GPIO_BMC_VR_PMBUS_SEL_L
- BMC_GPIOR2_EXT_HIGHTEMP_L
- BMC_VGA_SEL
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>
Change-Id: I8b76387ec05c546c34c89f6f5881da3b7955a805
|
|
The Mt.Jade board designs pin strap, which is shared with an OCP pin.
This causes the pin strap to have the wrong value if the OCP adapter
is plugged and the system is off which consequently disables the SPI
master mode. This makes OpenBMC fail to probe the Host SPI Flash.
Change to set SPI master mode enabled by default, not base on the
pin strap value, so Host SPI NOR can always be probed.
Tested:
1. Plug Mellanox OCP card into the OCP1 header.
2. Do AC power board and check if SPI Flash driver
can probe without error like
"aspeed-smc 1e630000.spi: Error applying setting, reverse things back"
Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>
Change-Id: Ie36557d8e1580f8a6b59b24ac47557d59af653c5
|
|
This is an initial support for the parallel GPIO pins directly connected
to the AHB on the Aspeed 2400/2500.
This brings the functions and a shell command to manipulate the GPIO
state. The GPIO value reading and writing work in non interrupt mode
only.
This is back ported from the patch file from
meta-yadro/meta-nicole/recipes-bsp/u-boot/files/0003-aspeed-add-gpio-support.patch
to support GPIO configuration
Signed-off-by: Alexander Filippov <a.filippov@yadro.com>
Signed-off-by: Thang Q. Nguyen <thangqn@amperecomputing.com>
Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>
Change-Id: I2d97c0fbb9f80bd6c262f03302775936f732b1f1
|
|
The UID button is used to provide visual identification of the system
when pushed. Pressing the UID button toggles the UID LED. The same
action can be done via Redfish (by patching IndicatorLED from
redfish/v1/Systems/system) or the IPMI chassis identify command.
Tested:
1. Press the UID button to toggles the UID on/off
2. Turn on the UID LED via ipmi command
$ ipmitool chassis identify
3. Turn Lit/Blinking/Off UID LED via Redfish then check the IndicatorLED
values
$ curl -X PATCH --user root:0penBmc -H "Content-Type: application/json" \
-H "If-Match: *" --insecure https://BMC_IP/redfish/v1/Systems/system \
-d '{"IndicatorLED": "Lit/Blinking/Off"}'
$curl -X GET --user root:0penBmc -H "Content-Type: application/json" \
--insecure https://BMC_IP/redfish/v1/Systems/system
The IndicatorLED is "Lit/Blinking/Off"
Signed-off-by: Hieu Huynh <hieu.huynh@amperecomputing.com>
Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>
Change-Id: I58eeae7ac22a9d4ddd4acdfbd167095bdc74072c
|
|
Monitor the Socket 0 and Socket 1's CPU_FAULT GPIO and turn on the Fault
LED when any GPIO turns ON.
Tested:
1. Flash special SCP image to stimulate CPU Fault LED
2. Check if the Fault LED is ON.
Signed-off-by: Tung Nguyen <tung.nguyen@amperecomputing.com>
Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>
Change-Id: I73bf34b4361528c9c8825942ddc7f24d51589189
|
|
Add initial LED YAML and related files for Mt. Jade LED support.
Tested: Check power LED ON during BMC boot.
Signed-off-by: Hieu Cong Huynh <hieu.huynh@amperecomputing.com>
Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>
Change-Id: I8c39a2b9c61366d588afd4847833ceb19f24a390
|
|
Support to get BMC MAC address from FRU over the FRU inventory
information (/xyz/openbmc_project/inventory/system/chassis/motherboard)
and update to the eth0 Ethernet interface and set the eth1addr u-boot
variable.
Tested:
1. Boot to u-boot, clear the eth1addr variable, save and reboot.
2. Boot to Linux:
- Check if the eth0 interface uses the MAC address in FRU.
root@mtjade:~# ip addr show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 70:e2:84:86:76:ba brd ff:ff:ff:ff:ff:ff
- Check if the eth1addr u-boot variable uses the MAC address in FRU
root@mtjade:~# fw_printenv eth1addr
eth1addr=70:E2:84:86:76:BA
Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ifb7eefbb17257545d026005f859d37ef562289b7
|
|
Support to parse the Mt.Jade FRU device, map FRU data with inventory
information and report FRU content via IPMI.
Tested:
1. Run IPMI fru print command:
root@mtjade:~# ipmitool fru print
FRU Device Description : Builtin FRU Device (ID 0)
Chassis Type : Rack Mount Chassis
Chassis Serial : A1A1-A000-0000000000123
Board Mfg Date : Fri Feb 5 00:00:00 2021 UTC
Board Mfg : WIWYNN
Board Product : Mt.Jade Motherboard
Board Serial : B8103010002500900019J0LB
Board Part Number : B81.03010.0026
Product Manufacturer : WIWYNN
Product Name : Mt.Jade Server System
Product Part Number : B81.03001.0009
Product Version : EVT2
Product Serial : B810300100050130002DN0SD
2. Check FRU inventory reoirt from REST
/xyz/openbmc_project/inventory/system/chassis/motherboard
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I231d5766b2f89a535d850eb437d63a9db84fb846
|
|
Please see https://gerrit.openbmc-project.xyz/c/openbmc/openbmc/+/39379
for details about why this is necessary.
Some commits pointed out that we should identify by email instead of name.
This commit changes the existing owners to use email instead of name.
Signed-off-by: Ed Tanous <ed@tanous.net>
Change-Id: I9b22333bd878df7d94999366bb3887e4637698f2
|
|
Enable system event log for Redfish. It includes the setting to:
- Enable sel-logger module which logs the sensor event into the
systemd log.
- Enable the rsyslog (intel module) to sync the sensor events from
systemd to /var/log/redfish. The file will be used by Redfish.
- Configure the backend and redfish to get the system log from the
/var/log/redfish instead of system d-bus
- Enable Redfish journal log
Tested: Verify event logs appear in:
1. Redfish: /redfish/v1/Systems/system/LogServices/EventLog/Entries
2. Redfish: /redfish/v1/Managers/bmc/LogServices/Journal/Entries
3. WebUI: /server-health/sys-log at Event type.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I3753e2932ec1dc83cdbe0708173531930df65254
|
|
Enable flash_bios feature and configure to use backend script to flash
UEFI firmware via Redfish, WebUI and Rest.
Tested:
1. Flash UEFI firmware via WebUI.
2. Flash UEFI firmware via Redfish UpdateService
3. Flash UEFI firmware via Rest interface.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I772e6a409414e374ed01e72e3c69985d0b413cb5
|
|
Support solssh for Mt.Jade system.
It opens these ssh ports:
2200 - CPU console
2201 - SCP 0 concole
2202 - ATF console
2203 - SCP 1 console
Tested:
- connect to ssh ports
- make sure the console are displayed correctly
Signed-off-by: Tung Nguyen <tungnguyen@os.amperecomputing.com>
Change-Id: Ic0be980f201c0176ca00fd07804c101f404e707a
|
|
Backport a patch file from meta-yadro/meta-nicole/recipes-bsp/u-boot/ to
add the Aspeed reset reason to bootargs so kernel so kernel application
can query it.
Tested: /proc/cmdline must contain:
- resetreason=power after A/C power
- resetreason=watchdog after bmc reboot
Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I7e75cccfa0fecfa9a66572e02de0f1c8c1d519a1
|
|
Please see https://gerrit.openbmc-project.xyz/c/openbmc/openbmc/+/39379
for details about why this is necessary.
Signed-off-by: Ed Tanous <ed@tanous.net>
Change-Id: Ib92e7c8c335b443728754e531c5d13ca869636f8
|
|
Map FAN, temperature and voltage sensors with Redfish chassis instance
and enables association feature in phosphor-inventory-manager.
The bmcweb looks for the sensors associated with a chassis instance
in the association list. The list, which is associations.json file in
phosphor-inventory-manager, maps the dbus sensor objects to a chassis
inventory.
Tested:
1. Check power/voltage sensors reported in redfish/v1/Chassis/chassis/Power.
2. Check FANs/thermal sensors reported in redfish/v1/Chassis/chassis/Thermal.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ie62a1c1a4edeaf165f834f7456c26711b4b42701
|
|
Support for Mt. Jade on-board sensors including fans, battery, PSUs,
voltage and temperature sensors.
Tested: check sensor reading from WebUI. All on-board sensors are
displayed with reasonable values.
Signed-off-by: Thu Nguyen <thu@os.amperecomputing.com>
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I60abc8ae946ef95c09903ebc5d95d15db6161c1a
|
|
As the Mt.Jade device tree file was picked up to openbmc/linux
repository, need to remove the dts patch file to avoid conflict
Tested: compile Mt.Jade OpenBMC successfully
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I518888feb64bc2b806cbae113cded4d69135611b
|
|
Add device ID configuration for IPMI mc info command.
Tested: ran command `ipmitool mc info` and got responses
Device ID : 32
Device Revision : 1
Firmware Revision : 0.00
IPMI Version : 2.0
Manufacturer ID : 52538
Manufacturer Name : Unknown (0xCD3A)
Product ID : 130 (0x0082)
Product Name : Unknown (0x82)
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I32a1e8443b0f202cbe2133cb048d66f08e866744
|
|
Implement systemd service to create an Ethernet over USB interface
for communication between CPU and BMC.
Tested:
1. Check usb0 ethernet interface in BMC console
root@mtjade:~# ifconfig usb0
usb0 Link encap:Ethernet HWaddr DA:F7:E9:A3:5A:0C
inet addr:192.168.0.10 Bcast:192.168.255.255 Mask:255.255.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:412 (412.0 B)
2. Check USB Ethernet device on Host Linux
$ lsusb | grep Ethernet
Bus 001 Device 004: ID 1d6b:0103 Linux Foundation NCM (Ethernet) Gadget
Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Icb7c096df426233e8f2ee7318f2a1805f07ab3a7
|
|
Configure SCU8C - Multi-function pin control 4 to disable internal pull
down resistors for GPIOJ, GPIOG/GPIOAB, GPIOD/GPIOY, GPIOC/GPIOS as
external resistors are already installed.
Tested: scan I2C4 and check devices on the bus are detected
Signed-off-by: Thinh Pham <thinh.pham@amperecomputing.com>
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I5a4b682310b5243830bd9c7a66889b0a52c4770c
|
|
Implement the Ampere power control requirements for Altra system.
Tested:
- Check the ipmi commands: ipmi power on/off/soft/reset/cycle
- Check the redfish commands: On, Off, ForceOn, ForceOff,
GracefulShutdown, GracefulRestart, ForceRestart, PowerCycle
Signed-off-by: Tung Nguyen <tungnguyen@os.amperecomputing.com>
Change-Id: Id0c64c1284a6338ce47ca720d0ef75e99d21aa3c
|
|
When BMC is reseting, FANs do not run at all. This might cause heating
issue in case the Host CPU is in high load.
To protect the hardware, it is safe to set FANs run at full speed when
BMC is booting. After it boots complete, phosphor-fan service will take
control on FANs to make them work at the right speed.
This commit adds patch to configure all PWM function pins to input GPIO mode
to make FANs run at full speed.
Tested:
1. Boot BMC to Linux.
2. Turn on Host by "ipmitool chassis power on" command
3. Reboot BMC and check if FAN speed is maximum at u-boot.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I38f1433a576a1700938347dc89eddacf3fb3bf60
|
|
Add the Mt.Jade skeleton configuration to support the
basic power control
Tested:
1. Compile OpenBMC image and boot successfully on Mt.Jade
2. Check basic gpio get/set and the power control action
successfully
Signed-off-by: Tung Nguyen <tungnguyen@os.amperecomputing.com>
Change-Id: Ifc4f5746c3fb7e8d5e30a12cf29dd3f02e5de953
|
|
Add initial Mt.Jade platform support with minimal configuration so that
the code can be compiled and booted on the Mt.Jade platform system.
Tested:
1. Compile OpenBMC image for Mt.Jade successfully and can boot on
Mt.Jade.
2. Login to console and WebUI successfully.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ib4c2c30be7fc0a13cc66f7eb1c8b9604e9a5292f
|
|
This commit adds layer configuration, license, and maintainer files
for meta-ampere.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I7fc3e08cddb1e402153c8d163576fa36d4441785
|