Age | Commit message (Collapse) | Author | Files | Lines |
|
When HOST is turned on/off, ampere-gpio-poweroff/on@.service is called.
They should not call op-wait-power-off/on@.service, just wait for them.
Remove redundant "Requires" and "Wants" in service files.
Add timeout to obmc-flash-host-bios@.service to avoid blocking power
control.
Tested:
1. Turn on/off the HOST power.
2. Check journalctl log to ensure that op-wait-power-off/on@.service
are not called by ampere-gpio-poweroff/on@.service.
Signed-off-by: Thang Tran <thuutran@amperecomputing.com>
Change-Id: If9403891b2e57c73c4fd8e0ea1b24314b7b0c3f8
|
|
Switch OCP power source from 3V3 to standby too early causes PCIE AER
error on the OCP adapter.
This commit changes to switch the OCP power source via OCP_MAIN_PWREN in
power control application to avoid the issue.
Tested:
1. Run IPMI chassis power soft command and check if no PCIE AER error
generated.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I9dbc621390fb04fa818a04aeaac53b6b729e9e75
|
|
With the removal of u-boot patch that adds resetreason to /proc/cmdline
no information to check if the BMC is booted from A/C power or cold reboot.
This commit removes the dependency of resetreason on the
phosphor-discover-system-state application and updates the A/C power
check in the ampere_platform_init.sh script to use information from
/sys/class/watchdog/watchdog0/bootstatus.
Tested:
1. Check power restore policy feature work well.
2. Check ampere_platform_init.sh works properly in both A/C and D/C
power.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I4f2e7a241f9ddebf21b2b8c021b9ce87a1c8b26c
|
|
Upstream has removed the image-prelink bbclass[1], so remove it from any
local.conf.sample that still has it enabled.
1. https://git.openembedded.org/openembedded-core/commit/?id=857baaf9e3d181ca18264e85d90b899fd94acff9
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I70f42f8816f5dea207fcf5c34837d6796b3f6bb6
|
|
* Deprecate N-1 release (hardknott).
* Enable N+1 release (kirkstone).
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I39e027e02dab64b4390b46ffbd9c299c858f403e
|
|
Enable host-gpios option in phosphor-state-manager to support Host state
checking when BMC reboots. Also updateampere_host_check.sh to check Host
State via GPIO interface
Tested:
1. Define host0-ready into device tree.
2. Power On the Host. Reboot BMC, then check if CurrentHostState shows
Running.
3. Power OFF the Host. Reboot BMC, then check if CurrentHostState shows
Off.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Signed-off-by: Thang Tran <thuutran@amperecomputing.com>
Change-Id: I0331dfa340eb5bba201475ab9cada42e0946c8f8
|
|
As mentioned by I970e06ca6f9d0a9792af122eb25da1bb9a06f058, append and
remove directives with '+=' are no longer valid Yocto syntax and raise a
warning.
See https://git.yoctoproject.org/poky/tree/documentation/migration-guides/migration-3.5.rst#n40
One interesting caveat has to do with the difference between "append"
and "+=".
foo:append = "a"
foo:append = "b"
Results in `foo = "ab"`, but
foo += "a"
foo += "b"
Results in `foo = "a b"`. When `:append +=` is used it has behavior
like the `+=` operator. Therefore, in some cases we need to insert
additional whitespace after the `:append = "` to ensure concatenation
behaves as expected. I've manually reviewed the results to ensure there
is no ill side-effects from an additional space potentially being added.
Fix up the entire tree with the following one-liner (and similar for
`remove`):
git ls-files -- ':!:poky/**' ':!:meta-security/**' \
':!:meta-raspberrypi/**' ':!:meta-openembedded/**' \
| grep "\.bb" | xargs grep -l ":append.*+=" \
| xargs sed -i 's/:append\(.*\)+=\([^"]*\)" */:append\1=\2" /'
or ...
| xargs grep -l ":remove.*+=" \
| xargs sed -i "s/:remove\(.*\)+=/:remove\1=/"
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Iea6235e7c76e252f4d473652957c2925f6b8845a
|
|
Fix ampere-mac-update and ampere-gpio-handling starts failure,
including:
- Update ampere_update_mac.sh to recheck if the first MAC Address
reading fail. Also fix incorrect checking if setting new MAC Address
success or not.
- Fix typo in SCP failover service.
Tested:
1. Check if the ampere_update_mac.service starts succesfully.
2. Check if no error report from iS0_scp_auth_failure
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I6c03e352d8d51030d04cd303e438835e5b724afe
|
|
u-boot 2016.07 does not work well with 64MB SPI-NOR layout, which has
the following issues:
- Incorrect environment variable configuration which makes fail to boot
to kernel and has fw_setenv/fw_getenv commands not work.
- Even update the patch in meta-phosphor to fix above issue, still has
issue with setting environment variable in Linux which makes factory
reset failure each 2 times.
This commit changes to use u-boot 2019.04 to fix above issue.
Tested:
1. Do factory reset and check if the BMC can boot to kernel.
2. Trigger factory reset via Redfish multiple times (6 times) and verify
if the factory reset action can be executed at all times.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ibb269d96a2e2b509aeccbeeaa130aad57093d139
|
|
This sets u-boot to the package containing the v2016.07-aspeed-openbmc
branch. This ensures there will be no change if the default changes in
the future.
Change-Id: Iea12e1691dbdda34a3f95d6d0862add0b15bcf37
Signed-off-by: Joel Stanley <joel@jms.id.au>
|
|
Instead of having many bitbake recipes for Altra GPIO handling,
combining them into a single recipe so that the code look cleaner.
Tested:
1. Check ID button still works.
2. Check hightemp and overtemp handing still works.
3. Check Fault LED works correctly.
4. Check graceful shutdown and Host reboot still work.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ic6eef75702cf0353ae2d84a3cda0ffb84d10f4cc
|
|
Handle S0/1 OVERTEMP and S0/1 HIGHTEMP GPIO signals from Host CPU that turn off the Host to
prevent hardware damage and log an event.
Tested:
1. Assert OVERTEMP event by running below command from SCP console:
S0-cli> mww 0x10000f0112d0 0x2
Check if the Host is turned OFF and event is logged
2. Assert and deassert HIGHTEMP event on Socket 0 and check if new
events are logged.
3. Repeat steps 1 and 2 on Socket 1
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I16c9676be379ac5d21849c591fbdadda4a6951ef
|
|
By replacing phosphor-hwmon by dbus-sensor, PSU presence detection via
GPIO does not work anymore and it causes confiction with dbus-sensor's
PSUSensor.
Revert the commit to avoid the confliction
Change-Id: Idfd54325c122921a3c5df062bce1b6909b643999
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
|
|
The chassis instance when implementing sensor monitor using
dbus-sensor/entity-manager is /redfish/v1/Chassis/<name> where <name> is
defined from entity-manager configuration.
This commit removes /redfish/v1/Chassis/chassis which is redundant and
make incorrect link from other schema like ComputerSystem and BMC
Manager.
Tested:
1. Check no /redfish/v1/Chassis/chassis available.
2. Check all sensors are available in /redfish/v1/Chassis/Mt_Jade.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I334a94bb65c3caa49d0bcb6ab03a42f7999728d5
|
|
Disable phosphor-hwmon from compilation and clean up sensor inventory
which added before for phosphor-hwmon.
Tested:
1. Check if no phosphor-hwmon compiled and run
2. Check all S0 and S1 ADC sensors are still available in Redfish.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ic6ac13963e755e6ef0d93b3f6486546c61b1abe0
|
|
Enable phosphor-nvme with configuration for nvme_max sensor for FAN
control support later.
Tested:
1. Check NVME Temp:
$ busctl get-property xyz.openbmc_project.nvme.manager \
/xyz/openbmc_project/sensors/temperature/nvme20 \
xyz.openbmc_project.Sensor.Value Value
d 22
2. Check nvme_max has valid value
$ busctl introspect xyz.openbmc_project.VirtualSensor \
/xyz/openbmc_project/sensors/temperature/nvme_max
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ied609ba5b5d39877c09ed04faff5063c7882a689
|
|
Replace sensor monitoring in phosphor-hwmon by
dbus-sensor/entity-manager.
Tested:
1. Check IPMI sensor report for Temp and ADC sensors with correct
threshold
$ ipmitool sdr list
$ ipmitool sensor list all
2. Check Redfish Thermal and Power schema for Temperature and ADC
sensors
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Idbb719ed01a28892bce32adce062c56dd51d3088
|
|
Add support SCP firmware update with checking if the ampere_fru_upgrade
available to execute the update.
This commit also supports 2nd Host SPI-NOR update ability.
Tested:
1. Manually copy ampere_fru_upgrade to the /usr/sbin folder and run SCP
firmware update via Redfish.
2. Flash UEFI firmware update on the secondary Host SPI-NOR.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ic335ee2d21625239c3df1937ed5333708233845b
|
|
Change to use dynamic sensors for FRU support to take advantage of IPMI
fru read/write commands.
Tested:
1. Check FRU reading
$ ipmitool fru print
2. Write fru.bin into FRU EEPROM
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Signed-off-by: Thang Tran <thuutran@amperecomputing.com>
Change-Id: I0d0b52ae7b0fd301a14d0d2894268637d867a5b8
|
|
Configure OCP_AUX_PWREN and/or OCP_MAIN_PWREN GPIOs, even without
changing their values, make the OCP power glitched which consequently
makes the Host OS generates many calltrace message.
When BMC is rebooted, the ampere-gpio-poweron@service service is
triggered that reconfigure these GPIOs.
This comit prevents this case by checking if the Host is currently ON to
skip the reconfiguration.
Tested:
1. Boot the BMC and Host CPU.
2. Reboot BMC. Ensure no call trace for OCP
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I621e025adf72baf84bffd011ea0e04229f739755
|
|
`BBLAYERS_NON_REMOVABLE` is obsolete and no longer required.
As it said by Yocto documentation it can be used by `Hob`
https://www.yoctoproject.org/docs/1.5.2/ref-manual/ref-manual.html#var-BBLAYERS_NON_REMOVABLE
that already removed since Yocto-2.1
https://www.yoctoproject.org/tools-resources/projects/hob
Change-Id: Ibc2d8268a9d837a81e9cf6b0131dba8d0a030a3f
Signed-off-by: Alexander Filippov <a.filippov@yadro.com>
|
|
Remove Mt.Jade u-boot patches as we have other approach for them:
1. Patch 0001 is to set FANs to maximum speed in u-boot to avoid
hardware damage in case of Host ON with high CPU usage. This can be
resolved by setting FAN to maximum speed when the FAN service stop.
2. Patch 0002 is to enable I2C4 device access. With commit
0b32c1b40@linux, I2C4 enable is set via gpio-hog
3. Patch 0003 will be resolved later by supporting Aspeed watchdog with
boot status.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I247f99ebac7c3ca10a2dc77f1909f5c0c519401d
|
|
Change to implement virtual USB Ethernet using phosphor-misc's usb-ctrl.
Tested:
1. Boot BMC to Linux. Login and check if usb0 ethernet interface exists.
2. Power ON the Host. Check if usb0 automatically sets its IP to
192.168.0.10
3. Restart the ampere-usbnet.service service. Check if no error happens.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I4de722a691a112db851b6dda0a7821b9f78b4d72
|
|
Fix all issues from the shellcheck checked on bash shells under
meta-ampere.
Tested: Verify the following features:
1. Power control (on,off, cycle, graceful shutdown, hard reset).
2. UART switching.
3. UEFI firmware update.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Idabf839b7521ecadb642230cc8bb3472c787002e
|
|
The obmc-system-mgmt feature is currently used in the image to trigger
inclusion of a virtual-provider which provides a number of packages many
systems need. Partially revert the removal of this feature so that
the outcome is:
1. The empty obmc-phosphor-sysd package is still removed.
2. By default the 'obmc-system-mgmt' feature is included, unless
specifically exempted.
3. All EVB platforms remove the 'obmc-system-mgmt' feature since
they have no system they are managing.
This partially reverts commit 060ad3ff7fcc30aff78a9e504efee9d8fa0d4526.
Tested:
* Built `bletchley` and confirmed `packagegroup-fb-apps-system` and
`entity-manager` are present.
```
entity-manager armv7ahf-vfpv4d16 0.1+git0+6bf41588ab-r0
packagegroup-fb-apps-system all 1.0-r1
```
* Built `witherspoon` and confirmed `packagegroup-op-apps-system` and
`pdbg` are present.
```
packagegroup-op-apps-system noarch 1.0
pdbg arm1176jzs 3.3
```
* Ran `bitbake -p` on `evb-ast2600` to confirm the undefined
`virtual-obmc-system-mgmt` is not being included in the image.
Change-Id: I8b7804d5101cc84a2c57473b3f85672bf7767c67
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
|
|
Every machine layer treats 'system-management' as either part of a
package-group or removes the feature. The sample implementation in
meta-phosphor is a do-nothing shell script (and up until recently was a
Python script). There appears to be no useful purpose to this feature
as a stand-alone concept, so remove it.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I20ca1fa8ff3cb01cac2d07d4ded84e0769e4514b
|
|
Modify the machine meta-layer configs to remove the use of the
OBMC_MACHINE_FEATURES indirection and favor the Yocto MACHINE_FEATURES
variable instead.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ifafb79e4e4c010e9476b9547cd4982f5b645060e
|
|
Enable phosphor-aspeed-spi-master-mode.inc and remove the u-boot
patch that used for this feature.
Also remove GPIO setting patches which the setting already implemented
in the platform init package.
Tested: on Mt.Jade platform with OCP plugged
1. Bind/unbind Host SPI-NOR and ensure no problem
2. Turn off Host, reboot BMC and check if Host SPI-NOR is probe
successfully.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ie85166edca93b882868e1373696fbf664bee2ee4
|
|
The ampere_update_mac service gets BMC MAC Address from FruDevice but
currently uses Inventory.Manager as its dependency. This makes the
service sometime not work correctly.
This commit updates the dependency to EntityManager to fix the issue
Tested:
1. Clear eth1addr variable. Do A/C power the BMC and ensure the BMC MAC
is set to eth1addr
2. Clear eth1addr variable. Reboot BMC and ensure the BMC MAC is set to eth1addr
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I00c78222d487c72db5e6e06f8cc8b45cfde2f253
|
|
Ampere BMC specification requires the chassis power policy to always-on
by default. However, it is set by default to always-off in OpenBMC.
This commit updates the setting to always-on by default.
Tested:
1. Do factory reset the BMC.
2. Check the power status
$ root@mtjade:~# ipmitool chassis status
Power Restore Policy : always-on
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I7ec478dc60faa5fe51a091599265ec807bab22e9
|
|
Adds the ampere-ipmi-oem.bb file to support ampere-ipmi-oem features.
Signed-off-by: Hieu Huynh <hieuh@os.amperecomputing.com>
Change-Id: I869a3e73573dd43103b52640ef3ac2d1912280dc
|
|
There are some redundant codes inside meta-mtjade:
- ampere-reset-host-check@.service: no longer be used.
- redundant :mtjade in phosphor-software-manager_%.bbappend
- Incorrect GPIO function call in ampere_platform_init.sh
This commit fixes the above issues.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Iadde88ba6472815556a2c0839c1e3e127c2a04d4
|
|
Several GPIOs should be configured properly when booting BMC. Currently,
these GPIOs are configured in u-boot. However, some must be configured
in Linux. For example, the BMC_READY GPIO should be set only after BMC
is ready to work.
This commit introduce platform-init service which starts after BMC boots
to configure GPIOs pins required by hardware design.
Tested:
1. Do A/C power, check GPIO227 is set to 0.
2. Reboot BMC, check GPIO227 is set to 0.
3. Run gpioinfo and check GPIO directions
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ie0cfe171659ad740c6a25297f2fcce259870d43d
|
|
The BMC_READY pin is used to notify CPLD that BMC is running and it is
ready to control the Host power. This pin should be always high after
the BMC boots successful.
This commit removes BMC_READY setting in the skeleton config so that is
is not set low when powering off the Host.
Tested:
1. Power off the host. Check if BMC_READY is still HIGH.
Signed-off-by: Thu B Nguyen <tbnguyen@amperecomputing.com>
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Idc3a2b7ef92e6f8881d346f29920e184585911c3
|
|
FruDevice service is always running no matter if entity-manager is used
or not. It scans for all FRU EEPROMs, parse and store information into
dbus.
This commit changes to get BMC MAC Address from FruDevice data instead
of ipmi-fru-parser.
Tested:
1. Clear environment in u-boot, boot BMC to Linux and check if the
eth1addr variable is set with value from FRU.
2. Change BMC MAC address from FRU's Board Extra. Reboot BMC and check
if the eth1addr variable is set with new BMC MAC Address
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I99b5d46c8a22b98402f749cdebd1c0aad3d6daf0
|
|
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ia05891430c6c97a89b7bc8ba4558ae496866bf7d
|
|
bitbake offers a choice of DEB, RPM or IPK packaging. To a degree the
choice is functionally arbitrary for image generation but control over
the package format becomes important if we want to:
1. Include runtime package management functionality in the firmware image
2. Mess about with the packages on the build system
With respect to 1 the IPK format and opkg (an ipk package manager) are
designed for embedded systems[1] - by contrast to RPMs have heavier
dependencies and a greater impact on the size and complexity of the
firmware image.
Regarding 2, the embedded nature and the need for opkg to work without
much fuss leads to a lower configuration barrier by comparison to RPMs.
With ipk it becomes possible to reuse the packages built during image
preparation for core analysis without needing to generate an SDK:
```
$ export LD_LIBRARY_PATH=./tmp/work/x86_64-linux/opkg-native/*/recipe-sysroot-native/usr/lib
$ MY_DEBUG_ROOT=tmp/rootfs-debug
$ ./tmp/sysroots-components/x86_64/opkg-native/usr/bin/opkg \
-f ./tmp/work/p10bmc-openbmc-linux-gnueabi/obmc-phosphor-image/*/opkg.conf \
-o $MY_DEBUG_ROOT \
update
$ fakeroot ./tmp/sysroots-components/x86_64/opkg-native/usr/bin/opkg \
-f ./tmp/work/p10bmc-openbmc-linux-gnueabi/obmc-phosphor-image/1.0-r0/opkg.conf \
-o $MY_DEBUG_ROOT \
install dbus-sensors dbus-sensors-dbg
$ gdb-multiarch
(gdb) set solib-absolute-prefix .../tmp/rootfs-debug
(gdb) add-auto-load-safe-path .../tmp/rootfs-debug
(gdb) file tmp/rootfs-debug/usr/bin/nvmesensor
(gdb) core-file obmcdump_17_9597/core.nvmesensor.0.aae91b519d0e4e0e8bbe746e3f6cd25f.2779.9594000000
Core was generated by `/usr/bin/nvmesensor'.
Program terminated with signal SIGABRT, Aborted.
pthread_kill.c:45
45 pthread_kill.c: No such file or directory.
(gdb) bt
pthread_kill.c:45
../sysdeps/posix/raise.c:26
/home/andrew/src/openbmc/openbmc/build/p10bmc/tmp/rootfs-debug/usr/lib/libstdc++.so.6
/home/andrew/src/openbmc/openbmc/build/p10bmc/tmp/rootfs-debug/usr/lib/libstdc++.so.6
/home/andrew/src/openbmc/openbmc/build/p10bmc/tmp/rootfs-debug/usr/lib/libstdc++.so.6
/home/andrew/src/openbmc/openbmc/build/p10bmc/tmp/rootfs-debug/usr/lib/libstdc++.so.6
"xyz.openbmc_project.NVMeSensor", this=0x488f04) at
/usr/include/sdbusplus/bus.hpp:234
../../../../../../workspace/sources/dbus-sensors/src/NVMeSensorMain.cpp:159
(gdb)
```
This approach documented in the Poky Reference Manual:
https://www.yoctoproject.org/docs/1.0/poky-ref-manual/poky-ref-manual.html#platdev-gdb-remotedebug-launch-gdb-inferiorbins
Switch all machines to IPK to align the debugging experience with
upstream's documentation and to facilitate efficient use of packaged
software at runtime.
[1] https://openwrt.org/docs/guide-user/additional-software/opkg
Change-Id: I8ef526add2d7a6790de1b3eb3fb85cd39b864f23
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
|
|
Upstream bbclasses changed to typically use the `:${PN}` override
syntax, including the SYSTEMD_ variables. Change our systemd.bbclass
to do the same for consistency and perform a tree-wide variable
replacement.
Spot checked by building bletchley and witherspoon and checking
some of the SYSTEMD_LINK directives on installed packages under qemu.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I20a9dd809bff8af8759488734f80486c7228c6eb
|
|
Add DCMI sensor configuration for the Mt.Jade platform.
Tested:
1. root@mtjade:~# ipmitool dcmi sensors
Inlet: 2 temperature sensors found:
Record ID 0x00f3: PSU0_TEMP | 26 degrees C | ok
Record ID 0x00f4: PSU1_TEMP | 31 degrees C | ok
Baseboard: 6 temperature sensors found:
Record ID 0x0001: TS1_Temp | 31 degrees C | ok
Record ID 0x0002: TS2_Temp | 32 degrees C | ok
Record ID 0x0003: TS3_Temp | 31 degrees C | ok
Record ID 0x0004: TS4_Temp | 30 degrees C | ok
Record ID 0x0005: TS5_Temp | 35 degrees C | ok
Record ID 0x0006: TS6_Temp | 32 degrees C | ok
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Iff8a94e523346347b7e449522ab5a12b841aee9e
|
|
Since 29086950, phosphor-net-ipmid has updated the SOL parameters
by obtaining the attribute values of the
xyz.openbmc_project.Ipmi.SOL interface.
It is necessary to enable SOL by default on Mt.Jade with correct
parameters.
Tested:
1. ipmitool -I lanplus -H x -U x -P x -C 17 raw sol info
2. ipmitool -I lanplus -H x -U x -P x -C 17 sol activate
ipmitool -I lanplus -H x -U x -P x -C 17 sol deactivate
Use the above commands to successfully activate and deactivate SOL
3. Activate IPMI SOL and boot Host to Linux 5 times without
disconnected.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I8e4d0e06eaa9c8995cde27f17f0d0d274b553f0d
|
|
Fix missing Yocto syntax change in phosphor-hwmon append file which make
sensor configured not work correctly.
Tested:
1. Run "ipmitool sdr list" and check all sensors reported correctly
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: Ia4653180ac1a66dac13ee6d7edf5c34a106967e9
|
|
We've typically kept these LAYERSERIES_COMPAT to 2 releases: the current
and the upcoming. Remove 'gatesgarth' is it is now 2 releases back.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I5e812a94fed1738898af75c0fdee81996a5bbf20
|
|
Make the following changes to fix compilation errors:
1. Add honister to LAYERSERIES_COMPAT
2. Increase CONF_VERSION to 2.
3. Fix mistake on previous change on Yocto syntax update.
Tested:
1. Compile OpenBMC for Mt.Jade without error.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I5ac3f568d776109955759fab78844b1d38a51af1
|
|
Run convert-overrides.py meta-ampere and update missing changes as
below:
- Change all _mtjade to :mtjade
- Change all _${PN} to :${PN}
Tested:
1. Check compilation without problem.
2. Check basic functions like switch UART mux, power control.
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I42038b2a98ed1951d6c770bdf49f5fc440f8163e
|
|
Using IMAGE_INSTALL in mtjade.conf makes other Ampere recipes not
included in the build. This commit fixes the issue by enabling the
mtd-utils in OBMC_IMAGE_EXTRA_INSTALL_append instead.
Tested:
1. Check if all Ampere services and scripts available.
2. Check power control operations
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I17293ba520c05a7b5a438767c790f00220156d3f
|
|
The OCP module in Mt.Jade platform supports the GPIO pins to set the
power state. The SPI0 module also supports the GPIO pins to config SPI
mode. These gpio pins have to be set to the right states before power
off/on. The mtjade-gpio-config package will support that.
Tested:
1. Power off/on the host.
2. The OCP and SPI0 gpio pins should be in the corrected states.
Signed-off-by: ThuBaNguyen <thu@os.amperecomputing.com>
Change-Id: I46bca50222b0428f73aa9c05003f650f6ec0cc0b
|
|
The power functions are failed to work. There is one mistake in
merging ampere_power_utils.sh script. This commit fixes the mistake.
Tested:
1. Power off the host when it is on.
2. The host state should be changed to off.
Signed-off-by: ThuBaNguyen <thu@os.amperecomputing.com>
Change-Id: Iaa253e4b8d0f645a2b7097501e8c602d693cb37a
|
|
When phosphor-state-manager handles the power action to turn on the
host, phosphor-state-manager does not use the software interfaces to
verify the host state. It set the host state to running after all of
required services of the power action target are done. The power on
watchdog is used to verify the host state and handle the failure in
the host state changing. But Mt.Jade platforms do not handle power on
watchdog. This causes the CurrentHostState dbus property is Running
before the host is ready.
In Mt.Jade platform, the SCP drives S0_FW_BOOT_OK to high when the
host is already on. This GPIO can be used to identify the host state.
One service should be added to the required list. This service checks
the host state in power on and triggers obmc-host-quiesce@%i.target
when the host is failed to boot. ampere-host-check package adds
ampere-host-on-host-check@.service for that purpose.
Tested:
1. Boot up BMC with the host is off/on. Check CurrentHostState.
2. Call Ipmitool power off/on. Check the CurrentHostState.
3. Call Ipmitool chassis power off/on. Check the CurrentHostState.
4. Call Ipmitool power cycle. Check the CurrentHostState.
5. Call Ipmitool chassis power cycle. Check the CurrentHostState.
6. Power off the host. Set power policty to Always-on. AC power.
The host should be on. And CurrentHostState should be Running.
7. Power on the host. Set power policty to Always-off. AC power.
The host should be off. And CurrentHostState should be Off.
Change-Id: I9b0b346883a5f0203bf078453065c18ae4603311
Signed-off-by: ThuBaNguyen <thu@os.amperecomputing.com>
|
|
ampere-hostctrl package includes the generic codes and the platform
specific codes. The generic sources are applied for all of the Ampere
platforms, they are the service files and the scripts to setting the
GPIO pins. The platform specific sources are the GPIO pin config file
and the gpio monitor config files.
This commit moves the platform specific files to the platform code.
Tested:
1. Do the power control actions use ipmitool, BMC web and Redfish.
2. Make sure the server states are changed as expected.
Signed-off-by: ThuBaNguyen <thu@os.amperecomputing.com>
Change-Id: Ic0e261109f7a5dfaf38c883bff0afedab763a0b6
|
|
UEFI firmware for Ampere Altra-based platform starts at offset 0x400000
but currently the firmware image is flashed start at offset 0. This
makes the Host fail to boot.
This commit supports offset option for the mtd-util's flashcp utility
and update the script to flash UEFI firmware starting at offset
0x400000.
Tested:
1. Turn on the Host.
2. Flash UEFI firmware. Wait for the flash complete and check if Host
can boot successfully.
4. Turn off the Host.
5. Flash UEFI firmware. Wait for the flash complete.
6. Turn on the Host and check if Host can boot successfully.
Signed-off-by: Tung Nguyen <tung.nguyen@amperecomputing.com>
Signed-off-by: Thang Q. Nguyen <thang@os.amperecomputing.com>
Change-Id: I0d48bfd0a7b7350b46a98bf10fe4de3887f09f02
|