/linux-6.3-rc2/Documentation/ABI/stable/ |
A D | sysfs-driver-firmware-zynqmp | 1 What: /sys/devices/platform/firmware\:zynqmp-firmware/ggs* 17 # cat /sys/devices/platform/firmware\:zynqmp-firmware/ggs0 18 # echo <value> > /sys/devices/platform/firmware\:zynqmp-firmware/ggs0 22 # cat /sys/devices/platform/firmware\:zynqmp-firmware/ggs0 23 # echo 0x1234ABCD > /sys/devices/platform/firmware\:zynqmp-firmware/ggs0 27 What: /sys/devices/platform/firmware\:zynqmp-firmware/pggs* 46 # cat /sys/devices/platform/firmware\:zynqmp-firmware/pggs0 51 # cat /sys/devices/platform/firmware\:zynqmp-firmware/pggs0 56 What: /sys/devices/platform/firmware\:zynqmp-firmware/shutdown_scope 93 What: /sys/devices/platform/firmware\:zynqmp-firmware/health_status [all …]
|
/linux-6.3-rc2/drivers/gpu/drm/tegra/ |
A D | falcon.c | 67 const struct firmware *firmware) in falcon_copy_firmware_image() argument 69 u32 *virt = falcon->firmware.virt; in falcon_copy_firmware_image() 117 err = request_firmware(&falcon->firmware.firmware, name, falcon->dev); in falcon_read_firmware() 121 falcon->firmware.size = falcon->firmware.firmware->size; in falcon_read_firmware() 128 const struct firmware *firmware = falcon->firmware.firmware; in falcon_load_firmware() local 141 release_firmware(firmware); in falcon_load_firmware() 142 falcon->firmware.firmware = NULL; in falcon_load_firmware() 149 falcon->firmware.virt = NULL; in falcon_init() 156 if (falcon->firmware.firmware) in falcon_exit() 157 release_firmware(falcon->firmware.firmware); in falcon_exit() [all …]
|
/linux-6.3-rc2/Documentation/driver-api/firmware/ |
A D | firmware_cache.rst | 5 When Linux resumes from suspend some device drivers require firmware lookups to 7 firmware lookups are not possible, during this short period of time firmware 9 the root filesystem for firmware delays user experience with device 10 functionality. In order to support these requirements the firmware 14 The firmware cache makes using certain firmware API calls safe during a device 16 the firmware by themselves for dealing with firmware loss during system resume. 18 The firmware cache works by requesting for firmware prior to suspend and 24 Some implementation details about the firmware cache setup: 33 if the firmware file is not found. 37 device making the firmware request. [all …]
|
A D | request_firmware.rst | 5 You would typically load firmware and then load it into your device somehow. 6 The typical firmware work flow is reflected below:: 12 Synchronous firmware requests 15 Synchronous firmware requests will wait until the firmware is found or until 43 Asynchronous firmware requests 46 Asynchronous firmware requests allow driver code to not have to wait 47 until the firmware or an error is returned. Function callbacks are 48 provided so that when the firmware or an error is found the driver is 64 firmware to be loaded. 71 request firmware API expected driver use [all …]
|
A D | firmware-usage-guidelines.rst | 6 firmware files to keep their hardware working. At the same time updated 7 firmware files must not cause any regressions for users of older kernel 10 Drivers that use firmware from linux-firmware should follow the rules in 11 this guide. (Where there is limited control of the firmware, 16 firmware ABI version changes. It is recommended that firmware files be 18 the firmware files in linux-firmware be named with some device 20 be stored in the firmware header, or as an exception, as part of the 21 firmware file name, in order to let the driver detact any non-ABI 22 fixes/changes. The firmware files in linux-firmware should be 24 version firmware shall remain compatible with all kernels that load [all …]
|
A D | built-in-fw.rst | 2 Built-in firmware 5 Firmware can be built-in to the kernel, this means building the firmware 6 into vmlinux directly, to enable avoiding having to look for firmware from 7 the filesystem. Instead, firmware can be looked for inside the kernel 8 directly. You can enable built-in firmware using the kernel configuration 19 want to stuff the firmware into the boot initramfs. 22 able to make use of built-in firmware: 24 * Legalese - firmware is non-GPL compatible 25 * Some firmware may be optional 26 * Firmware upgrades are possible, therefore a new firmware would implicate [all …]
|
A D | fallback-mechanisms.rst | 84 and a file upload firmware into: 90 you are loading firmware. You then write the firmware into the data file, 94 The firmware device used to help load firmware using sysfs is only created if 151 * FIRMWARE=firmware name 159 MY_FW_DIR=/lib/firmware/ 179 also setup the firmware cache for firmware requests. As documented above, 192 The firmware fallback mechanism has a timeout. If firmware is not loaded 202 * /sys/class/firmware/timeout 243 drivers/firmware/efi/embedded-firmware.c wrapped in a #ifdef testing that 258 embedded-firmware. [all …]
|
A D | lookup-order.rst | 5 Different functionality is available to enable firmware to be found. 6 Below is chronological order of how firmware will be looked for once 7 a driver issues a firmware API call. 9 * The ''Built-in firmware'' is checked first, if the firmware is present we 11 * The ''Firmware cache'' is looked at next. If the firmware is found we 15 * The ''Platform firmware fallback'' is performed next, but only when 17 * If no firmware has been found and the fallback mechanism was enabled 19 is issued or the custom firmware loading is relied upon for firmware
|
/linux-6.3-rc2/Documentation/ABI/testing/ |
A D | sysfs-class-firmware | 1 What: /sys/class/firmware/.../data 6 firmware uploads. Cat a firmware image to this sysfs file 10 signal the lower-level driver that the firmware data is 13 What: /sys/class/firmware/.../cancel 23 What: /sys/class/firmware/.../error 37 What: /sys/class/firmware/.../loading 47 firmware data to the lower-level device driver. 49 What: /sys/class/firmware/.../remaining_size 62 What: /sys/class/firmware/.../status 70 What: /sys/class/firmware/.../timeout [all …]
|
A D | sysfs-firmware-efi-esrt | 1 What: /sys/firmware/efi/esrt/ 5 (ESRT), a catalog of firmware for which can be updated with 10 What: /sys/firmware/efi/esrt/fw_resource_count 15 What: /sys/firmware/efi/esrt/fw_resource_count_max 20 really only useful to the system firmware itself. 22 What: /sys/firmware/efi/esrt/fw_resource_version 27 What: /sys/firmware/efi/esrt/entries/entry<N>/ 32 example: /sys/firmware/efi/esrt/entries/entry0/ 34 What: /sys/firmware/efi/esrt/entries/entry<N>/fw_type 37 Description: What kind of firmware entry this is: [all …]
|
A D | sysfs-firmware-memmap | 1 What: /sys/firmware/memmap/ 25 /sys/firmware/memmap/0 26 /sys/firmware/memmap/1 27 /sys/firmware/memmap/2 28 /sys/firmware/memmap/3 32 by the firmware. The order is just the order that the firmware 48 /sys/firmware/memmap/0/start 49 /sys/firmware/memmap/0/end 50 /sys/firmware/memmap/0/type 51 /sys/firmware/memmap/1/start [all …]
|
A D | sysfs-firmware-gsmi | 1 What: /sys/firmware/gsmi 5 Some servers used internally at Google have firmware 19 /sys/firmware/gsmi/vars: 23 See `Documentation/ABI/*/sysfs-firmware-efi-vars` 27 /sys/firmware/gsmi/append_to_eventlog - write-only: 30 the firmware to be timestamped and appended to 32 interpreted by the firmware and may change from 36 firmware call. 38 /sys/firmware/gsmi/clear_config - write-only: 41 entire firmware configuration to be reset to [all …]
|
/linux-6.3-rc2/Documentation/driver-api/nvdimm/ |
A D | firmware-activate.rst | 7 Some persistent memory devices run a firmware locally on the device / 17 to advertise and control their local runtime firmware activation 25 No devices are set / armed to activate firmware 45 firmware activation without this hibernation cycle. The 47 firmware activation capability is detected. 52 firmware. A capability value of 'quiesce' indicates that firmware does 60 'nmemX/firmware/activate' and 'nmemX/firmware/result' attributes to 62 'ndbusX/firmware/activate' attribute, the 'nmemX/firmware/activate' 65 firmware staged + state set to armed, and 'ndbusX/firmware/activate' is 80 firmware image not being staged. [all …]
|
/linux-6.3-rc2/include/linux/ |
A D | firmware.h | 12 struct firmware { struct 86 bool firmware_request_builtin(struct firmware *fw, const char *name); 88 static inline bool firmware_request_builtin(struct firmware *fw, in firmware_request_builtin() 96 int request_firmware(const struct firmware **fw, const char *name, 105 void (*cont)(const struct firmware *fw, void *context)); 108 int request_firmware_into_buf(const struct firmware **firmware_p, 114 void release_firmware(const struct firmware *fw); 116 static inline int request_firmware(const struct firmware **fw, in request_firmware() 140 void (*cont)(const struct firmware *fw, void *context)) in request_firmware_nowait() 145 static inline void release_firmware(const struct firmware *fw) in release_firmware() [all …]
|
/linux-6.3-rc2/drivers/base/firmware_loader/ |
A D | Kconfig | 13 o /lib/firmware/updates/UTS_RELEASE 14 o /lib/firmware/updates 15 o /lib/firmware/UTS_RELEASE 16 o /lib/firmware 20 need firmware. 41 kernel firmware files. Built-in firmware searches are preceded 53 /lib/firmware by default. 71 default "/lib/firmware" 84 firmware failed using the different /lib/firmware/ paths, or the 102 to listen for uvents to load firmware for the kernel. The firmware [all …]
|
/linux-6.3-rc2/sound/pci/asihpi/ |
A D | hpidspcd.c | 18 const struct firmware *firmware; member 26 const struct firmware *firmware; in hpi_dsp_code_open() local 37 if (err || !firmware) { in hpi_dsp_code_open() 42 if (firmware->size < sizeof(header)) { in hpi_dsp_code_open() 46 memcpy(&header, firmware->data, sizeof(header)); in hpi_dsp_code_open() 50 || (header.size != firmware->size)) { in hpi_dsp_code_open() 53 header.size, firmware->size); in hpi_dsp_code_open() 79 dsp_code->pvt->firmware = firmware; in hpi_dsp_code_open() 86 release_firmware(firmware); in hpi_dsp_code_open() 96 release_firmware(dsp_code->pvt->firmware); in hpi_dsp_code_close() [all …]
|
/linux-6.3-rc2/drivers/gpu/drm/i915/gvt/ |
A D | firmware.c | 75 void *firmware; in expose_firmware_sysfs() local 81 firmware = vzalloc(size); in expose_firmware_sysfs() 82 if (!firmware) in expose_firmware_sysfs() 85 h = firmware; in expose_firmware_sysfs() 115 vfree(firmware); in expose_firmware_sysfs() 140 vfree(gvt->firmware.mmio); in intel_gvt_free_firmware() 202 struct intel_gvt_firmware *firmware = &gvt->firmware; in intel_gvt_load_firmware() local 204 const struct firmware *fw; in intel_gvt_load_firmware() 219 firmware->cfg_space = mem; in intel_gvt_load_firmware() 224 kfree(firmware->cfg_space); in intel_gvt_load_firmware() [all …]
|
/linux-6.3-rc2/Documentation/devicetree/bindings/arm/bcm/ |
A D | raspberrypi,bcm2835-firmware.yaml | 7 title: Raspberry Pi VideoCore firmware driver 17 const: raspberrypi,bcm2835-firmware 25 - const: raspberrypi,bcm2835-firmware 36 const: raspberrypi,firmware-clocks 42 firmware messages. 53 const: raspberrypi,firmware-reset 69 const: raspberrypi,firmware-poe-pwm 89 firmware { 94 compatible = "raspberrypi,firmware-clocks"; 99 compatible = "raspberrypi,firmware-reset"; [all …]
|
/linux-6.3-rc2/include/linux/soc/qcom/ |
A D | mdt_loader.h | 12 struct firmware; 17 ssize_t qcom_mdt_get_size(const struct firmware *fw); 18 int qcom_mdt_pas_init(struct device *dev, const struct firmware *fw, 21 int qcom_mdt_load(struct device *dev, const struct firmware *fw, 26 int qcom_mdt_load_no_init(struct device *dev, const struct firmware *fw, 30 void *qcom_mdt_read_metadata(const struct firmware *fw, size_t *data_len, 35 static inline ssize_t qcom_mdt_get_size(const struct firmware *fw) in qcom_mdt_get_size() 40 static inline int qcom_mdt_pas_init(struct device *dev, const struct firmware *fw, in qcom_mdt_pas_init() 47 static inline int qcom_mdt_load(struct device *dev, const struct firmware *fw, in qcom_mdt_load() 56 const struct firmware *fw, in qcom_mdt_load_no_init() [all …]
|
/linux-6.3-rc2/drivers/bluetooth/ |
A D | bcm203x.c | 154 const struct firmware *firmware; in bcm203x_probe() local 181 BT_DBG("minidrv data %p size %zu", firmware->data, firmware->size); in bcm203x_probe() 183 size = max_t(uint, firmware->size, 4096); in bcm203x_probe() 188 release_firmware(firmware); in bcm203x_probe() 193 memcpy(data->buffer, firmware->data, firmware->size); in bcm203x_probe() 198 release_firmware(firmware); in bcm203x_probe() 207 BT_DBG("firmware data %p size %zu", firmware->data, firmware->size); in bcm203x_probe() 209 data->fw_data = kmemdup(firmware->data, firmware->size, GFP_KERNEL); in bcm203x_probe() 212 release_firmware(firmware); in bcm203x_probe() 218 data->fw_size = firmware->size; in bcm203x_probe() [all …]
|
A D | ath3k.c | 205 const struct firmware *firmware) in ath3k_load_firmware() argument 210 int count = firmware->size; in ath3k_load_firmware() 274 const struct firmware *firmware) in ath3k_load_fwfile() argument 281 count = firmware->size; in ath3k_load_fwfile() 358 const struct firmware *firmware; in ath3k_load_patch() local 390 firmware->size - 8); in ath3k_load_patch() 402 release_firmware(firmware); in ath3k_load_patch() 411 const struct firmware *firmware; in ath3k_load_syscfg() local 453 release_firmware(firmware); in ath3k_load_syscfg() 461 const struct firmware *firmware; in ath3k_probe() local [all …]
|
/linux-6.3-rc2/drivers/media/usb/as102/ |
A D | as102_fw.c | 93 const struct firmware *firmware) { in as102_firmware_upload() argument 109 (u8 *) (firmware->data + total_read_bytes), in as102_firmware_upload() 120 if (total_read_bytes == firmware->size) { in as102_firmware_upload() 158 const struct firmware *firmware = NULL; in as102_fw_upload() local 180 errno = request_firmware(&firmware, fw1, &dev->dev); in as102_fw_upload() 188 errno = as102_firmware_upload(bus_adap, cmd_buf, firmware); in as102_fw_upload() 197 release_firmware(firmware); in as102_fw_upload() 198 firmware = NULL; in as102_fw_upload() 204 errno = request_firmware(&firmware, fw2, &dev->dev); in as102_fw_upload() 212 errno = as102_firmware_upload(bus_adap, cmd_buf, firmware); in as102_fw_upload() [all …]
|
/linux-6.3-rc2/drivers/net/wireless/marvell/libertas/ |
A D | firmware.c | 16 const struct firmware *helper, const struct firmware *mainfw) in lbs_fw_loaded() 45 static void main_firmware_cb(const struct firmware *firmware, void *context) in main_firmware_cb() argument 49 if (!firmware) { in main_firmware_cb() 56 lbs_fw_loaded(priv, 0, priv->helper_fw, firmware); in main_firmware_cb() 61 release_firmware (firmware); in main_firmware_cb() 64 static void helper_firmware_cb(const struct firmware *firmware, void *context) in helper_firmware_cb() argument 68 if (!firmware) { in helper_firmware_cb() 76 priv->helper_fw = firmware; in helper_firmware_cb() 80 lbs_fw_loaded(priv, 0, firmware, NULL); in helper_firmware_cb() 174 const struct firmware **helper, in lbs_get_firmware() [all …]
|
/linux-6.3-rc2/Documentation/devicetree/bindings/soc/fsl/cpm_qe/qe/ |
A D | firmware.txt | 1 * Uploaded QE firmware 3 If a new firmware has been uploaded to the QE (usually by the 4 boot loader), then a 'firmware' child node should be added to the QE 5 node. This node provides information on the uploaded firmware that 9 - id: The string name of the firmware. This is taken from the 'id' 10 member of the qe_firmware structure of the uploaded firmware. 12 firmware they want is already present. 14 firmware binary. It is a 64-bit number represented 16 - virtual-traps: The virtual traps, taken from the firmware binary. 20 firmware {
|
/linux-6.3-rc2/Documentation/devicetree/bindings/input/touchscreen/ |
A D | raspberrypi,firmware-ts.txt | 1 Raspberry Pi firmware based 7" touchscreen 5 - compatible: "raspberrypi,firmware-ts" 8 - firmware: Reference to RPi's firmware device node 17 firmware: firmware-rpi { 18 compatible = "raspberrypi,bcm2835-firmware"; 22 compatible = "raspberrypi,firmware-ts";
|