summaryrefslogtreecommitdiff
path: root/meta-quanta
AgeCommit message (Collapse)AuthorFilesLines
2022-02-24meta-quanta: s6q: enable the boot type selectorJoseph Fu1-0/+2
Enable the BIOS boot type. Add 'boot_type' option for phosphor-settings-manager to support both EFI and Legacy boot. Tested: ~# ipmitool raw 0x00 0x09 0x05 0x00 0x00 01 05 60 00 00 00 00 ~# ipmitool chassis bootparam get 5 Boot parameter version: 1 Boot parameter 5 is valid/unlocked Boot parameter data: 6000000000 Boot Flags : BIOS EFI boot ~# ipmitool raw 0x00 0x08 0x05 0x80 0x00 0x00 0x00 0x00 ~# ipmitool raw 0x00 0x09 0x05 0x00 0x00 01 05 80 00 00 00 00 ~# ipmitool chassis bootparam get 5 Boot parameter version: 1 Boot parameter 5 is valid/unlocked Boot parameter data: 8000000000 Boot Flags : BIOS PC Compatible (legacy) boot Signed-off-by: Joseph Fu <joseph.fu@quantatw.com> Change-Id: I3ff030dd65fad1a2492c20a6622c6dce68832b45
2022-02-22treewide: remove MAINTAINERSPatrick Williams1-49/+0
The MAINTAINERS files are no longer used and are out of date (references to IRC still exist in most of them). Remove them and rely on the OWNERS exclusively. Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I0f5d2719ad97e218ce03c4503efe1b1c92ac455e
2022-02-18treewide: fix append/remove directivesPatrick Williams3-15/+15
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
2022-02-14meta-q71l: quanta-powerctrl: Fix buildPeter Foley1-3/+3
e.g. install: cannot stat '/home/peter/openbmc/build/quanta-q71l/tmp/work/armv5e-openbmc-linux-gnueabi/quanta-powerctrl/1.0-r0init_once.sh': No such file or directory Signed-off-by: Peter Foley <pefoley@google.com> Change-Id: I40ff36dd1b640c5410c79fbd91642f658d9cc2b7
2022-02-14quanta: q71l: Fix buildPeter Foley1-0/+2
e.g. ERROR: Nothing RPROVIDES 'virtual-obmc-system-mgmt' (but /home/peter/openbmc/meta-phosphor/recipes-phosphor/images/obmc-phosphor-image.bb RDEPENDS on or otherwise requires it) Signed-off-by: Peter Foley <pefoley@google.com> Change-Id: I40f1dc3537073dbf02a702c9f1f64ada36384179
2022-02-14quanta: f0b: Fix buildPeter Foley1-0/+2
e.g. ERROR: Nothing RPROVIDES 'virtual-obmc-system-mgmt' (but /home/peter/openbmc/meta-phosphor/recipes-phosphor/images/obmc-phosphor-image.bb RDEPENDS on or otherwise requires it) Signed-off-by: Peter Foley <pefoley@google.com> Change-Id: I6da15718cbe2741647fbc5531e8fa989909ca46a
2022-02-14quanta-q71l: ipmi: Fix minor QA warningsPeter Foley2-2/+2
e.g. WARNING: /home/peter/openbmc/meta-quanta/meta-q71l/recipes-phosphor/ipmi/q71l-ipmi-inventory-map-native.bb: QA Issue: q71l-ipmi-inventory-map-native: native/nativesdk class is not inherited last, this can result in unexpected behaviour. Classes inherited after native/nativesdk: phosphor-ipmi-fru.bbclass [native-last] WARNING: /home/peter/openbmc/meta-quanta/meta-q71l/recipes-phosphor/ipmi/q71l-ipmi-sensor-map-native.bb: QA Issue: q71l-ipmi-sensor-map-native: native/nativesdk class is not inherited last, this can result in unexpected behaviour. Classes inherited after native/nativesdk: phosphor-ipmi-host.bbclass [native-last] Signed-off-by: Peter Foley <pefoley@google.com> Change-Id: I001b0b0d38067f4533748f5bf0f49de03f238ce9
2022-02-14quanta: f0b: ipmi: Fix minor QA warningsPeter Foley2-2/+2
e.g. WARNING: /home/peter/openbmc/meta-quanta/meta-f0b/recipes-phosphor/ipmi/f0b-ipmi-inventory-map-native.bb: QA Issue: f0b-ipmi-inventory-map-native: native/nativesdk class is not inherited last, this can result in unexpected behaviour. Classes inherited after native/nativesdk: phosphor-ipmi-fru.bbclass [native-last] WARNING: /home/peter/openbmc/meta-quanta/meta-f0b/recipes-phosphor/ipmi/f0b-ipmi-fru-read-inventory-native.bb: QA Issue: f0b-ipmi-fru-read-inventory-native: native/nativesdk class is not inherited last, this can result in unexpected behaviour. Classes inherited after native/nativesdk: phosphor-ipmi-host.bbclass [native-last] Signed-off-by: Peter Foley <pefoley@google.com> Change-Id: I3bc1e1cc2e581b0b191e191e32cfdbd6e2e278b7
2022-02-11meta-quanta: meta-gbs: Add max blob size for /skm/hssWilly Tu1-1/+2
Set the max size to 512 since 0x300 is used for something else. Change-Id: Ic7772247cb3cbcff4a27a12a4f85be97fd6b0b4d Signed-off-by: Willy Tu <wltu@google.com>
2022-02-11meta-quanta: s6q: implement the chassis capabilities intrusionJoseph Fu4-0/+130
This settings is according to IPMI SPEC chassis capabilities to provide intrusion sensor. Adding chassis intrusion sensor monitor to implement 'ChassisIntrusionEnabled' property functionally. Tested: get chassis capabilities, first 01 is meant to enable intrusion sensor ~# ipmitool raw 0x00 0x00 01 20 20 20 20 20 check the intrusion sensor Status ~# systemctl status xyz.openbmc_project.intrusionsensor.service ● xyz.openbmc_project.intrusionsensor.service - Intrusion Sensor Loaded: loaded (/lib/systemd/system/xyz.openbmc_project.intrusionsensor.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2022-01-10 01:53:48 UTC; 10min ago Main PID: 478 (intrusionsensor) CGroup: /system.slice/xyz.openbmc_project.intrusionsensor.service └─478 intrusionsensor then, set no provided any chassis capabilities function. ~# ipmitool raw 0x00 0x05 0x00 0x20 0x20 0x20 0x20 0x20 check chassis capabilities status. ~# ipmitool raw 0x00 0x00 00 20 20 20 20 20 now, intrusion sensor is not provided. ~# systemctl status xyz.openbmc_project.intrusionsensor.service ○ xyz.openbmc_project.intrusionsensor.service - Intrusion Sensor Loaded: loaded (/lib/systemd/system/xyz.openbmc_project.intrusionsensor.service; enabled; vendor preset: enabled) Active: inactive (dead) since Mon 2022-01-10 02:05:44 UTC; 5s ago Process: 478 ExecStart=/usr/bin/env intrusionsensor (code=killed, signal=TERM) Main PID: 478 (code=killed, signal=TERM) Signed-off-by: Joseph Fu <joseph.fu@quantatw.com> Change-Id: Ib3e3811f9ae9ab79dab52921fb0e6e065d44c444
2022-02-11meta-quanta: s6q: Enable IPMBTim Chao2-0/+18
phosphor-ipmi-ipmb: Enable ME communication Tested: root@s6q-dev:~# busctl tree xyz.openbmc_project.Ipmi.Channel.Ipmb `-/xyz `-/xyz/openbmc_project `-/xyz/openbmc_project/Ipmi `-/xyz/openbmc_project/Ipmi/Channel `-/xyz/openbmc_project/Ipmi/Channel/Ipmb Use 'busctl call xyz.openbmc_project.Ipmi.Channel.Ipmb \ /xyz/openbmc_project/Ipmi/Channel/Ipmb org.openbmc.Ipmb \ sendRequest yyyyay 1 6 0 0x1 0' to get device id Signed-off-by: Tim Chao <Tim.Chao@quantatw.com> Change-Id: I01af849bbe3c290dda88969267f092c11bf9e8fc
2022-02-11meta-quanta: s6q: enable power policyJoseph Fu2-0/+6
The power restore policy can be set to "AlwaysOn","Restore" or "None". Set power policy to Restore by default. Tested: ~# ipmitool chassis status Power Restore Policy : previous Signed-off-by: Joseph Fu <joseph.fu@quantatw.com> Change-Id: I48baef59461233276b2402a3a61b89a5e3eaa3a4
2022-02-11meta-quanta: s6q: enable sync-mac and nic-ethtoolJerry Wan1-0/+14
This commit enables sync-mac and nic-ethtool in the phosphor-network. The "sync-mac" function can initialize the mac address on first boot, if it can find the object in the inventory. When phosphor-network triggers systemd to set the mac address, it must be set together with the interface enslaved by bond. And "nic-ethtool" provides the necessary data through network interface analysis. Tested: Check the network object if it worked. ~# busctl introspect xyz.openbmc_project.Network /xyz/openbmc_project/network/bond0 Signed-off-by: Jerry Wan <jerry.wan@quantatw.com> Change-Id: I63d80b4491f3aa42cae401658a189acaaddb592f
2022-02-08fix interface usage for OperatingSystemStateAndrei Kartashev1-2/+2
OperatingSystemState property of xyz.openbmc_project.State.OperatingSystem.Status should be PDI enum of type OSStatus. This commit fixes values to be compatible with PDI. Signed-off-by: Andrei Kartashev <a.kartashev@yadro.com> Change-Id: I3e0af91f5ec8f0d9e5f6f722f8161386b9c7b430
2022-01-28meta-quanta: s6q: add fru yaml config filesJoseph Fu8-0/+161
Add fru setting config and device json file. Tested: ~# ipmitool mc info Device ID : 32 Device Revision : 1 Firmware Revision : 0.00 IPMI Version : 2.0 Manufacturer ID : 7244 Manufacturer Name : Quanta Computer Inc. Product ID : 13905 (0x3651) Product Name : Unknown (0x3651) Device Available : yes Provides Device SDRs : no Additional Device Support : Sensor Device SEL Device FRU Inventory Device Chassis Device Aux Firmware Rev Info : 0x00 0x00 0x00 0x00 ~# ipmitool fru FRU Device Description : Builtin FRU Device (ID 0) Board Mfg Date : Mon Jan 17 07:40:00 2022 UTC Board Mfg : Quanta Board Product : S6Q_Openbmc Board Serial : QCTQTW213400001 Board Part Number : 1100827-01 FRU Device Description : mainboard (ID 1) Board Mfg Date : Sat Sep 4 17:44:00 2021 UTC Board Mfg : Quanta Cloud Technology Inc. Board Product : S6Q-MB-RTT Board Serial : RTTQTW12500077 Board Part Number : 31S6QMB0000 Signed-off-by: Joseph Fu <joseph.fu@quantatw.com> Change-Id: Id7d8d6a330eb4b698b2933189eec35e0b48fc700
2022-01-28meta-quanta: gsj: Remove mac-address daemonBrandon Kim2-17/+0
mac-address bitbake recipe in meta-quanta/meta-common points to a quanta-bmc github. This is not allowed on our meta layer projects, especially on our "first class machine" like gsj which is part of our CI process. Remove from gsj for now, consider removing from meta-common completely if it's not moved out of quanta-bmc. Signed-off-by: Brandon Kim <brandonkim@google.com> Change-Id: Ic2d97450abe8d3f532e6ad9b66a98430ce6bf3a5
2022-01-27meta-quanta: Drop StandardOuput=syslogDavid Wang7-8/+1
Standard output/error type syslog is obsolete. Update all unit files, and remove the setting altogether. Signed-off-by: David Wang <davidwang@quantatw.com> Change-Id: I9d38713dadd5cca85f0b96f8c217df8afa145add
2022-01-26meta-quanta: s6q: enable the chassis capabilities commandJoseph Fu2-0/+28
Enable the ipmi chassis capabilities command. Tested: ~# ipmitool raw 0x00 0x00 01 20 20 20 20 20 ~# ipmitool raw 0x00 0x05 0x00 0x20 0x20 0x20 0x20 0x20 ~# ipmitool raw 0x00 0x00 00 20 20 20 20 20 Signed-off-by: Joseph Fu <joseph.fu@quantatw.com> Change-Id: Id35c6cbb78104c474d32de2f4df430565ff428e8
2022-01-26meta-quanta: s6q: enable SEL and watchdog logsJoseph Fu1-0/+1
Enable the SEL threshold and watchdog event monitoring. Tested: raise the "CriticalLow" value of the "Volt_PGPPA" sensor to trigger SEL ~# cat /var/log/ipmi_sel 2022-01-20T07:20:53.459340+00:00 1,2,526A6C,20,/xyz/openbmc_project/sensors/voltage/Volt_PGPPA,1 Signed-off-by: Joseph Fu <joseph.fu@quantatw.com> Change-Id: I622f7cd1bf23dbee102cd3064f0180ec36595b66
2022-01-26meta-quanta: s6q: Configure ipmi-net over bond0Jerry Wan4-0/+202
Specify bond0 as the channel 1 for ipmi rmcpp interface. Tested: Use bond0 as the channel 1 used by ipmi. Check with "ipmitool lan print 1" Signed-off-by: Jerry Wan <jerry.wan@quantatw.com> Change-Id: I2599f4e2a7ea311d88ce1ed0581fcf115680103e
2022-01-26meta-quanta: s6q: Add bonding feature to network interfaceJerry Wan6-0/+37
Add network bonding configuration and name resolution configuration for S6Q. Tested: There are two interfaces eth0 and eth1 bonded to bond0. Bonding details can be found at /proc/net/bonding/bond0. Signed-off-by: Jerry Wan <jerry.wan@quantatw.com> Change-Id: Ic11fbc3a8ea3ac4859e60a62288e9c2e03f6f41e
2022-01-25meta-quanta: gsj: Resolve minor QA warningsPeter Foley4-4/+4
e.g. WARNING: /opt/openbmc/meta-quanta/meta-gsj/recipes-phosphor/ipmi/gsj-ipmi-fru-read-inventory-native.bb: QA Issue: gsj-ipmi-fru-read-inventory-native: native/nativesdk class is not inherited last, this can result in unexpected behaviour. Classes inherited after native/nativesdk: phosphor-ipmi-host.bbclass [native-last] Signed-off-by: Peter Foley <pefoley@google.com> Change-Id: Ic32ef5bb09193366e049c0838bcdca4218baad86
2022-01-25treewide: fix up github SRC_URIsPatrick Williams2-2/+2
Per [1], Yocto is going to start requiring both branch names and `protocol=https` in GitHub SRC_URI variables. Ran the upstream tool to automatically fix our URIs. 1. https://git.yoctoproject.org/poky/tree/documentation/migration-guides/migration-3.5.rst#n10 Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I5f9619f7ff707050b469ae74c8aa16846568c5e4
2022-01-21meta-quanta: s6q: Add x86-power-ctrl config filesP.K.Lee3-1/+71
These config files contains the gpio configuartion which will be used by the x86 power control. Tested: Tested and verified in S6Q. Change-Id: I3e2684b2d7b0e6f3c6eb874569d5c82f6b733e02 Signed-off-by: P.K.Lee <p.k.lee@quantatw.com>
2022-01-18u-boot: Specify u-boot package for AST2500 machinesJoel Stanley1-0/+3
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>
2022-01-18u-boot: Specify u-boot package for AST2400 machinesJoel Stanley1-0/+4
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. Signed-off-by: Joel Stanley <joel@jms.id.au> Change-Id: Iaf709343b966c39ca707a10ef57fa0010bf6eb6f
2022-01-10meta-quanta: gsj: quanta-nvme-powerctl: Add iotoolsBrandon Kim1-0/+1
iotools were being pulled by default via meta-google's obmc-phosphor-image.bbappend. This was taken out by: https://gerrit.openbmc-project.xyz/c/openbmc/openbmc/+/49827 Add it to the .bb that actually uses and requires it as RDEPENDS Signed-off-by: Brandon Kim <brandonkim@google.com> Change-Id: I63063010d249c451f4dcb3b8fb4939c74da4d54f
2022-01-06meta-quanta: s6q: create basic machineP.K.Lee6-0/+368
Initial introduction of Quanta S6Q family equipped with Aspeed 2600 BMC SoC. Tested: 1. Build Quanta S6Q board and load on the target hardware. 2. Ensure that BMC boots to console. Change-Id: Ia16d5fd6e38e2191908c0bec44cb412be254a433 Signed-off-by: P.K.Lee <p.k.lee@quantatw.com>
2021-12-14meta-x86: remove layerPatrick Williams1-1/+0
This layer has nothing in it. The current direction is for anything architecture specific to end up in meta-phosphor. Remove this "layer" so that it doesn't keep getting copied into new machines. Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Ied03175589840490bcd1eda8c704c73e224ba9a9
2021-12-02Remove BBLAYERS_NON_REMOVABLE variableAlexander Filippov5-65/+0
`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>
2021-11-30meta-quanta: gbs: Change the BIOS main flash label to bios-primaryGeorgeHuang1-4/+4
Change the BIOS main flash label to 'bios-primary' from 'pnor' for the bios-update.sh ref: https://github.com/openbmc/linux/commit/2eea476 Signed-off-by: GeorgeHuang <george.hung@quantatw.com> Change-Id: I208a24cd5f7956cc3461986eb0aed0348c186ebf
2021-11-19meta-quanta: gsj: Add explicit layer dependenciesWilliam A. Kennington III1-0/+1
We want the machine layer to be guaranteed to override our top-level layers. Change-Id: I9737762255be61e5af2c32881d7024133f72bf1e Signed-off-by: William A. Kennington III <wak@google.com>
2021-11-18meta-quanta: gbs: Add explicit layer dependenciesWilliam A. Kennington III1-0/+1
We want the machine layer to be guaranteed to override our top-level layers. Change-Id: Ib071dad5b43c112d729bf7f85f36a9f6bd571b31 Signed-off-by: William A. Kennington III <wak@google.com>
2021-11-18meta-quanta: Add explicit layer dependenciesWilliam A. Kennington III1-0/+1
Change-Id: I8e6712aaed3a4698d65984fa5081c1a400a686be Signed-off-by: William A. Kennington III <wak@google.com>
2021-11-04Partially revert "treewide: remove obmc-system-mgmt feature"Patrick Williams4-0/+5
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>
2021-10-26treewide: remove obmc-system-mgmt featurePatrick Williams4-5/+0
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
2021-10-26treewide: clean up use of OBMC_MACHINE_FEATURESPatrick Williams3-3/+3
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
2021-10-05meta-quanta: gbs: enable hash api for systemdJunLin Chen1-0/+5
Kernel crypto/hash API CONFIG_CRYPTO_HMAC CONFIG_CRYPTO_SHA256 CONFIG_CRYPTO_USER_API_HASH The requirement can be found at https://github.com/systemd/systemd/blob/master/README This API is necessary for the UUID feature that you can find the implementation in the bmcweb. https://github.com/openbmc/bmcweb/blob/master/redfish-core/include/utils/systemd_utils.hpp Refer https://gerrit.openbmc-project.xyz/c/openbmc/openbmc/+/31523 but these were removed in https://gerrit.openbmc-project.xyz/c/openbmc/openbmc/+/41257 Signed-off-by: JunLin Chen <Jun-Lin.Chen@quantatw.com> Change-Id: If2dcc552198da05837659a560871db9084e3da37
2021-10-03certificate-manager: supply configs from the repoAnton D. Kachalov1-2/+1
This change is a part of the privilege seperation work which is tracked in: https://github.com/openbmc/openbmc/issues/3383 This change should be merged after individual repo change: https://gerrit.openbmc-project.xyz/c/openbmc/phosphor-certificate-manager/+/41166 Signed-off-by: Anton D. Kachalov <gmouse@google.com> Change-Id: I72e4842e7aa6de2ae4bcbdbf00953b7a79a0f414
2021-09-24meta-quanta: gbs: Update power-config-host0.jsonBrandon Kim1-6/+12
With a recent x86-power-control update, the json file to be parsed is expected to have a "Polarity" field. Add the same "Polarity" values for the existing fields. Reference: https://github.com/openbmc/x86-power-control/commit/50937e7339db744f765efdc3cc58f3d0c5976601 Signed-off-by: Brandon Kim <brandonkim@google.com> Change-Id: Ia60a87de0d9e3e97dbb03b1f8fb4e9fba32f87a6
2021-09-16bitbake: Use IPK packaging for rootfs assemblyAndrew Jeffery5-5/+5
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>
2021-09-07meta-quanta: gbs: Enable CONFIG_IPMI_KCS_BMC_CDEV_IPMIBrandon Kim1-9/+12
CONFIG_IPMI_KCS_BMC_CDEV_IPMI=y needs to be added to ensure that KCS works with the newer KCS driver in OpenBMC kernel. Signed-off-by: Brandon Kim <brandonkim@google.com> Change-Id: I12e97559562916acfd64adafbd9e61fe8fb5e672
2021-09-02meta-phosphor: change systemd.bbclass to match upstream override syntaxPatrick Williams12-36/+36
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
2021-09-01meta-quanta: gbs: install obmc-mapper.targetGeorge Hung1-0/+2
Some services need obmc-mapper.target to start in correct order, such as phosphor-virtual-sensors. ref: https://gerrit.openbmc-project.xyz/43952 https://gerrit.openbmc-project.xyz/43535 Signed-off-by: George Hung <george.hung@quantatw.com> Change-Id: Ia463c9f189d715336626ce9e46cad0a370e9b8dd
2021-08-31meta-quanta: meta-gsj: Remove unneeded packagesVivekanand Veeracholan2-1/+37
Remove the unneeded obmc packages and add specific ones that are used. Signed-off-by: Vivekanand Veeracholan <vveerach@google.com> Change-Id: I80472124ec1af684ebbd502219c8ae6d9f8fcee9
2021-08-24treewide: remove gategarth from layer-supportPatrick Williams6-6/+6
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
2021-08-19Revert "meta-quanta: gbs: update the related states D-bus service name"George Hung6-10/+10
This reverts commit 97466ae307a67c30d592c9d97a1e9d6e458e0e5b. Reason for revert: x86-power-control supports DBUS service name numbering for single and multi hosts now. ref: https://gerrit.openbmc-project.xyz/45004 Change-Id: Id1fb9e61a10a457158c52990fe6c196d6fc44708 Signed-off-by: George Hung <george.hung@quantatw.com>
2021-08-17Fix path to udev rules filesAnton Blanchard2-5/+5
Use nonarch_base_libdir instead of base_libdir, because the files are always in /lib/udev/rules.d/. On ppc64le base_libdir is lib64, and the files end up in the wrong spot. Signed-off-by: Anton Blanchard <anton@ozlabs.org> Change-Id: I3c24dae293f4166f1ed1826d09d4bde7cd7d0357
2021-08-17meta-quanta: Fix incorrect change in Yocto syntax updateDavid Wang12-36/+36
'SYSTEMD_ENVIRONMENT_FILE', 'SYSTEMD_LINK', 'SYSTEMD_OVERRIDE' should stay underscore Signed-off-by: David Wang <davidwang@quantatw.com> Change-Id: Ia30f306857d1552b19ff5ed06664c8bd5360cb4c
2021-08-16meta-quanta: gbs: Enable phosphor-sel-logger log-watchdogBrandon Kim1-1/+1
This is dependent on https://gerrit.openbmc-project.xyz/45865 Signed-off-by: Brandon Kim <brandonkim@google.com> Change-Id: Ia78c0a9f4bf4b2f97685e187acfeed90d1e0d126