/linux/drivers/usb/typec/ucsi/ |
H A D | displayport.c | 1 // SPDX-License-Identifier: GPL-2.0 26 bool initialized; member 45 * -EOPNOTSUPP. 51 struct ucsi *ucsi = dp->con->ucsi; in ucsi_displayport_enter() 57 if (!ucsi_con_mutex_lock(dp->con)) in ucsi_displayport_enter() 58 return -ENOTCONN; in ucsi_displayport_enter() 60 if (!dp->override && dp->initialized) { in ucsi_displayport_enter() 63 dev_warn(&p->dev, in ucsi_displayport_enter() 64 "firmware doesn't support alternate mode overriding\n"); in ucsi_displayport_enter() 65 ret = -EOPNOTSUPP; in ucsi_displayport_enter() [all …]
|
/linux/drivers/net/wireless/broadcom/brcm80211/brcmfmac/ |
H A D | common.h | 1 // SPDX-License-Identifier: ISC 16 * The mp_global is instantiated once in a global struct and gets initialized 19 * of the drvr struct and should be initialized on every brcmf_attach. 23 * struct brcmf_mp_global_t - Global module paramaters. 25 * @firmware_path: Alternative firmware path. 34 * struct brcmf_mp_device - Device module paramaters. 39 * @roamoff: Firmware roaming off? 41 * @trivial_ccode_map: Assume firmware uses ISO3166 country codes with rev 0
|
/linux/drivers/media/dvb-frontends/ |
H A D | or51211.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Support for OR51211 (pcHDTV HD-2000) - VSB 14 * This driver needs external firmware. Please use the command 16 * download/extract it, and then copy it to /usr/lib/hotplug/firmware 17 * or /lib/firmware (depending on configuration of firmware hotplug). 19 #define OR51211_DEFAULT_FIRMWARE "dvb-fe-or51211.fw" 24 #include <linux/firmware.h> 51 u8 initialized:1; member 68 if ((err = i2c_transfer (state->i2c, &msg, 1)) != 1) { in i2c_writebytes() 70 return -EREMOTEIO; in i2c_writebytes() [all …]
|
H A D | si2168.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Silicon Labs Si2168 DVB-T/T2/C demodulator driver 16 memcpy(cmd->args, buf, wlen); in cmd_init() 17 cmd->wlen = wlen; in cmd_init() 18 cmd->rlen = rlen; in cmd_init() 21 /* execute firmware command */ 28 mutex_lock(&dev->i2c_mutex); in si2168_cmd_execute() 30 if (cmd->wlen) { in si2168_cmd_execute() 31 /* write cmd and args for firmware */ in si2168_cmd_execute() 32 ret = i2c_master_send(client, cmd->args, cmd->wlen); in si2168_cmd_execute() [all …]
|
H A D | si2168_priv.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * Silicon Labs Si2168 DVB-T/T2/C demodulator driver 13 #include <linux/firmware.h> 14 #include <linux/i2c-mux.h> 17 #define SI2168_A20_FIRMWARE "dvb-demod-si2168-a20-01.fw" 18 #define SI2168_A30_FIRMWARE "dvb-demod-si2168-a30-01.fw" 19 #define SI2168_B40_FIRMWARE "dvb-demod-si2168-b40-01.fw" 20 #define SI2168_D60_FIRMWARE "dvb-demod-si2168-d60-01.fw" 39 unsigned int initialized:1; member 45 /* firmware command struct */
|
/linux/drivers/net/wireless/silabs/wfx/ |
H A D | fwio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Firmware loading. 5 * Copyright (c) 2017-2020, Silicon Laboratories, Inc. 6 * Copyright (c) 2010, ST-Ericsson 8 #include <linux/firmware.h> 67 [ERR_AES_CTRL_KEY] = "AES control key not initialized", 68 [ERR_ECC_PUB_KEY] = "ECC public key not initialized", 69 [ERR_MAC_KEY] = "MAC key not initialized", 78 * NOTE: it may also be possible to use 'pages' from struct firmware and avoid bounce buffer 88 return -ENOMEM; in wfx_sram_write_dma_safe() [all …]
|
/linux/Documentation/devicetree/bindings/pci/ |
H A D | host-generic-pci.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/host-generic-pci.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Will Deacon <will@kernel.org> 13 Firmware-initialised PCI host controllers and PCI emulations, such as the 14 virtio-pci implementations found in kvmtool and other para-virtualised 21 Configuration Space is assumed to be memory-mapped (as opposed to being 26 For CAM, this 24-bit offset is: 41 - description: [all …]
|
/linux/Documentation/arch/arm/ |
H A D | firmware.rst | 2 Interface for registering and calling firmware-specific operations for ARM 7 Some boards are running with secure firmware running in TrustZone secure 8 world, which changes the way some things have to be initialized. This makes 9 a need to provide an interface for such platforms to specify available firmware 12 Firmware operations can be specified by filling in a struct firmware_ops 18 The ops pointer must be non-NULL. More information about struct firmware_ops 19 and its members can be found in arch/arm/include/asm/firmware.h header. 22 set anything if platform does not require firmware operations. 24 To call a firmware operation, a helper macro is provided:: 27 ((firmware_ops->op) ? firmware_ops->op(__VA_ARGS__) : (-ENOSYS)) [all …]
|
/linux/Documentation/driver-api/mei/ |
H A D | mei.rst | 1 .. SPDX-License-Identifier: GPL-2.0 7 resource (Co-processor) residing inside certain Intel chipsets. The Intel ME 18 each client has its own protocol. The protocol is message-based with a 34 The driver is transparent to data that are passed between firmware feature 50 .. code-block:: C 83 ------------------------- 84 Connect to firmware Feature/Client. 86 .. code-block:: none 96 struct mei_connect_client_data - contain the following 99 in_client_uuid - GUID of the FW Feature that needs [all …]
|
/linux/Documentation/ABI/testing/ |
H A D | sysfs-class-firmware | 1 What: /sys/class/firmware/.../data 5 Description: The data sysfs file is used for firmware-fallback and for 6 firmware uploads. Cat a firmware image to this sysfs file 7 after you echo 1 to the loading sysfs file. When the firmware 9 sequence will signal the completion of the firmware write and 10 signal the lower-level driver that the firmware data is 13 What: /sys/class/firmware/.../cancel 17 Description: Write-only. For firmware uploads, write a "1" to this file to 18 request that the transfer of firmware data to the lower-level 21 progress) or (ENODEV) if there is no firmware update in progress. [all …]
|
/linux/drivers/soc/fsl/qe/ |
H A D | qe.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright (C) 2006-2010 Freescale Semiconductor, Inc. All rights reserved. 50 static phys_addr_t qebase = -1; 72 if (qebase != -1) in get_qe_base() 113 iowrite32be((u32)(cmd | QE_CR_FLG), &qe_immr->cp.cecr); in qe_issue_cmd() 116 /* Here device is the SNUM, not sub-block */ in qe_issue_cmd() 130 iowrite32be(cmd_input, &qe_immr->cp.cecdr); in qe_issue_cmd() 132 &qe_immr->cp.cecr); in qe_issue_cmd() 136 ret = readx_poll_timeout_atomic(ioread32be, &qe_immr->cp.cecr, val, in qe_issue_cmd() 138 /* On timeout, ret is -ETIMEDOUT, otherwise it will be 0. */ in qe_issue_cmd() [all …]
|
/linux/include/linux/ |
H A D | fwnode.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * fwnode.h - Firmware device node object handle type definition. 5 * This header file provides low-level data types and definitions for firmware 36 * INITIALIZED: The hardware corresponding to fwnode has been initialized. 81 * struct fwnode_endpoint - Fwnode graph endpoint 102 * struct fwnode_reference_args - Fwnode reference with additional arguments 103 * @fwnode:- A reference to the base fwnode 114 * struct fwnode_operations - Operations for fwnode interface 188 (!IS_ERR_OR_NULL(fwnode) && (fwnode)->ops && (fwnode)->ops->op) 192 (fwnode)->ops->op(fwnode, ## __VA_ARGS__) : (IS_ERR_OR_NULL(fwnode) ? -EINVAL : -ENXIO)) [all …]
|
/linux/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_psp.c | 26 #include <linux/firmware.h> 58 struct amdgpu_device *adev = psp->adev; in psp_ring_init() 60 ring = &psp->km_ring; in psp_ring_init() 62 ring->ring_type = ring_type; in psp_ring_init() 65 ring->ring_size = 0x1000; in psp_ring_init() 66 ret = amdgpu_bo_create_kernel(adev, ring->ring_size, PAGE_SIZE, in psp_ring_init() 69 &adev->firmware.rbuf, in psp_ring_init() 70 &ring->ring_mem_mc_addr, in psp_ring_init() 71 (void **)&ring->ring_mem); in psp_ring_init() 73 ring->ring_size = 0; in psp_ring_init() [all …]
|
/linux/drivers/scsi/qla4xxx/ |
H A D | ql4_init.c | 1 // SPDX-License-Identifier: GPL-2.0-only 4 * Copyright (c) 2003-2013 QLogic Corporation 19 spin_lock_irqsave(&ha->hardware_lock, flags); in ql4xxx_set_mac_number() 20 value = readw(&ha->reg->ctrl_status); in ql4xxx_set_mac_number() 21 spin_unlock_irqrestore(&ha->hardware_lock, flags); in ql4xxx_set_mac_number() 25 ha->mac_index = 1; in ql4xxx_set_mac_number() 28 ha->mac_index = 3; in ql4xxx_set_mac_number() 32 "ispControlStatus = 0x%x\n", ha->host_no, in ql4xxx_set_mac_number() 36 DEBUG2(printk("scsi%ld: %s: mac_index %d.\n", ha->host_no, __func__, in ql4xxx_set_mac_number() 37 ha->mac_index)); in ql4xxx_set_mac_number() [all …]
|
/linux/drivers/cpuidle/ |
H A D | dt_idle_states.c | 1 // SPDX-License-Identifier: GPL-2.0-only 9 #define pr_fmt(fmt) "DT idle-states: " fmt 32 idle_state->enter = match_id->data; in init_state_node() 38 idle_state->enter_s2idle = match_id->data; in init_state_node() 40 err = of_property_read_u32(state_node, "wakeup-latency-us", in init_state_node() 41 &idle_state->exit_latency); in init_state_node() 45 err = of_property_read_u32(state_node, "entry-latency-us", in init_state_node() 48 pr_debug(" * %pOF missing entry-latency-us property\n", in init_state_node() 50 return -EINVAL; in init_state_node() 53 err = of_property_read_u32(state_node, "exit-latency-us", in init_state_node() [all …]
|
/linux/drivers/net/wireless/microchip/wilc1000/ |
H A D | netdev.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * Copyright (c) 2012 - 2018 Microchip Technology Inc., and its subsidiaries. 36 list_for_each_entry_srcu(v, &_w->vif_list, list, \ 37 srcu_read_lock_held(&_w->srcu)) 205 bool initialized; member 214 bool initialized; member 228 * - sending commands to the chip, using info from retrieved vif 229 * - registering a new monitoring net device 255 /* lock to protect issue of wid command to firmware */ 272 const struct firmware *firmware; member
|
/linux/drivers/firmware/arm_scmi/ |
H A D | protocols.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 44 * struct scmi_msg_resp_prot_version - Response for a message 46 * @minor_version: Minor version of the ABI that firmware supports 47 * @major_version: Major version of the ABI that firmware supports 61 * struct scmi_msg - Message(Tx/Rx) structure 72 * struct scmi_msg_hdr - Message(Tx/Rx) header 94 * struct scmi_xfer - Structure representing a message flow 99 * @rx: Receive message, the buffer should be pre-allocated to store 100 * message. If request-ACK protocol is used, we can reuse the same 113 * though the timed-out transaction will anyway cause the command [all …]
|
/linux/drivers/input/touchscreen/ |
H A D | rohm_bu21023.c | 1 // SPDX-License-Identifier: GPL-2.0-only 7 #include <linux/firmware.h> 37 * BU21023GUL/BU21023MUV/BU21024FV-M registers map 261 bool initialized; member 270 * rohm_i2c_burst_read - execute combined I2C message for ROHM BU21023/24 285 struct i2c_adapter *adap = client->adapter; in rohm_i2c_burst_read() 289 msg[0].addr = client->addr; in rohm_i2c_burst_read() 294 msg[1].addr = client->addr; in rohm_i2c_burst_read() 303 ret = -EIO; in rohm_i2c_burst_read() 315 struct i2c_client *client = ts->client; in rohm_ts_manual_calibration() [all …]
|
/linux/drivers/bluetooth/ |
H A D | hci_nokia.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * Copyright (C) 2015-2017 Sebastian Reichel <sre@kernel.org> 11 #include <linux/firmware.h> 139 bool initialized; member 160 struct device *dev = &btdev->serdev->dev; in wakeup_handler() 161 int wake_state = gpiod_get_value(btdev->wakeup_host); in wakeup_handler() 163 if (btdev->rx_enabled == wake_state) in wakeup_handler() 171 btdev->rx_enabled = wake_state; in wakeup_handler() 178 struct nokia_bt_dev *btdev = hu->priv; in nokia_reset() 179 struct device *dev = &btdev->serdev->dev; in nokia_reset() [all …]
|
/linux/drivers/net/wireless/ath/carl9170/ |
H A D | fwdesc.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 5 * Firmware descriptor format 7 * Copyright 2009-2011 Christian Lamparter <chunkeey@googlemail.com> 20 * legacy drivers to drive the firmware. 24 /* usb registers are initialized by the firmware */ 30 /* usb download (app -> fw) stream */ 33 /* usb upload (fw -> app) stream */ 36 /* unusable - reserved to flag non-functional debug firmwares */ 45 /* Firmware has a software Content After Beacon Queueing mechanism */ 48 /* The firmware is capable of responding to incoming BAR frames */ [all …]
|
/linux/drivers/nfc/fdp/ |
H A D | fdp.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 2 /* ------------------------------------------------------------------------- 3 * Copyright (C) 2014-2016, Intel Corporation 5 * ------------------------------------------------------------------------- 12 #include <linux/firmware.h> 45 const struct firmware *otp_patch; 46 const struct firmware *ram_patch; 92 r = nci_core_conn_create(info->ndev, FDP_PATCH_CONN_DEST, 1, in fdp_nci_create_conn() 127 delta = 24 * fc - nd * clock_freq; in fdp_nci_set_clock() 148 info->setup_patch_sent = 1; in fdp_nci_send_patch_cb() [all …]
|
/linux/rust/kernel/ |
H A D | of.rs | 1 // SPDX-License-Identifier: GPL-2.0 3 //! Device Tree / Open Firmware abstractions. 14 /// An open firmware device id. 29 fn index(&self) -> usize { in index() 36 pub const fn new(compatible: &'static CStr) -> Self { in new() 39 // SAFETY: FFI type is valid to be zero-initialized. in new()
|
/linux/sound/soc/sof/intel/ |
H A D | hda-loader.c | 1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) 18 #include <linux/firmware.h> 24 #include "../ipc4-priv.h" 26 #include "../sof-priv.h" 32 "(default = Y, use N to force buffer re-allocation)"); 36 struct sof_intel_hda_dev *hda = sdev->pdata->hw_pdata; in hda_ssp_set_cbp_cfp() 37 const struct sof_intel_dsp_desc *chip = hda->desc; in hda_ssp_set_cbp_cfp() 41 for (i = 0; i < chip->ssp_count; i++) { in hda_ssp_set_cbp_cfp() 43 chip->ssp_base_offset in hda_ssp_set_cbp_cfp() 64 dev_err(sdev->dev, "error: no stream available\n"); in hda_cl_prepare() [all …]
|
/linux/drivers/net/ethernet/brocade/bna/ |
H A D | bfi.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * Linux network driver for QLogic BR-series Converged Network Adapter. 6 * Copyright (c) 2005-2014 Brocade Communications Systems, Inc. 7 * Copyright (c) 2014-2015 QLogic Corporation 35 #define bfi_mhdr_2_fn(_mh) ((_mh)->mtag.h2i.fn_lpu >> 1) 36 #define bfi_mhdr_2_qid(_mh) ((_mh)->mtag.h2i.qid) 51 * Message opcodes: 0-127 to firmware, 128-255 to host 71 /* Generic DMA addr-len pair. */ 78 * Large Message structure - 128 Bytes size Msgs 82 ((BFI_LMSG_SZ - sizeof(struct bfi_mhdr)) / 4) [all …]
|
/linux/arch/mips/cavium-octeon/ |
H A D | smp.c | 6 * Copyright (C) 2004-2008, 2009, 2010 Cavium Networks 131 if (labi->labi_signature != LABI_SIGNATURE) { in octeon_smp_hotplug_setup() 136 octeon_bootloader_entry_addr = labi->InitTLBStart_addr; in octeon_smp_hotplug_setup() 164 if ((id != coreid) && cvmx_coremask_is_core_set(&sysinfo->core_mask, id)) { in octeon_smp_setup() 207 * Firmware CPU startup hook 225 count--; in octeon_boot_secondary() 229 return -ETIMEDOUT; in octeon_boot_secondary() 254 * Callout to firmware before smp_init 264 IRQF_PERCPU | IRQF_NO_THREAD, "SMP-IPI", in octeon_prepare_cpus() 293 return -ENOTSUPP; in octeon_cpu_disable() [all …]
|