/openbmc/phosphor-dbus-interfaces/yaml/xyz/openbmc_project/State/ |
H A D | Host.interface.yaml | 5 - name: RequestedHostTransition 12 - xyz.openbmc_project.State.Host.Error.BMCNotReady 13 - xyz.openbmc_project.Common.Error.NotAllowed 14 - xyz.openbmc_project.Common.Error.Unavailable 16 - name: AllowedHostTransitions 19 - const 26 - name: CurrentHostState 29 A read-only property describing the current state of the host 30 firmware. A user can determine if a system is in transition by 34 - name: RestartCause [all …]
|
/openbmc/linux/drivers/base/firmware_loader/ |
H A D | main.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * main.c - Multi purpose firmware loading support 7 * Please see Documentation/driver-api/firmware/ for more information. 26 #include <linux/firmware.h> 44 #include "firmware.h" 48 MODULE_DESCRIPTION("Multi purpose firmware loading support"); 59 * Names of firmware images which have been cached successfully 61 * helper can trace which firmware images have been cached 75 const char *name; member 80 const char *name; member [all …]
|
H A D | fallback.c | 1 // SPDX-License-Identifier: GPL-2.0 12 #include "firmware.h" 15 * firmware fallback mechanism 19 * use small loading timeout for caching devices' firmware because all these 20 * firmware images have been loaded successfully at lease once, also system is 21 * ready for completing firmware loading now. The maximum size of firmware in 57 if (!fw_priv->need_uevent || !only_kill_custom) in kill_pending_fw_fallback_reqs() 64 * fw_load_sysfs_fallback() - load a firmware via the sysfs fallback mechanism 65 * @fw_sysfs: firmware sysfs information for the firmware to load 68 * In charge of constructing a sysfs fallback interface for firmware loading. [all …]
|
/openbmc/linux/include/linux/ |
H A D | firmware.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 12 struct firmware { struct 16 /* firmware loader private fields */ argument 21 * enum fw_upload_err - firmware upload error codes argument 24 * @FW_UPLOAD_ERR_TIMEOUT: SW timed out on handshake with HW/firmware 27 * @FW_UPLOAD_ERR_INVALID_SIZE: invalid firmware image size 29 * @FW_UPLOAD_ERR_WEAROUT: FLASH device is approaching wear-out, wait & retry 46 void *priv; /* firmware loader private fields */ 50 * struct fw_upload_ops - device specific operations to support firmware upload 82 * Built-in firmware functionality is only available if FW_LOADER=y, but not [all …]
|
/openbmc/linux/drivers/base/firmware_loader/builtin/ |
H A D | main.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* Builtin firmware support */ 4 #include <linux/firmware.h> 5 #include "../firmware.h" 11 char *name; member 19 static bool fw_copy_to_prealloc_buf(struct firmware *fw, in fw_copy_to_prealloc_buf() 24 if (size < fw->size) in fw_copy_to_prealloc_buf() 26 memcpy(buf, fw->data, fw->size); in fw_copy_to_prealloc_buf() 31 * firmware_request_builtin() - load builtin firmware 32 * @fw: pointer to firmware struct [all …]
|
/openbmc/linux/tools/testing/selftests/firmware/ |
H A D | fw_fallback.sh | 2 # SPDX-License-Identifier: GPL-2.0 4 # to load firmware it can't find on disk itself. We must request a firmware 7 set -e 23 local name="$1" 27 echo -n "$name" >"$DIR"/trigger_request & 31 while [ ! -e "$DIR"/"$name"/loading ]; do 33 timeout=$(( $timeout - 1 )) 34 if [ "$timeout" -eq 0 ]; then 35 echo "$0: firmware interface never appeared" >&2 40 echo 1 >"$DIR"/"$name"/loading [all …]
|
H A D | fw_filesystem.sh | 2 # SPDX-License-Identifier: GPL-2.0 3 # This validates that the kernel will load firmware out of its list of 4 # firmware locations on disk. Since the user helper does similar work, 7 set -e 14 RUN_XZ="xz -C crc32 --lzma2=dict=2MiB" 15 RUN_ZSTD="zstd -q" 26 echo 1 >/sys/class/firmware/timeout 34 if [ ! -e "$DIR"/trigger_async_request ]; then 44 # Request a firmware that doesn't exist, it should fail. 45 if echo -n "nope-$NAME" >"$DIR"/trigger_request 2> /dev/null; then [all …]
|
H A D | fw_upload.sh | 2 # SPDX-License-Identifier: GPL-2.0 3 # This validates the user-initiated fw upload mechanism of the firmware 4 # loader. It verifies that one or more firmware devices can be created 7 set -e 13 errors="hw-error 15 device-busy 16 invalid-file-size 17 read-write-error 18 flash-wearout" 19 error_abort="user-abort" [all …]
|
/openbmc/openbmc-test-automation/redfish/update_service/ |
H A D | test_redfish_image_upload.robot | 12 # Refer below document to generate bad firmware images for testing. 13 # openbmc/openbmc-test-automation/blob/master/docs/code_update.md#generating-bad-firmware-image-for… 16 # OPENBMC_HOST The BMC host name or IP address. 20 # TFTP_SERVER The host name or IP of the TFTP server. 46 [Documentation] Upload a BMC firmware with a bad MANFIEST file. 48 [Template] Redfish Bad Firmware Update 50 # Image File Name 55 [Documentation] Upload a BMC firmware with no kernel image. 57 [Template] Redfish Bad Firmware Update 59 # Image File Name [all …]
|
/openbmc/u-boot/drivers/misc/ |
H A D | fs_loader.c | 1 // SPDX-License-Identifier: GPL-2.0 20 * struct firmware - A place for storing firmware and its attribute data. 22 * This holds information about a firmware and its content. 26 * @priv: Firmware loader private fields 27 * @name: Filename 30 struct firmware { struct 33 const char *name; member 58 return -ENOSYS; in mount_ubifs() 66 if (plat->phandlepart.phandle) { in select_fs_dev() 69 node = ofnode_get_by_phandle(plat->phandlepart.phandle); in select_fs_dev() [all …]
|
/openbmc/phosphor-webui/app/configuration/controllers/ |
H A D | firmware-controller.html | 3 <h1>Firmware</h1> 4 <div class="column small-12 page-header"> 5 <h2 class="inline">Manage BMC and server firmware</h2> 9 …<p>Use the following tables to manage firmware image files. The image file that is listed at the t… 10 …<p><a ng-click="gotoAnchor()">Scroll down to upload an image file</a> to transfer a new firmware i… 12 <firmware-list title="BMC images" version="bmcActiveVersion" firmwares="firmwares" filter-by="filte… 13 <firmware-list title="Server images" version="hostActiveVersion" firmwares="firmwares" filter-by="f… 15 <div class="column small-12 page-header"> 18 <form id="firmware__upload-form" role="form" class="firmware__upload-form"> 19 …located on your workstation or a TFTP server. An image file may contain firmware images for the se… [all …]
|
/openbmc/linux/drivers/net/wireless/marvell/libertas/ |
H A D | firmware.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Firmware loading and handling functions. 7 #include <linux/firmware.h> 16 const struct firmware *helper, const struct firmware *mainfw) in lbs_fw_loaded() 20 lbs_deb_fw("firmware load complete, code %d\n", ret); in lbs_fw_loaded() 23 priv->fw_callback(priv, ret, helper, mainfw); in lbs_fw_loaded() 25 spin_lock_irqsave(&priv->driver_lock, flags); in lbs_fw_loaded() 26 priv->fw_callback = NULL; in lbs_fw_loaded() 27 wake_up(&priv->fw_waitq); in lbs_fw_loaded() 28 spin_unlock_irqrestore(&priv->driver_lock, flags); in lbs_fw_loaded() [all …]
|
/openbmc/openbmc-test-automation/ipmi/ |
H A D | test_ipmi_systeminfo_parameters.robot | 5 ... 1. Set In Progress - param 0, 6 ... 2. System Firmware Version - param 1, 7 ... 3. System Name - param 2, 8 ... 4. Primary OS Name - param 3, 9 ... 5. OS Name - param 4, 10 ... 6. Present OS Version Number - param 5. 35 ... to set the set-in-progress and set complete state via IPMI, 39 # Set In Progress - set complete. 42 # Get System Info Parameter for param 0 - Set In Progress. 43 # Check if set-in-progress set to set complete. [all …]
|
/openbmc/linux/drivers/base/ |
H A D | property.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * property.c - Unified device property interface. 22 return IS_ENABLED(CONFIG_OF) && dev->of_node ? in __dev_fwnode() 23 of_fwnode_handle(dev->of_node) : dev->fwnode; in __dev_fwnode() 29 return IS_ENABLED(CONFIG_OF) && dev->of_node ? in __dev_fwnode_const() 30 of_fwnode_handle(dev->of_node) : dev->fwnode; in __dev_fwnode_const() 35 * device_property_present - check if a property of a device is present 37 * @propname: Name of the property 39 * Check if property @propname is present in the device firmware description. 50 * fwnode_property_present - check if a property of a firmware node is present [all …]
|
/openbmc/linux/drivers/gpu/drm/nouveau/nvkm/core/ |
H A D | firmware.c | 23 #include <core/firmware.h> 30 const char *name, int ver, const struct firmware **pfw) in nvkm_firmware_load_name() argument 35 snprintf(path, sizeof(path), "%s%s", base, name); in nvkm_firmware_load_name() 45 const char *name, int ver, struct nvkm_blob *blob) in nvkm_firmware_load_blob() argument 47 const struct firmware *fw; in nvkm_firmware_load_blob() 50 ret = nvkm_firmware_load_name(subdev, base, name, ver, &fw); in nvkm_firmware_load_blob() 52 blob->data = kmemdup(fw->data, fw->size, GFP_KERNEL); in nvkm_firmware_load_blob() 53 blob->size = fw->size; in nvkm_firmware_load_blob() 55 if (!blob->data) in nvkm_firmware_load_blob() 56 return -ENOMEM; in nvkm_firmware_load_blob() [all …]
|
/openbmc/phosphor-dbus-interfaces/yaml/xyz/openbmc_project/Condition/ |
H A D | HostFirmware.interface.yaml | 2 Implement to provide information on the condition of the host firmware. The 4 (IPMI, PLDM, ...) to check the state of the host firmware running on the 8 - name: CurrentFirmwareCondition 15 - name: FirmwareCondition 17 The current condition of the host firmware 19 - name: "Unknown" 21 The condition of the host firmware is unknown 22 - name: "Off" 24 Host firmware is not responsive to communication 25 - name: "Running" [all …]
|
/openbmc/linux/drivers/media/usb/dvb-usb/ |
H A D | dvb-usb-firmware.c | 1 // SPDX-License-Identifier: GPL-2.0 2 /* dvb-usb-firmware.c is part of the DVB USB library. 4 * Copyright (C) 2004-6 Patrick Boettcher (patrick.boettcher@posteo.de) 5 * see dvb-usb-init.c for copyright information. 7 * This file contains functions for downloading the firmware to Cypress FX 1 and 2 based devices. 9 * FIXME: This part does actually not belong to dvb-usb, but to the usb-subsystem. 11 #include "dvb-usb-common.h" 17 const char *name; /* name of the usb controller */ member 18 u16 cpu_cs_register; /* needs to be restarted, when the firmware has been downloaded. */ 22 { .id = DEVICE_SPECIFIC, .name = "Device specific", .cpu_cs_register = 0 }, [all …]
|
/openbmc/linux/Documentation/ABI/testing/ |
H A D | sysfs-firmware-qemu_fw_cfg | 1 What: /sys/firmware/qemu_fw_cfg/ 6 sun4*, ppc/mac) are provisioned with a firmware configuration 8 provide configuration data to the guest firmware. Starting 11 useful as an out-of-band, asynchronous mechanism for providing 14 The authoritative guest-side hardware interface documentation 17 https://qemu-project.gitlab.io/qemu/specs/fw_cfg.html 29 /sys/firmware/qemu_fw_cfg/ 33 /sys/firmware/qemu_fw_cfg/rev 41 /sys/firmware/qemu_fw_cfg/by_key/32 42 /sys/firmware/qemu_fw_cfg/by_key/33 [all …]
|
/openbmc/linux/Documentation/admin-guide/acpi/ |
H A D | ssdt-overlays.rst | 1 .. SPDX-License-Identifier: GPL-2.0 7 In order to support ACPI open-ended hardware configurations (e.g. development 8 boards) we need a way to augment the ACPI configuration provided by the firmware 13 recompiling the firmware image with updated ACPI tables, neither is practical: 15 access to firmware tools which are often not publicly available. 18 way to augment firmware ACPI configuration is by dynamically loading 33 Name (_HID, "BMA222E") 34 Name (RBUF, ResourceTemplate () 59 ASL Optimizing Compiler version 20140214-64 [Mar 29 2014] 60 Copyright (c) 2000 - 2014 Intel Corporation [all …]
|
/openbmc/bmcweb/redfish-core/schema/oem/openbmc/csdl/ |
H A D | OpenBMCComputerSystem_v1.xml | 1 <?xml version="1.0" encoding="UTF-8"?> 2 <edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0"> 3 …<edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabular… 19 <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OpenBMCComputerSystem"> 28 … <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OpenBMCComputerSystem.v1_0_0"> 29 <ComplexType Name="Oem" BaseType="Resource.OemObject"> 33 <Property Name="OpenBmc" Type="OpenBMCComputerSystem.OpenBmc"/> 35 <ComplexType Name="OpenBmc" BaseType="Resource.OemObject"> 42 <PropertyValue Property="Pattern" String="[A-Za-z0-9_.:]+"/> 48 <ComplexType Name="FirmwareProvisioning" BaseType="Resource.OemObject"> [all …]
|
/openbmc/linux/Documentation/networking/devlink/ |
H A D | devlink-info.rst | 1 .. SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 7 The ``devlink-info`` mechanism enables device drivers to report device 8 (hardware and firmware) information in a standard, extensible fashion. 10 The original motivation for the ``devlink-info`` API was twofold: 12 - making it possible to automate device and firmware management in a fleet 13 of machines in a vendor-independent fashion (see also 14 :ref:`Documentation/networking/devlink/devlink-flash.rst <devlink_flash>`); 15 - name the per component FW versions (as opposed to the crowded ethtool 18 ``devlink-info`` supports reporting multiple types of objects. Reporting driver 19 versions is generally discouraged - here, and via any other Linux API. [all …]
|
/openbmc/linux/Documentation/driver-api/firmware/ |
H A D | fallback-mechanisms.rst | 6 filesystem lookup on the root filesystem or when the firmware simply cannot be 8 configuration options related to supporting the firmware fallback mechanism are: 10 * CONFIG_FW_LOADER_USER_HELPER: enables building the firmware fallback 15 enable the kobject uevent fallback mechanism on all firmware API calls 21 manually load the firmware. Read below for more details. 31 Justifying the firmware fallback mechanism 40 * Races upon resume from suspend. This is resolved by the firmware cache, but 41 the firmware cache is only supported if you use uevents, and its not 44 * Firmware is not accessible through typical means: 47 * The firmware provides very unique device specific data tailored for [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/remoteproc/ |
H A D | ti,pru-rproc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/remoteproc/ti,pru-rproc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Suman Anna <s-anna@ti.com> 13 Each Programmable Real-Time Unit and Industrial Communication Subsystem 14 (PRU-ICSS or PRUSS) has two 32-bit load/store RISC CPU cores called 15 Programmable Real-Time Units (PRUs), each represented by a node. Each PRU 17 use the Data RAMs present within the PRU-ICSS for code execution. 27 corresponding PRU-ICSS node. Each node can optionally be rendered inactive by [all …]
|
/openbmc/linux/drivers/pmdomain/bcm/ |
H A D | raspberrypi-power.c | 1 // SPDX-License-Identifier: GPL-2.0 13 #include <dt-bindings/power/raspberrypi-power.h> 14 #include <soc/bcm2835/raspberrypi-firmware.h> 17 * Firmware indices for the old power domains interface. Only a few 48 * Asks the firmware to enable or disable power on a specific power 55 packet.domain = rpi_domain->domain; in rpi_firmware_set_power() 57 return rpi_firmware_property(rpi_domain->fw, in rpi_firmware_set_power() 58 rpi_domain->old_interface ? in rpi_firmware_set_power() 81 int xlate_index, const char *name) in rpi_common_init_power_domain() argument 83 struct rpi_power_domain *dom = &rpi_domains->domains[xlate_index]; in rpi_common_init_power_domain() [all …]
|
/openbmc/linux/drivers/staging/greybus/Documentation/firmware/ |
H A D | firmware-management | 2 Firmware Management 3 ------------------- 7 Interface-Manifest 8 ------------------ 10 All firmware packages on the Modules or Interfaces are managed by a special 11 Firmware Management Protocol. To support Firmware Management by the AP, the 12 Interface Manifest shall at least contain the Firmware Management Bundle and a 13 Firmware Management Protocol CPort within it. 16 required to manage firmware packages. 18 For example, this is how the Firmware Management part of the Interface Manifest [all …]
|