/linux/drivers/soundwire/ |
H A D | bus_type.c | 1 // SPDX-License-Identifier: GPL-2.0 2 // Copyright(c) 2015-17 Intel Corporation. 14 * sdw_get_device_id - find the matching SoundWire device id 16 * @drv: SoundWire Slave Driver 22 sdw_get_device_id(struct sdw_slave *slave, const struct sdw_driver *drv) in sdw_get_device_id() argument 24 const struct sdw_device_id *id; in sdw_get_device_id() local 26 for (id = drv->id_table; id && id->mfg_id; id++) in sdw_get_device_id() 27 if (slave->id.mfg_id == id->mfg_id && in sdw_get_device_id() 28 slave->id.part_id == id->part_id && in sdw_get_device_id() 29 (!id->sdw_version || in sdw_get_device_id() [all …]
|
/linux/drivers/pnp/ |
H A D | card.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * card.c - contains functions for managing groups of PnP devices 13 #include <linux/dma-mapping.h> 19 static const struct pnp_card_device_id *match_card(struct pnp_card_driver *drv, in match_card() argument 22 const struct pnp_card_device_id *drv_id = drv->id_table; in match_card() 24 while (*drv_id->id) { in match_card() 25 if (compare_pnp_id(card->id, drv_id->id)) { in match_card() 33 !*drv_id->devs[i].id) in match_card() 37 if (compare_pnp_id(dev->id, in match_card() 38 drv_id->devs[i].id)) { in match_card() [all …]
|
H A D | driver.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * driver.c - device id matching, driver model, etc. 29 int compare_pnp_id(struct pnp_id *pos, const char *id) in compare_pnp_id() argument 31 if (!pos || !id || (strlen(id) != 7)) in compare_pnp_id() 33 if (memcmp(id, "ANYDEVS", 7) == 0) in compare_pnp_id() 36 if (memcmp(pos->id, id, 3) == 0) in compare_pnp_id() 37 if (compare_func(pos->id, id) == 1) in compare_pnp_id() 39 pos = pos->next; in compare_pnp_id() 44 static const struct pnp_device_id *match_device(const struct pnp_driver *drv, in match_device() argument 47 const struct pnp_device_id *drv_id = drv->id_table; in match_device() [all …]
|
/linux/drivers/dio/ |
H A D | dio-driver.c | 6 * Loosely based on drivers/pci/pci-driver.c and drivers/zorro/zorro-driver.c 19 * dio_match_device - Tell if a DIO device structure has a matching DIO device id structure 20 * @ids: array of DIO device id structures to search in 32 while (ids->id) { in dio_match_device() 33 if (ids->id == DIO_WILDCARD) in dio_match_device() 35 if (DIO_NEEDSSECID(ids->id & 0xff)) { in dio_match_device() 36 if (ids->id == d->id) in dio_match_device() 39 if ((ids->id & 0xff) == (d->id & 0xff)) in dio_match_device() 50 struct dio_driver *drv = to_dio_driver(dev->driver); in dio_device_probe() local 53 if (!d->driver && drv->probe) { in dio_device_probe() [all …]
|
/linux/drivers/zorro/ |
H A D | zorro-driver.c | 6 * Loosely based on drivers/pci/pci-driver.c 21 * zorro_match_device - Tell if a Zorro device structure has a matching 22 * Zorro device id structure 23 * @ids: array of Zorro device id structures to search in 35 while (ids->id) { in zorro_match_device() 36 if (ids->id == ZORRO_WILDCARD || ids->id == z->id) in zorro_match_device() 47 struct zorro_driver *drv = to_zorro_driver(dev->driver); in zorro_device_probe() local 50 if (drv->probe) { in zorro_device_probe() 51 const struct zorro_device_id *id; in zorro_device_probe() local 53 id = zorro_match_device(drv->id_table, z); in zorro_device_probe() [all …]
|
/linux/drivers/phy/samsung/ |
H A D | phy-exynos4x12-usb2.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Samsung SoC USB 1.1/2.0 PHY driver - Exynos 4x12 support 13 #include "phy-samsung-usb2.h" 114 /* Mode switching SUB Device <-> Host */ 159 return -EINVAL; in exynos4x12_rate_to_clk() 167 struct samsung_usb2_phy_driver *drv = inst->drv; in exynos4x12_isol() local 171 switch (inst->cfg->id) { in exynos4x12_isol() 189 regmap_update_bits(drv->reg_pmu, offset, mask, on ? 0 : mask); in exynos4x12_isol() 194 struct samsung_usb2_phy_driver *drv = inst->drv; in exynos4x12_setup_clk() local 197 clk = readl(drv->reg_phy + EXYNOS_4x12_UPHYCLK); in exynos4x12_setup_clk() [all …]
|
H A D | phy-exynos5250-usb2.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Samsung SoC USB 1.1/2.0 PHY driver - Exynos 5250 support 13 #include "phy-samsung-usb2.h" 168 return -EINVAL; in exynos5250_rate_to_clk() 176 struct samsung_usb2_phy_driver *drv = inst->drv; in exynos5250_isol() local 180 if (drv->cfg == &exynos5250_usb2_phy_config && in exynos5250_isol() 181 inst->cfg->id == EXYNOS5250_DEVICE) in exynos5250_isol() 183 else if (drv->cfg == &exynos5250_usb2_phy_config && in exynos5250_isol() 184 inst->cfg->id == EXYNOS5250_HOST) in exynos5250_isol() 186 else if (drv->cfg == &exynos5420_usb2_phy_config && in exynos5250_isol() [all …]
|
H A D | phy-exynos4210-usb2.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Samsung SoC USB 1.1/2.0 PHY driver - Exynos 4210 support 13 #include "phy-samsung-usb2.h" 87 /* Mode switching SUB Device <-> Host */ 118 return -EINVAL; in exynos4210_rate_to_clk() 126 struct samsung_usb2_phy_driver *drv = inst->drv; in exynos4210_isol() local 130 switch (inst->cfg->id) { in exynos4210_isol() 143 regmap_update_bits(drv->reg_pmu, offset, mask, on ? 0 : mask); in exynos4210_isol() 148 struct samsung_usb2_phy_driver *drv = inst->drv; in exynos4210_phy_pwr() local 155 switch (inst->cfg->id) { in exynos4210_phy_pwr() [all …]
|
H A D | phy-s5pv210-usb2.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Samsung SoC USB 1.1/2.0 PHY driver - S5PV210 support 12 #include "phy-samsung-usb2.h" 83 return -EINVAL; in s5pv210_rate_to_clk() 91 struct samsung_usb2_phy_driver *drv = inst->drv; in s5pv210_isol() local 94 switch (inst->cfg->id) { in s5pv210_isol() 105 regmap_update_bits(drv->reg_pmu, S5PV210_USB_ISOL_OFFSET, in s5pv210_isol() 111 struct samsung_usb2_phy_driver *drv = inst->drv; in s5pv210_phy_pwr() local 117 switch (inst->cfg->id) { in s5pv210_phy_pwr() 130 writel(drv->ref_reg_val, drv->reg_phy + S5PV210_UPHYCLK); in s5pv210_phy_pwr() [all …]
|
/linux/drivers/input/serio/ |
H A D | serio.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright (c) 1999-2004 Vojtech Pavlik 37 static void serio_attach_driver(struct serio_driver *drv); 39 static int serio_connect_driver(struct serio *serio, struct serio_driver *drv) in serio_connect_driver() argument 43 mutex_lock(&serio->drv_mutex); in serio_connect_driver() 44 retval = drv->connect(serio, drv); in serio_connect_driver() 45 mutex_unlock(&serio->drv_mutex); in serio_connect_driver() 52 int retval = -1; in serio_reconnect_driver() 54 mutex_lock(&serio->drv_mutex); in serio_reconnect_driver() 55 if (serio->drv && serio->drv->reconnect) in serio_reconnect_driver() [all …]
|
/linux/arch/mips/sgi-ip22/ |
H A D | ip22-gio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 19 __u8 id; member 21 { .name = "SGI Impact", .id = 0x10 }, 22 { .name = "Phobos G160", .id = 0x35 }, 23 { .name = "Phobos G130", .id = 0x36 }, 24 { .name = "Phobos G100", .id = 0x37 }, 25 { .name = "Set Engineering GFE", .id = 0x38 }, 27 { .name = "SGI Newport", .id = 0x7e }, 28 { .name = "SGI GR2/GR3", .id = 0x7f }, 42 * gio_match_device - Tell if an of_device structure has a matching [all …]
|
/linux/Documentation/devicetree/bindings/soc/qcom/ |
H A D | qcom,rpmh-rsc.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/soc/qcom/qcom,rpmh-rsc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Bjorn Andersson <bjorn.andersson@linaro.org> 19 The hardware block (Direct Resource Voter or DRV) is a part of the h/w entity 22 be written to from Linux. The structure of each DRV follows the same template 27 ACTIVE - Triggered by Linux 28 SLEEP - Triggered by F/W 29 WAKE - Triggered by F/W [all …]
|
/linux/drivers/mmc/core/ |
H A D | sdio_bus.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 29 #define to_sdio_driver(d) container_of_const(d, struct sdio_driver, drv) 43 sdio_config_attr(class, "0x%02x\n", func->class); 44 sdio_config_attr(vendor, "0x%04x\n", func->vendor); 45 sdio_config_attr(device, "0x%04x\n", func->device); 46 sdio_config_attr(revision, "%u.%u\n", func->major_rev, func->minor_rev); 47 sdio_config_attr(modalias, "sdio:c%02Xv%04Xd%04X\n", func->class, func->vendor, func->device); 54 if (num > func->num_info) \ 55 return -ENODATA; \ 56 if (!func->info[num - 1][0]) \ [all …]
|
/linux/drivers/pci/ |
H A D | pci-driver.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * (C) Copyright 2002-2004, 2007 Greg Kroah-Hartman <greg@kroah.com> 22 #include <linux/dma-map-ops.h> 29 struct pci_device_id id; member 33 * pci_add_dynid - add a new PCI device ID to this driver and re-probe devices 34 * @drv: target pci driver 35 * @vendor: PCI vendor ID 36 * @device: PCI device ID 37 * @subvendor: PCI subvendor ID 38 * @subdevice: PCI subdevice ID [all …]
|
/linux/drivers/misc/ |
H A D | tifm_core.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * tifm_core.c - TI FlashMedia driver 31 return card_type_name[nt][type - 1]; in tifm_media_type_name() 34 static int tifm_dev_match(struct tifm_dev *sock, struct tifm_device_id *id) in tifm_dev_match() argument 36 if (sock->type == id->type) in tifm_dev_match() 41 static int tifm_bus_match(struct device *dev, const struct device_driver *drv) in tifm_bus_match() argument 44 const struct tifm_driver *fm_drv = container_of_const(drv, struct tifm_driver, in tifm_bus_match() 46 struct tifm_device_id *ids = fm_drv->id_table; in tifm_bus_match() 49 while (ids->type) { in tifm_bus_match() 62 if (add_uevent_var(env, "TIFM_CARD_TYPE=%s", tifm_media_type_name(sock->type, 1))) in tifm_uevent() [all …]
|
/linux/sound/hda/ |
H A D | hda_bus_type.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * HD-audio bus 12 MODULE_DESCRIPTION("HD-audio bus"); 16 * hdac_get_device_id - gets the hdac device id entry 17 * @hdev: HD-audio core device 18 * @drv: HD-audio codec driver 21 * driver id_table and returns the matching device id entry. 24 hdac_get_device_id(struct hdac_device *hdev, struct hdac_driver *drv) in hdac_get_device_id() argument 26 if (drv->id_table) { in hdac_get_device_id() 27 const struct hda_device_id *id = drv->id_table; in hdac_get_device_id() local [all …]
|
/linux/drivers/bcma/ |
H A D | main.c | 29 static int bcma_bus_match(struct device *dev, const struct device_driver *drv); 37 return sprintf(buf, "0x%03X\n", core->id.manuf); in manuf_show() 44 return sprintf(buf, "0x%03X\n", core->id.id); in id_show() 46 static DEVICE_ATTR_RO(id); 51 return sprintf(buf, "0x%02X\n", core->id.rev); in rev_show() 58 return sprintf(buf, "0x%X\n", core->id.class); in class_show() 82 if (bus->chipinfo.id == BCMA_CHIP_ID_BCM4706) in bcma_cc_core_id() 92 list_for_each_entry(core, &bus->cores, list) { in bcma_find_core_unit() 93 if (core->id.id == coreid && core->core_unit == unit) in bcma_find_core_unit() 114 bcma_warn(core->bus, "Timeout waiting for register 0x%04X!\n", reg); in bcma_wait_value() [all …]
|
/linux/drivers/virtio/ |
H A D | virtio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 18 return sysfs_emit(buf, "0x%04x\n", dev->id.device); in device_show() 26 return sysfs_emit(buf, "0x%04x\n", dev->id.vendor); in vendor_show() 34 return sysfs_emit(buf, "0x%08x\n", dev->config->get_status(dev)); in status_show() 43 dev->id.device, dev->id.vendor); in modalias_show() 56 for (i = 0; i < sizeof(dev->features)*8; i++) in features_show() 75 const struct virtio_device_id *id) in virtio_id_match() argument 77 if (id->device != dev->id.device && id->device != VIRTIO_DEV_ANY_ID) in virtio_id_match() 80 return id->vendor == VIRTIO_DEV_ANY_ID || id->vendor == dev->id.vendor; in virtio_id_match() 91 ids = drv_to_virtio(_dr)->id_table; in virtio_dev_match() [all …]
|
/linux/drivers/usb/common/ |
H A D | ulpi.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * ulpi.c - USB ULPI PHY bus 19 #include <linux/clk/clk-conf.h> 21 /* -------------------------------------------------------------------------- */ 25 return ulpi->ops->read(ulpi->dev.parent, addr); in ulpi_read() 31 return ulpi->ops->write(ulpi->dev.parent, addr, val); in ulpi_write() 35 /* -------------------------------------------------------------------------- */ 39 struct ulpi_driver *drv = to_ulpi_driver(driver); in ulpi_match() local 41 const struct ulpi_device_id *id; in ulpi_match() local 44 * Some ULPI devices don't have a vendor id in ulpi_match() [all …]
|
/linux/drivers/soc/qcom/ |
H A D | rpmh-rsc.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (c) 2016-2018, The Linux Foundation. All rights reserved. 4 * Copyright (c) 2023-2024, Qualcomm Innovation Center, Inc. All rights reserved. 31 #include <soc/qcom/cmd-db.h> 33 #include <dt-bindings/soc/qcom,rpmh-rsc.h> 35 #include "rpmh-internal.h" 38 #include "trace-rpmh.h" 67 /* DRV HW Solver Configuration Information Register */ 71 /* DRV TCS Configuration Information Register */ 99 * - The main rpmh-rsc address is the base of a register space that can [all …]
|
H A D | rpmh-internal.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * Copyright (c) 2016-2018, The Linux Foundation. All rights reserved. 26 * @drv: The controller. 27 * @type: Type of the TCS in this group - active, sleep, wake. 35 * Start: grab drv->lock, set req, set tcs_in_use, drop drv->lock, 38 * grab drv->lock, clear tcs_in_use, drop drv->lock 45 struct rsc_drv *drv; member 56 * struct rpmh_request: the message to be sent to rpmh-rsc 93 * struct rsc_drv: the Direct Resource Voter (DRV) of the 97 * @base: Start address of the DRV registers in this controller. [all …]
|
/linux/sound/soc/intel/atom/ |
H A D | sst-atom-controls.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * sst-atom-controls.c - Intel MID Platform driver DPCM ALSA controls for Mrfld 5 * Copyright (C) 2013-14 Intel Corp 20 #include "sst-mfld-platform.h" 21 #include "sst-atom-controls.h" 23 static int sst_fill_byte_control(struct sst_data *drv, in sst_fill_byte_control() argument 28 struct snd_sst_bytes_v2 *byte_data = drv->byte_stream; in sst_fill_byte_control() 30 byte_data->type = SST_CMD_BYTES_SET; in sst_fill_byte_control() 31 byte_data->ipc_msg = ipc_msg; in sst_fill_byte_control() 32 byte_data->block = block; in sst_fill_byte_control() [all …]
|
/linux/drivers/memstick/core/ |
H A D | memstick.c | 1 // SPDX-License-Identifier: GPL-2.0-only 29 struct memstick_device_id *id) in memstick_dev_match() argument 31 if (id->match_flags & MEMSTICK_MATCH_ALL) { in memstick_dev_match() 32 if ((id->type == card->id.type) in memstick_dev_match() 33 && (id->category == card->id.category) in memstick_dev_match() 34 && (id->class == card->id.class)) in memstick_dev_match() 41 static int memstick_bus_match(struct device *dev, const struct device_driver *drv) in memstick_bus_match() argument 45 const struct memstick_driver *ms_drv = container_of_const(drv, struct memstick_driver, in memstick_bus_match() 47 struct memstick_device_id *ids = ms_drv->id_table; in memstick_bus_match() 50 while (ids->match_flags) { in memstick_bus_match() [all …]
|
/linux/drivers/cpufreq/ |
H A D | qcom-cpufreq-nvmem.c | 1 // SPDX-License-Identifier: GPL-2.0 10 * defines the voltage and frequency value based on the msm-id in SMEM 12 * The qcom-cpufreq-nvmem driver reads the msm-id and efuse value from the SoC 15 * operating-points-v2 table when it is parsed by the OPP framework. 23 #include <linux/nvmem-consumer.h> 33 #include <dt-bindings/arm/qcom,ids.h> 54 struct qcom_cpufreq_drv *drv); 74 struct qcom_cpufreq_drv *drv) in qcom_cpufreq_simple_get_version() argument 84 drv->versions = 1 << *speedbin; in qcom_cpufreq_simple_get_version() 141 /* 4 bits of PVS are in efuse register bits 31, 8-6. */ in get_krait_bin_format_b() [all …]
|
/linux/sound/core/ |
H A D | seq_device.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 *---------------------------------------------------------------- 17 * Each sequencer device entry has an id string and the corresponding 18 * driver with the same id is loaded when required. For example, 20 * emu8000-synth module. To activate this module, the hardware 43 static int snd_seq_bus_match(struct device *dev, const struct device_driver *drv) in snd_seq_bus_match() argument 46 struct snd_seq_driver *sdrv = to_seq_drv(drv); in snd_seq_bus_match() 48 return strcmp(sdrv->id, sdev->id) == 0 && in snd_seq_bus_match() 49 sdrv->argsize == sdev->argsize; in snd_seq_bus_match() 58 * proc interface -- just for compatibility [all …]
|